Codex Sürekli Yeniden Bağlanıyor mu? DNS ve Clash Yönlendirmesini Kontrol Edin

Son güncelleme: 2026-09-10

Reconnecting..., stream disconnected before completion ve error sending request gibi Codex hataları DNS müdahalesi veya yanlış Clash yönlendirmesiyle ilişkili olabilir. Bu kılavuz, bu olasılığı nasıl araştıracağınızı, hedefe yönelik bir Clash Verge Rev iyileştirmesi nasıl uygulayacağınızı ve sonucu nasıl doğrulayacağınızı açıklar.

Topluluk raporlarının gerçekten gösterdiği şey

Reddit kullanıcıları, chatgpt.com/backend-api/codex/responses adresini hedefleyen kesintiye uğramış görevler, tekrarlanan yeniden bağlanma denemeleri ve yanıt gövdesi hataları bildirdi. Bu raporlar semptomları ortaya koyar, DNS teşhisi değil. Interrupted request, reconnection loop

Ayrı bir tartışma, uzaktaki bağlam sıkıştırması sırasında oluşan başarısızlıkları anlatıyor. Bir yorumcu proxy’yi araştırmayı öneriyor, ancak tartışma doğrulanmış bir neden ortaya koymuyor. Compaction discussion

X’teki raporlar benzer sorular gösteriyor: 9 Eylül tarihli bir gönderi sürekli akış başarısızlıklarını anlatırken, 6 Eylül tarihli bir gönderi uzaktaki sıkıştırma sırasında bir SSE boşta kalma zaman aşımını bildiriyor. Hiçbiri DNS karşılaştırması sunmuyor. Bunlar kullanıcı sorunlarına dair yararlı örneklerdir, ancak ortak bir neden ortaya koymazlar. X stream report, X compaction report

Semptom Ne incelenmeli
Çözücü hatasıyla anında zaman aşımı DNS, düğüm erişilebilirliği ve trafiğin Clash içine girip girmediği
ChatGPT tarayıcıda çalışıyor ama Codex başarısız oluyor Proxy, DNS, sertifikalar ve çıkıştaki farklar
Çıktı başlıyor, ardından akış kopuyor Uzun ömürlü bağlantılar, ağ değişiklikleri ve hizmet hataları
Yalnızca uzun konuşmalar veya sıkıştırma başarısız oluyor Küçük yeni bir görevle karşılaştırın; oturum ve sunucu hatalarını araştırın
HTTP 401, 403, 429 veya 5xx Kimlik doğrulama, politika, sınırlar veya hizmet başarısızlıkları için yanıtın kaynağını ve gövdesini inceleyin

OpenAI service status sayfasını kontrol edin ve zamanı ile istemci sürümünü kaydedin. Takılı kalan sohbetler için OpenAI ayrıca bekleyen onayları kontrol etmeyi ve daha küçük, odaklanmış yeni bir sohbet denemeyi önerir. Masaüstü ve CLI sürümleri farklı davranabilir. Official troubleshooting

Yerel bir vaka: beklenmedik bir DNS yanıtı DIRECT’i tetikledi

Clash Verge Rev ve Mihomo kullanılarak kaydedilmiş bir macOS incelemesinde, proxy düğümleri erişilebilirdi, ancak chatgpt.com bir GeoIP/CN kuralıyla eşleşti ve zaman aşımına uğrayan doğrudan bir bağlantı denedi. Proxy üzerinden ulaşılan şifrelenmiş DNS ile yapılan bir karşılaştırma, yerel çözümleme yolunda anormal bir yanıt gösterdi.

Request to chatgpt.com
  → anomalous DNS answer
  → no earlier matching OpenAI domain rule
  → GeoIP selects DIRECT
  → connection times out and Codex retries

Ele alınması gereken iki yapılandırma sorunu vardır: çözümleme yolu ve yönlendirme kararı. Bu kaydedilmiş vaka bir kıstas değildir ve diğer Codex başarısızlıklarının aynı nedene sahip olduğunu kanıtlamaz. Tek başına anormal bir yanıt da sorumlu aracı belirleyemez veya özellikle DNS önbellek zehirlenmesini kanıtlayamaz.

Yapılandırmayı değiştirmeden önce teşhis edin

Bağlantı günlüğünü kontrol edin

Hata içindeki gerçek ana bilgisayar adını, chatgpt.com veya openai.com dahil olmak üzere arayın. Eşleşen kuralı, bağlantı zincirini ve başarısızlık anındaki hatayı kaydedin. Proxy kullanması gereken ancak DIRECT seçen bir bağlantı, kural sırası incelemesini gerektirir. Mihomo yönlendirme kurallarını yukarıdan aşağıya değerlendirir. Routing documentation

Eşleşen bir bağlantı görünmüyorsa, önce istemcinin Clash kullanıp kullanmadığını belirleyin. Tarayıcı başarısı, ayrı bir süreç tarafından kullanılan yolu doğrulamaz.

Çözümleme yollarını karşılaştırın

macOS’ta, sistem çözücüsünü ve mevcut yanıtını inceleyin:

scutil --dns
dscacheutil -q host -a name chatgpt.com

Şifrelenmiş bir karşılaştırma için, 7890 değerini Clash HTTP/mixed portunuzla değiştirin:

curl --noproxy '' --proxy http://127.0.0.1:7890 \
  --connect-timeout 10 --max-time 20 \
  -H 'accept: application/dns-json' \
  'https://1.1.1.1/dns-query?name=chatgpt.com&type=A'

İstek Cloudflare’s DNS JSON interface kullanır. Bağlantı panelini kontrol edin: açık bir yerel proxy, Clash’e girişi garanti eder, ancak son çıkışı yine Clash kuralları belirler.

Yalnızca farklı IP adresleri müdahalenin kanıtı değildir. CDN seçimi, önbellekleme, adres aileleri ve Fake-IP farkları açıklayabilir. Clash’in Fake-IP aralığından gelen sentetik bir adres doğası gereği şüpheli değildir. Anormal bir yanıtı yanlış rota ve başarısızlıkla ilişkilendirin, ardından başka doğrulanmış bir ağ yolu ile karşılaştırın. TUN etkin olduğunda, dig @resolver bile yakalanabilir; bu, otomatik olarak bağımsız bir upstream testi değildir.

Hedefe yönelik bir Clash Verge Rev iyileştirmesi uygulayın

Bu şablon, Mihomo ile Clash Verge Rev, mevcut bir abonelik ve çalışan bir proxy düğümü gerektirir. Bu bir abonelik Script’idir, eksiksiz bağımsız bir profil değildir. Önce mevcut yapılandırmayı yedekleyin. Zaten bir script kullanıyorsanız, değişikliği onun mevcut main(config) işlevine entegre edin. Tüm iyileştirme adımlarından sonra nihai çalışma zamanı yapılandırmasını inceleyin. Clash Verge Rev Script documentation

CODEX_PROXY_GROUP değerini var olan bir gruba ayarlayın ve o grupta çalışan bir proxy düğümü seçin. NODE_DNS değerini, proxy bağlanmadan önce çalışan ve düğüm ana bilgisayar adlarını doğru şekilde çözen bir DoH resolver’a ayarlayın. AliDNS örneği, anakara Çin ağında doğrulama için tasarlanmıştır; uygun değilse değiştirin. Aşağıdaki AI alan adlarını çözmek için kullanılmaz.

// Clash Verge Rev subscription Script. Use with an existing Mihomo profile.
// Replace this with the exact name of a working proxy group in that profile.
const CODEX_PROXY_GROUP = "REPLACE_WITH_EXISTING_PROXY_GROUP";

// Example bootstrap resolver for a mainland-China network. Verify reachability
// and node-hostname answers on your network, or replace with your trusted DoH.
// It must work BEFORE the proxy is established. It does not resolve AI domains.
const NODE_DNS = ["https://223.5.5.5/dns-query#DIRECT"];

function main(config) {
  const groups = config["proxy-groups"] || [];
  if (!groups.some((group) => group.name === CODEX_PROXY_GROUP)) {
    throw new Error("Set CODEX_PROXY_GROUP to an existing working proxy group.");
  }
  if (/[#&,\r\n]/.test(CODEX_PROXY_GROUP)) {
    throw new Error("Use a proxy group name without #, &, commas or newlines.");
  }

  const domains = ["chatgpt.com", "openai.com", "oaistatic.com", "oaiusercontent.com"];
  const doh = [
    "https://1.1.1.1/dns-query#" + CODEX_PROXY_GROUP,
    "https://8.8.8.8/dns-query#" + CODEX_PROXY_GROUP,
  ];
  const dns = config.dns || {};
  const policy = Object.assign({}, dns["nameserver-policy"] || {});
  domains.forEach((domain) => { policy["+." + domain] = doh.slice(); });
  dns.enable = true;
  dns["nameserver-policy"] = policy;
  dns["proxy-server-nameserver"] = NODE_DNS.slice();
  if (!Array.isArray(dns.nameserver) || dns.nameserver.length === 0) {
    dns.nameserver = NODE_DNS.slice();
  }
  config.dns = dns;

  const oldRules = Array.isArray(config.rules) ? config.rules : [];
  const aiRules = domains.map((domain) =>
    "DOMAIN-SUFFIX," + domain + "," + CODEX_PROXY_GROUP
  );
  config.rules = aiRules.concat(oldRules.filter((rule) => !aiRules.includes(rule)));
  return config;
}

Script, diğer kuralları ve alan adı politikalarını korurken alana özel DNS politikası ekler ve proxy kurallarını başa ekler. Düğüm ana bilgisayarı adı çözümlemesini değiştirir. Dört alan adı son eki bir başlangıç kapsamıdır; Codex özelliklerinin, özel sağlayıcının, MCP servisinin veya görev indirme işleminin tümünü kapsayan eksiksiz bir liste değildir.

Mihomo, alana özel bir nameserver-policy ve DNS sunucusu adresinde açık bir proxy son ekini destekler. Düğüm çözümlemesinin döngüsel bağımlılıktan kaçınmak için bağımsız bir yola ihtiyacı vardır. DNS yapılandırma referansı

Hedeflenen script, mevcut yedek ayarları korur. Bunları değiştirmeden önce daha geniş DNS bağımlılıklarını ayrıca gözden geçirin. Ayrıca eski hosts eşlemelerini veya çakışan, daha özel politikaları kontrol edin.

TUN’u ayrı olarak kontrol edin

Sistem proxy’sini kullanmayan süreçler için Clash Verge Rev içinde TUN’u etkinleştirin ve çalıştığını doğrulayın. Diğer ayarlarını koruyarak aşağıdaki alanları mevcut TUN nesnenize birleştirin:

tun:
  enable: true
  auto-route: true
  auto-detect-interface: true
  dns-hijack:
    - any:53
    - tcp://any:53

Bunlar 53 numaralı portta UDP ve TCP DNS’i kapsar. Mihomo, macOS ve Windows’ta LAN’a yöneltilen DNS için sınırlamaları belgeler; uygulama tarafından yönetilen şifreli DNS de bu 53 numaralı port kurallarının dışındadır. Anahtarın her isteği kapsadığını varsaymak yerine resolver ve arayüz davranışını doğrulayın. TUN referansı

Yapılandırmayı, yönlendirmeyi ve Codex’i ayrı ayrı doğrulayın

Önce son yapılandırmada hata, grup referansı ve kural sırasını kontrol edin. Mihomo CLI kullanılabiliyorsa, mihomo -t -f <final-config-path> yapılandırmanın ayrıştırılıp ayrıştırılamadığını kontrol eder. Bu, bağlantıyı kanıtlamaz.

Ardından gerçek bağlantı yönlendirmesini inceleyin ve kendi gerçek yerel portunuz üzerinden sertifika doğrulamalı bir HTTPS yoklaması çalıştırın:

curl --noproxy '' --proxy http://127.0.0.1:7890 \
  --connect-timeout 10 --max-time 20 \
  -o /dev/null -sS \
  -w 'HTTP=%{http_code} TLS=%{time_appconnect}s TOTAL=%{time_total}s\n' \
  https://chatgpt.com/

Başarılı sertifika doğrulamasından sonra amaçlanan servisten gelen bir yanıt, bu yoklama için bir HTTP alışverişi oluşturur. Bir 401 veya 403 yine de erişimi engelleyebilir. Kimliği doğrulanmış bir Codex isteğinin çalıştığını kanıtlamaz ve sertifika doğrulamasını devre dışı bırakmak bu kontrolü geçersiz kılar.

Son olarak, istemcide başlangıçta başarısız olan küçük bir görevi tamamlayın. Yüklü ve kimliği doğrulanmış bir CLI, gerçek bir model isteği yapan ve hesap kotasını kullanan aşağıdaki isteğe bağlı kontrolü çalıştırabilir:

codex exec --skip-git-repo-check --sandbox read-only \
  'Reply with exactly: PONG. Do not use tools.'

Bir CLI başarısı yalnızca o CLI isteğini doğrular; hata orada oluştuysa masaüstü uygulamasını ayrıca test edin. Abonelik güncellemesinden, ağ değişikliğinden ve uyku/uyandırmadan sonra tekrar kontrol edin. Daha sonraki yapılandırma katmanları veya yeniden adlandırılmış gruplar yine de bir enhancement’ı bozabilir.

Sık sorulan sorular

Sistem DNS’ini 8.8.8.8’e değiştirmek yeterli mi?

Zorunlu değil. Yalnızca bir resolver adresi, şifreleme, proxy yönlendirmesi veya erişilebilirlik sağlamaz. Resolver, aktarım ve çıkışı birlikte doğrulayın.

Clash çalışırken neden Codex başarısız oluyor?

Süreç proxy’yi atlayabilir, doğrudan bir kurala eşleşebilir ya da kullanılamayan node DNS’e bağlı olabilir. Sorun DNS ile ilgili olmayabilir de. Birden çok ayarı aynı anda değiştirmeden önce gerçek bağlantıyı bulun.

Hâlâ bağlantı kopuyorsa ne olur?

Eğer DNS, TLS ve yönlendirme çalışıyorsa, servis durumunu, konuşma boyutunu, istemci sürümünü, node bağlantı kararlılığını ve tam hata gövdesini inceleyin. OpenAI geri bildirim ve günlük konumlarını belgeler; paylaşmadan önce günlüklerde gizli bilgi olup olmadığını kontrol edin. Sorun giderme ve günlükler

Değişikliği nasıl geri alırım?

Eklenen Script’i devre dışı bırakın ve yedeklenen profili, TUN ayarlarını ve değiştirdiğiniz sistem DNS ayarlarını geri yükleyin. Ayrı bir proxy-providers mimarisi daha sonra düğüm aboneliklerini yerel DNS ve kurallardan izole edebilir, ancak bu hedeflenmiş düzeltme için gerekli değildir.

Kurulum ve içe aktarma adımları için Clash Verge kurulumu bölümüne bakın. Diğer hatalar için Clash sorun giderme bölümüne bakın. Bu tanılama sürecini mevcut uyumlu bir abonelikle kullanabilirsiniz; DNS’i test etmek için başka bir hizmet satın almak bir ön koşul değildir.