ChatGPT VPN-Erkennungs- und Umgehungsverfahren

Wie man mit ChatGPT-Fehlermeldungen umgeht: “Unable to load site” “Please try again later, if you are using a VPN, try turning it off.” “Check the status page for information on outages.”

Vorwort

ChatGPT ist derzeit immer noch der Chatbot mit dem besten Nutzungserlebnis, aber aufgrund der Netzwerkeinschränkungen in China müssen wir ein VPN verwenden, um auf ChatGPT zuzugreifen. Allerdings ist die Erkennung von VPNs durch ChatGPT recht streng. Wenn ein VPN erkannt wird, wird der Zugriff sofort verweigert. Hier wird eine Methode vorgestellt, wie man die VPN-Erkennung von ChatGPT umgehen kann.

Einige Leute erwähnen, dass durch das Wechseln der IP-Adresse die Sperrung umgangen werden kann, aber normalerweise befindet sich unser verwendeter IP-Standort bereits in einer Region, die den Service anbietet. Daher ist diese Methode nicht unbedingt der wahre Grund für den Serviceverweigerung.

Außerdem wird von einigen Leuten erwähnt, dass VPNs mit vielen Nutzern leichter erkannt werden, und sie raten dazu, teurere VPNs mit weniger Nutzern zu kaufen. Dies ist ebenfalls schwer nachvollziehbar, da im Zeitalter des IPv4-Mangels auch im Ausland große Gemeinschaften NAT verwenden, um Ports zuzuweisen, und viele IPv4-Adressen gemeinsam nutzen. Wenn ChatGPT eine Sperre verhängt, müsste es große Bereiche sperren. Als weit verbreiteter Service wäre ein solches Erkennungsdesign sicherlich unvernünftig.

Für Massendienste ist die Überprüfung der Konsistenz der Quell-IP viel sinnvoller. Die Merkmale kostenpflichtiger VPNs sind normalerweise die Beschränkung des Datenverkehrs oder der Bandbreite. Daher wählen die meisten VPN-Nutzer die Umgehungsregeln. Sie umgehen Adressen, die ihr ISP direkt erreichen kann, um den Datenverbrauch zu reduzieren oder eine schnellere Zugriffsgeschwindigkeit zu erhalten, und leiten den Datenverkehr nur dann an das Proxy weiter, wenn sie auf Adressen zugreifen, die von der Firewall blockiert werden. Diese unterschiedlichen Zugriffsweisen auf das Ziel-Service können zu Inkonsistenzen in der Quelladresse führen. Zum Beispiel erfordert der Zugriff auf den Service A die Kommunikation mit den Domains X und Y, wobei die Firewall nur die Domain X blockiert. Daher sieht der Service A in verschiedenen Phasen desselben Requests unterschiedliche Quell-IP-Adressen.

Durch die Lösung des Problems der inkonsistenten Quell-IP aufgrund von Proxy-Strategien kann die VPN-Erkennung von ChatGPT umgangen werden.

VPN-Regeln enthalten normalerweise “Domain-Regeln” und “IP-Regeln”.

Wir müssen auch wissen, dass die IP-Ergebnisse der Domain-Auflösung je nach Region variieren können. Wenn ich in Region A auflöse, bekomme ich die IP der nahegelegenen Dienste, und in Region B erhalte ich eine andere IP. Daher ist die Auswahl des DNS sehr wichtig.

DNS-Auswahl

Heutzutage gibt es viele DNS-Protokolle, UDP:53 ist bereits ein sehr veraltetes und extrem unsicheres Protokoll. In China wurde der DNS-Service sogar in die erste Kategorie von Unternehmensgeschäften aufgenommen. Dies stammt hauptsächlich aus den letzten Jahrzehnten, in denen chinesische Internetdienstanbieter auf allen Ebenen DNS-Hijacking und HTTP-Insertion von zahlreichen Umleitungsanzeigen verwendeten, was viele Internet-Anfänger täuschte und zu zahlreichen Beschwerden führte. Obwohl Chrome/Edge inzwischen automatisch auf HTTPS umschalten und HTTP-Websites als unsicher kennzeichnen, gibt es in China immer noch viele lokale Netzbetreiber und verschiedene alte Versionen von Chromium-basierten modifizierten Browsern, wodurch DNS-Hijacking und HTTP-Hijacking weiterhin existieren.

Daher müssen wir ein sicheres DNS-Service-Protokoll auswählen, um DNS-Hijacking zu vermeiden. Nach eigener Erfahrung bietet der Alibaba Cloud-DNS-Service 223.5.5.5 eine ausreichend gute Erfahrung. Natürlich meine ich bei der Erwähnung von 223.5.5.5 nicht den UDP:53 alidns, sondern das DoH- oder DoT-Protokoll. Bei der Konfiguration müssen Sie tls://223.5.5.5 oder https://dns.alidns.com/dns-query in die Konfiguration eintragen.

Der alidns-Service wird in den meisten Fällen nicht verfälscht, nur in wenigen sensiblen Zeiten kommt es zu Verfälschungen. Sie können auch meinen selbstgehosteten langfristigen DNS-Service tls://dns.jqknono.com verwenden, der seinen Upstream von 8.8.8.8 und 1.1.1.1 bezieht und den Zugriff durch Caching beschleunigt.

Domain-Regeln

Zunächst enthält die geöffnete Testwebseite Logik zur Überprüfung, indem Anfragen an verschiedene Domains gesendet werden, um die Quell-IP zu verifizieren. Daher muss hier die Domain-Proxy-Konsistenz gewahrt werden.

Neben den eigenen Domains wie openai verwendet die ChatGPT-Webseite auch Domains von Drittanbietern wie auth0 und cloudflare.

Sie können manuell die folgenden Regeln eintragen:

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

Wie man Domain-Regeln testet

Die oben aufgeführten Domains können sich mit der Entwicklung des ChatGPT-Geschäfts ändern. Im Folgenden wird die Methode zur Beschaffung der Domains erläutert.

  1. Öffnen Sie im Browser die InPrivate-Seite. Die private Seite vermeidet die Auswirkungen von Cache/cookies usw.
  2. Drücken Sie F12, um die Konsole zu öffnen, und wählen Sie den Reiter Network/Netzwerk.
  3. Besuchen Sie chat.openai.com oder chatgpt.com.
  4. Das folgende Bild zeigt die Domains, die ChatGPT zum Zeitpunkt der Erstellung dieses Artikels verwendet hat.

Von ChatGPT verwendete Domains

Die bloße Hinzufügung dieser Domains reicht möglicherweise immer noch nicht aus. Hier analysieren wir die Details der fehlgeschlagenen Verbindung. In der Content-Security-Policy der challenge-Anfrage sehen wir viele Domains, die wir nacheinander zur Proxy-Strategie hinzufügen.

Domainnamen in der Content-Security-Policy

# openai
- DOMAIN-SUFFIX,chatgpt.com,PROXY
- DOMAIN-SUFFIX,openai.com,PROXY
- DOMAIN-SUFFIX,openai.org,PROXY
- DOMAIN-SUFFIX,auth0.com,PROXY
- DOMAIN-SUFFIX,cloudflare.com,PROXY
# additional
- DOMAIN-SUFFIX,oaistatic.com,PROXY
- DOMAIN-SUFFIX,oaiusercontent.com,PROXY
- DOMAIN-SUFFIX,intercomcdn.com,PROXY
- DOMAIN-SUFFIX,intercom.io,PROXY
- DOMAIN-SUFFIX,mixpanel.com,PROXY
- DOMAIN-SUFFIX,statsigapi.net,PROXY
- DOMAIN-SUFFIX,featuregates.org,PROXY
- DOMAIN-SUFFIX,stripe.com,PROXY
- DOMAIN-SUFFIX,browser-intake-datadoghq.com,PROXY
- DOMAIN-SUFFIX,sentry.io,PROXY
- DOMAIN-SUFFIX,live.net,PROXY
- DOMAIN-SUFFIX,live.com,PROXY
- DOMAIN-SUFFIX,windows.net,PROXY
- DOMAIN-SUFFIX,onedrive.com,PROXY
- DOMAIN-SUFFIX,microsoft.com,PROXY
- DOMAIN-SUFFIX,azure.com,PROXY
- DOMAIN-SUFFIX,sharepoint.com,PROXY
- DOMAIN-SUFFIX,gstatic.com,PROXY
- DOMAIN-SUFFIX,google.com,PROXY
- DOMAIN-SUFFIX,googleapis.com,PROXY
- DOMAIN-SUFFIX,googleusercontent.com,PROXY

IP-Regeln

Wenn nach den obigen Schritten immer noch kein Zugriff auf chatgpt.com möglich ist, könnte es auch eine Erkennung auf Basis von IP geben. Im Folgenden sind einige IPs aufgeführt, die ich in der Verbindungsnachverfolgung ausprobiert habe. Sie können diese selbst ausprobieren. Es muss darauf hingewiesen werden, dass diese IPs nicht unbedingt für jede Region geeignet sind. Möglicherweise müssen Sie selbst experimentieren.

# 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

Wie man IP-Regeln testet

Sie müssen Ihren VPN-Client-Tool kennenlernen. Auf der Seite der Verbindungsnachverfolgung beobachten Sie die neu hinzugekommenen Verbindungen und fügen diese Verbindungen den Proxy-Regeln hinzu.

Hier ist eine einfache Schritt-für-Schritt-Beschreibung:

  1. Öffnen Sie im Browser die InPrivate-Seite. Die private Seite vermeidet die Auswirkungen von Cache/cookies usw.
  2. Besuchen Sie chat.openai.com oder chatgpt.com.
  3. Beobachten Sie im VPN-Client die neu hinzugekommenen Verbindungen und fügen Sie diese IP-Adressen den Proxy-Regeln hinzu.

Protokollregeln

QUIC ist ein auf UDP basierendes verschlüsseltes Protokoll. ChatGPT verwendet umfangreich QUIC-Datenverkehr. Daher müssen sowohl der VPN-Server als auch der Client UDP-Proxy unterstützen. Viele VPNs unterstützen kein UDP, was ebenfalls ein Grund dafür sein kann, dass ChatGPT nicht zugänglich ist. Sowohl der Client als auch der Server müssen UDP unterstützen, und der Benutzer muss dies explizit konfigurieren. Einige Clients sind standardmäßig so konfiguriert, dass sie UDP-Datenverkehr nicht weiterleiten. Wenn Sie mit UDP-Einstellungen nicht vertraut sind, können Sie den QUIC-Datenverkehr des Proxy-Clients blockieren oder QUIC im Browser deaktivieren. Wenn der Browser feststellt, dass QUIC nicht funktioniert, wechselt er automatisch zu HTTP/2 auf Basis von TCP. QUIC ist ein auf UDP basierendes verschlüsseltes Protokoll, das meistens ein flüssigeres Nutzungserlebnis bietet. Interessierte können dies gerne selbst ausprobieren.

Einfachste Konfiguration - Whitelist-Modus

Konfigurieren Sie, dass nur chinesische IP-Adressen direkt verbunden werden, und nicht übereinstimmender Datenverkehr wird über das VPN geleitet. Dadurch kann sichergestellt werden, dass ChatGPT zugänglich ist, und auch der Zugriff auf andere ausländische Dienste wird sichergestellt.

Der Nachteil dieser Methode ist der hohe Datenverbrauch und die Netzwerkflüssigkeit hängt von der Netzwerkqualität des VPNs ab. Wenn Sie Vertrauen in Ihr VPN haben, können Sie diese Methode ausprobieren.

Natürlich müssen Sie auch daran denken, den UDP-Proxy zu aktivieren.