ChatGPT VPN 차단 우회 방법
Categories:
ChatGPT 오류 처리 방법 “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.”
서론

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 서비스를 기업 운영 중 1급 항목으로 지정하기도 했습니다. 이는 지난 수십 년간我国의 각급 통신사업자가 DNS 악용과 HTTP에大量的 광고를 삽입하여 많은 네트워크小白를 속이고, 많은 불만을 야기한 데서 비롯되었습니다. 현재 Chrome/Edge는 자동으로 HTTPS로 전환하고 HTTP 웹사이트를 안전하지 않다고 표시하지만,我国에는 아직 많은 지역 소규모 네트워크 서비스 제공업체와 다양한 오래된 버전의 Chromium 패키지가 존재하여 DNS 악용과 HTTP 악용이 여전히 존재합니다.
따라서 DNS 악용을 피하기 위해 안전한 DNS 서비스 프로토콜을 선택해야 합니다. 개인적인 경험에 따르면 알리바바 클라우드의 223.5.5.5가 충분히 좋은 경험을 제공합니다. 물론, 제가 223.5.5.5를 언급할 때 UDP:53의 alidns를 의미하는 것이 아니라 DoH나 DoT 프로토콜을 의미합니다. 설정할 때 tls://223.5.5.5 또는 https://dns.alidns.com/dns-query를 사용하여 설정에 입력해야 합니다.
alidns 서비스는 대부분의 경우 오염되지 않지만, 소수의 민감한 시기에만 오염이 발생합니다. 또한 저는 개인적으로 구축한 장기 DNS 서비스 tls://dns.jqknono.com을 사용할 수 있습니다. 상류는 8.8.8.8과 1.1.1.1이며, 캐시를 통해 접근 속도를 빠르게 합니다.
도메인 규칙
우선 열린 검사 페이지에는 검사 논리가 포함되어 있으며, 다른 도메인으로 요청을 보내 소스 IP를 검증합니다. 따라서 여기서는 도메인 프록시의 일관성을 유지해야 합니다.
chatgpt 웹 페이지 접근 도메인은 자체 도메인인 openai 외에도 auth0, cloudflare 등 제3자 도메인도 포함됩니다.
다음 규칙을 수동으로 작성할 수 있습니다:
# 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
도메인 규칙 실험 방법
위에 열거한 도메인은 ChatGPT 비즈니스 발전에 따라 변할 수 있습니다. 아래에서는 도메인을 얻는 방법을 설명합니다.
- 브라우저에서 InPrivate 페이지를 열고, 프라이버시 페이지는 캐시/쿠키 등의 영향을 피할 수 있습니다
- F12를 눌러 콘솔을 열고 Network/네트워크 탭을 선택합니다
- chat.openai.com이나 chatgpt.com에 접근합니다
- 아래 이미지는 이 글이 작성될 당시 ChatGPT가 사용하는 도메인을 보여줍니다

이러한 도메인만 추가해도 여전히 충분하지 않을 수 있습니다. 여기서는 실패한 연결의 구체적인 세부사항을 분석합니다. challenge 요청의 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 규칙
위 단계를 시도해도 chatgpt.com에 여전히 접근할 수 없다면 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 주소를 사용하여 규칙을 추가합니다.
아래는 간단한 단계 설명입니다:
- 브라우저에서 InPrivate 페이지를 열고, 프라이버시 페이지는 캐시/쿠키 등의 영향을 피할 수 있습니다
- chat.openai.com이나 chatgpt.com에 접근합니다
- 프록시 서버 클라이언트에서 새 연결을 관찰하고, 이러한 연결을 프록시 규칙에 추가합니다
프로토콜 규칙
QUIC는 UDP 기반 암호화 프로토콜이며, chatgpt는大量的 QUIC 트래픽을 사용합니다. 따라서 프록시 서버의 서버/클라이언트는 UDP 프록시를 지원해야 합니다. 많은 프록시 서버는 UDP를 지원하지 않으며, 이것이 chatgpt에 접근할 수 없는 원인 중 하나일 수 있습니다. 클라이언트와 서버 모두 UDP를 지원해야 하며, 사용자가 명확히 설정해야 합니다. 일부 클라이언트는 기본적으로 UDP 트래픽을 프록시하지 않도록 설정합니다. UDP 설정에 익숙하지 않은 경우, 프록시 클라이언트의 QUIC 트래픽을 차단하거나 브라우저 설정에서 QUIC를 차단할 수 있습니다. 브라우저가 QUIC가 불통임을 발견하면 자동으로 TCP 기반 HTTP/2로 전환합니다. QUIC는 UDP 기반 암호화 프로토콜로, 대부분의 경우 더 원활한 경험을 제공할 수 있습니다. 관심이 있는 경우 직접 시도해볼 수 있습니다.

가장 간단한 구성–화이트리스트 모드
중국 IP만 직통으로 설정하고, 일치하지 않는 트래픽은 프록시로 전달하는 방식입니다. 이렇게 하면 chatgpt 접근을 보장할 수 있고, 다른 외국 서비스 접근도 보장할 수 있습니다.
이 방법의 단점은 트래픽 소비가 크고, 네트워크 원활성 체험은 프록시 서버의 네트워크 품질에 의존한다는 것입니다. 자신의 프록시 서버에 자신감이 있다면 이런 방법을 시도해볼 수 있습니다.
물론 UDP 프록시도 활성화해야 합니다.