Existem dois problemas com esta configuração:
- Os hosts na LAN1 não sabem nada sobre o segmento LAN2. Quando você faz ping de um host na LAN1 (vamos chamá-lo de host1) do SRV-02, o pacote será encaminhado através do SRV-01 e chegará ao host1. No entanto, o host1 enviará a resposta para o gateway padrão (roteador ISP), pois não possui uma rota específica para a LAN2. (O roteador do ISP também a) também o enviará ao seu gateway padrão, pois ele também não sabe sobre a LAN2, ou b) descartará o pacote, pois ele vem de uma fonte desconhecida, não da LAN local.
- Ao tentar acessar a WAN da LAN2, os pacotes serão encaminhados através do roteador SRV-02 para o ISP, onde duas situações são possíveis:
- O roteador não irá traduzir NAT o pacote como a fonte do pacote (LAN2) não é sua LAN local (esta é a situação mais provável), ou
- O roteador irá NAT traduzir o pacote e enviá-lo para a Internet. No entanto, quando a resposta chegar e o destino for convertido de volta para o endereço da LAN2, o pacote não será entregue, pois o roteador do ISP não possui uma rota para essa rede. O pacote será enviado incorretamente para o gateway padrão (ISP).
Esses problemas podem ser corrigidos adicionando uma rota estática ao roteador LAN2 para ISP e adicionando uma configuração NAT de origem para LAN2 no SRV-01. No entanto, isso não é possível devido a nenhum acesso de administrador ao roteador do provedor.
Existem duas soluções para contornar:
Torne o SRV-01 um roteador completo para hosts LAN1 e LAN2
- Adicione outro adaptador de rede ao SRV-01 (totalizando 3 no total)
- Altere a topologia da seguinte forma:
.
WAN -> ISP router -> LAN1 -> SRV-01 +-> LAN3 (for hosts originally in LAN1)
+-> LAN2 -> SRV-02
Basicamente, estamos transformando o SRV-01 em um roteador para os dois segmentos da LAN.
- Isso exigirá a movimentação de hosts originalmente em LAN1 para uma nova sub-rede LAN3 - digamos que usamos
10.0.1.0/24
- A configuração de rede do SRV-01 precisará ser alterada da seguinte forma:
/ etc / network / interfaces:
# LAN1 - to ISP router
auto eth0
iface eth0 inet dhcp
# we can even use dhcp as the IP address is not really important
# - there are no more hosts on LAN1 apart from ISP router and SRV-01
# LAN3 - for hosts originally in LAN1
iface eth1
address 10.0.1.1
netmask 255.255.255.0
# LAN2
iface eth2
address 10.0.2.1
netmask 255.255.255.0
Regras de iptables para fazer o acesso à WAN funcionar:
iptables -t nat -A POSTROUTING -o eth0 -s 10.0.1.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -s 10.0.2.0/24 -j MASQUERADE
Como alternativa, se você optar por manter o endereço IP estático no SRV-01 na eth0, as regras poderão ser alteradas (embora MASQUERADE
ainda funcione):
iptables -t nat -A POSTROUTING -o eth0 -s 10.0.1.0/24 -j SNAT --to-source 192.168.5.8
iptables -t nat -A POSTROUTING -o eth0 -s 10.0.2.0/24 -j SNAT --to-source 192.168.5.8
- O DHCP precisará ser configurado no SRV-01 na eth1 (LAN3, para hosts originalmente na LAN1) e, possivelmente, na eth2 (LAN2), se necessário. (Em ambos os casos, o gateway será o endereço local de eth1 ou eth2, respectivamente, mas não é preciso dizer:)
Isso possibilitará a comunicação entre LAN3 e LAN2 (via SRV-01, que é o gateway padrão para ambos). O acesso WAN também funcionará a partir de LAN3 e LAN2, graças ao NAT de fonte dupla.
B. Torne SRV-01 um servidor DHCP para LAN1
Essa abordagem não é tão limpa quanto acima, mas é um pouco mais simples. Ele assume que você é capaz de desabilitar o DHCP no roteador ISP
- Desativar DHCP no roteador do provedor de serviços de Internet
- Configure o DHCP para a LAN1 no SRV-01 e torne o SRV-01 (192.168.5.8) o gateway padrão para a LAN1
- Configure a conversão NAT de origem para LAN2 no SRV-01 para que o acesso à WAN funcione a partir de LAN2:
.
iptables -t nat -A POSTROUTING -o eth0 -s 10.0.2.0/24 -d 192.168.5.4 -j SNAT --to-source 192.168.5.8
iptables -t nat -A POSTROUTING -o eth0 -s 10.0.2.0/24 ! -d 192.168.5.0/24 -j SNAT --to-source 192.168.5.8
A primeira linha ativa o SNAT para que os hosts LAN2 possam acessar o próprio roteador do ISP e a segunda linha desative o SNAT para o acesso LAN2-LAN1.
Mais uma vez, essa abordagem não é tão limpa quanto a anterior, pois há dois roteadores na mesma sub-rede (SRV-01, roteador ISP). Quando eu usei essa abordagem eu notei que meu segundo roteador (SRV-01 neste cenário) enviaria redirecionamentos ICMP para o roteador ISP, pois veria que o cliente (host na LAN1) e o roteador upstream (roteador ISP) estão no mesma LAN. Isso pode não ser desejado, pois as políticas de rede implementadas no SRV-01 poderiam ser contornadas.
Espero que ajude.