Pa najčešći razlog što gethostbyaddr() vraća istu IP adresu koju si mu prosledio kao parametar je to što ona nije upisana ni u jednu reverse DNS bazu. Eto npr. za ovaj moj post ne piše hostname, nego IP adresa, jer ES-ov mehanizam, koji verovatno radi na nekom sličnom principu, nije uspeo da resolve-uje hostname na osnovu moje IP adrese.

Možda bi mogao da probaš da to dobijanje hostname-a radiš preko nslookup komande, koja, ako se ne varam, radi podjednako dobro i na Windows-u i na Linux-u:
Code:
$ip = '192.168.10.7';
exec('nslookup ' . $ip, $output);
print_r($output);
I naravno, vidi šta možeš da izvučeš iz tog $output niza... Čini mi se da će rezultat te komande biti dugačak nekoliko redova, ali podaci od interesa su čini mi se negde oko 5. reda (
$output[4]), u zavisnosti na kojoj mašini si izvršio nslookup (Windows ili Linux).
[Ovu poruku je menjao Nikola Poša dana 03.04.2011. u 18:32 GMT+1]