开发者社区> 问答> 正文

请教各位大牛如何避免用户访问请求伪造ip?

screenshot
如上图,是我测试的一段代码访问一个IP查询服务的服务,可以看出,可以任何伪造ip地址!

当前正在做的一个PHP项目,需要验证用户的IP地址是否在授权范围中,请问有什么方法可以避免用户伪造IP?

或者,是否能提供一个其他思路?

补充:实际场景为rest调用,调用和被调用端都为服务器~

展开
收起
落地花开啦 2016-06-12 11:46:15 2362 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    想完全避免近乎不可能,透明和匿名http代理还能检测http头,但是socks代理呢,或者自己实现的端口转发呢?
    现在能想到的就是维护一个巨大的库,把所有能搜集到的可能是代理的ip加进去,用户访问之前先进库对比。但是这样缺点也很大,
    一是库太大了访问速度会变慢,影响效率;
    二是有些ip可能只是暂时是代理,比如肉鸡,可能会恢复正常,比如营运商动态分配的ip,今天我用时做代理,明天分配到你那里就可能不是代理了,如果没有一个很好的检测剔除机制,很可能误杀;
    三是库不可能把所有代理都收进去,只能尽可能搜集一些互联网上公开的代理,私有代理很难收集到,这些库之外的代理还是没法避免他们访问。
    不过目前有公司确实在维护这样的库,对外以api的方式提供服务。

    2019-07-17 19:33:38
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
微信客户端怎样应对弱网络 立即下载
代码未写,漏洞已出——谈谈设计不当导致的安全问题 立即下载
低代码开发师(初级)实战教程 立即下载