Tudo está fazendo NAT. Portanto, 192.168.1.0 e 192.168.2.0 não existem fora de suas LANs locais. Defina os dois roteadores internos para o modo "roteado" (não NAT). Boa sorte em obter o modem a cabo para endereços NAT "estrangeiros".
Eu tenho três roteadores. A interface WAN do Router0 se conecta ao ISP, e a interface WAN do Roteador1 e do Roteador2 se conecta às interfaces LAN do Roteador0 (ou seja, com fio). Então, é assim que parece, incluindo as atribuições de espaço IP:
(Motorola SBG6580 Cable Modem)
Router0 LAN IP: 192.168.0.1 (also the default route for both WAN connections shown next).
(Linksys E4200)
Router1 WAN IP: 192.168.0.3
Router1 LAN IP: 192.168.1.1 (also the default route for clients on the 192.168.1.xxx subnet).
(ASUS RT-AC66U)
Router2 WAN IP: 192.168.0.4
Router2 LAN IP: 192.168.2.1 (also the default route for clients on the 192.168.2.xxx subnet).
Então, em resumo, a porta WAN do Roteador1 & Cada roteador2 se conecta a uma porta LAN do roteador0, e ambos são ativados por NAT (ou seja, são NAT).
E aqui estão as tabelas de roteamento para o Roteador1 e Roteador 2, respectivamente (ou seja, netstat -rn):
Kernel IP routing table (Router1) ... eth0 here is the WAN interface.
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.0.1 * 255.255.255.255 UH 0 0 0 eth0
192.168.2.0 192.168.0.4 255.255.255.0 UG 0 0 0 eth0 <========== My Static Route Entry
192.168.1.0 * 255.255.255.0 U 0 0 0 br0
192.168.0.0 * 255.255.255.0 U 0 0 0 eth0
127.0.0.0 * 255.0.0.0 U 0 0 0 lo
default 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
Kernel IP routing table (Router2) ... vlan2 here is the WAN interface.
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.0.1 0.0.0.0 255.255.255.255 UH 0 0 0 vlan2
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 br0
192.168.1.0 192.168.0.3 255.255.255.0 UG 0 0 0 vlan2 <========== My Static Route Entry
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 vlan2
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 vlan2
Observe as rotas estáticas (apontadas pela linha de setas) que configurei em cada roteador (Roteador1 e Roteador2). Sua intenção é permitir que os clientes na sub-rede LAN do roteador1 cheguem aos clientes na sub-rede LAN do roteador2 e vice-versa.
Mas isso não funciona ainda porque, em seguida, preciso adicionar entradas "iptable" no Roteador1 e no Roteador2 para dizer a cada uma para permitir que o tráfego de origem WAN ALL seja transmitido para sua LAN lado.
Então, neste ponto, usando dois PCs com fio (um conectado à sub-rede LAN do Roteador1 e outro conectado à sub-rede LAN do Roteador2), posso verificar se os seguintes pings funcionam:
PC1 -- 192.168.1.4: Can ping 192.168.0.4 (the WAN interface of the opposite router) and can ping 192.168.2.1 (the LAN interface of the opposite router).
PC2 -- 192.168.2.4: Can ping 192.168.0.3 (the WAN interface of the opposite router) and can ping 192.168.1.1 (the LAN interface of the opposite router).
mas neste ponto, nenhum dos PCs pode alcançar os clientes IP dentro da sub-rede LAN do roteador oposto. Como mencionado acima, eles podem executar o ping do IP da WAN do roteador oposto, e eles podem executar o ping do IP de rota padrão da sub-rede da LAN oposta, mas não podem fazer ping de clientes IP mais profundamente na sub-rede da LAN oposta.
Isso, acredito, é porque também precisa haver uma entrada IPTABLES no Roteador1 e no Roteador2 que permite que TODO o tráfego originado no lado da WAN entre no lado da LAN - o que quase nunca é um comportamento padrão do roteador por motivos de segurança. Mas, neste caso, é seguro fazê-lo, já que a interface WAN do Roteador1 e do Roteador2 não estão se conectando diretamente à Internet do provedor.
Então eu tenho que criar os comandos iptables (1) (firewall) para implementar isso. Eu estarei relendo a página man do Unix para chamar a sintaxe do iptables.
Mas talvez algumas pessoas que já são boas com o iptables, possam sugerir quais devem ser esses comandos. Para ajudar, abaixo está a entrada NAT do iptables para o Roteador1 e o Roteador2. Cada um deles precisa das respectivas regras de iptables para permitir que todo o tráfego de origem da WAN atinja a rede LAN:
Router1 ... (saída de 'iptables -L -t nat'):
admin@RT-AC66U:/tmp/home/root# iptables -L -t nat
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
VSERVER all -- anywhere 192.168.0.3
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE all -- !192.168.0.3 anywhere
MASQUERADE all -- anywhere anywhere MARK match 0xd001
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain VSERVER (1 references)
target prot opt source destination
DNAT tcp -- anywhere anywhere tcp dpt:webcache to:192.168.1.1:80
DNAT tcp -- anywhere anywhere tcp dpt:8443 to:192.168.1.1:8443
VUPNP all -- anywhere anywhere
Chain VUPNP (1 references)
target prot opt source destination
Router2 ... (saída de 'iptables -L -t nat'):
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
DROP all -- anywhere 192.168.2.0/24
WANPREROUTING all -- anywhere 192.168.0.4
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE all -- anywhere anywhere
SNAT all -- 192.168.2.0/24 192.168.2.0/24 to:192.168.2.1
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain WANPREROUTING (1 references)
target prot opt source destination
DNAT icmp -- anywhere anywhere to:192.168.2.1
Agradeço a ajuda com isso (isto é, os comandos iptables). Se eu chegar primeiro à solução, postarei os comandos do iptables.
Tudo está fazendo NAT. Portanto, 192.168.1.0 e 192.168.2.0 não existem fora de suas LANs locais. Defina os dois roteadores internos para o modo "roteado" (não NAT). Boa sorte em obter o modem a cabo para endereços NAT "estrangeiros".