Назад | Перейти на главную страницу

полномочия nslookup

Я использую nslookup и пытаюсь понять разницу в авторитетных и неавторитетных ответах. Эти два ответа кажутся согласованными (они дают одинаковый ответ, если вы запускаете команду несколько раз).

Обычный вызов nslookup

$ nslookup google.com
Server:         192.168.1.1
Address:        192.168.1.1#53

Non-authoritative answer:
Name:   google.com
Address: 72.14.213.104
Name:   google.com
Address: 72.14.213.105
Name:   google.com
Address: 72.14.213.106
Name:   google.com
Address: 72.14.213.147
Name:   google.com
Address: 72.14.213.99
Name:   google.com
Address: 72.14.213.103

Nslookup с использованием авторитетного сервера Google

$ nslookup google.com ns1.google.com
Server:         ns1.google.com
Address:        216.239.32.10#53

Name:   google.com
Address: 74.125.225.19
Name:   google.com
Address: 74.125.225.20
Name:   google.com
Address: 74.125.225.16
Name:   google.com
Address: 74.125.225.17
Name:   google.com
Address: 74.125.225.18

Есть идеи, почему они разные? Должны ли они давать разные ответы?

Когда я пингую google.com, он показывает 72.14.213.104, а RTT составляет 1/3 RTT для пинга 74.125.225.19.

Кто-нибудь может это объяснить?

Google пытается вернуть IP-адреса серверов, ближайших к запрашивающей стороне. В первом случае ваш сервер имен делает запрос. Во втором случае ваш компьютер делает запрос.

Авторитетная и неавторитетная информация тут ни при чем.

  1. Ответ с пометкой «Неавторизованный» - это просто сервер имен, сообщающий вам, что результат не был получен однозначно для вашего запроса и был кэширован как часть предыдущего запроса (для вас или другого клиента). Кроме того, поскольку ваш первый пример обращается к 192.168.1.1, а не напрямую к серверу имен вашего интернет-провайдера, ваш маршрутизатор также может реализовывать другой уровень кэширования.
  2. Google.com обслуживается тысячами и тысячами серверов в сотнях различных центров обработки данных. Их DNS-сервер пытается предоставить вам адрес с географической привязкой. Нет никакой гарантии, что это будет сервер с самой низкой задержкой, максимальной пропускной способностью или хост, способный обеспечить самый быстрый ответ, просто предположение, вероятно, с учетом всех трех. Кроме того, поскольку ns1.google.com не предназначен для обслуживания клиентов DNS-серверов (например, DNS вашего интернет-провайдера или Google Public DNS) кто знает логику, которую использует при ответе на ваши запросы.

В принципе, если у вас нет нестандартных сетевых подключений (высокая задержка / низкая пропускная способность / высокая потеря пакетов) или ответы DNS от вашего интернет-провайдера неуместно медленные, я бы посоветовал вам не управлять DNS на микроуровне; это просто не стоит усилий. И в этом случае DNS-сервер интернет-провайдера в любом случае предоставил вам лучший (лучший?) Результат.

Авторитетный ответ должен исходить непосредственно от одного из серверов имен домена. Неавторитетный ответ может прийти с любого сервера, на котором есть ответ. Если конфигурация не менялась недавно, ответы будут такими же.

В запросах можно указать, что они требуют авторитетного ответа. Они могут потребовать дополнительных поисков, поскольку необходимо связаться с официальным сервером. При внесении изменений можно получить разные ответы от разных авторитетных серверов. Ответ с наибольшим порядковым номером должен быть самым последним ответом. (В редких случаях, когда серийный номер сбрасывается, это не так.)

На неавторитетные ответы должен ответить первый сервер, к которому вы связались. Это самый быстрый ответ. Этих ответов достаточно для большинства случаев использования.

Такие сервисы, как Google, - особый случай. Они используют специальные серверы, которые дают разные ответы в зависимости от вашего местоположения. Они также могут выполнять балансировку нагрузки. И то, и другое со временем приведет к разным ответам. Кэшированные (неавторизованные) ответы, скорее всего, будут старше и отражать предпочтительные серверы на момент кэширования результата.

Google пытается направить вас на серверы, которые имеют наилучшее соединение с вашим местоположением. Эти серверы должны иметь более низкое RTT, чем другие серверы Google в других местах.

В Запись в Википедии на DNS это довольно хорошо объясняет:

Авторитетный сервер имен - это сервер имен, который дает ответы, которые были настроены исходным источником, например, администратором домена, или с помощью методов динамического DNS, в отличие от ответов, которые были получены через обычный DNS-запрос к другому серверу имен.

Что касается разницы в пинге, это как если бы вы сказали: «Когда я еду в Вашингтон из Нью-Йорка, поездка до Портленда занимает лишь десятую часть времени». Адреса удаленно не совпадают, поэтому они могут быть далеко друг от друга.

Это касается как IP-адресов, так и географических адресов.