CLAUDE ROUTING

Claude Code 分流規則

以官方 Claude Code 網路訪問要求為底線,整理代理、企業防火牆、遙測和動態靜態資源的分流檢查方法。

為什麼不能只寫 claude.ai

Claude Code 官方企業網路配置文件明確列出執行時需要訪問的 URL。核心的四條是:

  • api.anthropic.com — API 請求、WebFetch 域名安全檢查、功能開關、遙測事件
  • claude.ai — claude.ai 帳號認證
  • claude.com — 登入頁跳轉 (最終重定向到 claude.ai)、WebFetch 文件查詢
  • platform.claude.com — OAuth token 交換 / 重新整理 / 吊銷 —— 兩種帳號都需要
注意: 網上流傳的多份分流清單仍在列 statsig.anthropic.com、sentry.io、cdn.anthropic.com —— 這三條已不在官方要求裡 (遙測端點已遷至 Datadog), 其中前者與後者連 DNS 都不解析。本頁清單按官方文件逐條核對, 並標註核對日期。

最容易漏的一條: platform.claude.com

官方文件寫明這個域名承擔 OAuth 的 token 交換、重新整理與吊銷 —— 不只是 Console 帳號, 用 claude.ai 帳號登入同樣要經過它。但幾乎所有流傳的中文分流清單都沒有它。

漏配的後果不是「少一個功能」: token 重新整理會走本地直連出去, 於是續期請求的出口 IP 與你的 API 請求 IP 不一致 —— 這正好踩在風控最敏感的判據上, 而且症狀隱蔽, 表現為「用著用著突然要重新登入」。

完整分流清單 (按官方文件分組)

核心必需

缺任意一條都會導致登入或對話失敗

api.anthropic.com
API 請求、WebFetch 域名安全檢查、功能開關、遙測事件
claude.ai
claude.ai 帳號認證
claude.com
登入頁跳轉 (最終重定向到 claude.ai)、WebFetch 文件查詢
platform.claude.com
OAuth token 交換 / 重新整理 / 吊銷 —— 兩種帳號都需要

按功能所需

用到對應功能才需要; 不用則可不放行

mcp-proxy.anthropic.com
claude.ai 的 MCP 聯結器流量
downloads.claude.ai
外掛執行檔下載、原生安裝器與自動更新
bridge.claudeusercontent.com
Claude in Chrome 擴充套件的 WebSocket 橋接
*.frame.claudeusercontent.com
Artifact 內容讀取
registry.npmjs.org
外掛安裝、npx 啟動的 MCP server、npm/bun 安裝 Claude Code 本身
storage.googleapis.com
外掛後設資料與安裝量、Artifact 上傳
code.claude.com
內建文件查詢 (claude-code-guide agent 與預授權 WebFetch)
raw.githubusercontent.com
/release-notes 的更新日誌
formulae.brew.sh
Homebrew 安裝方式的更新檢查; 其它安裝方式不會請求

遙測端點 (可關閉)

僅在直連 Anthropic API 時傳送; 第三方供應商通道不會發

http-intake.logs.us5.datadoghq.com
運營遙測事件
browser-intake-us5-datadoghq.com
運營錯誤上報 (受服務端灰度開關控制)

關閉非必要流量的環境變數

不想放行遙測域名時, 用環境變數從源頭關掉更省事

CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1
一次關掉兩個 Datadog 端點
DISABLE_TELEMETRY=1
關閉遙測
DO_NOT_TRACK=1
通用不追蹤標準, 效果同上
DISABLE_ERROR_REPORTING=1
關閉錯誤上報

IP / ASN 兜底規則

CIDR / ASN 只能作為高階兜底策略, 需要定期核對 BGP/ASN 變化。不要把下面的示例當作永久完整列表:

IP-CIDR, 160.79.104.0/21
IP-CIDR6, 2607:6bc0::/32
IP-ASN, AS399358

補充: AS399358 當前實際宣告的路由是 160.79.104.0/23 與兩個 IPv6 /48 (2607:6bc0::/48、2607:6bc0:11::/48), 比登記的段更窄。按登記段配置覆蓋更寬、更保險。另需注意遙測與安裝類域名 (Datadog、npm、GitHub、Google Cloud) 都不在 Anthropic 自有段內, IP 兜底救不了它們, 必須靠域名規則。

系統時間同步

Claude Code 本身的官方網路要求不包含 NTP。但系統時間嚴重偏差會導致 TLS、OAuth 登入和請求籤名類流程出錯。建議保持系統時間準確; 是否代理 NTP 取決於你的網路環境和客戶端能力。

另外澄清一個流傳較廣的說法: 有教程稱「Claude Code 通過 NTP 判斷你的時區」, 因此必須代理 NTP。這在協議層面就不成立 —— NTP 報文只傳 UTC 時間戳, 根本沒有時區欄位; 時區來自作業系統本地設定。官方網路要求裡也通篇沒有 NTP。真正會暴露時區的是瀏覽器與系統的 Intl / getTimezoneOffset 介面, 代理 NTP 對此毫無作用。

配置格式示例 (域名清單)

# 核心 (DOMAIN-SUFFIX 已覆蓋各自全部子域名)
DOMAIN-SUFFIX,anthropic.com,Claude
DOMAIN-SUFFIX,claude.ai,Claude
DOMAIN-SUFFIX,claude.com,Claude
DOMAIN-SUFFIX,clau.de,Claude
DOMAIN-SUFFIX,claudeusercontent.com,Claude

# 安裝 / 外掛 / 文件
DOMAIN-SUFFIX,registry.npmjs.org,Claude
DOMAIN,storage.googleapis.com,Claude
DOMAIN,raw.githubusercontent.com,Claude
DOMAIN,formulae.brew.sh,Claude

# 遙測 (可用環境變數關閉; 注意是獨立域名, 字尾匹配抓不到)
DOMAIN,http-intake.logs.us5.datadoghq.com,Claude
DOMAIN,browser-intake-us5-datadoghq.com,Claude

# IP / ASN 兜底
IP-CIDR,160.79.104.0/21,Claude,no-resolve
IP-CIDR6,2607:6bc0::/32,Claude,no-resolve
IP-ASN,399358,Claude,no-resolve

注: DOMAIN-SUFFIX 已覆蓋各自全部子域名, 無需重複羅列; 兩個 Datadog intake 是獨立可註冊域名, 必須精確匹配。CIDR/ASN 建議加 no-resolve 跳過反查, 降低匹配開銷。

驗證

配置完後通過這幾個工具驗證流量沒漏掉:

mimetic
mimetic
mimetic