Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Проблема с разрешением DNS-имен при активном VPN-соединении  (Прочитано 2632 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн EoF

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Добрый день.
Дома есть локальный DNS-сервер на маршрутизаторе, который разрешает имена локальных компов. Подключаюсь к работе по PPTP, NetworkManager прописывает в resolv.conf DNS-сервер работы, домашний DNS-сервер встает на вторую строку, в результате доступ к домашним компам по имени пропадает, пока поднят PPTP.
Как сделать так, чтобы при ответе рабочего DNS-сервера, что хост не найден, запрос переходил к домашнему серверу?

Оффлайн mihmih

  • Любитель
  • *
  • Сообщений: 64
    • Просмотр профиля
Вариантов несколько:
1. Если Ваша версия NM позволяет принудительно устанавливать DNS в настройках PPTP адрес домашнего сервера - тогда поставьте домашний (но тогда не будут "резолвиться" рабочие компы. - может в настройках NM можно поставить ДВА ДНС - свой и рабочий.)
2. В настройках рабочего VPN установить, чтоб выдавал клиенту ДВА ДНС сервера - рабочий и домашний - тогда система будет спрашивать у двух серверов.
3. Прописать имена домашних машин в /etc/hosts

Скажите, а какой тип ВПН сервера используете и через какой интернет канал подключаетесь (PPTP ведь использует GRP- который не все провайдеры маршрутизируют)

Оффлайн EoF

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Дело в том, что 2 DNS-сервера прописываются для того, чтобы когда первый не доступен (request timeout) запрос отправлялся ко второму. Как я уже сказал при подключении PPTP в resolv.conf появляются оба сервера. И когда я пытаюсь обратиться по имени к домашнему компу запрос идет к рабочему DNS-серверу. Однако запрос не отваливается по таймауту, а сервер вполне логично отвечает - хост не найден. И дальше DNS-клиент не пытается обращаться ко второму в списке DNS-серверу, т.к. ответ он получил, хоть и не тот который хотелось бы. Собственно вопрос какраз в том, чтобы заставить комп опрашивать все DNS-сервера в resolv.conf. Желателеьно бы конечно, чтобы еще и суффиксы соответствующие подставлялись.

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

Пользователь решил продолжить мысль 30 Сентября 2011, 13:34:04:
Чудесным образом проблема решилась добавлением строчки dns=dnsmasq в файл /etc/NetworkManager/NetworkManager.conf и перезапуском NetworkManager
Теперь в resolv.conf всегда единственный DNS-сервер 127.0.0.1

NetworkManager запускает dnsmasq с чудесным параметрами --no-resolv --keep-in-foreground --strict-order --bind-interfaces --pid-file=/var/run/nm-dns-dnsmasq.pid --listen-address=127.0.0.1 --conf-file=/var/run/nm-dns-dnsmasq.conf
DNS-сервера соответственно автоматом прописываются тем же NetworkManager'ом в файл /var/run/nm-dns-dnsmasq.conf

Вот так все просто, маны рулят. Зря целый год мучился :(
« Последнее редактирование: 30 Сентября 2011, 13:34:04 от EoF »

 

Страница сгенерирована за 0.036 секунд. Запросов: 25.