如何通过外部请求获取连接到路由器的客户端的 mac 地址

How to get mac addresses of clients connected to a router through an external request

情况是我必须扫描连接到多个路由器的客户端(便携式客户端)的 mac 地址。我想设置一个服务器,可以发出外部请求(或一些网络工具来扫描)所有路由器以获取所需的数据。

P.S.: 我知道 nmap 扫描,但为此,服务器也必须连接到同一路由器,我不能从其他路由器 fetch/scan。

MAC 地址仅在主机连接的 LAN 上可见或相关。并非所有 LAN 协议都使用 MAC 地址,而在那些使用 MAC 地址的协议中(IEEE LAN 协议),一些使用 48 位 MAC 地址,一些使用 64 位 MAC 地址。

路由器剥离包含MAC地址的帧,并转发封装在帧中的数据包,为下一个接口创建新帧。任何 MAC 地址都无法通过路由器。

为了发现 LAN 信息,您将需要 LAN 上的某种类型的代理(独立的或 LAN 主机上的代理)。一些路由器可能通过 SNMP 之类的东西来解决这个问题(例如检查路由器 ARP table),但并非所有路由器实际上都支持它,或者配置为允许您查询 SNMP。