Configurando VMs em diferentes sub-redes

0

Eu executo um servidor no IP X.Y.3.7 e quero executar várias VMs usando o libvirt.

Eu configurei um dispositivo de ponte:

auto  eth0
iface eth0 inet manual

auto br0
iface br0 inet static
address   X.Y.3.7
broadcast X.Y.3.31
netmask   255.255.255.224
gateway   X.Y.3.1
bridge_ports none
bridge_ports eth0
...

Tudo funciona bem se usar o primeiro dos meus três IPs adicionais: X.Y.3.9

No entanto, os outros 2 são de uma sub-rede diferente X.Y.4.101 X.Y.4.102

A abordagem de rede em ponte não parece funcionar com convidados de sub-redes diferentes? Quais alternativas eu tenho?

    
por CygnusOlor 23.05.2014 / 16:16

1 resposta

0

Você br0 une somente o tráfego de rotas na sua sub-rede X.Y.3.0/27 .

Você deve criar outra interface de ponte para sua segunda sub-rede, ou expandir o tamanho de sua br0 netmask.

Por exemplo, você poderia criar outra ponte, br1 . Você precisaria usar 255.255.255.248 como sua máscara de rede para usar X.Y.4.101 como um IP de host; se você usar 255.255.255.252 , X.Y.4.101 seria seu gateway padrão.

auto br1
iface br1 inet static
address   X.Y.4.100
netmask   255.255.255.248
gateway   X.Y.4.97
broadcast X.Y.4.103
bridge_ports eth0

Se você deseja unir essas duas sub-redes em uma que use a mesma interface de ponte (ou seja, você não está usando endereços IP dessa sub-rede maior em nenhum outro lugar), basta recalcular uma máscara de rede e um endereço de broadcast apropriados :

auto br0
iface br0 inet static
address   X.Y.3.7
broadcast X.Y.7.255
netmask   255.255.248.0
gateway   X.Y.3.1
bridge_ports none
bridge_ports eth0

A desvantagem de usar essa segunda abordagem é que você acaba criando uma sub-rede muito grande de endereço 2048, de X.Y.0.0 - X.Y.7.255

Se você estivesse disposto a mexer na sua tabela de roteamento (e eu não posso recomendar essa sugestão, pois quebraria a notação e o roteamento no estilo CIDR) você poderia criar uma máscara de rede mais complicada para essa sub-rede, excluindo mais IP endereços Geralmente, é uma má ideia por um monte de razões.

    
por James S. 23.05.2014 / 19:02