1

有时,当我调用 gethostbyaddr() 时,它会返回正确的主机名,但有时它会返回 IP 地址,我知道它的设计目的是在调用无法解析主机名时执行此操作。

获取主机名绝对至关重要,因为所有 IP 地址都是动态的(2 天租约),因此我需要主机名,以便在将主机名和 IP 对保存到一个数据库。我实际上并排有 2 台打印机和 2 台计算机,每个 PHP 中的一个可以解析为主机名,另一台打印机和计算机返回 IP 地址。

如何让 PHP 解析所有设备的主机名?

另外,有谁知道它如何解析主机名?域名系统?赢了?

如有必要,我可以在这两台打印机上运行任何测试来检查它们的 IPv4 配置。

4

1 回答 1

1

gethostbyaddr()成功时返回主机名,失败时返回未修改的ip_address,或错误输入时返回 FALSE。

在检查了大约 20 台静态 ip 分配的机器和大约 5 台打印机的功能后,它返回给我机器和打印机的 ip,这些机器和打印机要么关闭,要么配置不同,例如路由器或网关。

因此,您需要检查哪些策略限制gethostbyaddr()从您的一台计算机和打印机返回主机名。

于 2012-11-08T10:54:57.223 回答