F5 Big-IP、X-Forwarded-For 和 IIS 日志

F5 Big-IP、X-Forwarded-For 和 IIS 日志

我有一个由我们的托管提供商管理的 F5 Big-IP。它专用于我们的私有 VLAN 等。效果很好 :)

我们要求他们添加 X-Forwarded-For HTTP-Header 字段。他们已经完成了,我们现在可以在代码中访问它。太棒了 :)

但是……对于我们的 IIS 日志,它仍然是 F5 机器的 IP。我想有人告诉我,我们需要将 ISAPI 过滤器(令人不寒而栗!)应用于 IIS 服务器。

  1. 有人可以证实这一点吗?
  2. 如果 #1 == 是,那么是否有文件/说明如何针对 Windows 2008 计算机上的 IIS7 Web 服务器执行此操作。

答案1

我发布了一个 ISAPI 过滤器,用于我们的 BIG-IP,并且刚刚更新了它,使其完全支持 x86 和 x64。查看我之前写的博客文章。只需将随附的 F5XForwardedFor.dll 复制到您的服务器,并在虚拟站点的 ISAPI 部分中引用它即可。

http://devcentral.f5.com/weblogs/joe/archive/2005/09/23/1492.aspx

答案2

这在此主题IIS Microsoft Community。似乎有一个帮手为 IIS 执行此操作(特别声明与 Microsoft ARR 一起使用,但它应该适用于任何反向代理或负载平衡器)。

答案3

虽然该问题带有 iis-7 标签,但这是在 X-Forwarded-For 上搜索时最热门的话题,因此我想我会继续为 IIS 8.5 提供此信息。

IIS 8.5 及更高版本 IIS 8.5 引入了增强日志记录此功能可让管理员轻松记录 HTTP 请求标头(例如 X-Forwarded-For)。此答案改编自链接页面。

  1. 打开IIS 管理器

  2. 連接窗格,然后双击日志记录。请注意,增强日志记录仅适用于站点级日志记录 - 如果您在連接窗格,然后自定义字段部分W3C 日志字段对话框已被禁用。

  3. 在里面格式下的田野日志档案, 选择W3C然后点击选择字段...

  4. 在里面W3C 日志字段对话框中,点击添加字段...。请注意,增强日志记录仅适用于站点级日志记录 - 如果您在連接窗格,然后添加字段...被禁用。

  5. 在里面添加自定义字段对话框中,输入字段名称例如c-ip-original在日志文件中识别自定义字段。请注意,字段名称不能包含空格。

  6. 选择请求标头在里面源类型列表。

  7. 输入X-FORWARDED-FOR来源

  8. 点击好的

  9. 点击好的

  10. 点击申请在里面操作窗格应用新配置。

配置自定义字段后,IIS 将创建新的文本日志文件,并在文件名后附加“_x”,以表明该文件包含自定义字段。

请注意,从所有自定义字段收集的数据总大小不能超过 65,536 字节。如果总数超过 65,536 字节,则 IIS 将截断数据。

相关内容