据我所知,要求给定IP的名称服务器是一个有效的问题。 (真的吗?)
所以我在Windows命令行中试过这个:
C:\Users\Marty>nslookup
Vychozi server: google-public-dns-a.google.com
Address: 8.8.8.8
> set querytype=ns
> 58.123.112.50.in-addr.arpa
Server: google-public-dns-a.google.com
Address: 8.8.8.8
123.112.50.in-addr.arpa
primary name server = dns-external-master.amazon.com
responsible mail addr = root.amazon.com
serial = 32
refresh = 3600 (1 hour)
retry = 900 (15 mins)
expire = 604800 (7 days)
default TTL = 900 (15 mins)
但是当我尝试在PHP中使用相同的东西时(Windows,PHP 5.4.9):
dns_get_record("58.123.112.50.in-addr.arpa", DNS_NS);
我只是得到一个空数组。
有什么问题?
谢谢!
注意:在这两种情况下,DNS服务器都是8.8.8.8(Google)。
编辑:
我尝试了保罗的建议:
$ret = dns_get_record("58.123.112.50.in-addr.arpa", DNS_ALL, $a, $b);
结果是:
$ret =>
array (
0 =>
array (
'host' => '58.123.112.50.in-addr.arpa',
'class' => 'IN',
'ttl' => 300,
'type' => 'PTR',
'target' => 'ec2-50-112-123-58.us-west-2.compute.amazonaws.com',
),
),
$a => NULL,
$b => NULL,