不使用PECL或system()类型函数,有没有办法使用PHP查找DNS记录?

时间:2010-05-25 18:54:02

标签: php dns srv

我正在努力创建一种新型的电子邮件协议,为此,我必须为我的域设置SRV DNS记录。

在推广此协议时,我需要能够发现给定的主机是否使用我的系统(如果不是回到旧协议)。

那么,有没有办法使用PHP来提取DNS记录(如SRV)而不使用PECL扩展或通过linux命令行运行它(我已经知道我可以ob_start()和system(“host -t” SRV主机名“)但我正在寻找一种更好的方法,如果它存在的话。)

2 个答案:

答案 0 :(得分:1)

使用dns_get_record

array dns_get_record  (  string $hostname  [,  int $type = DNS_ANY  [,  array &$authns  [,  array &$addtl  ]]] )
  

获取关联的DNS资源记录   使用给定的主机名。

答案 1 :(得分:0)

您是否考虑过PEAR :: Net_DNS?
http://pear.php.net/package/Net_DNS

据我所知,它使用套接字连接(tcp / udp)并解码解析器数据本身。可用的方法看起来非常广泛。