Почему dns_get_record не показывает CNAME, когда я ЗНАЮ, что они существуют?

Я играю с поиском DNS-записей в PHP, и я сталкиваюсь с чем-то запутанным. Я искал 2 разных домена, каждый из которых использовал разные хосты и разные авторитетные серверы имен. Оба этих домена, которые я знаю наверняка, имеют CNAMES.

Я просмотрел записи DNS с помощью этого онлайн-инструмента: http://network-tools.com/ Я также просмотрел их, используя dns_get_record от PHP. A, NS, SOA, MX и т. Д. Все возвращаются. Но нет CNAMES. Я получаю false / пустой массив.

В обоих случаях я могу войти в DNS-контроль для этих доменов и посмотреть CNAMES.

Почему в мире это будет происходить? Цель состоит в том, чтобы разрешить поиск и сохранение всех записей DNS в то время до изменения доменов клиента в серверах имен моей компании (чтобы мы случайно не размещали внешние настройки электронной почты). CNAMES, такие как pop.domain.com, будут здесь достаточно критически важными, но ни один поиск, который я могу найти, не признает, что они существуют.

Реальная проблема, конечно, в том, что функция PHP не возвращает их, так как это действительно то, что мне нужно.

Но меня смущает, что я не могу найти их где-то еще. Тем более, что я смотрю прямо на них в том месте, где я могу добавлять и удалять записи DNS. Говорит прямо здесь:

pop.domain.com CNAME pop.secureserver.net 0 900

(Версия PHP 5.2.6 Linux 2.6.9-67.0.15.plus.c4smp)

Solutions Collecting From Web of "Почему dns_get_record не показывает CNAME, когда я ЗНАЮ, что они существуют?"

Кажется, я понял, почему. Я считаю, что это связано с «Передачей зон» в этом потоке. Можно ли найти все поддомены DNS для данного имени домена? ,

То, что я ожидаю, – это те же функции из поиска CNAME, что и A, NS, MX – ВСЕ ЕЩЕ . (Вряд ли нереалистичное ожидание …)

dns_get_record("domain.com", DNS_CNAME, $authns_cname, $addtl_cname); 

Я ожидаю вернуть массив, заполненный всеми CNAMES, настроенными для domain.com. Это не то, что происходит.

  • Я могу вернуть единственную запись CNAME для «www.domain.com», если это домен, в который я перехожу, и для него есть CNAME.
  • Я могу вернуть единственную запись CNAME для «* .domain.com», если это домен, в который я перехожу, и для него есть CNAME.
  • Я не могу вернуть буквально все записи CNAME, чтобы сохранить запись обо всех доменах CNAMES / subdomains / третьего уровня для domain.com, поиска подстановочных знаков или нет.

Полагаю, мне просто нужно было правильно сформулировать вопрос (15-я перестановка обнаружила многообещающий ответ). Я предполагаю, что оба сервера имен (Dreamhost и моя компания) защищены от этого. Хотя мне кажется, что это не очень страшная информация по сравнению с остальными DNS-записями.

 $www = dns_get_record("www.microsoft.com", DNS_CNAME); //print_r($www); //echo $www[0]['target']; while ($www[0]['target']) { echo "<br/>-- ".$www[0]['target']; $www = dns_get_record($www[0]['target'], DNS_CNAME); }