首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取路由器范围内设备的MAC地址

获取路由器范围内设备的MAC地址
EN

Stack Overflow用户
提问于 2010-02-15 17:27:11
回答 3查看 5.5K关注 0票数 1

路由器是否可以获取附近未连接到它的设备的MAC地址?我想写一个应用程序,当一个特定的MAC地址进入我拥有的路由器的范围内时,它会以某种方式通知我(电子邮件或其他东西)(这个应用程序比这具体得多,所以我不能使用预先构建的工具,但如果它们是开源的,它们可以提供帮助)。路由器将连接到互联网,设备是iPhone,因此它一直在寻找WiFi接入点,因此我觉得所有要素都在那里,但我不确定我所要求的是否可能。如果可能(即使仅通过重写路由器操作系统),需要采取什么措施?C是我希望达到的最低级别...

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-02-15 17:46:31

您可以对基于Linux的路由器进行编程,这通常意味着运行OpenWRT或DD-WRT的路由器可以执行此操作;您可以将路由器置于监视模式,并让tcpdump或tshark侦听该特定的MAC地址。如果需要,您可以编写自己的捕获应用程序,使用libpcap进行侦听。如果您可以仅扫描活动通道,则路由器可以同时提供接入点。

您也可以监听标准路由器的日志,但问题是,在路由器记录任何内容之前,电话至少必须尝试关联;对于linux路由器,您只需监听该MAC地址是否发出任何数据包。

我最喜欢的基于Linux的路由器来自Ubiquiti,因为他们的RouterStation专业版是为运行OpenWRT而构建的,所以没有黑客攻击和完整的硬件文档。

票数 3
EN

Stack Overflow用户

发布于 2010-02-15 17:37:07

取决于路由器。有一些路由器具有完全开放的操作系统,例如Linksys WRT54GL,其中存在OpenWRT、DD-WRT和Tomato操作系统。例如,您可以开发一个简单的bash脚本来解释日志文件并向您发送电子邮件。

您使用其他路由器的体验可能有所不同。许多都有可以通过http或telnet访问的日志文件,所以即使您不能在路由器上运行自己的代码,您也可以从外部解释这一点。

票数 1
EN

Stack Overflow用户

发布于 2010-02-15 17:46:25

我猜你所说的路由器实际上是指wifi接入点(它可能集成到家庭路由器中),而你谈论的是wifi连接。那么不,这是不可能的。只有当设备至少尝试连接到其网络时,接入点才知道MAC地址。然而,设备显示的附近网络的列表不需要到任何网络的任何形式的连接。取而代之的是,它们监听接入点发出的信标。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2264929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档