扫码关注官方订阅号
怎么在java中获取到用户客户端MAC地址,试过很多方法获取到的都是获取服务器端MAC地址,并且也要考虑用户有多个网卡的情况,如果有多个网卡就会有多个mac地址,需要获取联网的网卡的mac地址,系统没有使用反向代理。
学习是最好的投资!
用java.net.NetworkInterface
Enumeration<NetworkInterface> nets = NetworkInterface.getNetworkInterfaces(); for (NetworkInterface netint : Collections.list(nets)) { System.out.printf("Name: %s\n", netint.getName()); for (InetAddress inetAddress : Collections.list(inetAddresses)) { System.out.printf("InetAddress: %s\n", inetAddress); } System.out.printf("Hardware address: %s\n", Arrays.toString(netint.getHardwareAddress())); ... }
你的这段代码在哪运行就拿到的是哪的mac地址如果你是web应用,除非你的客户端和你的应用服务器在同一个局域网,否则你拿不到的如果你是c/s应用,那就在c端获取,在报文里传给s端具体原因,可以看下OSI7层网络模型
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
用java.net.NetworkInterface
你的这段代码在哪运行就拿到的是哪的mac地址
如果你是web应用,除非你的客户端和你的应用服务器在同一个局域网,否则你拿不到的
如果你是c/s应用,那就在c端获取,在报文里传给s端
具体原因,可以看下OSI7层网络模型