Как я могу получить с определенного сервера имен, скажем ns.example.com
, все записи A, указывающие на конкретный IP x.y.z.w
??
Я пытался использовать инструменты обратного поиска DNS, но не могу получить то, что мне нужно.
Удаленно: для этого потребуется передача зоны, которая будет заблокирована, если безопасность на сервере не настроена очень плохо.
Локально: вы можете открыть файл зоны и пропустить через него grep.
Это невозможно.
Если у вас был доступ администратора к рассматриваемому серверу, вы могли использовать grep для файлов конфигурации, но в рамках протокола DNS вы просто не можете этого сделать.
Даже AXFR недостаточно, поскольку даже если он включен, вам нужно будет знать каждое отдельное доменное имя, обслуживаемое этим сервером.
Простой ответ - нет. Я видел сайт, который утверждал, что это делает, но он не обслуживал все записи A для случаев, когда я знал часть ответа.
Записи PTR, используемые для обратных записей DNS, принадлежат другим зонам, чем соответствующие записи A. Они могут быть администрированы на одних и тех же DNS-серверах или в одних и тех же организациях. Возможно, что несколько администраций DNS имеют A-записи, указывающие на один и тот же IP-адрес. Администратор DNS для записей PTR вполне может не знать по крайней мере о некоторых из них.
Существует ряд сервисов, предлагающих динамический DNS. Было бы крайне редко, чтобы PTR соответствовал записи A. Во многих случаях для IP-адреса нет PTR-записи.
Для правильно настроенных почтовых серверов будет запись PTR, соответствующая записи A для почтовой службы. Это может быть не единственная запись A для сервера. По моему опыту, большая часть спама приходит с IP-адресов, где запись PTR не совпадает с записью A, и во многих случаях по крайней мере одна запись отсутствует.
Если адрес также используется для виртуальных веб-серверов, будет несколько A-записей. Они могут быть распределены по нескольким доменам, и различные администраторы DNS могут не знать, что другие используют тот же IP-адрес.