Necessita de comandos iptables para permitir que todo o tráfego de origem da WAN entre no lado da LAN de um roteador

1

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.

    
por prismalytics.io 30.07.2013 / 19:02

1 resposta

0

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".

    
por 30.07.2013 / 22:13