EdgeADC - Version 5.0.0.1986
User Guide
×
Menu

转发

Forwarded For 是通过第 7 层负载均衡器和代理服务器识别连接到网络服务器的客户端源 IP 地址的事实标准。
转发输出
选项
说明
关闭
ADC 不会更改 Forwarded-For 标头。
添加地址和端口
此选项会将连接到 ADC 的设备或客户端的 IP 地址和端口附加到 Forwarded-For 标头。
添加地址
此选项会将连接到 ADC 的设备或客户端的 IP 地址附加到 Forwarded-For 标头。
替换地址和端口
此选项将用连接到 ADC 的设备或客户端的 IP 地址和端口替换 Forwarded-For 标头的值。
更换地址
此选项将用连接到 ADC 的设备或客户端的 IP 地址替换 Forwarded-For 标头的值。
转发标题
该字段允许你指定 Forwarded-For 头信息的名称。通常是 "X-Forwarded-For",但在某些环境下可能会更改。
IIS 高级日志记录 - 自定义日志记录
您可以通过安装 IIS 高级日志 64 位应用程序来获取 X-Forwarded-For 信息。下载后,按以下设置创建名为 X-Forwarded-For 的自定义日志字段。
从 "类别 "列表的 "源类型 "列表中选择 "默认",在 "源名称 "框中选择 "请求标头",然后键入 X-Forwarded-For。
HTTP://www.iis.net/learn/extensions/advanced-logging-module/advanced-logging-for-iis-custom-logging
更改 Apache HTTPd.conf
您需要对默认格式进行几处修改,以记录 X-Forwarded-For 客户端 IP 地址,如果不存在 X-Forwarded-For 标头,则记录实际的客户端 IP 地址。
这些变化如下:
类型
价值
日志格式:
"%h %l %u %t ("%r/") %>s %b ("%{Referer}i/")\结合起来
日志格式:
"%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" %{User-Agent}i\" proxy SetEnvIf X- Forwarded-For "^.*\.*.\代理 SetEnvIf X- Forwarded-For "^.*\.*\.*" forwarded
自定义日志:
"logs/access_log "组合 env=!forwarded
自定义日志:
"logs/access_log "代理 env=forwarded
这种格式利用了 Apache 对基于环境变量的条件日志的内置支持。
     第 1 行是默认的标准组合日志格式字符串。
     第 2 行将 %h(远程主机)字段替换为从 X-Forwarded-For 标头提取的值,并将此日志文件模式的名称设置为 "proxy"。
     第 3 行是对环境变量 "forwarded "的设置,其中包含一个与 IP 地址匹配的松散正则表达式,在本例中没有问题,因为我们更关心 X-Forwarded-For 头中是否存在 IP 地址。
     另外,第 3 行可以理解为"如果有 X-Forwarded-For 值,请使用它"。
     第 4 和第 5 行告诉 Apache 使用哪种日志模式。如果存在 X-Forwarded-For 值,则使用 "代理 "模式,否则对请求使用 "组合 "模式。为了便于阅读,第 4 行和第 5 行没有使用 Apache 的旋转日志(管道式)日志功能,但我们认为几乎每个人都会使用该功能。
这些更改将导致每次请求都记录一个 IP 地址。