Чуть менее, чем везде на вопрос в гугле, как работает DNS службы видим примерно следующее:
Как работает DNS?
DNS работает в режиме вопрос/ответ.
Допустим, вы ввели в строке своего браузера «test.ru».
Рассмотрим работу DNS пошагово:
Ваш браузер об IP-адресе test.ru ничего не знает и с запросом IP-адреса через специальную программу — resolver обращается к локальному серверу имен. Локальный DNS-сервер — это сервер имен вашей локальной сети или DNS-сервер вашего интернет-провайдера. «Откуда браузеру известно о существовании этого локального DNS?» — спросите вы. Все предельно просто. При настройках сетевого подключения вы прописываете IP-адреса DNS-серверов (предпочитаемого и/или альтернативного), один из которых будет отвечать на запросы, посылаемые вашим браузером через resolver — это и есть локальный или местный сервер вашей сети. Вы всегда можете посмотреть IP-адрес вашего локального DNS-сервера. Для этого достаточно посмотреть свойства сетевого подключения, используемого на вашем компьютере.
Запрос на IP-адрес test.ru доходит до местного сервера имен. Этот сервер о данном IP-адресе ничего не знает и посылает запрос одному из корневых серверов «.» (root).
Корневой сервер отдает локальному серверу IP-адрес сервера, который поддерживает зону .RU.
Далее по полученному адресу локальный сервер имен обращается к DNS-серверу, который поддерживает .RU.
Этот DNS-сервер, в свою очередь, по полученному запросу отдает IP-адрес сервера, который поддерживает зону test.ru.
Местный DNS-сервер с запросом IP-адреса test.ru обращается к DNS-серверу зоны test.ru.
Локальный сервер имен получает IP-адрес test.ru от DNS-сервера зоны test.ru.
Получив адрес test.ru, локальный DNS-сервер сообщает его вашему браузеру.
Все это так, но жизнь ушла далеко вперед, и теперь на одном IP крутится куча виртуалок с кучей сайтов на каждом. Хотелось бы понять, как все работает после шага
Получив адрес test.ru, локальный DNS-сервер сообщает его вашему браузеру
?
ведь на этом IP-адресе куча всего, в том числе и поддомены sub.test.ru и тп. И скорее всего все это на виртуальных машинах. Почему на запрос test.ru не выдается sub.test.ru, хотя у них все одинаково?