У меня четыре хоста настроены следующим образом:
У меня есть туннель IPSec через OpenSwan через Интернет между серверами B и C. Серверы A и D настроены для маршрутизации трафика к другому через B и C соответственно. Серверы A и B находятся в одной частной сети, серверы C и D - в другой.
Я могу пинговать и говорить правильно, но когда пингуюсь на сервер D с сервера A, я вижу что-то интересное в выводе tcpdump на каждом поле.
На сервере A:
04:52:12.790527 IP (tos 0x0, ttl 64, id 24219, offset 0, flags [DF], proto ICMP (1), length 84)
[Server A] > [Server D]: ICMP echo request, id 29513, seq 1, length 64
04:52:12.793453 IP (tos 0x0, ttl 62, id 44476, offset 0, flags [none], proto ICMP (1), length 84)
[Server D] > [Server A]: ICMP echo reply, id 29513, seq 1, length 64
На сервере B:
04:52:08.393560 IP (tos 0x0, ttl 64, id 24219, offset 0, flags [DF], proto ICMP (1), length 84)
[Server A] > [Server D]: ICMP echo request, id 29513, seq 1, length 64
04:52:08.395307 IP (tos 0x0, ttl 63, id 44476, offset 0, flags [none], proto ICMP (1), length 84)
[Server D] > [Server B]: ICMP echo reply, id 29513, seq 1, length 64
Сервер C:
04:52:08.395849 IP (tos 0x0, ttl 62, id 24219, offset 0, flags [DF], proto ICMP (1), length 84)
[Server B] > [Server D]: ICMP echo request, id 29513, seq 1, length 64
04:52:08.396382 IP (tos 0x0, ttl 64, id 44476, offset 0, flags [none], proto ICMP (1), length 84)
[Server D] > [Server B]: ICMP echo reply, id 29513, seq 1, length 64
Сервер D:
04:52:12.428422 IP (tos 0x0, ttl 62, id 24219, offset 0, flags [DF], proto ICMP (1), length 84)
[Server B] > [Server D]: ICMP echo request, id 29513, seq 1, length 64
04:52:12.428457 IP (tos 0x0, ttl 64, id 44476, offset 0, flags [none], proto ICMP (1), length 84)
[Server D] > [Server B]: ICMP echo reply, id 29513, seq 1, length 64
Однако приходит странное:
Почему кажется, что пакеты приходят с сервера B, а не с сервера A? Спасибо!
Похоже, B меняет поле заголовка IP SRC на свой собственный адрес. Может быть результатом работы NAT. Проверьте свой фильтр пакетов на наличие правил трансляции и измените их соответствующим образом.