Предположим, мы хотим подключиться к icmc.usp.br, но нам известен только IP-адрес корневого сервера НАСА: 2001:500:a8::e. Давайте узнаем у НАСА, какой сервер имен ответственен за icmc.usp.br:
dig @2001:500:a8::eicmc.usp.br.NS
Корневой сервер отвечает следующими записями:
br. NSa.dns.br.
a.dns.br. AAAA2001:12f8:6::10
Мы сразу видим, что у НАСА нет NS-записи для icmc.usp.br. На самом деле не следует ожидать, что корневые серверы будут хранить эти записи: br — это домен верхнего уровня с кодом страны, находящийся в ведении правительства Бразилии. Корневой сервер помогает нам, указывая IP-адрес бразильского сервера, ответственного за br. Воспользуемся советом и отправим туда наш запрос:
dig @2001:12f8:6::10icmc.usp.br.NS
На этот раз мы получаем конкретные записи, которые мы и запрашивали:
icmc.usp.br. NSc.dns.usp.br.
c.dns.usp.br. AAAA2001:12d0::8
Теперь мы можем запросить AAAA-запись, связанную с icmc.usp.br:
dig@2001:12d0::8icmc.usp.br.AAAA
И вот наконец мы получаем желаемый IP-адрес:
icmc.usp.br. AAAA2001:12d0:2080::231:6
Если бы исходный запрос был поддоменом icmc.usp.br, возможно, потребовалось бы повторить наш запрос для NS записи еще раз. Это называется итеративным запросом, и он позволяет находить любую информацию DNS, начиная с любого IP-адреса корневого сервера.