由于IPv6兼容性,我们一直存在一些虚假的问题,这些问题可能是由于某些网络更改造成的。
我尝试了解决方法: Connector标记中的address="0.0.0.0“,但是访问日志仍然只包含IPv6地址。
发布于 2013-06-06 14:56:45
如果您的服务器正在接受来自IPv6客户端的连接,那么有时您将获得IPv6地址。您是否将Tomcat与另一个可能接受IPv6连接并通过IPv4转发它们的web服务器连接?如果是这样,您将需要重新配置web服务器。
您可以尝试将-Djava.net.preferIPv4Stack=true添加到应用服务器上的CATALINA_OPTS中。
更新2015-09-03
在访问日志中获取IPv6地址还有其他原因,即使服务器上完全禁用了IPv6。例如,如果在Tomcat前面有一个反向代理,它可能会发送一个X-Forwarded-For头,其中包含一个IPv6地址。假设您对Tomcat进行了“正确”的配置,Tomcat将将实际客户端的IP地址(以IPv6形式)记录到您的访问日志中,而不是将反向代理的IP地址用于日志(这将毫无用处,因为所有请求似乎都来自反向代理)。
因此,如果您的软件由于某种原因无法处理IPv6,那么您确实需要修复该软件,因为您真的无法躲过IPv6。
https://stackoverflow.com/questions/16929122
复制相似问题