扫码关注官方订阅号
这是我通过命令
cmd = { "/bin/sh", "-c", "ping " + ip + " -c 2 && arp -a" };
获取的mac地址,但是mac地址不是我想要的客户端地址,而是我这边集群服务器上的地址,请问有什么好办法通过ip去获取客户端mac地址吗?
其实, 如果你想获得客户端的mac地址是没办法的, 因为数据报报在经过路由器时, 报文中的mac地址会被路由器所改写的, 因为要记录链路层中发送方的mac地址, 大致的过程如下图:
也可以参考这篇文章: 网络-数据包在路由转发过程中MAC地址和IP地址,变与不变
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
其实, 如果你想获得客户端的mac地址是没办法的, 因为数据报报在经过路由器时, 报文中的mac地址会被路由器所改写的, 因为要记录链路层中发送方的mac地址, 大致的过程如下图:

也可以参考这篇文章:
网络-数据包在路由转发过程中MAC地址和IP地址,变与不变