Tabela de roteamento com 3 interfaces

1

Eu estou tentando configurar em um servidor 2 redes que se conectam à internet através de uma terceira interface. A topografia é a seguinte:

  • eth0: 192.168.0.1 é a interface da internet e rotas através 192.168.0.254
  • eth1: é uma das redes locais: 172.16.1.0
  • eth2: é o outro: 172.16.2.0 eth1 e eth2 são configurados exatamente da mesma maneira em / etc / network / interfaces

Eu tenho o seguinte resultado da rota:

> Kernel IP routing table 
> Destination     Gateway         Genmask         Flags Metric Ref    Use Iface 
> default         192.168.0.254   0.0.0.0         UG    100    0        0 eth0
> 172.16.1.0      *               255.255.255.0   U     0      0        0 eth1
> 172.16.2.0      *               255.255.255.0   U     0      0        0 eth2
> 192.168.0.0     *               255.255.255.0   U     0      0        0 eth0

De qualquer máquina em 172.16.1.0, posso executar o ping 8.8.8.8 ou qualquer endereço dentro da minha rede. De máquinas em 172.16.2.0 e só pode pingar máquinas locais e não acessar a Internet. Então, ping 8.8.8.8 falha.

Por que isso? Eu tentei com o ufw ativado e desativado. Eu não entendo porque a eth2 não é roteada pela eth0 para a internet!

Obrigado pelo conselho de usar o traceroute. O servidor liga bem as duas sub-redes. Eu me conecto de qualquer máquina em 172.16.1.x para qualquer em 172.16.2.xe vice-versa. Parece que a manipulação dos pacotes para a interface da Internet, que coloca problemas para 172.16.2.0. Aqui estão 2 traceroutes:

da máquina 172.16.1.6:

traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
 1  gaudi.wombats.org (172.16.1.1)  0.264 ms  0.257 ms  0.484 ms
 2  192.168.0.254 (192.168.0.254)  1.132 ms  1.130 ms  1.122 ms
 3  88.161.205.254 (88.161.205.254)  24.379 ms  24.837 ms  26.092 ms

da máquina 172.16.2.2:

traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
 1  172.16.2.1 (172.16.2.1)  0.338 ms  0.336 ms  0.318 ms
 2  * * *
 3  * * *
 4  * * *
 5  * * *
 6  * * *
 7  *^C

Portanto, embora a rota indique que o padrão é 192.168.0.254, ela não parece se aplicar a pacotes provenientes de 172.16.2.0.

    
por JanP 25.12.2015 / 19:03

1 resposta

1

O truque era simples, esqueci de permitir o mascaramento da interface eth2. Então eu adicionei a seguinte linha em /etc/ufw/before.rules (depois da mesma linha para eth1):

-A POSTROUTING -s 172.16.2.0/24 -o eth0 -j MASQUERADE

Isso fez o truque!

    
por JanP 26.12.2015 / 13:03