Я соединяюсь с совместно использованным компьютерным средством Университета путем соединения с Университетом VPN и использования SSH для входа в систему. Это прекрасно на моем использовании установки Windows Cygwin. Однако на моей установке Ubuntu SSH зависает.
Первоначально VPN не получала доступа в Интернет вообще, но я зафиксировал это путем удаления dns=dnsmasq
от/etc/NetworkManager/NetworkManager.conf, но это не зафиксировало ошибку SSH.
Также предшествующее предупреждение, что я плохо знаком с Ubuntu.
Это походит на проблему с DNS и более конкретно DNS при использовании dnsmasq
с VPN. Существует известная проблема при использовании dnsmasq
и NetworkManager с VPN, которая повредит разрешение DNS в dnsmasq
. Upstream подтвердил, но также и ничего не сделал к фиксации его. Это было проблемой с тех пор 16.04 и, кажется, не находится на их радаре для фиксации в ближайшее время. Мое предположение - то, что они понятия не имеют, где это на самом деле повреждается. (Ошибка LP № 1588018, среди многих других ошибок на той же проблеме)
Решение не состоит в том, чтобы использовать dnsmasq
вообще, и вместо этого используйте другую систему DNS или набор серверов DNS по умолчанию, обычно путем насильственного переопределения resolvconf
сервисные настройки.
Однако это - главное, нетривиальное изменение и может вызвать другие проблемы. Поэтому нет никакого реального обходного решения в настоящее время к этой проблеме.
ПРЕДУПРЕЖДЕНИЕ: Это - мое обходное решение к этой проблеме и является нестандартным, нетривиальным решением проблемы DNS. Используйте только на Ваш собственный риск.
Мое обходное решение было болезненным, нетривиальным. Я установил и настроил bind9
быть передачей сопоставитель DNS, так, чтобы это вперед все запросы DNS прочь Google DNS (8.8.8.8
и 8.8.4.4
), и затем после того как это работало, я пошел и отредактировал мой /etc/resolvconf/resolv.conf.d/head
файл для запросов локального DNS. Обратите внимание, что я должен был добавить локальную привязку DNS для 127.0.2.1
и для этого для работы я должен насыпать пользовательские диапазоны IP мой lo
адаптер путем добавления этих строк к моему /etc/network/interfaces
файл (я включал значение по умолчанию lo
автоматические объявления / петлевые объявления для контекста):
auto lo
iface lo inet loopback
up ip -4 addr add 127.0.2.1/8 dev lo
down ip -4 addr del 127.0.2.1/8 dev lo
... и путем установки bind9
в /etc/bind/named.conf.options
папка так, чтобы это было теперь в блоке конфигурации опций:
listen-on { 127.0.2.1; };
После того как я перезагрузил систему после внесения тех изменений, система начала принимать значение по умолчанию к использованию моего локального bind9
сопоставитель.
Однако это предотвращает VPNs, которые имеют Интранет и внутренние разрешения DNS и внутренние домены от надлежащего разрешения; это представило другие проблемы, но ничто я не мог работать вокруг (продвинутым пользователем и системным администратором).
Для предоставления значимого ответа нам будет нужна еще некоторая информация. Я предполагаю, что VPN является Cisco Openconnect VPN. Это правильно? Без больше информации я предполагаю, что Ваша проблема находится в установке VPN.
Если так, существует собственный клиент от Cisco, которая работает очень хорошо, но это не необходимо. Ваш университет должен предоставить ссылку на загрузку и направления для установки того клиента.
Если Вы предпочитаете решения с открытым исходным кодом, существует программа, названная openconnect. Направления для его использования здесь.
Попробуйте 1 из этих опций. Если Вы не будете заботиться об открытом исходном коде, то честно клиент Cisco будет работать наиболее легко. Если Вы действительно заботитесь, то попробуйте openconnect.
Всего наилучшего