Linux Labs

Сеть / Ступень 9 из 14

Почему адрес работает, а имя — нет

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 5 из 8 · теория · 4 мин

resolv.conf на обычной Ubuntu

На этой машине /etc/resolv.conf — простой файл: его записала подготовка упражнения. На сервере с Ubuntu он обычно устроен иначе.

Там /etc/resolv.conf — символическая ссылка на файл службы systemd-resolved, и в нём nameserver 127.0.0.53. Это адрес самой службы на этой же машине: программы спрашивают её, а она пересылает вопросы настоящим DNS-серверам. Их список печатает resolvectl status.

bash
ls -l /etc/resolv.conf     # ссылка на файл systemd-resolved
resolvectl status          # настоящие DNS-серверы по интерфейсам

Файл по ссылке служба переписывает сама, поэтому ручная правка в нём не живёт. DNS-серверы на такой машине задают в настройках сети — например, в Netplan, который был в модуле об адресах.

Проверь себя 1 вопрос

На сервере с Ubuntu /etc/resolv.conf — ссылка на файл systemd-resolved, в нём nameserver 127.0.0.53. Что это значит?

  • Адрес и правда на этой машине: на нём слушает systemd-resolved и пересылает вопросы настоящим серверам. Каким — покажет resolvectl status.

  • Серверы задаются в настройках systemd-resolved, этот файл их не перечисляет. Есть ли они, показывает resolvectl status.

  • Файл ведёт systemd-resolved и перепишет правку. Серверы на такой машине меняют там, откуда их берёт служба, — например, в настройках Netplan.

127.0.0.53 — адрес systemd-resolved: программы спрашивают его, а он пересылает вопросы DNS-серверам из своих настроек. Список этих серверов печатает resolvectl status.

Главное в шаге

  • 127.0.0.53 в resolv.conf — адрес systemd-resolved на этой же машине, настоящие серверы показывает resolvectl status.
  • Настройку меняют там, откуда её берут: файл, который ведёт служба, перепишется.
Ubuntu 24.04
Загрузка…