使用百度云加速后不能正确获取用户真实IP的解决办法_百度云加速HTTP头信息获取客户端真实ip

08-20 4082阅读 0评论

温馨提示:

文章最后更新时间2021年10月07日,已超过50天没有更新,若内容或图片失效,请留言反馈!

折腾博客就是一个反复跳坑、填坑的过程,累却乐在其中。虽然解决了IP归属地查询的问题,可很快发现了另一个问题:大部分的IP都是相同的,且相对固定。

想到最近启用了百度匀加速的cdn,就在匀加速的支持文件中查找了节点的ip地址,果不其然,评论者的IP全部来自百度匀加速的节点。这样一来就算显示评论者IP归属地还有什么意义呢?

使用百度云加速后不能正确获取用户真实IP的解决办法_百度云加速HTTP头信息获取客户端真实ip,使用百度云加速后不能正确获取用户真实IP的解决办法_百度云加速HTTP头信息获取客户端真实ip 百度云加速获取真实用户IP 获取用户真实ip 百度云加速后不能正确获取用户真实IP 如何使用百度云加速HTTP头信息获取客户端真实ip? 网 nbsp 服务器 第1张,百度云加速获取真实用户IP,获取用户真实ip,百度云加速后不能正确获取用户真实IP,如何使用百度云加速HTTP头信息获取客户端真实ip?,百度云加速获取真实用户IP,获取用户真实ip,百度云加速后不能正确获取用户真实IP,如何使用百度云加速HTTP头信息获取客户端真实ip?,网,IT 屋,服务器,第1张centos服务器,nginx用的百度云加速,获取不到真实的ip地址,在打开网站防火墙同时使用CDN后可能无法获取到用户的真实IP,那么就无法防御,有可能造成服务器防火墙误封CDN IP的情况,造成502 ,520错误等!那么如何使用百度云加速HTTP头信息获取客户端真实ip?

使用百度云加速后不能正确获取用户真实IP的解决办法_百度云加速HTTP头信息获取客户端真实ip,使用百度云加速后不能正确获取用户真实IP的解决办法_百度云加速HTTP头信息获取客户端真实ip 百度云加速获取真实用户IP 获取用户真实ip 百度云加速后不能正确获取用户真实IP 如何使用百度云加速HTTP头信息获取客户端真实ip? 网 nbsp 服务器 第2张,百度云加速获取真实用户IP,获取用户真实ip,百度云加速后不能正确获取用户真实IP,如何使用百度云加速HTTP头信息获取客户端真实ip?,百度云加速获取真实用户IP,获取用户真实ip,百度云加速后不能正确获取用户真实IP,如何使用百度云加速HTTP头信息获取客户端真实ip?,网,IT 屋,服务器,第2张

我的解决办法如下

百度云加速获取真实用户IP

登录CDN管理控制台,进入“内容分发网络CDN”页面。

在左侧导航栏,点击域名管理。

进入域名管理页面,点击目标域名操作列的管理。

进入“CDN域名详情”页,在页面上方导航栏选择回源配置页签。

进入回源配置页面,点击获取真实用户IP设置模块的编辑。

将“获取真实用户IP”调整到开启状态,并设置类型:

Client IP:源站可以获取到访问源的客户端IP地址,携带True-Client-Ip;

Real IP:源站可以获取到访问源的客户端IP地址,携带X-Real-IP。

使用百度云加速后不能正确获取用户真实IP的解决办法_百度云加速HTTP头信息获取客户端真实ip,使用百度云加速后不能正确获取用户真实IP的解决办法_百度云加速HTTP头信息获取客户端真实ip 百度云加速获取真实用户IP 获取用户真实ip 百度云加速后不能正确获取用户真实IP 如何使用百度云加速HTTP头信息获取客户端真实ip? 网 nbsp 服务器 第3张,百度云加速获取真实用户IP,获取用户真实ip,百度云加速后不能正确获取用户真实IP,如何使用百度云加速HTTP头信息获取客户端真实ip?,百度云加速获取真实用户IP,获取用户真实ip,百度云加速后不能正确获取用户真实IP,如何使用百度云加速HTTP头信息获取客户端真实ip?,网,IT 屋,服务器,第3张

点击保存后,在获取真实用户IP模块可以看到获取真实用户IP已开启,页面提示“配置已更新成功,大约五分钟生效”。

博客跟着同步

使用百度云加速后不能正确获取用户真实IP的解决办法_百度云加速HTTP头信息获取客户端真实ip,使用百度云加速后不能正确获取用户真实IP的解决办法_百度云加速HTTP头信息获取客户端真实ip 百度云加速获取真实用户IP 获取用户真实ip 百度云加速后不能正确获取用户真实IP 如何使用百度云加速HTTP头信息获取客户端真实ip? 网 nbsp 服务器 第4张,百度云加速获取真实用户IP,获取用户真实ip,百度云加速后不能正确获取用户真实IP,如何使用百度云加速HTTP头信息获取客户端真实ip?,百度云加速获取真实用户IP,获取用户真实ip,百度云加速后不能正确获取用户真实IP,如何使用百度云加速HTTP头信息获取客户端真实ip?,网,IT 屋,服务器,第4张

一种方法是获取 header中的 X-FORWARDED-FOR 来判断用户IP,但是众所周知这个字段是可以伪造的.
可靠的方法是获取百度云加速中的 CF-CONNECTING-IP 字段,实测这个字段无法伪造,是百度服务器直接发送到用户服务器,
那么我们获取这个字段就可以获取到用户的真实IP

通过添加X-Real-IP和X-Forwarded-For捕获客户端真实IP。

Nginx Proxy

192.168.107.107 nginx.conf
location /test {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.107.112:8080;
}
192.168.107.112 nginx.conf
location /test {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.107.114:8080;
}
Nginx Backend
192.168.107.114 nginx.conf
location /test {
default_type text/html;
charset gbk;
echo "$remote_addr ||$http_x_real_ip ||$http_x_forwarded_for";
}

当访问服务时,输出结果为:

192.168.107.112 || 192.168.162.16 || 192.168.162.16, 192.168.107.107



文章版权声明:除非注明,否则均为IT屋博客原创文章,转载或复制请以超链接形式并注明出处。
您需要 登录账户 后才能发表评论

发表评论

表情:
评论列表 (暂无评论,4082人围观)

还没有评论,来说两句吧...

取消
支付宝二维码
支付宝二维码
微信二维码