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

2022-04-26 22:16:31 +08:00
 hujnnn

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

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

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

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

3419 次点击
所在节点    程序员
23 条回复
461da73c
2022-04-26 22:31:31 +08:00
服务器看到的都是你的 socks5 server 作为请求方。
搞这么多没用。
eason1874
2022-04-26 22:44:35 +08:00
1 、Chrome 支持多用户,不用安装多个, 点右上角头像,添加用户,每个用户 Profile 是独立的

2 、只有 Socks5 代理不一定能隐藏真实 IP ,有一些技术还是会泄露真实 IP ,比如 WebRTC ,得把那些禁用了才行,Firefox 好像有个扩展专门禁用这些,忘了名字
Jooooooooo
2022-04-26 22:45:37 +08:00
这么讲吧, 隐私上你真应该防的人这些手段都防不住.

就算你被 google 看光了能怎么样, 最多危害就是看广告的时候更精准一点.
baobao1270
2022-04-27 00:22:32 +08:00
同一个电脑上不同浏览器并不能防止指纹识别。

如果允许用户 IP 不停变换,用 SCF/Cloudflare Workers
如果不可以,用虚拟机
weyou
2022-04-27 00:47:51 +08:00
回答标题:被访问的服务端不能发现代理后面的源 ip 。

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

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

因为根据我搜索的资料,紫鸟这样的浏览器底层也是 Chrome + Proxy 这样的模式。需要购买一个 vps 当做网络的跳板。
hujnnn
2022-04-27 12:04:19 +08:00
@Dlin 对,所有的网络是从一个网络出去的,但是不同的 docker 启动的 ss + kcptun 会使用不同的 vps 代理流量。这样在服务端(亚马逊)只能认为流量是从不同的 IP ( VPS 的 IP ) 来的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/849442

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX