HttpServletRequest.getRemoteAddr()在Tomcat中返回的IPv6格

2019-06-25 11:41发布

HttpServletRequest.getRemoteAddr()在Tomcat中返回的IPv6格式的IP地址,但我想配置它是返回IPv4。

我通过“localhost”的访问servlet。 如果我通过“127.0.0.1”访问它,然后返回IPv4格式的IP地址(见这个答案 )。

环境:

  • Windows 7的64位
  • Tomcat的6.0.35-Windows的64位

我的LAN连接属性:IPv6的检查过 ,但它不工作,也不如果我检查它。

Answer 1:

尝试添加该参数-Djava.net.preferIPv4Stack=true到Tomcat启动命令行。



Answer 2:

当你使用localhost / XXX,你的浏览器首先要找到映射地址为名为“localhost”。在系统主机文件,你会发现:

#127.0.0.1本地主机

#:: 1本地主机

这两个定义默认情况下禁用。

修改浏览器的默认匹配规则,您必须启用的定义。

例如:从第一主机文件删除行“#”,你就会布劳尔知道directily“本地主机” 127.0.0.1等于

干杯



文章来源: HttpServletRequest.getRemoteAddr() in Tomcat returns IPv6 formatted IP address