java - 如何从同一台计算机捕获本地和外部IP?

标签 java

我知道可以在 java 中捕获本地和外部 ip,但我想知道是否可以同时捕获这 2 个或将本地 ip 和外部 ip 关联到正在访问我的应用程序的 PC。

因为我做的是投票表,会通过IP过滤,即用户只能投票一次。于是萌生了抓取外网ip和局域网本地同一台电脑关联起来的想法。

最佳答案

要获取 IP 地址,我们使用 HttpServletRequest 对象的 getRemoteAddr 方法。但这只会为您提供客户端的公开 IP,尤其是当客户端位于代理后面时。

String ipAddress = request.getRemoteAddr();

客户端的本地 IP 必须在 HTTP 请求的 X-FORWARDED-FOR header 中可用。

request.getHeader("X-FORWARDED-FOR");

X-FORWARDED-FOR

关于java - 如何从同一台计算机捕获本地和外部IP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38122393/

相关文章:

java - IF 在 try block 内

java - 为什么我们必须在 try-with-resource block 中声明和定义资源?

java - LocalTime() 两次之间的差异

Java Discord Api 移动用户

java - 如何使用 apache POI 和 PrimeFaces 将新工作表添加到现有 Excel 工作簿

java - JDK 1.7 vs JDK 1.6 内部类继承区别

Java Keytool 不接受 "yes"字重新开始

java - Hippo CMS - 允许所有注册成员(member)添加文章?

java - 在 gradle 中找不到用于测试任务的方法 useJUnitPlatform

java - Apache PDFBox : Get alignment and font from a PDAnnotationWidget or PDTextField