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

CentOS - Сетевая карта внезапно не может связаться с устройствами за пределами локальной подсети

У меня есть сервер HP DL385p CentOS 7 (ранее CentOS 6), который подключен через одну сетевую карту (с использованием преобразователя SFP в медь) к локальной сети.

Кроме того, он использует клиент F5 VPN для опроса информации из безопасного удаленного места.

В нем также есть докер-контейнер, на котором работает Nginx с PHP.

Проблема, которую я вижу, заключается в следующем.

Сервер загружается, подключается к сети и может обмениваться данными с устройствами в Интернете, а также во внутренних локальных сетях, где это разрешено.

Затем мы подключаем F5 vpn, конечно, все еще в состоянии достичь того же, что и устройства, но с добавлением удаленно защищенных устройств через vpn.

Это будет оставлено работать на некоторое время, и внезапно сервер обнаружит, что не может взаимодействовать ни с чем, кроме локальной подсети, к которой он подключен.

Изучая сообщения, dmesg и journalctl (journalctl --this-boot --all --no-pager) не обнаруживает ничего очевидного, кроме интерфейса tun0, используемого f5 vpn как «удаляемого».

NetworkManager[1047]: <info>  (tun0): device state change: activated -> unmanaged (reason 'removed') [100 10 36]

Тем не менее, F5 vpn (f5fpc) сообщает об отсутствии изменений (он сидел в ожидании повторного подключения), и хотя это единственный показанный журнал (любого очевидного отношения к проблеме), я считаю, что это не причина, а просто симптом эта проблема.

Я имею в виду, что я считаю, что vpn F5 отключается, потому что исчезло основное требование - возможность общаться за пределами локальной подсети (включая удаленные устройства BIG-IP).

Если я проверю таблицу маршрутизации сервера, маршруты будут выглядеть нормально - с маршрутом по умолчанию к действительному шлюзу (до которого он все еще может добраться).

Интерфейс также отображается как правильно адресованный и работающий в iproute2 и net-tools.

Самое быстрое решение для временного решения (без предсказуемого периода времени, когда это произойдет в следующий раз) - запустить systemctl restart networking а затем повторно подключите F5 VPN после восстановления связи.

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

N.B: Я упоминал о CentOS 6 ранее (без использования NetworkManager), и там произошло то же самое, я обновился, полагая, что это, возможно, ядро ​​2.6 или более старые драйверы. CentOS 7, похоже, включает в себя достаточное количество драйверов be2net для сетевой карты, как показано в lsmod. Я также упомянул докер просто для того, чтобы предоставить как можно больше подробностей (насколько мне позволено).

Изменить: я написал на devcentral, если проблема связана с клиентом F5 VPN - https://devcentral.f5.com/questions/linux-big-ip-vpn-client-disconnecting-but-potential-taking-down-the-local-nic-in-its-process-47920

Изменить 2:

Таблица маршрутизации без VPN:

default via 192.168.3.254 dev eno1 proto static metric 100 192.168.0.0/22 dev eno1 proto kernel scope link src 192.168.0.22 metric 100 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1

Таблица маршрутизации с:

default via 192.168.3.254 dev eno1 proto static metric 100 192.168.0.0/22 dev eno1 proto kernel scope link src 192.168.0.22 metric 100 192.168.3.254 via 192.168.0.22 dev eno1 proto none metric 1 10.0.0.0/16 via 10.112.194.63 dev tun0 proto none metric 1 10.1.0.0/16 via 10.112.194.63 dev tun0 proto none metric 1 10.2.0.0/16 via 10.112.194.63 dev tun0 proto none metric 1 10.3.0.0/16 via 10.112.194.63 dev tun0 proto none metric 1 10.4.0.0/16 via 10.112.194.63 dev tun0 proto none metric 1 10.5.0.0/16 via 10.112.194.63 dev tun0 proto none metric 1 10.6.0.0/16 via 10.112.194.63 dev tun0 proto none metric 1 10.7.0.0/16 via 10.112.194.63 dev tun0 proto none metric 1 10.8.0.0/16 via 10.112.194.63 dev tun0 proto none metric 1 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 x.x.x.x via 192.168.3.254 dev eno1 proto none metric 1

Последний IP-адрес удален в целях конфиденциальности.