获取真实 IP(Windows)
网易云负载均衡在将请求转发给后端时,会将请求头插入 X-Forwarded-For 请求头,后端服务可以通过查询该 HTTP 头来获取原始 IP 地址。
Note
未开启「ISAPI 和 CGI 限制」、「ISAPI 筛选器」,请在服务管理器内添加该角色服务。
IIS7 & IIS 8 配置方案
1. 下载 F5XForwardedFor.dll
下载 F5XForwardedFor.dll,保存到某个目录(本示例中为 C:\F5XForwardedFor2008
)并确保 IIS 进程对该目录拥有读取权限。
2. 添加「ISAPI 筛选器」
2.1. 打开 IIS ➡ 选择服务器 ➡ 双击「ISAPI 筛选器」:
2.2. 在右侧操作栏点击「添加」添加筛选器;
2.3. 自定义筛选器名称,选择「可执行文件」(本示例中为 C:\F5XForwardedFor2008\F5XForwardedFor.dll
):
3. 添加「ISAPI 和 CGI 限制」
3.1. 打开 IIS ➡ 选择服务器 ➡ 双击「ISAPI 和 CGI 限制」:
3.2. 在右侧操作栏点击「添加」;
3.3. 选择「ISAPI 或 CGI 路径」(本示例中为 C:\F5XForwardedFor2008\F5XForwardedFor.dll
):
4. 启用「ISAPI 和 CGI 限制」
右键点击之前添加的内容,选择「允许」:
5. 查看日志文件中的真实 IP
IIS 日志默认路径:C:\inetpub\logs\LogFiles
。