DNS (Domain Name System) — система доменных имён, упрощающая работу в интернете. Вместо запоминания сложных IP-адресов мы используем понятные доменные имена, например, youtube.com. DNS подобен контактному списку: вы помните имя человека (доменное имя), а система находит его номер телефона (IP-адрес).
Как работает DNS?
Рассмотрим обращение к веб-сайту bikimironet.ru:
- Проверка кэша браузера: Компьютер проверяет кэш браузера. Если запрос к этому сайту уже был, IP-адрес известен, и запрос обрабатывается мгновенно.
- Запрос к DNS-резольверу: Если сайт новый, браузер отправляет запрос к DNS-резольверу — обычно серверу интернет-провайдера (ISP), но можно использовать другие, например, Google DNS или Cloudflare DNS.
- Поиск в кэше резольвера: Резольвер проверяет свой кэш. Если IP-адрес найден, он отправляется обратно.
- Запрос к корневому серверу: Если IP-адрес не найден, резольвер обращается к корневому серверу DNS — главному серверу системы. Он не содержит IP-адресов, но указывает на сервер с информацией о нужном доменном имени верхнего уровня (TLD).
- Запрос к TLD-серверу: TLD — часть доменного имени после последней точки (.com, .org, .ru и т.д.). Существуют общие TLD (gTLD, например, .com, .org, .net) и TLD, привязанные к странам (ccTLD, например, .ru, .us, .uk). В примере bikimironet.ru резольвер обращается к серверу ccTLD .ru.
- Запрос к авторитетивному серверу имен: TLD-сервер указывает на авторитетивный сервер имен, хранящий IP-адрес bikimironet.ru.
- Получение IP-адреса: Авторитетивный сервер возвращает IP-адрес.
- Кэширование: Резольвер сохраняет IP-адрес в кэше для ускорения последующих запросов.
Типы DNS-запросов
Существуют три основных типа DNS-запросов:
- Рекурсивный: «Найди мне IP-адрес bikimironet.ru». Резольвер выполняет всю работу.
- Итеративный: «Укажи сервер, знающий IP-адрес bikimironet.ru». Запрос передаётся последовательно между серверами.
- Обратный (инверсный): «Какое доменное имя соответствует этому IP-адресу?».
DNS критически важен для работы интернета, позволяя использовать понятные доменные имена вместо сложных IP-адресов. Процесс поиска IP-адреса может включать несколько шагов, но благодаря кэшированию обычно происходит быстро и незаметно.