diferentes sub-redes na mesma interface usada por máquinas virtuais em redes brdiged

0

Eu tenho um servidor físico com uma interface de rede. O encaminhamento de IP está ativado e o firewall está configurado corretamente.

Meu provedor me atribui um endereço IP primário e 4 endereços IP de failover formam uma sub-rede diferente. O problema é que eu não sei como configurá-los de uma maneira que eu não esteja desperdiçando recursos do ipv4.

(os endereços IP neste exemplo são falsos e apenas informativos e exemplos de configuração, mas são uma analogia exata)

Servidor principal (host): IP principal: 100.0.98.116, gateway 100.0.98.115, máscara de rede 255.255.255.252.

Endereços IP de failover: 50.76.102.200 50.76.102.201 50.76.102.202 50.76.102.203

Como posso usar todos eles em máquinas virtuais usando rede em ponte (atribuída diretamente à interface do host)? No momento, tenho que adicionar 50.76.102.201 à interface principal do servidor principal como endereço secundário, com a máscara de rede 255.255.255.252. Na máquina virtual, eu uso o endereço IP 50.76.102.202 com a máscara de rede 255.255.255.252 e o gateway 50.76.102.201. Mas isso me permite usar menos endereços IPv4. Qual seria uma maneira de usá-los todos e usar o gateway 100.0.98.115?

    
por skydanc3r 19.04.2018 / 00:19

2 respostas

0

Dado que o seu provedor lhe oferece ethernet, você pode usar todos os seus endereços, ajustando um pouco a configuração. Como você pode fazer isso depende do sistema operacional das suas VMs. Por causa deste post vou assumir o linux.

De volta ao básico, o ethernet é multiponto e normalmente você pode alcançar diretamente todos os seus vizinhos de sub-rede (endereço L3) descobrindo seu MAC (endereço L2) usando o ARP. Que suas VMs sejam virtuais e um switch virtual longe da ethernet real não deve importar, na verdade você pode ir diretamente de uma NIC de VM para seu DG de provedor sem ir (logicamente, ou seja, L3) através de seu host.

O problema é que a lógica padrão, ou seja, a descoberta de vizinhas ARP funciona apenas para os mesmos destinos de sub-rede, e é por isso que seu DG (gateway padrão) deve estar em sua sub-rede. Isso pode ser alterado de várias maneiras.

O mais fácil de configurar (mas não é de todo uma boa opção) é usando o proxy ARP. A maioria dos roteadores oferece suporte ao atendimento de ARP a consultas não locais (ou seja, sub-rede adicional). Você usa isso configurando sua rota padrão apontando para sua interface ethernet. Não é legal porque você faz o ARP para cada endereço com o qual você conversa, mas funciona.

    ip address add 50.76.102.200/24 dev eth0
    ip route add default dev eth0

Uma alternativa muito fácil (e boa) é obter um endereço DG do seu provedor de serviços nessa sub-rede e usá-lo para suas VMs. Diga 50.76.102.1.

   ip address add 50.76.102.200/24 dev eth0
   ip route add default via 50.76.102.1 dev eth0

Mas se não, você pode (pelo menos no linux usando o iproute2) usar um DG que não está na sua mesma sub-rede:

    ip address add 50.76.102.200/24 dev eth0
    ip route add default via 100.0.98.115 dev eth0 onlink

Espero que você entenda a ideia.

    
por 21.04.2018 / 13:32
0

Eu não consegui corrigir esse problema da maneira que eu estava planejando. A única maneira que eu poderia usar a rede Bridged para vms era levantar o endereço IP com .201 no host como eth0: 0 alias com a máscara de rede 255.255.255.252. E atribuir ao vm o endereço IP .202 com máscara de rede 255.255.255.252 e gateway .201 - isso funciona muito bem. No entanto, muitos endereços IP são consumidos dessa forma, apenas 2 hosts são utilizáveis.

O que eu fiz foi adicionar todos os endereços IP .200-.203 como aliases eth0: 0 - eth0: 3, cada um com a máscara de rede 255.255.255.255, de modo que eles são todos utilizáveis. E eu criei um host virtual NIC apenas para o vms, que tem um lan privado no intervalo 192 e eu uso SNAT / DNAT para ligar cada vm atrás do intervalo 192 para um endereço IP público.

    
por 28.04.2018 / 20:35