Codex Inaendelea Kuunganisha Tena? Angalia DNS na Uelekezaji wa Clash

Last updated: 2026-09-10

Hitilafu za Codex kama Reconnecting..., stream disconnected before completion, na error sending request zinaweza kuhusisha mwingiliano wa DNS au uelekezaji usio sahihi wa Clash. Mwongozo huu unaeleza jinsi ya kuchunguza uwezekano huo, kutumia uboreshaji maalumu wa Clash Verge Rev, na kuthibitisha matokeo.

Ripoti za jamii zinaonyesha nini hasa

Watumiaji wa Reddit wameripoti kazi zilizokatizwa zikilenga chatgpt.com/backend-api/codex/responses, majaribio ya mara kwa mara ya kuunganisha tena, na hitilafu za sehemu ya mwili wa majibu. Ripoti hizi zinathibitisha dalili, si utambuzi wa DNS. Ombi lililokatizwa, mzunguko wa kuunganisha tena

Majadiliano tofauti yanaeleza kushindwa wakati wa kufinyaza muktadha wa mbali. Mtoa maoni mmoja anapendekeza kuchunguza proxy, lakini majadiliano hayo hayaonyeshi sababu iliyothibitishwa. Majadiliano ya compaction

Ripoti kwenye X zinaonyesha maswali yanayofanana: chapisho la Septemba 9 linaeleza kushindwa kwa stream kunakoendelea, huku chapisho la Septemba 6 likiripoti SSE idle timeout wakati wa compaction ya mbali. Hakuna hata moja linalotoa ulinganisho wa DNS. Hii ni mifano yenye manufaa ya matatizo ya watumiaji, lakini haiweki sababu ya pamoja. Ripoti ya stream kwenye X, ripoti ya compaction kwenye X

Dalili Nini cha kuchunguza
Timeout ya papo hapo yenye hitilafu ya resolver DNS, ufikikaji wa node, na kama trafiki inaingia kwenye Clash
ChatGPT inafanya kazi kwenye kivinjari lakini Codex inashindwa Tofauti katika proxy, DNS, vyeti, na egress
Matokeo yanaanza, kisha stream inakatika Miunganisho ya muda mrefu, mabadiliko ya mtandao, na hitilafu za huduma
Ni mazungumzo marefu pekee au compaction ndiyo hushindwa Linganisha na kazi mpya ndogo; chunguza hitilafu za session na seva
HTTP 401, 403, 429, au 5xx Kagua chanzo cha jibu na sehemu yake ya mwili kwa uthibitishaji, sera, vikomo, au hitilafu za huduma

Angalia hali ya huduma ya OpenAI na andika muda na toleo la mteja. Kwa mazungumzo yaliyokwama, OpenAI pia inapendekeza kuangalia idhini zinazosubiri na kujaribu mazungumzo mapya madogo na yenye mwelekeo. Matoleo ya Desktop na CLI yanaweza kutofautiana. Utatuzi rasmi wa hitilafu

Kesi ya ndani: jibu lisilotarajiwa la DNS lilisababisha DIRECT

Katika uchunguzi mmoja uliorekodiwa wa macOS uliotumia Clash Verge Rev na Mihomo, node za proxy zilikuwa zinafikiwa, lakini chatgpt.com ililingana na sheria ya GeoIP/CN na kujaribu muunganisho wa moja kwa moja ambao ulipata timeout. Ulinganisho na DNS iliyosimbwa iliyofikiwa kupitia proxy ulionyesha jibu lisilo la kawaida kwenye njia ya ndani ya utatuzi.

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

Kuna masuala mawili ya usanidi ya kushughulikia: njia ya utatuzi na uamuzi wa uelekezaji. Kesi hii iliyorekodiwa si kipimo wala uthibitisho kwamba kushindwa kwingine kwa Codex kuna sababu hiyo hiyo. Jibu lisilo la kawaida peke yake pia haliwezi kutambua mpatanishi anayehusika au kuthibitisha mahsusi DNS cache poisoning.

Tambua kabla ya kubadilisha usanidi

Angalia kumbukumbu ya muunganisho

Tafuta hostname halisi kwenye hitilafu, ikijumuisha chatgpt.com au openai.com. Andika sheria iliyolingana, mlolongo wa muunganisho, na hitilafu wakati wa kushindwa. Muunganisho ambao unapaswa kutumia proxy lakini unachagua DIRECT unahitaji mapitio ya mpangilio wa sheria. Mihomo hutathmini sheria za uelekezaji kutoka juu kwenda chini. Nyaraka za uelekezaji

Ikiwa hakuna muunganisho unaolingana unaoonekana, kwanza thibitisha kama mteja huyo anatumia Clash. Mafanikio kwenye kivinjari hayaonyeshi njia inayotumiwa na mchakato tofauti.

Linganisha njia za utatuzi

Kwenye macOS, kagua resolver ya mfumo na jibu lake la sasa:

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

Kwa ulinganisho uliosimbwa, badilisha 7890 na port yako ya HTTP/mixed ya Clash:

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'

Ombi linatumia kiolesura cha DNS JSON cha Cloudflare. Angalia paneli ya muunganisho: proxy ya ndani iliyoelezwa wazi huhakikisha kuingia kwenye Clash, lakini sheria za Clash bado huamua egress ya mwisho.

Anwani tofauti za IP pekee si uthibitisho wa mwingiliano. Uteuzi wa CDN, caching, familia za anwani, na Fake-IP vinaweza kueleza tofauti. Anwani ya kisintetiki kutoka safu ya Fake-IP ya Clash si ya kutiliwa shaka kiasili. Husianisha jibu lisilo la kawaida na njia isiyo sahihi pamoja na kushindwa, kisha linganisha dhidi ya njia nyingine ya mtandao iliyothibitishwa. TUN ikiwa imewezeshwa, hata dig @resolver inaweza kunaswa; si jaribio huru la upstream moja kwa moja.

Tumia uboreshaji maalumu wa Clash Verge Rev

Kiolezo hiki kinahitaji Clash Verge Rev yenye Mihomo, usajili uliopo, na node ya proxy inayofanya kazi. Hii ni Script ya usajili, si profile kamili ya kujitegemea. Hifadhi nakala ya usanidi wa sasa kwanza. Ikiwa tayari unatumia script, unganisha mabadiliko ndani ya kazi yake iliyopo ya main(config). Kagua usanidi wa mwisho wa wakati wa utekelezaji baada ya hatua zote za uboreshaji. Nyaraka za Script ya Clash Verge Rev

Weka CODEX_PROXY_GROUP kwenye kikundi kilichopo na uchague nodi ya proksi inayofanya kazi ndani ya kikundi hicho. Weka NODE_DNS kwa kisuluhishi cha DoH kinachofanya kazi kabla ya proksi kuunganishwa na kinachosuluhisha kwa usahihi majina ya hosti ya nodi. Mfano wa AliDNS umekusudiwa kwa uthibitishaji kwenye mtandao wa China bara; ubadilishe usipofaa. Hautumiki kusuluhisha domeni za AI zilizo hapa chini.

// 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;
}

Skripti huongeza sera ya DNS maalum kwa domeni na huweka mbele kanuni za proksi huku ikihifadhi kanuni nyingine na sera za domeni. Inabadilisha usuluhishaji wa jina la hosti la nodi. Viambishi tamati vinne vya domeni ni wigo wa kuanzia, si orodha kamili ya kila kipengele cha Codex, mtoa huduma maalum, huduma ya MCP, au upakuaji wa kazi.

Mihomo inaunga mkono nameserver-policy maalum kwa domeni na kiambishi tamati wazi cha proksi kwenye anwani ya seva ya DNS. Usuluhishaji wa nodi unahitaji njia huru ili kuepuka utegemezi wa mviringo. Marejeo ya usanidi wa DNS

Skripti iliyolengwa huhifadhi mipangilio iliyopo ya fallback. Kagua utegemezi mpana zaidi wa DNS kando kabla ya kuibadilisha. Pia angalia ramani za hosts zilizopitwa na wakati au sera zinazokinzana na zilizo maalum zaidi.

Kagua TUN kando

Kwa michakato ambayo haitumii proksi ya mfumo, washa TUN katika Clash Verge Rev na uthibitishe kuwa inaendesha. Unganisha sehemu zifuatazo kwenye kifaa chako cha TUN kilichopo, huku ukihifadhi mipangilio yake mingine:

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

Hizi hufunika DNS ya UDP na TCP kwenye bandari 53. Mihomo inaandika vikwazo kwa DNS inayoelekezwa LAN kwenye macOS na Windows; DNS iliyosimbwa kwa njia fiche inayodhibitiwa na programu pia iko nje ya kanuni hizi za bandari-53. Thibitisha tabia ya kisuluhishi na kiolesura badala ya kudhani swichi hiyo inafunika kila ombi. Marejeo ya TUN

Thibitisha usanidi, uelekezaji, na Codex kando

Kwanza kagua usanidi wa mwisho kwa hitilafu, marejeo ya vikundi, na mpangilio wa kanuni. Ikiwa CLI ya Mihomo inapatikana, mihomo -t -f <final-config-path> hukagua kama usanidi unaweza kuchanganuliwa. Hii haithibitishi muunganisho.

Kisha kagua uelekezaji halisi wa muunganisho na uendeshe kipimo cha HTTPS chenye uthibitishaji wa cheti kupitia bandari yako halisi ya ndani:

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/

Jibu kutoka kwa huduma iliyokusudiwa baada ya uthibitishaji wa cheti kufanikiwa huanzisha ubadilishanaji wa HTTP kwa kipimo hiki. 401 au 403 bado inaweza kuzuia ufikiaji. Hii haithibitishi kwamba ombi la Codex lililoidhinishwa linafanya kazi, na kuzima uthibitishaji wa cheti kungebatilisha ukaguzi huu.

Mwisho, kamilisha kazi ndogo katika mteja ambayo ilishindwa awali. CLI iliyosakinishwa na kuthibitishwa inaweza kuendesha ukaguzi ufuatao wa hiari, ambao hufanya ombi halisi la modeli na hutumia quota ya akaunti:

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

Mafanikio ya CLI huthibitisha tu ombi hilo la CLI; jaribu programu ya mezani kando ikiwa hapo ndipo hitilafu ilipotokea. Kagua tena baada ya masasisho ya usajili, mabadiliko ya mtandao, na sleep/wake. Tabaka za usanidi za baadaye au vikundi vilivyopewa majina mapya bado vinaweza kuvunja uboreshaji.

Maswali yanayoulizwa mara kwa mara

Je, kubadilisha DNS ya mfumo kuwa 8.8.8.8 kunatosha?

Si lazima. Anwani ya kisuluhishi pekee haianzishi usimbaji fiche, uelekezaji wa proksi, au ufikikaji. Thibitisha kisuluhishi, usafirishaji, na egress kwa pamoja.

Kwa nini Codex inashindwa huku Clash ikiendelea kufanya kazi?

Mchakato unaweza kukwepa proksi, kulingana na kanuni ya moja kwa moja, au kutegemea DNS ya nodi isiyopatikana. Tatizo linaweza pia lisihusiane na DNS. Tafuta muunganisho halisi kabla ya kubadilisha mipangilio kadhaa kwa wakati mmoja.

Vipi ikiwa bado inakatika?

Ikiwa DNS, TLS, na uelekezaji vinafanya kazi, chunguza hali ya huduma, ukubwa wa mazungumzo, toleo la mteja, uthabiti wa muunganisho wa nodi, na mwili halisi wa hitilafu. OpenAI inaandika maeneo ya maoni na kumbukumbu; kagua kumbukumbu kwa siri kabla ya kushiriki. Utatuzi wa hitilafu na kumbukumbu

Nitatenguaje mabadiliko?

Zima Script iliyoongezwa na urejeshe profaili iliyohifadhiwa nakala, mipangilio ya TUN, na mipangilio yoyote ya DNS ya mfumo uliyobadilisha. Muundo tofauti wa proxy-providers unaweza baadaye kutenga usajili wa nodi na DNS ya ndani na kanuni, lakini hauhitajiki kwa suluhisho hili lililolengwa.

Kwa hatua za usakinishaji na uingizaji, tazama Usanidi wa Clash Verge. Kwa hitilafu nyingine, tazama Utatuzi wa hitilafu wa Clash. Unaweza kutumia mchakato huu wa utambuzi na usajili uliopo unaolingana; kununua huduma nyingine si sharti la awali la kupima DNS.