некоторые серверы не отвечают на SYN, если клиент использует VPN

У нас есть некоторые серверы ubuntu 18.04 (как физические, так и виртуальные), которые игнорируют эхо-запросы и TCP-соединения, поступающие от клиентов, подключенных к нашей интрасети через VPN.

Это только новые установки 18.04, которые демонстрируют эту проблему (с 16.04, обновленный до 18.04, это нормально).

Я разработчик программного обеспечения, а не администратор сети / системы. Это тестовые серверы - наш ИТ-отдел не склонен разбираться в проблеме (да и без окон). У меня нет доступа к сетевой инфраструктуре или настройкам компании.

У меня есть два физических сервера:

  • serverA: 172.24.8.114 ubuntu 18.04 (обновлено с 16.04). Это работает.
  • serverB: 172.24.8.96 ubuntu 18. 04 (свежая установка). Это не работает для клиентов VPN.

Если я нахожусь в подсети 172.24.8.X (т. Е. В офисе), я могу пинговать и использовать curl / ssh как для serverA, так и для serverB Если я работаю из дома (ноутбук с Windows, с виртуальными машинами WSL и linux), я использую подсеть 10.50.50.X, и я могу пинговать и использовать curl / ssh только для serverA. VPN - это Sonicwall NetExtender (требуется по работе).

При попытке TCP-соединения с serverB serverB получает SYN, но никогда не отвечает SYN-ACK. Повторная передача TCP происходит через 3 секунды. Точно так же запросы ICMP ping принимаются, но никогда не отвечают. (подтверждено tshark / wirehark)

Но я не вижу никакой разницы между serverA и serverB, которая могла бы вызвать это. Это не проблема оборудования - есть другие серверные виртуальные машины, демонстрирующие ту же проблему.

Ни одно из предложений в Сервер не отправляет пакет SYN / ACK в ответ на пакет SYN работал.

  • sysctl Настройки по существу те же.
  • ufw неактивен.
  • iptables -L , по сути, то же самое.

На что еще мне следует обратить внимание, чтобы определить, почему serverA можно проверять и устанавливать TCP-соединения из любого места, но serverB будет отвечать только на эхо-запросы и устанавливать TCP-соединения от него локальная подсеть?

Изменить: ss -tan не показывает сокетов в состоянии SYN_RECV на serverB. И serverA, и serverB могут пинговать и устанавливать TCP-соединения с моим ноутбуком. tshark использовался для сбора пакетов на serverA и serverB, затем копировался и анализировался с помощью wirehark.

0
задан 5 October 2018 в 05:02
2 ответа

На машине с несколькими сетевыми адаптерами. В некоторых случаях SYN / ACK отправляется в другую сеть, а не в сеть, откуда пришел SYN. ​​

Требуется явный маршрут. быть в файле netplan. См. https://askubuntu.com/questions/1030527/multiple-nics-under-ubuntu-18-04

0
ответ дан 5 December 2019 в 05:15

Я вижу точно такую ​​же проблему. В нашем случае, видимо, виноваты «докерные» интерфейсы. Если эти интерфейсы выйдут из строя, мы сможем подключиться к сервисам.

0
ответ дан 5 December 2019 в 05:15

Теги

Похожие вопросы