成长值: 219 签到天数: 4698 天 [LV.Master]伴坛终老
|
发表于 2016/2/16 16:08
|
显示全部楼层
|阅读模式
|Google Chrome 48.0.2564.103 |Windows 8.1
为什么kangle通过HTTP_CLIENT_IP来传递真实IP,而不是xff HTTP_X_FORWARDED_FOR来获取呢?
因为kangle的获取IP是通过HTTP_CLIENT_IP,这是可靠的,无法伪造的,你通过PHP获取的是x-forwarded-for 头是可以伪造的,不安全。
传统CDN传递的都是x-forwarded-for,kangle选择了更加安全的HTTP_CLIENT_IP来传递IP,支持的CDN有云盾等
如果CDN提供商传递了HTTP_CLIENT_IP,你在连接详情,看到的就是用户真实IP地址
cloudflare传递的是x-forwarded-for
只会显示他们节点的IP地址
要获取IP在你PHP内使用x-forwarded-for来获取即可
比如说伪造8.8.8.8访问
百度云加速,牛盾这些都是传递的HTTP_X_FORWARDED_FOR
很多程序默认也是通过for来获取IP的
比如说discuz
需要改程序来转
所以kangle使用x-real-ip传送真实ip,这个更安全。黑客无法伪造。
|
|