Atom feed of this document
 

 Configuring Flat DHCP Networking

With Flat DHCP, the host(-s) running nova-network act as the gateway to the virtual nodes. If you're using single-host networking, you can optionally set network_host on the nova.conf stored on the nova-compute node to tell it which host the nova-network is running on so it can more efficiently communicate with nova-network. In any setup with flat networking, the hosts with nova-network on it are responsible for forwarding traffic from the private network configured with the fixed_range= directive in nova.conf and the flat_network_bridge flag which you must also set to the name of the bridge (as there is no default). The nova-network service will track leases and releases in the database, using dnsmasq's dhcp-script facility (the script bin/nova-dhcpbridge is supplied) so it knows if a VM instance has stopped properly configuring via DHCP (e.g. when a DHCP lease expires, the fixed IP is released from the nova database). Lastly, it sets up iptables rules to allow the VMs to communicate with the outside world and contact a special metadata server to retrieve information from the cloud.

Compute hosts in the FlatDHCP model are responsible for bringing up a matching bridge and bridging the VM tap devices into the same ethernet device that the network host is on. The compute hosts should not have an IP address on the VM network, because the bridging puts the VMs and the network host on the same logical network. When a VM boots, the VM sends out DHCP packets, and the DHCP server on the network host responds with their assigned IP address (remember, the address is actually assigned by nova and put into DHCP server's configuration file, the DHCP server merely tells the VM what it is).

You can read a detailed walk-through of what exactly happens in single-host Flat DHCP mode in this blogpost, parts of which are also relevant in other networking modes.

FlatDHCP doesn't create VLANs, it creates a bridge. This bridge works just fine on a single host, but when there are multiple hosts, traffic needs a way to get out of the bridge onto a physical interface.

Log a bug against this page


loading table of contents...