【发布时间】:2017-01-16 19:20:40
【问题描述】:
我需要将 PHP 中的任何给定域解析为其对应的 IP 地址。 gethostbyname 似乎执行反向 DNS (rDNS),对于获取国内连接的 IP 地址(没有直接 rDNS)没有用。
我有以下,当然不行:
<?php
if (ISSET($_POST["domain"])) {
require_once("/protected/db.php");
echo gethostbyname($_POST["domain"]);
}
echo "Error";
?>
使用dns_get_record 返回Array ( ),当我尝试下面的代码from this answer: 时,PHP 打印出Array ( ) 似乎不起作用
$result = dns_get_record($_POST["domain"],DNS_ALL);
print_r($result);
我该怎么做?
【问题讨论】:
-
@Machavity 这没有回答我的问题(如下所示)。
-
怎么不回答呢?
-
@Machavity 查看我的编辑。也许我使用不正确,然后我想我可能会因为使用本地地址而混淆它,但我使用正确的公共 DNS 名称作为输入(我是
$_GET'ing 进行测试)所以我不不知道。 -
另外,如果事实证明我使用不正确,那么我很乐意删除我的答案并接受 cegfaults'。我认为
gethostbyname、dns_get_record对某些地址有问题,例如我用来测试的住宅地址。我不确定某些地址实际上是什么,但我的肯定有一个 rDNS,所以不可能是它,所以它一定是完全不同的东西。 -
好吧,这已经足够不同了,不会被骗。重新开放
标签: php