1

Я использую Ubuntu 12.04 LTS, но настроил NetworkManager, чтобы НЕ использовать встроенный dnsmasq для разрешения DNS ( закомментировав dns=dnsmasq в /etc/NetworkManager/NetworkManager.conf), как это предлагается в этом отчете об ошибках Ubuntu. Это работает нормально и приводит к файлу /etc/resolv.conf который содержит в себе реальные DNS-серверы, а не ссылку на dnsmasq NetworkManager, работающую на localhost .

nameserver my.isps.name.server
search my.isp.com

Проблема возникает, когда я пытаюсь подключиться к своему провайдеру VPN. Мой VPN-провайдер настроен так, что он передает настройки DNS-сервера клиентам. И действительно, похоже, это работает, потому что когда я подключаюсь к своему VPN-серверу, мой resolv.conf обновляется до:

nameserver vpn.dns.server.1
nameserver vpn.dns.server.2
nameserver my.isps.name.server
search my.isp.com

Моя проблема заключается в том, что пока VPN-соединение установлено, я хочу полностью удалить настройки DNS своего провайдера из картинки (то есть избавиться от nameserver my.isps.name.server и search my.isp.com в моем окне выше). примеры, ТОЛЬКО сохраняя настройки DNS-серверов, которые были отключены VPN). К сожалению, я не могу найти способ сделать это. Я попытался сделать это с помощью специального скрипта up , но похоже, что сам NetworkManager-openvpn использует свой собственный скрипт up .

Есть идеи?

2 ответа2

1

У меня / была точно такая же проблема с CrunchBang 11; возможно, мое полуудовлетворительное решение будет работать на Ubuntu, поскольку оба они основаны на Debian.

Экспериментом я обнаружил, что если я оба:

  • установите пакет resolvconf и

  • явно указать DNS-серверы в конфигурации VPN в NetworkManager

затем подключение к VPN полностью заменяет DNS-серверы в /etc/resolv.conf серверами, настроенными в NetworkManager для VPN. Я предпочел бы просто использовать предоставленную конфигурацию DNS VPN-сервера, но я думаю, что использование общедоступного DNS (например, OpenNIC) в конфигурации VPN - это нормально. Я бы предположил (но не уверен), что DNS-запросы отправляются через VPN, в отличие от запросов к DNS-серверу локальной сети. (В моем конкретном случае файл /etc/resolv.conf содержал немаршрутизируемый IP-адрес, указывающий на встроенный DNS локального маршрутизатора Wi-Fi, который, в свою очередь, перенаправлялся локальному провайдеру.)

(Может быть, это побочный эффект от указания трех или более DNS-серверов в конфигурации VPN; у меня их четыре. Без resolvconf сгенерированный файл resolv.conf содержит все четыре или пять DNS-серверов с предупреждающим комментарием о том, как можно использовать только три, а локальный DNS-сервер является последним, но все еще потенциально пригодным для использования. С resolvconf включены только три, которые, как мне кажется, "выжимают" нежелательный DNS-сервер с низким приоритетом.

-1

Удалите пакет resolvconf , поскольку он плохо работает с комбинацией vpnc (для подключения к VPN требуются записи DNS-сервера) и настраивается через графический интерфейс network-manager . Я могу подтвердить, что это решило проблему с Ubuntu 14.04 и 16.04 для меня.

sudo apt-get purge resolvconf -y

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .