OpenConnect VPN через NetworkManager: неверный маршрут по умолчанию, все еще используется локальный шлюз?

Я использую network-manager-openvpn для подключения к моей университетской VPN VPN работает, когда я просто запускаю openconnect -u username vpn.host.edu из командной строки (хотя он выдает много сообщений об ошибках ip route ).

Однако, при запуске VPN через графический интерфейс NetworkManager результирующая таблица маршрутизации искажается:

$ ip route
default via 192.168.178.1 dev enxXXXXXXXXXXXX
default dev vpn0 proto static scope link metric 50 
default via 192.168.178.1 dev enxXXXXXXXXXXXX proto dhcp metric 20100 
[...]

Первая запись приводит к тому, что весь трафик по-прежнему маршрутизируется через локальный шлюз. Следовательно, например, разрешение имен с помощью DNS-серверов VPN не выполняется, и VPN перестает работать. Когда я удаляю первую запись в таблице маршрутизации с ip route del default via 192.168.178.1 dev enxXXXXXXXXXXXX , тогда все начинает работать, как задумано.

Все сетевые настройки для VPN-подключения установлены на «Автоматически» ", так почему же запись VPN не является первым маршрутом по умолчанию?

PS Я знаю, что есть обходные пути, описанные в Network Manager не устанавливает IP4.GATEWAY для соединения OpenVPN и Network Manager не устанавливает IP4.GATEWAY для соединения OpenVPN - но я хотел бы исправить это, не запуская команда оболочки каждый раз.

0
задан 3 December 2020 в 11:49

1 ответ

Да, как обычно, я нашел (более или менее) решение через 5 минут после публикации вопроса :-/

Похоже, что эта ошибка связана с: https:/ /gitlab.gnome.org/GNOME/NetworkManager-openconnect/-/issues/33#note_889793

В связанном комментарии предлагается использовать скрипт в /etc/network/if-up.d/ для исправления маршруты, я использую это сейчас.

#!/bin/sh
# Hacky workaround bug in NM not setting the default routes.
if [ "$IFACE" = "vpn0" ]; then
  #ip route replace default via 0.0.0.0 dev vpn0
  ip route del default via 192.168.178.1 dev enxXXXXXXXXXXXX
fi

Я бы все же хотел, чтобы это было исправлено без хакерских скриптов, но, видимо, это известная ошибка.

0
ответ дан 3 December 2020 в 09:18

Другие вопросы по тегам:

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