Перед подключением программа спрашивает систему, какой адрес у имени. Где система его ищет, записано в двух файлах.
Программа не ищет адрес сама: она обращается к резолверу — части системы, которая находит адрес для имени. Ответ резолвера печатает getent hosts имя: адрес и имя, если нашёл, и ничего, если нет. curl получает от резолвера тот же ответ.
Где искать, задаёт строка hosts: в /etc/nsswitch.conf. Обычно в ней files dns: сначала файл /etc/hosts, потом DNS.
| Источник | Что в нём |
|---|---|
/etc/hosts |
строки «адрес имя» на самой машине |
| DNS-сервер | ответ на вопрос «какой адрес у имени», по сети |
Адрес DNS-сервера резолвер берёт из строки nameserver в файле /etc/resolv.conf.
Спроси систему
Спроси резолвер системы об имени web.lab.test, затем посмотри, где он ищет адрес и какой DNS-сервер записан в настройках.
Сначала предположи
Что напечатает getent hosts web.lab.test?
Теперь начни упражнение, выполни команду и сверь прогноз с выводом.