Как узнать, какой DNS я использую в Ubuntu 12.04?

28

Мы использовали для получения текущих настроек DNS:

  cat /etc/resolv.conf

Но Ubuntu 12.04 был изменен для использования платформы resolvconf. Вышеуказанное общение даст мне только это:

  # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
  #     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
  nameserver 127.0.0.1

И это не текущие настройки DNS моей машины.

Итак, есть ли какой-нибудь файл или команда, к которой я могу обратиться?

Коала Йунг
источник
2
Это рабочий стол или сервер?
независимо от того, что
Можем ли мы найти решение для среды без настольных компьютеров?
Пьер Тибо
Вам может понравиться [NetworkManager - Wiki-справка сообщества] [1] [1]: askubuntu.com/questions/152593/command-line-to-list-dns-servers
Пьер Тибо
Аналогичный вопрос для Ubuntu 14.04 и более поздних версий
Коала

Ответы:

28

Давайте предположим, что NetworkManager управляет вашими сетевыми конфигурациями.

Запустить в терминале

nm-tool | tail -n 8

(Здесь tail является необязательным, просто для вашего удобства.) Это сообщит вам информацию о вашем соединении, аналогично ipconfig.

idgar
источник
3
Это работает! Я получил префикс, шлюз и информацию о DNS моего текущего соединения. Раньше я получал все это различными командами ( route -n , cat /etc/resolv.conf ). Теперь NM-инструменты это способ. Большой! Благодарность!
Коала Йенг
1
Почему ты используешь хвост? Если включен IPv6, который используется почти во всех современных дистрибутивах, это лишает DNS информацию, которую OP явно ищет ...
Cerin
1
magnifico, если вы используете домашний офис, ip dns-сервера вполне может быть тем же ip шлюза по умолчанию, который часто является маршрутизатором, таким как belkin router.
ДжонМерлино
1
Вместо того, чтобы tailя протрубил grep DNS. tailне будет работать, если у вас есть несколько сетевых интерфейсов, но только один из них. Например, если у вас есть wlan0 и eth0, но только с использованием wlan0
user12205
3
НМ-инструмент, похоже, пропал в 15.04. nmcli dev showдает похожую информацию.
itadok
16

Перейдите к сетевым подключениям рядом со значком громкости на панели задач и нажмите «Информация о подключении».

Скриншот информации о подключении

vipin8169
источник
2

В 12.04 NetworkManager является менеджером сетевых подключений по умолчанию.

Вот почему у вас есть только адрес обратной связи resolv.conf.

Вместо просмотра этого файла проверьте каждую информацию о сетевых подключениях в следующей папке:

ls /etc/NetworkManager/system-connections/

и выберите соединение, которое вы хотите настроить. Например, у меня есть беспроводное соединение в этой папке

sudo vi /etc/NetworkManager/system-connections/Wireless
персиковый
источник
1
Это только показывает конфигурации о сети. Не арендованный IP, а запущенные настройки DNS, которые я получаю от DHCP.
Коала Йенг
1
Причина, по которой адрес обратной связи находится в resolv.conf, заключается не только в том, что используется NetworkManager. Причина в том, что используется локальный сервер имен. В Ubuntu 12.04 NetworkManager по умолчанию запускает процесс dnsmasq, который прослушивает 127.0.0.1 для обработки DNS-запросов. (В Ubuntu 12.10 адрес 127.0.1.1.) Таким образом, вопрос не в том, какой адрес использует решатель glibc. Вопрос в том, по каким адресам процесс dnsmasq пересылает свои запросы? На этот вопрос правильно ответил idgar.
Jdthood