Так вот, Network Manager в Ubuntu 12.04 - это прекрасное и простое средство для управления подключениями, в том числе по VPN, т.е. как раз наш случай. Проблема в том, что в Ubuntu 12.04 в нём произвели значительные улучшения - подключили resolvconf и dnsmasq, которые, в принципе, работают неплохо. Но вот в этой связке Network Manager + resolvconf + dnsmasq + VPN случается проблема, которая не позволяет работать с локальными адресами. Об этой проблеме разработчикам известно, они работают над исправлением.
А что же делать пока проблема не решена?
Можно ручками указать dnsmasq, что для определённых доменов нужно использовать определённые DNS-сервера. Делается это так:
sudo apt-get install dnsmasq
echo "server=/intranet/10.2.3.4" | sudo tee /etc/dnsmasq.d/intranet.conf
sudo killall dnsmasq && sudo service dnsmasq restart
Пояснения: первым шагом мы устанавливаем полноценный dnsmasq, чтобы все запросы к DNS обрабатывались через него. Вторым добавляем конфигурационный файл для нашего сервера. В этой строчке intranet
- это суффикс всех внутренних доменов (может содержать точки), которые должны резолвиться через внутренний DNS сервер, 10.2.3.4
- адрес этого сервера, а intranet.conf
- название файла, в котором хранится эта настройка. Третьим шагом мы отключаем работающий в данный момент dnsmasq и запускаем его по новой, уже в виде сервиса и уже с новой конфигурацией.Всё, с этого момента все адреса *.intranet будут резолвиться через сервер 10.2.3.4 (или какие вы там укажите значения).
Единственный минус в том, что работать это будет вне зависимости от состояния VPN-соединения, но это не большая проблема.
Вот с этим я и столкнулся в linux mint 13. Установил систему коллеге по работе и никак не шёл vpn. Позвонил в поддержку, сказали ip сервера их и всё пошло. Тоже выход и более простой.
ОтветитьУдалитьВидишь, какое дело. Внутренний сервер может быть настроен отвечать несколько иначе, чем любой публичный DNS. Ну например, на нём могут блокироваться какие-то адреса или ещё что-то, или он может вообще не отвечать на запросы об именах вне внутренней зоны. И поэтому может требоваться иметь именно два сервера.
УдалитьИ к тому же, такое подключение может быть нужно не постоянно, а включаться время от времени, т.к. доступ к интернету может быть организован по-другому (например, через проводного провайдера). И не весь трафик должен идти через эту сеть.
В общем, в ситуациИ, в которой столкнулся я было невозможно просто взять и прописать внутривпновский сервер как единственный постоянный сервер DNS.
Конечно, если единственное и основное подключение к сети организовано через внутреннюю VPN сеть, то можно действительно просто вручную прописать внутренний DNS.