Шаг 1. DNS Lookup
то есть браузер ищет IP-адрес сервера
Браузер ищет
IP-адрес сервера (IP-адрес компьютера где находится сайт с доменным именем
dir.by):
a) Чтобы выяснить
IP-адрес сервера, браузер заглядывает в
локальный DNS-кэш.
В браузере
Google Chrome, есть удобный способ посмотреть
локальный DNS-кэш, введя в адресной строке:
chrome://net-internals/#dns
b) Если в
локальном DNS-кэше нет, то браузер использует системный вызов функции
gethostbyname
для того, чтобы узнать
IP-адрес сервера
Функция
gethostbyname чтобы узнать
IP-адрес сервера
1) проверяет файл
hosts, который в
Windows можно найти по адресу: C:/Windows/System32/drivers/etc/hosts.
2) Если в файле
hosts нет сведений об
IP-адреса сервера то, система выполняет запрос к
DNS-серверу.
Запрос к
DNS-серверу выполняется с использованием
UDP протокола.
Вот
DNS-сервера:
8.8.8.8 DNS-сервер Google
1.1.1.1 DNS-сервер CloudFlare
Адреса
DNS-серверов хранятся в настройках системы.
3) Если
DNS-сервер не нашел, то он обратится к
корневому DNS-серверу.
Система
корневых DNS-серверов состоит из 13 серверов, от которых зависит работа всего интернета.
Надо отметить, что
корневому DNS-серверу неизвестны соответствия между всеми существующими в мире доменными именами и IP-адресами.
Корневому DNS-серверу известны адреса
DNS-серверов верхнего уровня для таких доменов, как: .com, .it, .pizza, и так далее.
4)
Корневой DNS-сервер направляет запрос к
DNS-серверу домена верхнего уровня это так называемый
TLD-сервер (Top-Level Domain).
У
TLD-серверов есть
IP-адреса NS серверов (Name Server).
5)
NS сервер (Name Server) может узнать
IP-адрес по
URL.
Откуда
NS-сервера берут эти сведения?
Дело в том, что если вы покупаете
домен,
доменный регистратор отправляет:
IP-адрес,
имя домена к
NS-серверу.