код ниже использовал функции php для получения имен хостов MX и их ip версии 4:
$results = dns_get_record($domain, DNS_MX);
foreach ($results as $res) {
$hostip = gethostbyname($res['target']);
}
Я много гуглил о «копать» и нашел «dig -t MX redhat.com + noall + answer», но он возвращает только имена хостов MX без их IPV4 и IPV6.
Есть ли способ выполнить работу, используя «копать» или функции PHP?
MX запись содержит только имена хостов, никогда не IP-адреса.
Если вы хотите посмотреть IP-адрес полученного вами имени хоста, вам нужно будет выполнить другой поиск DNS. Похоже, что ваш код уже делает это (а затем отбрасывает некоторые результаты, что является ошибкой). Но если вы не собираетесь что-то делать с IP-адресом кроме как открыть соединение, тогда вы, вероятно, должны просто использовать имя хоста.
Других решений пока нет …