当前位置:  开发笔记 > 程序员 > 正文

除UDP广播或多播之外,我还可以在WiFI网络上使用哪些其他方法来发现计算机?

如何解决《除UDP广播或多播之外,我还可以在WiFI网络上使用哪些其他方法来发现计算机?》经验,为你挑选了1个好方法。

我已经实现了一个简单的UDP ping/pong协议来发现连接到同一个WiFI路由器的其他计算机.这在许多WiFI和以太网路由器上都可以正常工作,但是当我在街上试一试时,许多公共WiFI网络似乎禁用了UDP广播/多播,或者完全禁用了UDP.

我还有哪些其他选择来发现连接到WiFI路由器的计算机?(我想在我的网络成员之间创建一个Ad-Hoc网络,但这是不可能的)

我正在考虑强制TCP强制尝试(试图打开我的子网上所有可能的IP的连接),但这将是非常昂贵的,我将不得不循环几次仍然没有找到最近连接到网络的每台机器.



1> ereOn..:

没有简单的方法来发现只有"计算机".但是,您可以使用ARP请求找到几乎所有网络设备.

步骤将是:

    连接到网络

    获取网络IP地址范围(例如:"192.168.0.0/24")

    发送此范围内每个可能地址的ARP请求("192.168.0.1"=>"192.168.0.254")

    等待回复

通常,网络设备响应ARP请求,因为IPv4需要ARP才能工作.

您可以在此处找到其他资源.

注意:为了做到这一点,你可能需要具有管理员权限(UNIX上的root用户).发送伪造的ARP请求通常需要提升权限.

另一种方法是发送广播ping(在UNIX操作系统上ping -b 192.168.0.255).但是Windows计算机(以及其他一些设备)通常不会响应这样的ping.

推荐阅读
mobiledu2402852413
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有