X-Forwarded-For

X-Forwarded-For(XFF)是一个HTTP扩展头部,用于记录客户端的真实IP,尤其在经过代理或负载均衡服务器时。该头信息会包含一系列IP地址,最前端是客户端的IP,后面依次是每级代理的IP。XFF有效性依赖于代理服务器的可靠性,且$remote_address可以获取最后建立TCP连接的设备IP。
摘要由CSDN通过智能技术生成

简称XFF头,是一个扩展头,它代表客户端也就是HTTP的请求端真实的IP,只有在通过了HTTP 代理或者负载均衡服务器时才会添加该项(百度百科:用来识别通过HTTP代理或负载均衡方式连接到Web服务器的客户端最原始的IP地址HTTP请求头字段)。
X-Forwarded-For请求头格式:

X-Forwarded-For:client,proxy1,proxy2

格式比较简单,首先是离服务端最远的设备IP,然后就是每一级代理设备的IP。如果一个HTTP请求到达服务器之前,经过了三个代理Proxy1、Proxy2、Proxy3,IP分别为IP1、IP2、IP3,用户真实IP是IP0,那么根据XFF标准,服务器最终会收到下面的信息:

X-Forwarded-For:IP0,IP1,IP2

Proxy3直连服务器,它会给XFF追加IP2,帮Proxy2转发请求。列表中并没有 IP3,IP3 可以在服务端通过 $ remote_address 字段获得。我们知道 HTTP 连接基于 TCP 连接,HTTP 协议中没有 IP 的概念,$remote_address 来自 TCP 连接,表示与服务端建立 TCP 连接的设备 IP,在这个例子里就是 IP3。
详细分析一下,这样的结果是经过这样的流程而形成的:

  1. 用户IP0—> 代理Proxy1(IP1),Proxy1记录用户IP0,并将请求转发
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值