Preciso criar uma ponte de rede persistente para máquinas virtuais ( libvirt
)
Portanto esta ponte não precisa de nenhuma porta física, as conexões serão roteadas para esta ponte.
Se eu configurar isso manualmente, funcionará como descrevi. No entanto, não consigo fazer com que isso persista entre as reinicializações.
Eu criei a ponte em /etc/network/interfaces
:
auto vm-bridge
iface vm-bridge inet static
address 10.1.0.1
broadcast 10.1.0.3
netmask 255.255.255.252
gateway 10.1.0.1
No entanto, a interface não é criada quando o host é reinicializado. Todas as referências na internet estão sendo adicionadas bridge_ports
à ponte, então não tenho certeza do que estou perdendo.
Você tem que dar uma opção para que o plugin bridge que é fornecido ao
/etc/network/if-pre-up.d/bridge
instalar o pacotebridge-utils
seja ativado. O comando principal que ele fornecebrctl
é inútil (substituído porip link
+bridge
), mas o plugin é importante. Sem uma opção relacionada à ponte, o sistema não tem como entender que uma ponte deve ser criada. Portanto, se estiver usando o pacoteifupdown
(em vez deifupdown2
orifupdown-ng
):Então a opção mais simples para isso é informar que não há porta de ponte. Adicione esta opção:
que agora ativará o plugin e criará uma ponte e, conforme solicitado com a palavra-chave especial,
none
não anexará nenhuma interface como porta de ponte a ele.Observações:
existe uma rota padrão a ser usada ao mesmo tempo
provavelmente é um erro: se você já possui outra rota padrão no sistema (também com métrica 0), isso fará com que o resultado falhe. Isto é especialmente verdadeiro quando se designa como porta de entrada. Remova-o primeiro (como fiz abaixo) e considere adicioná-lo novamente mais tarde.
uma ponte sem porta de ponte está em estado operacional DOWN
... em qualquer sistema recente executando um systemd recente , como Debian 11 ou 12.
Conforme descrito, por exemplo, nesta pergunta/resposta com a causa descrita, por exemplo, na minha resposta nesta pergunta/resposta . Isso pode causar alguns problemas para IPv6, mas geralmente nenhum para IPv4.
A configuração fica:
Supondo que você esteja usando o Debian Bookworm, ele não obedece
/etc/network/interfaces
mais por padrão, pois usa osystemd-networkd
.Para criar uma ponte, adicione o arquivo
vm-bridge.netdev
a/etc/systemd/network/
:Agora precisamos configurar a rede para esta ponte. Criar arquivo
/etc/systemd/network/vm-bridge.network
:E então reinicie a rede:
Consulte a documentação para obter mais informações. Para configuração específica, há um guia detalhado no Arch wiki .