If you've been using kvm for any length of time , you'll know that network configuration is not a trivial process. GUI management tools have made this task somewhat easier but it was never as simple as tools by the leading hypervisor vendors. Although there are many options for KVM gui management tools available, I consider virt-manager to be an important one because it comes builtin to many distros and will be the entry point for many linux users wanting to try virtualization. When it comes to bridged network configuration in particular, virt-manager has made many strides in simplifying configuration. After the most recent patches however, you'll find that bridged network configuration in virt-manager is finally as simple as selecting a dropdown menu. No more having to configure bridges, mapping interfaces to bridges and so on. In the following sections, I'll walk through the latest virt-manager interface ( which should be released soon ) for configuring bridged networking.
macvtap is a relatively recent device driver which was designed to share a physical network interface while using it's own mac address separate from the physical interface it is sharing. One of the primary goals of this driver is actually to ease virtualized bridged network configuration. Virt-manager really needed a driver like this in order to simplify this configuration process.
With the latest patches to virt-manager, you simply select the source interface from a dropdown menu to configure bridged networking as shown in the snapshot below.
macvtap can run in three modes; vepa, bridge and private mode. You need to select bridge mode for bridged networking.
Once this is selected, apply your settings and you're finished.
You can expect to see this feature in the next release/revision of virt-manager. Bridged networking is a very common configuration with virtual machines on both the desktop and in the enterprise. Thanks to the macvtap driver for finally making this a painless configuration for qemu KVM virtual machines.