dnsmasq работает в терминале, но не в приложениях в Ubuntu 12.04

В действительности я пытаюсь добавить Server=/example.com/11.22.33.44 в конфигурацию dnsmasq для маршрутизации запросов для example.com к определенному серверу имен. Чтобы реализовать это, я сделал следующее.

  • Я закомментировал строку dns=dnsmasq в /etc/NetworkManager/NetworkManager.conf и перезапустил сетевой менеджер
  • Я apt-get install dnsmasq
  • Я отредактировал /etc/dnsmasq.conf под свои нужды и перезапустил dnsmasq

Из моего терминала тесты, подобные host foo.example.com, работают правильно. Но все приложения (например, Firefox, midori, remmina), похоже, используют «старые» настройки (то есть, я вижу, что DNS-запросы выходят из строя и терпят неудачу с tcpdump). Я потерял, как объединить автоматические и ручные настройки, как это.

РЕДАКТИРОВАТЬ: Между тем я даже попробовал необычные и отчаянные меры (например, перезагрузка) без успеха. Также кажется, что различие не является коренным по сравнению с другими приложениями. Скорее, даже в одном терминальном сеансе я наблюдаю

#host foo.example.com
foo.example.com has address 1.2.3.4
#ping foo.example.com
ping: unknown host foo.example.com

В конечном счете, это привело меня к решению. И по общему признанию это - пример, где преувеличенная анонимизация сделала вопрос неразрешимым: мой рассматриваемый домен - фактически поддомен .local, который mdns украл у надлежащих dns. Редактирование /etc/nsswitch.conf решило проблему.

1
задан 6 November 2012 в 16:05

1 ответ

Измените /etc/nsswitch.conf так, чтобы строка хостов была

hosts: files dns mdns4
0
ответ дан 6 November 2012 в 16:05

Другие вопросы по тегам:

Похожие вопросы: