为什么kangle通过HTTP_CLIENT_IP来传递真实IP,而不是xff HTTP_X_FORWARDED_FOR来获取呢?
为什么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://att.itzmx.com/data/attachment/forum/201507/27/045132wm8rcdev89rcaazv.png
百度云加速,牛盾这些都是传递的HTTP_X_FORWARDED_FOR
很多程序默认也是通过for来获取IP的
比如说discuz
需要改程序来转
所以kangle使用x-real-ip传送真实ip,这个更安全。黑客无法伪造。
手机帮顶
页:
[1]