V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hujnnn
V2EX  ›  程序员

服务端能发现使用 Socks5 代理请求的源 IP 么?

  •  
  •   hujnnn · 70 天前 · 2172 次点击
    这是一个创建于 70 天前的主题,其中的信息可能已经有所发展或是发生改变。

    由于我访问的站点不支持同一个 IP 的多账号访问。因此我想这样的操作:

    1. 使用多个版本的 Chrome ,正式版、Beta 版,Canary 版
    2. 在 Mac 上使用 Docker 运行多一个 SS + Kcptun 的客户端,并暴露 socks5 端口,远程是不同的服务器 IP
    3. 每个 Chrome 装上 Socks5 代理插件, 分别连接不同的 socks5 端口

    我的理解是:在这样的网络架构下,对方的网络检查以及浏览器指纹识别,应该只能认为是三个没有任何关联的用户在访问。

    我看过 TCP 协议,我认为 TCP 的包经过了 ss --> kcptun --> vps 等多重网络封装,到达最终目的网络设备,它应该无法识别这个 TCP 包的最终来源 IP 。

    23 条回复    2022-04-28 09:59:17 +08:00
    461da73c
        1
    461da73c  
       70 天前
    服务器看到的都是你的 socks5 server 作为请求方。
    搞这么多没用。
    eason1874
        2
    eason1874  
       70 天前
    1 、Chrome 支持多用户,不用安装多个, 点右上角头像,添加用户,每个用户 Profile 是独立的

    2 、只有 Socks5 代理不一定能隐藏真实 IP ,有一些技术还是会泄露真实 IP ,比如 WebRTC ,得把那些禁用了才行,Firefox 好像有个扩展专门禁用这些,忘了名字
    Jooooooooo
        3
    Jooooooooo  
       70 天前   ❤️ 1
    这么讲吧, 隐私上你真应该防的人这些手段都防不住.

    就算你被 google 看光了能怎么样, 最多危害就是看广告的时候更精准一点.
    baobao1270
        4
    baobao1270  
       70 天前
    同一个电脑上不同浏览器并不能防止指纹识别。

    如果允许用户 IP 不停变换,用 SCF/Cloudflare Workers
    如果不可以,用虚拟机
    weyou
        5
    weyou  
       70 天前 via Android
    回答标题:被访问的服务端不能发现代理后面的源 ip 。

    关键是第二步,楼主使用了不同的多个代理服务器地址,所以我认为楼主的这个方案是可行的。
    lithiumii
        6
    lithiumii  
       70 天前 via Android
    我来优化一下,其实可以 docker 里装浏览器然后用 novnc 暴露成网页,这样你就不需要多个版本的 chrome 了
    1423
        7
    1423  
       70 天前
    @eason1874 chrome 多用户防不住这个 https://noscriptfingerprint.com/
    hujnnn
        8
    hujnnn  
    OP
       70 天前
    @lithiumii 这是一个好的思路,但我使用多个浏览器主要是为了区分账号。比正式版 Chrome 就是 A 账号,Beta 版 Chrome 就是 B 账号,这样方便我管理是辨别。
    hujnnn
        9
    hujnnn  
    OP
       70 天前
    @Jooooooooo 并不是担心隐私。而是访问的站点不支持同 IP 多用户访问。所以才会想到这样的策略。
    hujnnn
        10
    hujnnn  
    OP
       70 天前
    @eason1874 感谢分享了一个我的知识盲区。WebRTC 这个我也是第一次知道。
    hujnnn
        11
    hujnnn  
    OP
       70 天前
    @weyou 从 TCP 层无法获取到源 IP 。有没有这样的技术,在 Chrome 浏览器执行 JS 获取本地 IP 、Mac 地址,作为参数上报给服务端?
    hujnnn
        12
    hujnnn  
    OP
       70 天前
    @1423 fingerprintjs.com/ 我经常用这个 web 页来检测。如果是不同的 Profile ,他会认为是不同的用户。
    eason1874
        13
    eason1874  
       70 天前
    @1423 #7 防得住,他是两个 IP

    我刚测试了,两个用户,都不挂代理,指纹一样。一个挂一个不挂,两个 IP ,就不一样了
    eason1874
        14
    eason1874  
       70 天前
    @1423 #7 不对,我搞错了。刚发现其中一个用户没关设备模拟,关掉重新测了,IP 不同,指纹还是一样的,多用户是防不了
    chenzheyu
        15
    chenzheyu  
       70 天前
    你可以使用专门弄外贸的浏览器,比如紫鸟啥的,反正我司做竟品,基本上是要把 Chrome 的源代码进行魔改
    lithiumii
        16
    lithiumii  
       70 天前 via Android
    @hujnnn 你开十个容器就能登十个不同的帐号了
    weyou
        17
    weyou  
       70 天前 via Android
    @hujnnn JS 能否获取本地 ip 我不知道,我知道的是就算能获取也没有用,因为私网地址相同的可能性非常大,如果网站用这个来鉴别那就太傻了
    Dlin
        18
    Dlin  
       70 天前
    你在本地使用本地机器的 docker 运行了一个本地的代理服务器,可你的代理服务器的 ip 依然是通过你公网 ip 发送请求啊,你这不还是一个 IP 嘛。
    hujnnn
        19
    hujnnn  
    OP
       69 天前
    @chenzheyu  行家 ,行家。我朋友想搞多个亚马逊店铺,又希望在一根网线下解决。 所以我想得方案就是:多电脑 + 不同的 VPS ,使用 ss+kcptun 做网络层代理。

    因为根据我搜索的资料,紫鸟这样的浏览器底层也是 Chrome + Proxy 这样的模式。需要购买一个 vps 当做网络的跳板。
    hujnnn
        20
    hujnnn  
    OP
       69 天前
    @Dlin 对,所有的网络是从一个网络出去的,但是不同的 docker 启动的 ss + kcptun 会使用不同的 vps 代理流量。这样在服务端(亚马逊)只能认为流量是从不同的 IP ( VPS 的 IP ) 来的。
    nothingistrue
        21
    nothingistrue  
       69 天前
    一、Socks5 绝对能够隐藏源 IP 。
    二、源 IP 屁用没有,你是否隐藏都没区别。

    这个 clientIP ,是最后路由的 IP ,不止过 Socks5 会变,过个路由器就会变,很古早以前还会有人用它来防止同 IP 多用户,因为容易被篡改,以及最主要的,误杀(杀整个网吧、教育网能杀一个学校、长宽这种二级运营商能杀一个省),稍微有点技术的网站都不会再用它了。
    ik
        22
    ik  
       69 天前 via iPhone
    多浏览器直接 chrome 启动的时候自定义 user-data-dir 字段就可以多个实例启动了
    llsquaer
        23
    llsquaer  
       69 天前
    爬虫不就是天天在思考这些问题么...修改 UA,修改 JA3 修改检测值,用代理
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4291 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 03:39 · PVG 11:39 · LAX 20:39 · JFK 23:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.