Eu tenho o site para site VPN na caixa Debian que é configurada pelo rackoon. Ele funciona bem, no entanto, porque as sub-redes se sobrepõem NAT é usado em ambas as extremidades da VPN (1.1.1.1/32 e 2.2.2.2/32)
Em ambas as sub-redes eu tenho serviços que quero compartilhar, então eu tenho o iptables encaminhando essas portas para mim para o servidor interno, o que funciona bem.
Também consigo alcançar esses serviços de ambas as extremidades da VPN - por isso, 1.1.1.1/32 e 2.2.2.2/32.
Agora tenho algumas outras sub-redes conectadas à caixa 2.2.2.2/32:
10.0.3.0/24
10.0.4.0/24
....
(tabela de roteamento completa anexada no final)
e para computadores dentro dessas redes eu preciso alcançar um serviço - na caixa 1.1.1.1 porta 1111. Então eu pensei, vou usar o iptables mais uma vez e encaminhar todo o tráfego tcp para 1.1.1.1 com mudança de fonte. Então fiz isso da seguinte maneira:
iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -d 1.1.1.1 -j SNAT --to-source 2.2.2.2
iptables -t nat -A PREROUTING -p tcp -d 2.2.2.2 --dport 1111 -j DNAT --to-destination 1.1.1.1
Mas agora, quando tento me conectar a esse serviço, estou recebendo o erro "Nenhuma rota para hospedar":
telnet 10.0.0.1 1111
Trying 10.0.0.1...
telnet: Unable to connect to remote host: No route to host
Então, estou um pouco confuso. Eu acho que o problema pode estar no roteamento na caixa Debian:
2.2.2.2 via 1.1.1.1 dev eth0 src 1.1.1.1
No entanto, não sei ao certo por que isso não funciona?
Roteamento da caixa Debian:
10.0.0.0/27 dev eth1 proto kernel scope link src 10.0.0.1
10.0.2.0/24 via 10.0.0.2 dev eth1
10.0.3.0/24 via 10.0.0.3 dev eth1
10.0.4.0/24 via 10.0.0.4 dev eth1
10.0.5.0/24 via 10.0.0.5 dev eth1
10.0.6.0/24 via 10.0.0.6 dev eth1
10.0.7.0/24 via 10.0.0.7 dev eth1
1.1.1.1 via 2.2.2.2 dev eth0 src 2.2.2.2
Alguma idéia do que pode estar errado?