请问如何获取用户访问的真实IP。单位是用深信服AD做负载的,was开启access日志后,发现来访地址都是AD上的虚拟IP地址,有什么办法获取用户真实的IP?
收起在http传输层面尽量保持 原始ip ,如 存放在 X-FORWARDED-FOR
比如经过了 DDOS、反向代理、防火墙等时,需要注意每一个环节对相关字段是否有 清洗,必要时配置相关安全、负载设备 保持 原始ip 在 X-FORWARDED-FOR 头部字段
在Apache httpd(包括IBM HTTPServer) 的配置文件中 修改log配置
httpd.conf
#LogFormat "%h %l %u %t \\"%r\\" %>s %b \\"%{Referer}i\\" \\"%{User-Agent}i\\"" combined
LogFormat "%h %{X-FORWARDED-FOR}i %l %u %t \\"%r\\" %>s %b \\"%{Referer}i\\" \\"%{User-Agent}i\\"" combined
#LogFormat "%h %l %u %t \\"%r\\" %>s %b" common
LogFormat "%h %{X-FORWARDED-FOR}i %l %u %t \\"%r\\" %>s %b" common