imaning
V2EX  ›  PHP

新手程序猿请教个突破 IP 限制的问题

  •  1
     
  •   imaning · Nov 5, 2018 · 6185 views
    This topic created in 2926 days ago, the information mentioned may be changed or developed.
    请教各位大佬个问题啊,从一个应用的 json 接口获取 token,但是这个应用限制了终端的 IP 地址(哪个 IP 获取的 token 就只能在这个 IP 用),我用 php curl 去访问接口,取到的 token 只能在跑 php 的服务器上用,求教各位大佬,有办法突破这个限制吗?
    Supplement 1  ·  Nov 6, 2018
    忽然想起个问题,大家看思路是不是正确的。
    伪造 IP,仅仅伪造了我发送的数据,实际上服务端将响应数据发送给我了伪造的那个 IP,这个是由路由决定的,而我是收不到的。所以这才是关键点是吧?
    26 replies  •  2018-12-02 15:54:36 +08:00
    udev
    udev
    Nov 5, 2018
    1
    看下如何获取的客户端请求 IP,是否可以加个 header 伪造一个
    watzds
    watzds
    Nov 5, 2018 via Android
    2
    很难
    watzds
    watzds
    Nov 5, 2018 via Android
    3
    这个服务器再开一个接口代理一下得了
    lsido
    lsido
    Nov 5, 2018 via Android
    4
    在跑 php 的服务器上再做个接口使用 token
    watzds
    watzds
    Nov 5, 2018 via Android❤️1
    5
    或者 nginx,lvs 代理
    Luckyray
    Luckyray
    Nov 5, 2018
    6
    对网络不熟悉,胡侃几句。首先想到的是代理,其次他怎么确定的 ip ?源 ip 能伪造得吧,不然黑客就好抓啦。
    opengps
    opengps
    Nov 5, 2018 via Android
    7
    在共享 ip 下,一台机器获取后给其他机器用
    lhx2008
    lhx2008
    Nov 5, 2018 via Android
    8
    服务器开个代理下来本地用就行,或者提交给 php,php 原封不动转发上接口,并且返回接口内容就行。伪造啥,不存在的
    msg7086
    msg7086
    Nov 6, 2018
    9
    要是能随随便便就突破,那对方程序员还是回家种田去吧……
    mingl0280
    mingl0280
    Nov 6, 2018
    10
    服务器端开个代理,转发一下就行。
    lujiajing1126
    lujiajing1126
    Nov 6, 2018
    11
    每个机器自己取 token,有什么问题吗?
    imaning
    imaning
    OP
    Nov 6, 2018 via iPhone
    12
    @lhx2008 请问这个代理是 http ?还是其他的?有工具么?
    imaning
    imaning
    OP
    Nov 6, 2018 via iPhone
    13
    @udev 伪造 header 不行
    imaning
    imaning
    OP
    Nov 6, 2018 via iPhone
    14
    @lhx2008 转发需要用到什么函数或者方法啊?
    zeraba
    zeraba
    Nov 6, 2018 via Android❤️1
    15
    把获取到的 token 输出,然后 nginx 或者 haproxy 中转这台机器 80 端口的请求
    xuanbg
    xuanbg
    Nov 6, 2018
    16
    你用自己的 IP 去获取一个 Token 不就行了吗?
    imaning
    imaning
    OP
    Nov 6, 2018 via iPhone
    17
    @xuanbg 因为有时效啊,想偷懒。
    Leigg
    Leigg
    Nov 6, 2018 via iPhone
    18
    你家里的平板,电脑,手机连上 wifi 上网不都是一个 ip 么,有思路了没
    laxenade
    laxenade
    Nov 6, 2018 via Android❤️1
    19
    如果你不依靠你的服务器做代理啥的然后假设对方实现方法正确,你要是能找到方法,你大概可以去 acm 开 conference 了。
    yinzhili
    yinzhili
    Nov 6, 2018
    20
    PHP 服务器上开一个代理中转一下
    whi147
    whi147
    Nov 6, 2018 via Android
    21
    内网穿透
    fengci
    fengci
    Nov 6, 2018
    22
    NGINX 开个代理吧
    python35
    python35
    Nov 6, 2018
    23
    http 基于 tcp,tcp 需要三次🤝,伪造 ip 的话三次握手都无法成功吧
    superlogin
    superlogin
    Nov 6, 2018
    24
    15 楼正解,而且好操作
    Tapir
    Tapir
    Nov 6, 2018
    25
    不用伪造的,而且也没法伪造。
    如果服务端你能控制,那你那个服务端 php 当个透代就行了。
    第三方先请求服务端 php,这个认证 ip 的服务端,带着 token 去干活儿,把返回的数据再扔给第三方。
    ritaswc
    ritaswc
    Dec 2, 2018
    26
    ip 没法伪造
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2168 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 55ms · UTC 14:25 · PVG 22:25 · LAX 06:25 · JFK 09:25
    ♥ Do have faith in what you're doing.