Ubuntu 与 KVM 客户虚拟机和断桥

Ubuntu 与 KVM 客户虚拟机和断桥

我有一台 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 来做任何类似的事情。

相关内容