HTTP 请求头中的 Remote_Addr,X-Forwarded-For,X-Real-IP | Spring Cloud 13

HTTP 请求头中的 Remote_Addr,X-Forwarded-For,X-Real-IP | Spring Cloud 13

一、$remote_addr

表示发出请求的客户端主机的 IP 地址,但它的值不是由客户端提供的,而是Nginx与客户端进行TCP连接过程中,获得的客户端的真实地址 IP 地址,REMOTE_ADDR 无法伪造,因为建立 TCP 连接需要三次握手,如果伪造了源 IP,无法建立 TCP 连接,更不会有后面的 http 请求。

当你的浏览器访问某个网站时:

  • 假设中间没有任何代理,那么网站的Web服务器(NginxApache等)获取的remote_addr为你的机器IP
  • 如果你用了某个代理,那么你的浏览器会先访问这个代理,然后再由这个代理转发到网站,这样Web服务器获取的remote_addr为代理机器的IP

二、$X-Real-IP

X-Real-IP是一个自定义HeaderX-Real-Ip 通常被 HTTP 代理用来表示与它产生 TCP 连接的设备 IP,这个设备可能是其他代理,也可能是真正的请求端。需要注意的是,X-Real-Ip

转载请说明出处内容投诉
CSS教程_站长资源网 » HTTP 请求头中的 Remote_Addr,X-Forwarded-For,X-Real-IP | Spring Cloud 13

发表评论

欢迎 访客 发表评论

一个令你着迷的主题!

查看演示 官网购买