![使用 SSH 连接时获取客户端的 MAC 地址](https://linux22.com/image/572449/%E4%BD%BF%E7%94%A8%20SSH%20%E8%BF%9E%E6%8E%A5%E6%97%B6%E8%8E%B7%E5%8F%96%E5%AE%A2%E6%88%B7%E7%AB%AF%E7%9A%84%20MAC%20%E5%9C%B0%E5%9D%80.png)
我想获取通过 SSH 连接到我的服务器的每台机器的 MAC 地址。这可能吗?如果可以,你能给我提供一些参考吗?提前谢谢!
答案1
获取该信息的唯一方法是,如果设备位于您的 LAN 上,则 TCP/IP 不会封装 MAC 地址,一旦您的数据包通过路由器转发,MAC 地址就会变成路由器的 MAC 地址。
如果是在同一个局域网,您可以使用“arp -a”来查找 mac 地址。
答案2
只有当他们与您位于同一 LAN 上时才有可能,通过检查 ARP 表,例如:
% arp -a
从您的网络外部接收到的数据包将带有您的默认网关的内部 MAC 地址,并且它们的地址不会出现在 ARP 表中。