Назад | Перейти на главную страницу

Сервер Ubuntu - пакеты из разных сетей не проходят (очищенные iptables)

Я установил новый сервер Ubuntu, и у меня возникла очень странная проблема, связанная с сетью - процессы, запущенные на сервере, не могут `` видеть '' пакеты, исходящие из внешних сетей, но они появляются, когда я запускаю tcpdump на единственный сетевой интерфейс сервера. Однако, когда я отправляю точно такой же трафик с другого сервера в той же подсети, он проходит до конца.

Первоначально я столкнулся с проблемой с ловушками SNMP (UDP 162/10162), поступающими на сервер (предполагается, что это сервер регистрации), но та же проблема сохраняется на других портах (попробовал пару случайных высокоскоростных портов, а также несколько привилегированные порты).

Я написал два коротких сценария Python, один из которых работает на «целевом» сервере и сбрасывает трафик, поступающий на один из портов, а два идентичных сценария запускаются на двух других серверах (один в локальной сети, другой во внешнем network), генерируя трафик - я могу видеть трафик с обоих серверов при запуске tcpdump, но прослушивающий скрипт python сбрасывает трафик только с локального сервера.

Я несколько раз проверял iptables и сбрасывал все правила во всех цепочках и таблицах.

Я очень озадачен этим, если у кого-то есть подсказка, что я могу проверить дальше, буду очень благодарен.

Заранее спасибо.

Спасибо за ответы, в конце концов мне удалось исправить это с помощью моего коллеги.

У целевого сервера был только локальный маршрут в таблице маршрутизации и не было маршрута по умолчанию. Я предположил, что у него не обязательно должен быть шлюз по умолчанию, так как будет только входящий трафик UDP. Проблема исчезла после настройки шлюза по умолчанию - трафик, поступающий из внешних сетей, теперь правильно достигает процесса прослушивания.

Пожалуйста, опубликуйте вывод iptables -vnL и iptables -t nat -vnL чтобы мы могли видеть ваши наборы правил и определять возможные проблемы с брандмауэром.

Кроме того, если ваши службы работают на 127.0.0.1, то вы должны либо:

1) Измените интерфейс, к которому привязана ваша служба lo или из 127.0.0.1

2) Создайте правило NAT, которое принимает пакеты, поступающие на физический интерфейс, и преобразует подключение к 127.0.0.1 для внешних подключений для доступа к вашей службе (для работы требуется ядро ​​версии 3.13; в зависимости от вашей версии Ubuntu это может быть уже доступно в вашем ядре)

Пожалуйста, опубликуйте вывод netstat -anp | grep <your service's port> и размещайте любые строки, начинающиеся с tcp или tcp6.

Надеюсь это поможет