Eu tenho um endereço IP estático para a interface eno1, que deve se tornar uma ponte para o kvm / qemu. Minha configuração netplan (Ubuntu 18.04) para o ip estático se parece com isso e está funcionando:
network:
version: 2
#renderer: NetworkManager
renderer: networkd
ethernets:
eno1:
dhcp4: false
dhcp6: false
addresses: [XXX.XXX.196.33/20]
gateway4: XXX.XXX.192.254
nameservers:
addresses: [XXX.XXX.192.80]
Infelizmente, minha configuração de bridge não está funcionando para essa interface. Depois de aplicar eu não posso encaminhar.
network:
version: 2
#renderer: NetworkManager
renderer: networkd
ethernets:
eno1:
dhcp4: false
dhcp6: false
bridges:
br0:
dhcp4: false
dhcp6: false
interfaces: [eno1]
addresses: [XXX.XXX.196.33/20]
gateway4: XXX.XXX.192.254
nameservers:
addresses: [XXX.XXX.192.80]
O roteamento se parece com:
# route -n
Kernel-IP-Routentabelle
Ziel Router Genmask Flags Metric Ref Use Iface
0.0.0.0 XXX.XXX.192.254 0.0.0.0 UG 0 0 0 br0
XXX.XXX.192.0 0.0.0.0 255.255.240.0 U 0 0 0 br0
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
Agora eu tentei um NIC adicional para a ponte com o dhcp, mas falhei também:
network:
version: 2
renderer: NetworkManager
#renderer: networkd
ethernets:
eno1:
dhcp4: false
dhcp6: false
optional: true
addresses: [XXX.XXX.196.33/20]
gateway4: XXX.XXX.192.254
nameservers:
addresses: [XXX.XXX.192.80]
enp4s0:
dhcp4: true
bridges:
br0:
dhcp4: true
dhcp6: false
optional: true
interfaces: [enp4s0]
ip addr mostra que a interface da bridge está sempre inativa!
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp4s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
link/ether 00:0a:cd:20:b6:05 brd ff:ff:ff:ff:ff:ff
3: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether f0:79:59:db:e1:76 brd ff:ff:ff:ff:ff:ff
inet XXX.XXX.196.33/20 brd XXX.XXX.207.255 scope global noprefixroute eno1
valid_lft forever preferred_lft forever
inet6 fe80::f279:59ff:fedb:e176/64 scope link
valid_lft forever preferred_lft forever
4: br0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 06:62:fa:ee:f8:c2 brd ff:ff:ff:ff:ff:ff
5: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 52:54:00:a4:3b:8b brd ff:ff:ff:ff:ff:ff
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
valid_lft forever preferred_lft forever
6: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel master virbr0 state DOWN group default qlen 1000
link/ether 52:54:00:a4:3b:8b brd ff:ff:ff:ff:ff:ff
Eu não recebo mensagens de erro ao iniciar
ip link set enp4s0 up
ip link set br0 up
mas todas as NIC ainda estão inativas.
O que está errado?
Ok, finalmente consegui trabalhar! A configuração acima para configurar pontes está correta!
Senti falta de que as pontes obtêm um novo endereço MAC e nosso NAC impediu a entrega de um IP para esse MAC porque minha ponte anterior no mesmo sistema tinha um endereço MAC diferente.