我昨天确实发布了一个帖子,以获得用于虚拟机(KVM / libvirt)的几个桥接接口的工作设置。
其中一个桥接接口仅使用 eth3 作为其端口,而第二个桥接接口(公共流量)使用以太网绑定接口。
该设置有效,但并非始终有效!我可以从虚拟机开始下载,然后它会停止并冻结!
所以我不知道我的桥接参数是否正确,您能检查下面的配置吗?
iface eth3 inet manual
auto bond0
iface bond0 inet manual
slaves eth1 eth2
pre-up ip link set bond0 up
down ip link set bond0 down
auto br0
iface br0 inet static
address 10.160.0.7
netmask 255.255.255.128
bridge_ports eth3
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp on
auto br0:1
iface br0:1 inet static
address 10.160.0.9
netmask 255.255.255.255
auto br0:2
iface br0:2 inet static
address 10.160.0.10
netmask 255.255.255.255
auto br1
iface br1 inet static
address 217.4.40.242
netmask 255.255.255.240
gateway 217.4.40.241
pre-up /etc/network/firewall start
bridge_ports bond0
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp on
auto br1:1
iface br1:1 inet static
address 217.4.40.252
netmask 255.255.255.255
auto br1:2
iface br1:2 inet static
address 217.4.40.253
netmask 255.255.255.255
是的,它有时也会谈论主机上的火星人:
kernel: [249146.055172] martian source 10.160.0.17 from 10.160.0.10, on dev vnet2
kernel: [249146.073122] ll header: ff:ff:ff:ff:ff:ff:54:52:00:76:c3:5c:08:06
答案1
听起来像是我面临的一个问题。
这是 KVM 桥接绑定配置的示例工作配置,但它同时只使用一个接口。也许这取决于交换机(使用 Planet GSD-802S 和 HP V1910)。我在两个地方使用它(使用不同的硬件和交换机)。
猫/etc/modprobe.d/bonding.conf
alias bond0 bonding
options bonding mode=802.3ad miimon=100 downdelay=200 updelay=200 ad_select=0 lacp_rate=fast
猫/等/网络/接口
auto lo
iface lo inet loopback
The bonded network interface
auto bond0
iface bond0 inet manual
bond-slaves none
bond-mode 802.3ad
bond-miimon 100
bond_lacp_rate fast
bond_ad_select 0
up /sbin/ifenslave bond0 eth1 eth2
down /sbin/ifenslave bond0 -d eth1 eth2
Enslave all the physical interfaces
Card #1 Nvidia Gigabit onboard
auto eth1
iface eth1 inet manual
bond-master bond0
Card #2 Intel PRO/1000 F Server Adapter - FIBER
auto eth2
iface eth2 inet manual
bond-master bond0
Bridge to LAN for virtual network KVM
auto br0
iface br0 inet static
address 10.0.0.254
netmask 255.255.255.0
network 10.0.0.0
broadcast 10.0.0.255
gateway 10.0.0.1
dns-nameservers 10.0.0.1 8.8.8.8
bridge-ports bond0
bridge-fd 9
bridge-hello 2
bridge-maxage 12
bridge-stp off
Card #3 - Internet modem
auto eth0
iface eth0 inet manual
Bridge for virtual network KVM - modem
iface br1 inet manual
bridge_ports eth0
bridge_stp off
bridge_fd 0
bridge_maxwait 0
metric 1
auto br1
答案2
除了不需要预启动/关闭属性,并且您应该打开一些 arp 链路监控之外,该绑定上的配置看起来不错。但是,您不应该在别名接口上设置网络掩码;只需让内核正确设置网络掩码(它应该与主 IP 上的网络掩码相同 - 我认为 /32 掩码是导致火星问题的原因)。
如果没有发生停顿时的网络流量转储,很难判断原因是什么。以下是追踪问题的一些想法:
- 确保网络能够处理小数据包(ping 等)
- 确保问题始终可重现(每次尝试从 VM 下载时都会发生这种情况吗?)
- 去掉键,看看它是否仍然可以重现(如果不能,那么键可能有问题)
- 主机上的相同下载是否会导致问题?(如果没有,那么问题就不在于债券)
- 尝试删除 VM NIC 上的 MTU;我看不到主机配置中任何会导致问题的内容,但其他网络设备可能会出现问题。
答案3
您启用生成树有什么原因吗?除非您在外部段之间提供某种冗余连接,否则没有必要启用生成树,而且可能会阻塞流量或导致上游交换机暂时关闭端口。
答案4
不是真的,而是“我也是”+解决方法:我在 dell poweredge 2950 中遇到了与 Broadcom 的 BCM5708 nics 类似的问题。在我的情况下,只有绑定 + VLAN,没有桥接。运行几天后,主机失去了互联网访问。我没有太多的故障排除选项,最终添加了额外的以太网卡。现在,板载卡和附加卡之间的绑定工作正常。