Методы выполнения обратного поиска DNS в PHP

Метод 1: использование функции gethostbyaddr()

$ipAddress = '192.168.1.1';
$hostname = gethostbyaddr($ipAddress);
echo $hostname;

Метод 2: использование функции dns_get_record()

$ipAddress = '192.168.1.1';
$dnsRecords = dns_get_record($ipAddress, DNS_PTR);
foreach ($dnsRecords as $record) {
    if ($record['type'] === 'PTR') {
        echo $record['target'];
    }
}

Метод 3: использование библиотеки Net_DNS2(требуется установка через Composer)

require 'vendor/autoload.php';
$ipAddress = '192.168.1.1';
$resolver = new Net_DNS2_Resolver();
$ptrRecord = $resolver->query($ipAddress, 'PTR');
foreach ($ptrRecord->answer as $record) {
    if ($record->type === 'PTR') {
        echo $record->ptrdname;
    }
}