У меня Ubuntu MAAS, управляемый KVM. Первичной сетью для хоста является связь Balancer-Rr со статическим IP-адресом. Виртуальная машина пытается использовать настроенный мост MAAS для загрузки PXE, но она не работает. После долгих копаний похоже, что мост видит MAC-адрес виртуальной машины не на том порту. Я ожидал бы, что mac-адрес будет отображаться на порту из виртуальной сети, назначенной для vm, но вместо этого он будет отображаться на порте связи. Надеюсь, кто-то заметит, чего мне не хватает.
Вот конфигурация сети.
network:
bonds:
# bond0:
# interfaces:
# - eno1
# - eno2
# macaddress: b0:83:fe:eb:ba:60
# mtu: 1500
# parameters:
# down-delay: 0
# mii-monitor-interval: 100
# mode: balance-rr
# transmit-hash-policy: layer2
# up-delay: 0
bond1:
interfaces:
- eno3
- eno4
macaddress: b0:83:fe:eb:ba:66
mtu: 1500
parameters:
down-delay: 0
mii-monitor-interval: 100
mode: balance-rr
transmit-hash-policy: layer2
up-delay: 0
bridges:
br-bond1:
addresses:
- 10.0.2.11/24
gateway4: 10.0.2.1
interfaces:
- bond1
macaddress: b0:83:fe:eb:ba:66
mtu: 1500
nameservers:
addresses:
- 10.0.2.17
- 10.0.2.18
search:
- maas
parameters:
forward-delay: 15
stp: false
ethernets:
eno1:
match:
macaddress: b0:83:fe:eb:ba:60
mtu: 1500
set-name: eno1
eno2:
match:
macaddress: b0:83:fe:eb:ba:62
mtu: 1500
set-name: eno2
eno3:
match:
macaddress: b0:83:fe:eb:ba:64
mtu: 1500
set-name: eno3
eno4:
match:
macaddress: b0:83:fe:eb:ba:66
mtu: 1500
set-name: eno4
version: 2
Соответствующая конфигурация от VM
<interface type='bridge'>
<mac address='52:54:00:ba:86:77'/>
<source bridge='br-bond1'/>
<target dev='vnet0'/>
<model type='virtio'/>
<alias name='net0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
</interface>
Конфигурация моста
ubuntu@cloud1:~$ sudo brctl show
bridge name bridge id STP enabled interfaces
br-bond1 8000.b083feebba66 no bond1
vnet0
Таблица MAC
ubuntu@cloud1:~$ sudo brctl showmacs br-bond1
port no mac addr is local? ageing timer
1 20:4e:71:f0:cb:90 no 0.01
1 52:54:00:ba:86:77 no 168.71
1 5a:c2:49:d8:87:bc no 17.18
1 72:81:ef:86:30:9d no 182.17
1 9a:cf:84:97:91:3e no 17.18
1 d0:67:e5:b6:a0:f6 no 10.15
2 fe:54:00:ba:86:77 yes 0.00
2 fe:54:00:ba:86:77 yes 0.00
Порт 1 - это bond1, а порт 2 - это vnet0 .
Информация STP
ubuntu@cloud1:~$ sudo brctl showstp br-bond1
br-bond1
bridge id 8000.b083feebba66
designated root 8000.b083feebba66
root port 0 path cost 0
max age 20.00 bridge max age 20.00
hello time 2.00 bridge hello time 2.00
forward delay 15.00 bridge forward delay 15.00
ageing time 300.00
hello timer 0.00 tcn timer 0.00
topology change timer 0.00 gc timer 0.00
flags
bond1 (1)
port id 8001 state forwarding
designated root 8000.b083feebba66 path cost 4
designated bridge 8000.b083feebba66 message age timer 0.00
designated port 8001 forward delay timer 0.00
designated cost 0 hold timer 0.00
flags
vnet0 (2)
port id 8002 state forwarding
designated root 8000.b083feebba66 path cost 100
designated bridge 8000.b083feebba66 message age timer 0.00
designated port 8002 forward delay timer 0.00
designated cost 0 hold timer 0.00
flags