(Ответ на аналогичный вопрос за 12.04 .)
До Ubuntu 12.04 вы можете видеть активный DNS в /etc/resolv.conf
. В Ubuntu 12.04 NetworkManager больше не работает с файлом. Вы должны напрямую обратиться к инструменту командной строки nm-tool
.
Интересно, nm-tool
что больше не устанавливается по умолчанию в 14.04 и позже. Несмотря на то, что вы все равно можете выполнить установку через apt-get install
, вы не можете предполагать, что все Ubuntu имеют это из коробки.
Так что вопрос остается. Откуда вы знаете, по умолчанию при установке DNS вы используете в командной строке?
источник
nmcli d list
. Помимо этого, отличные вещи здесь!r+
вместоrr*
0.9.8.8
nmcli dev show
выдает большие фигурные сообщения об ошибках.nmcli dev show
принадлежит nmcli 15.04. По какой-то причине старый nmcli считался нестабильным. , , теперь они используютnmcli
те же флаги, что и Fedora. Вероятно, это связано с переключением на systemd. И поскольку этот ответ подходит для 15.04, а не для 14.04, я очень склонен его понизитьПакетный анализ будет альтернативным методом, который работает независимо от NetworkManager или другого инструмента сетевого подключения, который вы используете. Основная идея заключается в том, чтобы отправить запрос DNS с
nslookup
и во втором терминале проверить, куда отправляются пакеты.Для этого нам нужно было бы подключиться к сети в первый раз, чтобы ничто не мешало соединениям, и выполнить следующую команду:
В альтернативном терминале запустить:
Как только вы получите список пакетов от
tcpdump
, проверьте, куда они идут с вашего IP-адреса.Например,
Как видите, мой ноутбук
eagle
отправляет пакеты в dns моего университетаb.resolvers.Level3.net.domain
. Если вы хотите увидеть IP-адрес, вы можете использовать-n
флаг сtcpdump
.Например:
источник
проверьте ваши сетевые подключения:
и выберите соединение, которое вы хотите настроить.
Замените «Интернет» без имени вашего подключения
Использование может по-прежнему использовать
nm-tool
:Установите его для U14.04 и выше, используя
пример:
источник
Он по-прежнему доступен по умолчанию в версии 14.04, поскольку он связан с сетевым менеджером. С тех пор он был удален из сетевого менеджера (версия 15.04 и выше) и даже недоступен через apt-get.
На данный момент, в версии 15.04, вы можете скачать и извлечь nm-tool из старого пакета вручную. Запустите следующие команды.
Сначала создайте временный каталог для работы в:
Затем загрузите старую версию и распакуйте файлы:
Создайте новый каталог:
(если он говорит
file already exists
, просто проигнорируйте сообщение и продолжайте).Скопируйте файл в новый каталог:
Вернитесь в домашний каталог и удалите временный каталог:
Теперь установите псевдоним для nm-tool:
Текущий пользователь должен теперь иметь возможность запустить nm-tool из терминала.
Кроме того, это может все еще не точно предоставить все фактические преобразователи DNS, которые вы используете.
Вы можете перейти на DNSleaktest.com, чтобы получить полный отчет. Нажмите на расширенный тест, чтобы получить полный отчет.
источник
На самом деле, NetworkManager действительно использует
/etc/resolv.conf
. Однако, по умолчанию настройки сервер DNS , перечисленный вresolv.conf
это127.0.0.1
, потому что NetworkManager использует свою собственную внутреннюю службу DNS для некоторых неясных технических причин , которые не имеют отношений для многих людей. Вот почему вы должны использовать,nmcli
чтобы увидеть, какие DNS-серверы используются NetworkManager для внутреннего использования.Однако также возможно отключить это поведение и вернуться к старому, где указан фактический используемый DNS-сервер
resolv.conf
. Чтобы сделать это, просто закомментируйте строкуdns=dnsmasq
в/etc/NetworkManager/NetworkManager.conf
и перезагрузите компьютер. Для большинства людей это не должно иметь никакого значения, кроме факта, что фактический DNS-сервер теперь будет отображаться наresolv.conf
. Если вы находитесь в числе ключевых случаев, для которых было внесено изменение, это должно стать очевидным быстро, и вы можете вернуться к поведению по умолчанию, снова раскомментировав строку.источник
список разработчиков nmcli | grep DNS
это выведет что-то вроде;
IP4.DNS[1]: 8.8.8.8 IP4.DNS[1]: 8.8.8.8 IP4.DNS[2]: 8.8.4.4
Вышеуказанная команда работает до Ubuntu 16.04.
Для Ubuntu 16.04 используйте:
nmcli dev show | grep DNS
источник
nmcli dev show
, нетnmcli dev list
?nmcli dev list
работает в 14.04, но не в 16.04.Если у кого-то есть такой же вопрос, как у меня, для Ubuntu 18.04LTS:
Список всех сетевых устройств, управляемых через network-manager:
Показать конфигурацию конкретного устройства:
Вместо eth0 вы должны ввести имя вашего сетевого устройства, показанное в списке ранее. Если DNS-записи нет, на вашей карте нет настроенного сервера имен.
источник