KVM - 主接口采用 DHCP 桥接接口

KVM - 主接口采用 DHCP 桥接接口

我正在设置一台 Ubuntu 10.04 服务器来运行 KVM。我需要虚拟机具有桥接网络,因为它们将成为我主 LAN 的一部分。此外,eth0(服务器上的主网络接口)正在使用 DHCP 从 DHCP 服务器获取静态 IP(这样,我就有一个中心点来更改我的服务器的 IP)。

尝试添加br0接口时(如此处所述http://wiki.libvirt.org/page/Networking#Bridged_networking_.28aka_.22shared_physical_device.22.29)我改变了我的/etc/network/interfaces如下:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp

# The bridge network interface, used by kvm
auto br0
iface br0 inet manual
bridge_ports eth0
bridge_stp yes
bridge_fd 0
bridge_maxwait 0

我还添加了以下几行sysctl.conf

net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0

一旦我重新启动服务器,我就会失去与 eth0 的连接(传出和传入)。

这个配置有什么问题?推荐的设置是什么?

答案1

我看到的主要区别是,我的配置(也在 Ubuntu 10.04 上)——幸运的是它可以工作——没有将 IP 等直接分配给 eth0 接口,而是分配给 br0 接口。

请注意,在我的配置中,客户机配置为使用 DHCP,并与下面的 /etc/network/interfaces 配合使用:

# The primary network interface
auto eth0
iface eth0 inet manual 

# bridge interface for kvm
auto br0
iface br0 inet static
        address 192.168.1.254
        netmask 255.255.255.0
        network 192.168.1.0
        broadcast 192.168.1.255
        gateway 192.168.1.1
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 4.2.2.1 8.8.8.8
        dns-search mycompany.com
        bridge_ports eth0
        bridge_fd 9
        bridge_hello 2
        bridge_maxage 12
        bridge_stp off

我很确定您可以将“ iface br0 inet static ”部分更改为 dhcp,并删除地址、网络掩码、网络、网关等内容。

我不需要弄乱 sysctl.conf 设置……至少现在还不需要。

相关内容