Я пытаюсь подключить свою сеть к IPSec VPN, и для этого мои подключения должны исходить из заданного домена. Сеть следующая:
Internal network eth1:10.0.0.1/14 eth0:1.2.3.4
----------------------------------- MY GW -----------------+
|
|
192.168.178.4 4.5.6.7 |
SERVER ------------------- VPN GW -----------------+
Сеть VPN должна видеть меня исходящим из 172.30.224.0/28, поэтому на моем шлюзе я добавил следующее правило iptables:
iptables -t nat -A POSTROUTING -d 192.168.178.4 -j SNAT --to-source 172.30.224.1
Затем из моей внутренней сети, когда я пингую 192.168.178.4, я получаю запрос на eth1 и ответ на eth0:
# tcpdump -n -i eth1 host 192.168.178.4
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth1, link-type EN10MB (Ethernet), capture size 65535 bytes
15:49:49.854809 IP 10.2.1.172 > 192.168.178.4: ICMP echo request, id 3472, seq 1, length 64
15:49:52.170758 IP 10.2.1.172 > 192.168.178.4: ICMP echo request, id 3479, seq 1, length 64
15:49:53.178692 IP 10.2.1.172 > 192.168.178.4: ICMP echo request, id 3479, seq 2, length 64
# tcpdump -n -i eth0 host 192.168.178.4
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
15:50:36.492856 IP 192.168.178.4 > 172.30.224.1: ICMP echo reply, id 3494, seq 1, length 64
15:50:37.465803 IP 192.168.178.4 > 172.30.224.1: ICMP echo reply, id 3494, seq 2, length 64
Проблема в том, что мой ответ никогда не доходит до моего хоста (10.2.1.172
в таком случае).
Шлюз также настроен для выполнения SNAT для внутренней сети в Интернет.
Я наверняка что-то здесь упускаю, но я застрял. Любая помощь будет принята с благодарностью.