DNS не ищет IP-адрес мгновенно. Каждый раз, когда вы вводите домен,
запускается цепочка проверок — от вашего браузера до серверов по всему миру.
Поиск всегда начинается с кэша — это быстро и не требует запросов в сеть.
Если нигде в кэше ответа нет — запрос уходит на внешние серверы.
Упрощённо это выглядит так:
Поиск проходит поэтапно. Следующий уровень подключается только если предыдущий не дал ответа.
Уровень 1 — Кэш браузера
Самое первое место, где ищется IP.
Браузер проверяет, не запрашивал ли он этот домен недавно.
Если да — сразу возвращает IP, без каких-либо запросов.
Уровень 2 — Кэш операционной системы
Если браузер не нашёл — проверяет ОС.
Она тоже хранит список недавних DNS-ответов.
Также здесь проверяется специальный файл hosts на вашем компьютере.
Уровень 3 — DNS-сервер провайдера
Кэш на компьютере пуст. Теперь запрос уходит в сеть.
Провайдер проверяет свой кэш. Если находит — возвращает IP.
Если нет — начинает сам обходить серверы вместо вас.
Уровень 4 — Корневые DNS-серверы
Провайдер не знает ответа и обращается к корневым серверам.
Они не хранят адреса сайтов — но знают, кто отвечает за каждую зону: .com, .ru, .org.
Уровень 5 — Авторитетный DNS-сервер
Финальная точка. Именно здесь хранятся реальные DNS-записи домена.
Этот сервер даёт точный IP-адрес — и ответ отправляется обратно по цепочке.
Важно: в большинстве случаев поиск заканчивается на уровне 1-3.
До корневых серверов доходит редко — именно для этого и существует кэш.
Представим, что кэш полностью пустой и IP нужно найти с нуля.
Шаг 1 — Вы вводите google.com
Браузер понимает, что нужен IP-адрес, и начинает поиск.
Шаг 2 — Кэш браузера и ОС
Оба кэша пусты. Система формирует DNS-запрос и отправляет его провайдеру.
Шаг 3 — DNS-сервер провайдера
Провайдер проверяет свой кэш — пусто.
Теперь он сам идёт искать ответ.
Шаг 4 — Корневой сервер
Провайдер: "Кто отвечает за зону .com?"
Корневой сервер: "Вот адрес TLD-сервера для .com"
Шаг 5 — TLD-сервер (.com)
Провайдер: "Кто отвечает за google.com?"
TLD-сервер: "Вот авторитетный сервер Google"
Шаг 6 — Авторитетный сервер Google
Провайдер: "Какой IP у google.com?"
Авторитетный сервер: "142.250.74.206"
Шаг 7 — Ответ возвращается
DNS провайдера сохраняет результат в кэш — и отдаёт IP обратно в браузер.
Шаг 8 — Браузер подключается
Браузер открывает соединение с 142.250.74.206. Сайт загружается.
DNS-клиент
Часть операционной системы.
Формирует DNS-запрос и отправляет его на сервер провайдера.
DNS-сервер провайдера — Recursive Resolver
Принимает запрос от клиента и сам обходит всю цепочку серверов.
Кэширует результат — чтобы при следующем запросе не повторять весь путь заново.
Корневые серверы — Root Servers
Вершина иерархии DNS.
Не хранят адреса сайтов, но направляют запросы в нужную зону.
В мире их 13 групп — физически это сотни серверов по всему земному шару.
TLD-серверы
Отвечают за домены верхнего уровня: .com, .ru, .net, .org.
Знают, какой авторитетный сервер обслуживает конкретный домен.
Авторитетный сервер — Authoritative Server
Хранит DNS-записи домена.
Именно он даёт финальный ответ с IP-адресом.
Протокол и порт
DNS работает на порту 53 и использует два протокола:
Кэш и TTL
Каждый DNS-ответ содержит параметр TTL (Time To Live) —
время в секундах, на которое запись сохраняется в кэше.
TTL 300 → запись хранится 5 минутTTL 86400 → запись хранится 24 часаПока TTL не истёк — ответ берётся из кэша, без обращения к серверам.
Именно поэтому DNS работает быстро в повседневном использовании.
DNS — это не один сервер, а распределённая система.
Каждый элемент цепочки делает свою часть работы —
и в итоге браузер получает нужный IP-адрес за доли секунды.