ChatGPT VPN 识别绕过方法

208 天前
 jqknono

前言

chatgpt 目前仍然是使用体验最好的聊天机器人,但是在国内使用时,由于网络环境的限制,我们需要使用梯子来访问 chatgpt 。但是 chatgpt 对梯子的检测较为严格,如果检测到使用了梯子,会直接拒绝访问。这里介绍一种绕过 chatgpt 对梯子检测的方法。

有其他人提到更换 IP 来绕过封锁, 但我们一般使用 IP 的地域已经是可以提供服务的地区, 所以这种方法并不一定是实际的拒绝服务原因.

另外有人提到梯子使用人数较多容易被识别, 劝人购买较贵的使用人数少的梯子, 这也很难成为合理理由, 在 ipv4 短缺的今天, 即便是海外, 也存在大量的社区使用 nat 分配端口, 共用一个 ipv4 的情况. chatgpt 一封就要封一大片, 作为一个被广泛使用的服务, 这样的检测设计肯定是不合理的.

对大众服务来说, 检测源 IP 一致性则更为合理. 付费梯子的特征通常是限制流量或限制网速, 因此多数使用梯子的用户选择按规则绕过. 绕过自己的运营商可直接访问的地址, 以减少流量消耗, 或者获得更快的访问速度, 仅在访问被防火墙拦截的地址时导入流量到代理. 这种访问目标服务的不同方式, 可能会造成源地址不一致. 例如访问 A 服务需要同时和域名 X 和域名 Y 进行通信, 而防火墙仅拦截了域名 X, 那么在 A 服务看到的同一请求的不同阶段的访问来源 IP 不一致.

解决代理策略导致的源 IP 不一致问题, 即可绕过 chatgpt 的梯子识别.

梯子规则中通常会含有域名规则, IP 规则等.

我们还需要知道域名解析的 IP 结果是可以根据地域而变化的, 比如我在 A 地区时解析到附近的服务 IP, 在 B 地区时则解析到不同的 IP. 因此, DNS 的选择也非常重要.

DNS 选择

现在 DNS 有很多的协议, UDP:53 已经是非常落后而且极不安全的协议, 我国甚至已将 DNS 服务列入企业经营中的一级条目. 这主要来源于过去几十年我国的各级运行商使用DNS 劫持HTTP塞入了大量的跳转广告, 蒙骗不少网络小白, 招致大量投诉. 尽管现在Chrome/Edge已经标配自动跳转HTTPS, 标记HTTP网站为不安全, 但我国还存在许多的地方小区级的网络服务提供商, 以及国内各种老版本的Chromium封装魔改, 导致 DNS 劫持和 HTTP 劫持仍然存在.

因此, 我们需要选择一个安全的 DNS 服务协议, 以避免 DNS 劫持. 根据个人经验, 阿里云的223.5.5.5体验足够好. 当然, 当我提223.5.5.5时, 肯定不是UDP:53的 alidns, 而是DoHDoT协议. 在配置时, 你需要使用tls://223.5.5.5, 或者https://dns.alidns.com/dns-query写入配置.

alidns 服务在绝大多数时候都不会污染, 仅在少数敏感时期会出现污染, 你也可以使用我自建的长期 dns 服务tls://dns.jqknono.com, 上游来自8.8.8.81.1.1.1, 通过缓存来加速访问.

域名规则

首先打开的检测网页会包含检测逻辑, 通过向不同域名发送请求来验证源 IP, 因此这里需要保持域名代理的一致性.

chatgpt 网页访问的域名除了自己的域名openai外, 还有auth0, cloudflare等第三方域名.

可以手动写入以下规则:

# openai
- DOMAIN-SUFFIX,chatgpt.com,PROXY
- DOMAIN-SUFFIX,openai.com,PROXY
- DOMAIN-SUFFIX,auth0.com,PROXY
- DOMAIN-SUFFIX,cloudflare.com,PROXY

github 有人整理了一份 chatgpt 的 clash 规则: https://raw.githubusercontent.com/G4free/clash-ruleset/main/ruleset/ChatGPT.yaml, 可以在 clash 的 ruleset 中使用.

IP 规则

此外, 根据我的实际经验, 还存在基于IP的检测行为, 以下是我在连接跟踪中尝试出的一些 IP, 读者可以自行尝试使用, 需要说明这些 IP 并不一定适用于每个地区, 你或许需要自行尝试.

# openai
- IP-CIDR6,2606:4700:4400::6812:231c/96,PROXY
- IP-CIDR,17.253.84.253/24,PROXY
- IP-CIDR,172.64.152.228/24,PROXY
- IP-CIDR,104.18.35.28/16,PROXY

如何试验 IP 规则

你需要了解自己的梯子客户端工具, 在连接跟踪显示页面, 观察新增的连接, 通过这些连接的 IP 地址来尝试添加规则.

以下是简单的步骤描述:

  1. 浏览器打开 InPrivate 页面, 隐私页面可以避免缓存/cookies 等的影响
  2. 访问chat.openai.com, 或者chatgpt.com
  3. 梯子客户端中观察新增连接, 将这些连接加入到代理规则

协议规则

chatgpt 大量使用了 UDP 流量, 因此梯子的服务端/客户端需要支持 UDP 代理, 有许多梯子是不支持 UDP 的, 这也是导致 chatgpt 无法访问的原因之一. 客户端和服务端都支持UDP, 还需要用户明确配置, 一些客户端会配置默认不代理 UDP 流量.

最简单配置--白名单模式

配置仅中国 IP 直连, 未匹配到的流量走代理, 这样可以保证 chatgpt 的访问, 也可以保证其他国外服务的访问.

这种方式的缺点就是流量消耗大, 网络流畅度体验依赖梯子的网络质量, 如果您对自己的梯子有信心, 可以尝试这种方式.

当然, 您还得记得开启UDP代理.

14788 次点击
所在节点    OpenAI
35 条回复
imydou
208 天前
内容过多

[Rule]
# OpenAI
DOMAIN-SUFFIX,openai.com,WARP
DOMAIN-SUFFIX,chatgpt.com,WARP
Kinnice
208 天前
UDP: 请关闭 QUIC
payload:
- DOMAIN,browser-intake-datadoghq.com
- DOMAIN,static.cloudflareinsights.com
- DOMAIN-SUFFIX,ai.com
- DOMAIN-SUFFIX,algolia.net
- DOMAIN-SUFFIX,api.statsig.com
- DOMAIN-SUFFIX,auth0.com
- DOMAIN-SUFFIX,chatgpt.com
- DOMAIN-SUFFIX,chatgpt.livekit.cloud
- DOMAIN-SUFFIX,client-api.arkoselabs.com
- DOMAIN-SUFFIX,events.statsigapi.net
- DOMAIN-SUFFIX,featuregates.org
- DOMAIN-SUFFIX,host.livekit.cloud
- DOMAIN-SUFFIX,identrust.com
- DOMAIN-SUFFIX,intercom.io
- DOMAIN-SUFFIX,intercomcdn.com
- DOMAIN-SUFFIX,launchdarkly.com
- DOMAIN-SUFFIX,oaistatic.com
- DOMAIN-SUFFIX,oaiusercontent.com
- DOMAIN-SUFFIX,observeit.net
- DOMAIN-SUFFIX,segment.io
- DOMAIN-SUFFIX,sentry.io
- DOMAIN-SUFFIX,stripe.com
- DOMAIN-SUFFIX,turn.livekit.cloud
- DOMAIN-KEYWORD,openai
- IP-CIDR,24.199.123.28/32
- IP-CIDR,64.23.132.171/32
- IP-ASN,20473
jqknono
208 天前
@imydou 只这两条规则够不够, 试过的人自有体验.
chancat
208 天前
geosit
Leofits
208 天前
即答:换台 vps
SoyaDokio
208 天前
之前有遇到过,后来嫌麻烦用的第三方。感谢分享,有帮助。

省流:全局或仅中国 IP 直连
j869716
208 天前
换个 IP 就好了, racknerd 的没问题, 腾讯轻量云的不行
Felldeadbird
208 天前
我做法是梯子先挂全局访问 gpt ,然后在控制台查看 gpt js 请求的域名。把这些域名全加入到梯子的 pca 文件。基本可以愉快访问 gpt 了。
a0xbd4CX0DHC1EuT
208 天前
手机 app 添加了白名单规则也不行,电脑可以正常访问。
yuezk
208 天前
这是我的用法,在 VPS 端使用 Warp 路由 openai 的流量,一直很稳定,可能也各 VPS 有关。
kebamt
208 天前
@j869716 我 Racknerd 不行
Goooooos
208 天前
yuhuazhu
208 天前
@yuezk me too ,还有 Imgur 也是加了 warp 才能显示图片(我的甲骨文 ip 没法显示图片)
fcukmylife
208 天前
换个台湾节点不是就可以了吗?
j869716
208 天前
@kebamt #11 racknerd 的 IP 是这样的, 估计有的被标记了吧
ruidoBlanco
208 天前
费这个劲干什么,我都等着上面剩下的 2 块多余额用完换 deepinfra 呢。

价格比 deepinfra llama3 70b 贵,效果还比它差。
xiaojun996
208 天前
http://1.1.1.1/

我用这个
cvbnt
208 天前
内容过多,cloudflare warp 完美解决
waytodelay
208 天前
@cvbnt 你好,请问有具体教程吗
jqknono
208 天前
@xiaojun996 这个连接访问不了的, 应该是 tls://1.1.1.1 或者 https://1.1.1.1/dns-query 吧?

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

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

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

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

© 2021 V2EX