Есть нат, за ним машина, с машины пакеты идут через нат
на следующий роутер и дальше по рукам. А вот с нат не идут.
У нат есть два интерфейса в сеть с роутером:
eth1 Link encap:Ethernet HWaddr 00:40:F4:B2:73:3A
inet addr:172.16.1.8 Bcast:172.16.1.255 Mask:255.255.255.0
inet6 addr: fe80::240:f4ff:feb2:733a/64 Диапазон:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2851606 errors:0 dropped:0 overruns:0 frame:0
TX packets:1351378 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:928302808 (885.2 MB) TX bytes:1015102566 (968.0 MB)
Interrupt:19 Base address:0x4000
eth1:1 Link encap:Ethernet HWaddr 00:40:F4:B2:73:3A
inet addr:172.16.1.7 Bcast:172.16.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:19 Base address:0x4000
трейс с машины за нат:
traceroute to 192.168.25.4 (192.168.25.4), 30 hops max, 40 byte packets
1 172.17.0.4 0.284 ms 0.288 ms 0.290 ms
2 172.16.1.3 5.340 ms 5.443 ms 5.687 ms
3 * * *
4 * * *
5 192.168.25.4 9.220 ms 9.498 ms 9.581 ms
172.17.0.4 - адрес нат со стороны машины.
трейс с нат:
traceroute to 192.168.25.4 (192.168.25.4), 30 hops max, 40 byte packets
1 172.16.1.3 6.800 ms 7.057 ms 7.155 ms
2 * * *
3 * * *
4 * * *
5 * * *
6 * * *
Снифер показывает что пакеты с нат благополучно уходят, при отправке
пакетов с машины они уходят с интерфейса 172.16.1.7, с нат
172.16.1.8, пинги в 172.16.1.x идут с обоих машин.
trace основан на обратных сообщениях ttl истек.
смотри что у тя происходит...
1) внутренний адрес шлет пакет на внешний адрес с ttl1
2) твой шлюз отвечает что время истекло.
3) внутренний адрес шлет пакет на внешний адрес с ttl2
4) шлюз натит соурс и форвардит пакет от себя с ttl1
5) следующий hop говорит что ttl истек и отвечает на адрес в который снатилось на первом шлюзе.
6-а) или первый шлюз не догоняет, что ответный пакет (по логике) принадлежит тому-же flow, который есть в таблице трансляций.
6-б) или там есть файервольные правила, которые рубают icmp пакеты этого типа.