В компьютерных сетях обратный поиск DNS или обратное разрешение DNS ( rDNS ) — это метод запроса системы доменных имен (DNS) для определения доменного имени , связанного с IP-адресом — обратный обычному «прямому» поиску DNS IP-адреса по доменному имени. [1] Процесс обратного разрешения IP-адреса использует записи PTR . rDNS включает поиск в реестре доменных имен и таблицах регистратора. База данных обратного DNS Интернета находится в домене верхнего уровня .arpa .
Хотя информационный документ RFC 1912 (раздел 2.1) рекомендует, чтобы «каждый доступный через Интернет хост имел имя» и чтобы «для каждого IP-адреса была соответствующая запись PTR», это не является требованием стандарта Интернета , и не все IP-адреса имеют обратную запись.
Современный «обратный DNS-поиск» не следует путать с устаревшим механизмом «обратного запроса» (IQUERY), указанным в RFC 1035:
Обратные запросы принимают форму одной записи ресурса (RR) в разделе ответов сообщения с пустым разделом вопросов. Имя владельца RR запроса и его время жизни (TTL) не имеют значения. Ответ содержит вопросы в разделе вопросов, которые идентифицируют все имена, обладающие RR запроса , которые известны серверу имен . Поскольку ни один сервер имен не знает обо всем пространстве имен домена, ответ никогда не может считаться полным. Таким образом, обратные запросы в первую очередь полезны для управления базами данных и отладки. Обратные запросы не являются приемлемым методом сопоставления адресов хостов с именами хостов;
in-addr.arpa
вместо этого используйте домен. [2]
Тип сообщения IQUERY всегда был «необязательным» [2] и «никогда не получил широкого распространения» [3 ]; он был «окончательно выведен из эксплуатации» [3] в 2002 году с принятием RFC 3425.
Обратные DNS-запросы для адресов IPv4 используют специальный домен in-addr.arpa
. В этом домене адрес IPv4 представлен как конкатенированная последовательность из четырех десятичных чисел, разделенных точками, к которым добавляется суффикс домена второго уровня .in-addr.arpa
. Четыре десятичных числа получаются путем разбиения 32-битного адреса IPv4 на четыре октета и преобразования каждого октета в десятичное число. Затем эти десятичные числа конкатенируются в следующем порядке: наименее значимый октет первый (самый левый), наиболее значимый октет последний (самый правый). Важно отметить, что это обратный порядок по отношению к обычному соглашению о десятичной записи с точками для записи адресов IPv4 в текстовой форме.
Например, чтобы выполнить обратный поиск IP-адреса 8.8.4.4,4.4.8.8.in-addr.arpa
будет выполнен поиск записи PTR для доменного имени , которая будет указывать на dns.google
.
Если бы запись A в свою dns.google
очередь указывала на 8.8.4.4 , то она была бы подтверждена вперед .
Исторически интернет-регистраторы и интернет-провайдеры выделяли IP-адреса блоками по 256 (для класса C) или более крупными блоками на основе октетов для классов B и A. По определению, каждый блок попадал на границу октета. Структура обратного домена DNS была основана на этом определении. Однако с введением бесклассовой междоменной маршрутизации IP-адреса выделялись гораздо меньшими блоками, и, следовательно, первоначальный дизайн записей указателей был непрактичным, поскольку автономность администрирования меньших блоков не могла быть предоставлена. RFC 2317 разработал методологию для решения этой проблемы с использованием записей CNAME .
Обратные DNS-запросы для адресов IPv6 используют специальный домен ip6.arpa
(ранее ip6.int
[4] ). Адрес IPv6 отображается как имя в этом домене в виде последовательности полубайтов в обратном порядке, представленных шестнадцатеричными цифрами в качестве поддоменов. Например, имя домена указателя, соответствующее адресу IPv6 2001:db8::567:89ab , равно b.a.9.8.7.6.5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa
.
Хотя большинство записей rDNS имеют только одну запись PTR, DNS не ограничивает их количество. Несколько записей PTR используются, например, когда веб-сервер поддерживает много виртуальных хостов — т. е. несколько имен хостов затем преобразуются в один адрес, и несколько имен хостов будут возвращены для поиска PTR для этого общего адреса. Однако поиск DNS обычно происходит по UDP, и поскольку UDP имеет ограниченный размер сообщения, в крайних случаях несколько PTR могут привести к тому, что ответ DNS превысит эти ограничения UDP.
Типы записей, отличные от записей PTR, также могут появляться в обратном дереве DNS. Например, ключи шифрования могут быть размещены там для IPsec , SSH и IKE . DNS-Based Service Discovery использует специально именованные записи в обратном дереве DNS для предоставления клиентам подсказок о доменах обнаружения служб, специфичных для подсети. [5] Менее стандартизированные использования включают комментарии, размещенные в записях TXT и записях LOC для определения геофизического местоположения IP-адреса.
Наиболее распространенные варианты использования обратного DNS:
поиск DNS — это запрос DNS для доменного имени, связанного с заданным IP-адресом. Это выполняет противоположность более часто используемому прямому поиску DNS, при котором DNS запрашивается для возврата IP-адреса.