Juniper Network Connect уже давно является проблемой для 64-битной Linux. Я нашел 2 решения проблемы Java (Решение 1 и 2 ), но сейчас я борюсь с новой проблемой.
Сетевое подключение вносит изменения непосредственно в файл /etc/resolv.conf. Это вызывает проблемы с более новым способом, которым Ubuntu выполняет разрешения DNS, который должен указывать DNS на локальный преобразователь / cacher: dnsmasq. Как только NC отключается и вы меняете сети, например, переходите из офиса в дом, DNS перестает работать правильно. Что происходит, так это то, что NC удаляет файл /etc/resolv.conf, который фактически имеет символическую ссылку на /run/resolvconf/resolv.conf. Что еще хуже, NC фактически удаляет исходный файл, а не ссылку. Поэтому, когда вы пытаетесь восстановить файл с помощью:
sudo ln -s /run/resolvconf/resolv.conf /etc/resolv.conf
Он завершается ошибкой, поскольку /run/resolvconf/resolv.conf теперь нет. переустановка resolvconf не исправляет это, как и запуск resolvconf. Итак, лучший способ, который я нашел на данный момент, - это сделать резервную копию /run/resolvconf/resolv.conf в другое место. После того, как вы отключите NC, я запускаю скрипт, который удаляет /etc/resolv.conf, заменяет удаленный /run/resolvconf/resolv.conf и затем снова связывает его с / etc.
Кто-нибудь знает способ избежать этого, или мне уже достаточно, чтобы он уже лучше «починил»? В любом случае, чтобы не допустить, чтобы NC сломал его.
117 О, как бы я хотел, чтобы Джунипер разобралась с их проблемами. Общеизвестно, что Juniper УЖАСНЫ в Linux и 64-битных системах, особенно вот уже более 4 лет.
Во-первых: нажатие кнопки Sign Out в окне Network Connect (окно, которое показывает IP VPN, в то время как соединено), и
Затем нажатие на кнопку Sign Out в зарегистрированной веб-странице избегает этой проблемы.
Укажите в комментарии, если это работает или нет.
Спасибо
Я ожидаю, что вам не нужно переустанавливать пакет. Простая перезагрузка resolvconf должна решить проблему:
sudo service resolvconf restart
Если это не сработает, кроме того, вы можете попробовать перезапустить сетевой сервис, который попытается записать новый набор значений в / etc / resolv. конф
sudo service network restart
После остановки сетевого подключения достаточно сделать следующее.
sudo ln -s ../run/resolvconf/resolv.conf /etc/resolv.conf
sudo resolvconf -u # Regenerate /run/resolvconf/resolv.conf
Вам не нужно создавать резервную копию /run/resolvconf/resolv.conf заранее.
Лучший способ исправить символьную ссылку /etc/resolv.conf
- запустить
sudo dpkg-reconfigure resolvconf
и ответить ДА, чтобы подготовить resolv.conf для динамических обновлений.