V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
datocp

移动专线代理一些百思不得其解的问题

  •  
  •   datocp · Jan 14 · 2221 views
    This topic created in 103 days ago, the information mentioned may be changed or developed.
    这几天在排除移动专线不能借道电信访问 vps ,之前的那组端口,从移动 tcping 电信延迟低到 2ms 以内。ping 电信 ip 的延迟在 30ms 以内,在防火墙当天刚设置的新端口通过 tcping 也在 30ms 以内。结果今天这组昨天刚设定的新端口,延迟又在 2ms 以内。都不知道是移动的问题,还是电信的问题。因为之前手机联通流量能借道电信,我认为是移动的问题。

    现在移动借道电信访问 vps 代理通过 ip138 获得的 ip 是 vps 的 ip 。
    移动访问电信代理,获得的 ip 竟然是移动的。
    联通手机流量访问电信代理,获得的 ip 依然是电信代理。

    昨天为了应对可能的中间人问题,已经在服务器端通过证书验证客户端身份。这种移动 tcping 电信特定端口短到 2ms 以内,以及访问电信的代理为什么显示本地移动的出口 ip ,百思不得其解。我记得昨天 ping 不在 2ms 时,显示的确定是电信 ip 啊。。。

    这移动这么坑?还能这么快就中间人了???
    5 replies    2026-01-17 13:32:05 +08:00
    nkloveni
        1
    nkloveni  
       Jan 14
    proxy 会给 http 请求加个 x_forwarded_for 的头,标注了真实来源。
    你有 proxy 的管理权的话,可以配置下去掉这个头
    mikeluckybiy
        2
    mikeluckybiy  
       Jan 14 via Android
    tcpping 是本地的响应,不是电信,之前碰到过类似情况,线路物理距离不可能 2ms 。
    datocp
        3
    datocp  
    OP
       Jan 15
    早上又去重现了 1 次。

    iptables -t nat -A prerouting_rule -p tcp -m multiport --dports 2222A,2222B,2222C -j REDIRECT --to-ports 2222

    在之前的端口组新添加了 1 个,tcping time=2002.34ms,看似没 ping 通,但是 ip138.com 返回的的确确是电信的 IP ,而那个 time=1.74ms 之前设定的端口返回的确却是当前使用的移动网络的出口 ip 。。。这种现象已经超出我的知识了,我一直以为我用了 stunnel ,还强制使用了 verify=3 ,应该链路两端已经加密了。可是移动这网络确实在 1 天以后就能识别,问题它不知道用了什么黑科技。。。会出现代理服务器的 ip 显示不对。
    datocp
        4
    datocp  
    OP
       Jan 16
    搞了 3 天搞不定,把这些天的测试情况总结一下

    1.在电信线路刚建的防火墙端口,移动专线去 tcping 30ms 左右
    2.大概 1 天左右,这些端口延迟低到 2ms ,同时在电信处服务器端 stunnel 能抓到来自移动专线的连接 ip ,但是 iptables 防火墙抓不到源 ip
    3.移动专线<>电信代理,对于已经 2ms 的端口得到的代理 ip 是移动专线当前出口。对于 30ms 的端口得到的代理 ip 是电信当前出口。
    这里又引申出一个问题,到底被中间人攻击了嘛。stunnel 还安全嘛!!!既然拿到的是移动的 ip 那肯定就不正常了。
    对于 2ms 端口,目前 stunnel 启用 verifyChain = yes ,网络已经不通了,日志的提示应该是认为证书身份不一致。只能设定 verifyPeer = yes ,但是既然已经是移动的 ip ,显然它没做到端到端的连接安全
    CERT: Pre-verification error: certificate not found in local repository: self-signed certificate

    对于 30ms 端口,目前 stunnel 启用 verifyChain = yes ,一切正常。

    在联通手机流量一切正常。移动的黑科技还是比较厉害的,让人担心的是,它能做到双向中间人嘛。那使用移动不就裸奔了嘛!
    datocp
        5
    datocp  
    OP
       Jan 17
    哈哈,玩了个乌龙。
    2ms 问题是因为在电信/移动专线的 openwrt 出口路由都配置了 REDIRECT 而且还是一样的端口号。。。

    经过这回疑神疑鬼,使用 verifyChain = yes 加强端到端的身份验证,同时启用了 iptables knock door 。此事完结。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3025 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 15:07 · PVG 23:07 · LAX 08:07 · JFK 11:07
    ♥ Do have faith in what you're doing.