我有一台 Ubuntu 机器,其中运行着一台 KVM 来宾虚拟机。它们使用桥接,因此来宾虚拟机连接到其主机的物理网络。来宾虚拟机在 2 个不同的桥接器中有 2 个 NIC。
VM 的第一个网卡是 tap5,位于网桥 br0 中
br0 8000.46720f5c572e no eth0.500
tap5
VM 的第二个 NIC 是 tap2,位于网桥 br100 中
br100 8000.76ad2fc96661 no eth0.100
eth0.101
eth0.103
eth0.104
eth0.105
tap2
在主机上,br0 有一个 IP,而 br100 没有
21: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
link/ether 46:72:0f:5c:57:2e brd ff:ff:ff:ff:ff:ff
inet 192.168.100.4/24 brd 192.168.10.255 scope global br0
inet6 fe80::d6ae:52ff:febe:777/64 scope link
valid_lft forever preferred_lft forever
在客户机上,其 eth0 和 eth1 接口均具有 IP 地址
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:3e:61:fb:7a:da brd ff:ff:ff:ff:ff:ff
inet 192.168.100.6/24 brd 192.168.100.255 scope global eth0
inet6 fe80::23e:61ff:fefb:7ada/64 scope link
valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:3e:61:fb:7a:ea brd ff:ff:ff:ff:ff:ff
inet 172.16.50.129/25 brd 172.16.50.255 scope global eth1
inet6 fe80::23e:61ff:fefb:7aea/64 scope link
valid_lft forever preferred_lft forever
在客户虚拟机上,其 eth1 接口 (tap2) 的 tcpdump 显示来自其 eth0 接口 (tap5) 的流量,就好像 2 个网桥本身被桥接了一样。这意味着 br100 上的任何接口现在都桥接到了 br0 - 这完全坏了。
root@chillispot:~# tcpdump -c 1 -n -v -i eth1 net 192.168.100.0/24
tcpdump: listening on eth1, link-type EN10MB (Ethernet), capture size 65535 bytes
16:31:24.175583 IP (tos 0x0, ttl 64, id 48054, offset 0, flags [DF], proto TCP (6), length 148)
192.168.100.6.22 > 192.168.100.4.59505: Flags [P.], cksum 0x6c2b (correct), seq 1056321648:1056321744, ack 398642983, win 1700, options [nop,nop,TS val 197473436 ecr 200655363], length 96
除了客户虚拟机(Ubuntu 默认安装)之外,还有什么可以桥接这两个桥?我完全不知所措!谢谢。
答案1
目前还不完全清楚您要用您的配置做什么——就进入 eth0 的六个 VLAN 之间的互连而言,上游交换机发生了什么情况?
另一个突出的问题是,您在 eth0 和 VLAN 接口上都有一个 IP 地址。如果您尝试向各个 VLAN 呈现相同的子网,请将 IP 放在桥接接口上(...这种配置并不完全合理)。同样,一些关于您要实现的目标的其他背景信息会很有帮助。
不管怎样,通常的配置是桥接器中的单个 VLAN 具有多个 VM 接口(即,给定子网上的多个 VM),而不是相反。
答案2
这些是 VLAN 接口吗?我发现网桥和 VLAN 的组合存在问题,这就是为什么我后来转而使用 VDE 来做任何类似的事情。