Откуда nm-tool берет свои выходные данные?

Откуда nm-tool берет свои выходные данные?

Я использую Linux Mint и вывод следующий nm-tool:

DNS: xxx.xxx.xxx.xxx 
DNS: xxx.xxx.xxx.xxx

Где nm-toolвзять эти DNS IP?

Из какого файла в файловой системе ОС?

решение1

Как прокомментировал @terdon, nm-toolпохоже, это устаревшая утилита.

nm-toolвзаимодействует с NetworkManagerкоторым может получить DNS IP из многих возможных источников:

  • из ответов DHCP, если какой-либо сетевой интерфейс был настроен на использование DHCP (данные ответов DHCP для каждой сетевой карты могут быть доступны в виде файла в /var/lib/NetworkManager/каталоге)
  • из файлов, /etc/NetworkManager/system-connections/если таковые были настроены («собственное» хранилище конфигураций NetworkManager)
  • из файла /etc/network/interfaces(серверная часть хранилища конфигураций NetworkManager Debian/Ubuntu, доступная только для чтения и совместимая с обратной связью)
  • из любых подключаемых модулей VPN-подключений NetworkManager, если используются какие-либо VPN-подключения (VPN могут предлагать собственные DNS-серверы, аналогично DHCP, но, возможно, используя другой протокол для предоставления информации)
  • из любых настроек конфигурации сети для каждого пользователя (например, на ноутбуке с конфигурациями WiFi для каждого пользователя), сохраненных с использованием любого бэкэнда хранилища конфигурации, предоставляемого средой рабочего стола пользователя по выбору. Например, dconfдля современного GNOME 3 используется ~/.config/dconf/user.

NetworkManagerзатем можно записать текущий набор адресов DNS-серверов в:

  • напрямую, /etc/resolv.confесли resolvconfпакет не установлен
  • в /etc/resolvconf/run/interface/NetworkManager, если resolvconfустановлен (что позволяет сосуществовать как решениям VPN, поддерживающим NetworkManager, так и решениям, не поддерживающим NetworkManager, при условии, что оба будут использовать resolvconfвместо прямого изменения /etc/resolv.conf)
  • или он может быть настроен напрямую, systemd-resolvedесли он используется.

Если resolvconfиспользуется, он обновит /etc/resolv.conf, и/или конфигурацию, system-resolvedесли последний используется. Он также запустит любые скрипты в /etc/resolvconf/update.dи /etc/resolvconf/update-libc.dуведомит любые процессы, которые заинтересованы в том, чтобы знать, когда изменяются системные настройки DNS-резолвера, и предоставили скрипт-уведомитель.

Если используется IPv6 и rdnssdустановлен демон, также возможно получать информацию о DNS-сервере IPv6, прикрепленную к пакетам объявлений маршрутизатора IPv6, если администратор маршрутизатора IPv6 решил предоставить эту информацию. В зависимости от дистрибутива, rdnssdможет по умолчанию использовать resolvconfили изменять /etc/resolv.confнапрямую.

А если у вас достаточно свежая версия Mint, она может использоватьНетпланкак это делает современная Ubuntu, которая добавляет еще один возможный источник для всех параметров конфигурации сети, включая параметры DNS: /etc/netplan/*.yamlфайлы.

Так что... да, это довольно сложно!

Связанный контент