【问题标题】:PHP network devices monitor scriptPHP网络设备监控脚本
【发布时间】:2011-01-24 20:23:15
【问题描述】:

我正在为 IPPBX 改进现有的基于 Web 的管理应用程序。我们真的希望该应用程序能够检测网络上最近连接的 IP 电话,这样我们就可以知道 MAC 地址。我读过一个可行的解决方案是从 DHCP 服务器的租约文件中获取该信息,但不幸的是,DHCP 服务器没有告诉我它在租约条目中指的是哪种类型的设备。也许我需要一些网络监控协议来实现这一点。

我正在寻找一些提示作为快速启动,这样我就可以编写一个 PHP 脚本来执行我上面解释的操作。现有的脚本也会很好...... :)

欢迎和赞赏评论或反馈!

【问题讨论】:

    标签: php macos networking ip


    【解决方案1】:

    老实说,我认为这将是一个反复试验的案例(也就是研发)。

    一些尝试:

    1. 根据The Mac Address Specification,前 3 个字节是特定于组织的(OUI)。我怀疑如果您的手机来自同一制造商,那么该部分应该是相似的(如果不相同)。无论如何都要看看。

    2. 您可以进行网络测试以查看它是否是电话。因此,首先您要获取设备的 IP 地址。然后打开一个端口并尝试发送等效于特定协议的 ping(在 HTTP 中,它将是对端口 80 的 HEAD 请求),但使用特定于电话的协议。您正在寻找的只是正确的响应格式(和连接)。

    祝你好运,玩得开心。像这样的项目在我看来是最好的,因为它们是一个挑战,让你思考和发现......

    【讨论】:

      【解决方案2】:

      首先,我不建议在 PHP 中这样做。用 real 语言编写一些东西,然后将其发送到 php 脚本。无论如何,我会使用租赁文件。然后使用租约文件中的地址连接到新设备并确定它是否是电话。因此,您将连接到网络上的每个“新”设备。效率低下,但它可以工作......

      【讨论】:

        【解决方案3】:

        这是一个用 PHP 编写的现有应用程序(无耻插件,我写的),它查询 DHCP 租约文件并在网页中很好地格式化它:

        http://rivetcode.com/software/phpdhcpd/

        github上的代码:

        https://github.com/firefly2442/phpdhcpd

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-09-28
          • 1970-01-01
          • 2021-01-18
          相关资源
          最近更新 更多