Php 从DNS或DHCP服务器获取信息

Php 从DNS或DHCP服务器获取信息,php,networking,dns,lan,dhcp,Php,Networking,Dns,Lan,Dhcp,我正在用PHP制作一个网络监控程序。 我希望能够连接到DNS或DHCP服务器,并获得属于该网络的所有计算机。 目前,我正在运行嵌套for循环,以ping每个可能的IP地址,但它需要10个子网以上的时间。 我正试着从像傻瓜一样做事变成像老板一样做事。 我想得到所有计算机名称和IP地址的列表,以及它们的IP是动态分配还是静态分配的。 我应该怎么做?无法枚举网络上的所有主机,即使ping所有主机也不够,因为有些主机可能不会回复ping。对于动态分配的,您可以查询DHCP服务器,但作为协议的DHCP不支

我正在用PHP制作一个网络监控程序。 我希望能够连接到DNS或DHCP服务器,并获得属于该网络的所有计算机。 目前,我正在运行嵌套for循环,以ping每个可能的IP地址,但它需要10个子网以上的时间。 我正试着从像傻瓜一样做事变成像老板一样做事。 我想得到所有计算机名称和IP地址的列表,以及它们的IP是动态分配还是静态分配的。
我应该怎么做?

无法枚举网络上的所有主机,即使ping所有主机也不够,因为有些主机可能不会回复ping。对于动态分配的,您可以查询DHCP服务器,但作为协议的DHCP不支持这一点,您必须编写一个守护进程并查询日志或分配文件

如果你真的想通过ping来实现,我建议你编写一个小程序,在后台运行,ping所有内容,将结果保存在内存中,然后让你的php脚本查询它。这样,您的响应时间将接近即时。只要主机不太频繁地出现和消失(听起来不太可能),那么这应该没问题