有人知道是否有办法从 Jetty 中的 HTTPServletRequest 获取发件人的 MAC 地址?(注意:发件人是指直接发件人,也就是我的服务器之前的最后一跳)。如果没有直接的方法,有人知道用Java将IP地址转换为MAC地址的方法吗?
其他注意事项:我完全意识到 MAC 地址不会离开本地子网,这就是预期的功能。
我知道这似乎是一个奇怪的问题,但相信我,我知道我在做什么 :-) 如果你很好奇,我很乐意解释我为什么想要这个。
谢谢,
克里斯
有人知道是否有办法从 Jetty 中的 HTTPServletRequest 获取发件人的 MAC 地址?(注意:发件人是指直接发件人,也就是我的服务器之前的最后一跳)。如果没有直接的方法,有人知道用Java将IP地址转换为MAC地址的方法吗?
其他注意事项:我完全意识到 MAC 地址不会离开本地子网,这就是预期的功能。
我知道这似乎是一个奇怪的问题,但相信我,我知道我在做什么 :-) 如果你很好奇,我很乐意解释我为什么想要这个。
谢谢,
克里斯
由于 MAC 地址未在 HTTP 请求中发送,因此不,您无法从 HttpServletRequest(在 Jetty 或任何应用程序服务器中)获取此地址。
您必须自己使用ARP查找地址。
您还应该考虑您想要它的用途。它可以由用户更改,因此它首先不是识别客户的可靠方法。
不,您只有远程 IP,下面的网络层不在图片中。正如马特回答的那样,您必须求助于一些 ARP 查找,但这并不是很简单,特别是在 Java 中。请参阅此相关问题。