У меня есть Ubuntu box с запущенной гостевой виртуальной машиной KVM. Они используют мост, поэтому гостевая виртуальная машина подключается к физической сети своего хоста. Гостевая виртуальная машина имеет 2 сетевых карты в 2 разных мостах.
Первая сетевая карта виртуальной машины — tap5, она находится в мосту br0.
br0 8000.46720f5c572e no eth0.500
tap5
Вторая сетевая карта виртуальной машины — 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
На гостевой виртуальной машине tcpdump ее интерфейса eth1 (tap2) показывает трафик с ее интерфейса 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
Не совсем понятно, что вы пытаетесь сделать со своей конфигурацией — что происходит с вышестоящим коммутатором и как обстоят дела с взаимосвязью между шестью VLAN, входящими в eth0?
Другое, что вылезает наружу, это то, что у вас есть IP-адрес как на eth0, так и на интерфейсах VLAN. Поставьте IP на интерфейс моста, если вы пытаетесь представить одну и ту же подсеть различным VLAN (...не то чтобы эта конфигурация имела смысл). Опять же, некоторая дополнительная информация о том, чего вы пытаетесь достичь, была бы полезна.
Если говорить точнее, то обычная конфигурация представляет собой одну VLAN в мосту с несколькими интерфейсами виртуальных машин (т. е. несколькими виртуальными машинами в данной подсети), а не наоборот.
решение2
Это интерфейсы VLAN?Я видел проблемы с комбинациями мостов и VLAN, поэтому я затем перешел на использование VDE для всего такого рода причудливого.