From my reading of the libvirt documentation and the examples here libvirt uses a Linux bridge to provide routing between VM's on the same host. It also starts a dnsmasq process attached to the bridge which supplies DHCP addresses to the VMs. I'm wondering if there anyone could point me to good articles or example on routing between VM's across hosts ideally without having to split an IP range across multiple DHCP servers on each box. Unless my reading of the docs is incorrect (why it may well be) static IP's for VM's seems to involve a DHCP server hackery. KVM/libvirt: How to configure static guest IP addresses on the virtualisation host

  • Such recommendations are off topic here. If you have a concrete problem, feel free to ask about it (with enough information about your environment). Feb 3, 2022 at 14:58
  • libvirt uses a Linux bridge to connect multiple VMs to same network is the correct term. Linux bridge does not provide routing or forwarding of IP packets between IP subnets. Feb 3, 2022 at 15:31
  • Please clarify your specific problem or provide additional details to highlight exactly what you need. As it's currently written, it's hard to tell exactly what you're asking.
    – Community Bot
    Feb 16, 2022 at 15:36

1 Answer 1


One straightforward way is to connect all the VMs to a bridge, where one member is the physical interface on the host.

That way VMs are hosts in the Ethernet network. Then these hosts use the DHCP server that is set up for the physical network.

This approach has certain limit on scalability though.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.