首页/网络/协议速查/X-Forwarded-For 客户端 IP 链
本包目录(405 条)
HTTP 方法与状态码91 条
HTTP 头与缓存70 条
DNS 与域名解析60 条TCP 与 UDP54 条TLS 与加密50 条IP 与 ICMP37 条邮件与文件传输43 条

X-Forwarded-For 客户端 IP 链

事实标准(非 RFC):逗号分隔的 IP 链,最左为最初客户端,最右为最近一跳代理;应用取「可信代理后的第一个不可信 IP」。

协议速查网络更新于 2026-10-12
名称X-Forwarded-For(XFF)
作用传递真实客户端 IP
规范无 RFC(de facto;同类标准为 RFC 7239 Forwarded)
风险客户端可伪造最左段,必须结合可信代理裁剪

Nginx 计算真实客户端 IP

Nginx 计算真实客户端 IP
location / {
    set_real_ip_from 10.0.0.0/8;      # 只信任内部代理
    real_ip_header X-Forwarded-For;
    real_ip_recursive on;
    proxy_set_header X-Real-IP $remote_addr;
}
直接取 XFF 第一个 IP 做限流/封禁≈对攻击者开放:先把请求路径固定为可信代理并配置递归剥离,再取客户端地址。

易错点

  • 日志里 XFF 与 $remote_addr 两列混用,误把代理 IP 当用户 IP 封禁
  • CDN 已改写 XFF 后再叠加一层自家代理,链中位置与预期不符

数据来源与参考

  • RFC 7239(标准替代)
  • Nginx realip 模块文档
  • MDN X-Forwarded-For

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌