API 文件

輕湖DNS 提供兩種協定:面向腳本與 Agent 的 JSON API,以及面向標準 DNS 客戶端的 DoH。兩者使用同一把 API Key 與同一份額度。

產品內 Skill 文件以純 Markdown 提供給 AI Agent 與腳本,涵蓋安裝、設定、JSON 與 DoH 用法以及錯誤處理。開啟 /docs/skill.md

驗證

JSON 請求透過 X-API-Key 標頭傳遞 Key。無法自訂標頭的 DoH 客戶端把 Key 放在 URL 路徑中,格式見下方範例。Key 可隨時在主控台重新命名或撤銷。

JSON API

向 POST /api/open/resolve 發送 JSON 請求體,或用 GET 加查詢參數快速除錯。region 必須為 cn 或 us;支援的類型為 A、AAAA、CNAME、TXT、MX、NS、SOA。

curl -s https://dns.litelake.cn/api/open/resolve \
  -H "X-API-Key: YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"domain":"example.com","type":"A","region":"cn"}'

JSON API

{
  "code": 200,
  "message": "ok",
  "data": {
    "status": "NOERROR",
    "rcode": 0,
    "answers": [
      { "name": "example.com.", "type": "A", "ttl": 300, "data": "93.184.216.34" }
    ],
    "provenance": {
      "region": "cn",
      "exec_region": "cn",
      "upstream": "223.5.5.5",
      "cache": "miss",
      "latency_ms": 23
    }
  }
}

DNS over HTTPS

GET /api/open/doh/{region}/{apikey}?dns={base64url},以及使用 application/dns-message 請求體的 POST /api/open/doh/{region}/{apikey}。任何合法 DNS 應答(包括 NXDOMAIN 或 SERVFAIL)都回傳 HTTP 200 與二進位封包。

GET

curl -s -H "Accept: application/dns-message" \
  "https://dns.litelake.cn/api/open/doh/cn/YOUR_KEY?dns=AAABAAABAAAAAAAAA3d3dwdleGFtcGxlA2NvbQAAAQAB"

POST

curl -s -X POST \
  -H "Content-Type: application/dns-message" \
  --data-binary @query.bin \
  "https://dns.litelake.cn/api/open/doh/cn/YOUR_KEY"

region 參數

視角是顯式參數,不做 GeoDNS 自動判斷。未知 region 回傳 404。

  • region=cn — cn — 中國視角,由境內邊緣節點與境內上游執行。
  • region=us — us — 海外視角,由海外邊緣節點與無過濾上游執行。

應答溯源

每條 JSON 應答都攜帶視角、執行區域、實際應答上游、快取狀態(miss、fresh、stale)與耗時。DoH 透過 X-LiteDNS-Region、X-LiteDNS-Upstream、X-LiteDNS-Cache 暴露同樣資訊。

region · exec_region · upstream · cache · latency_ms · rcode

錯誤碼

JSON API 失敗時使用原生 HTTP 狀態碼。DoH 遵循 RFC 8484:合法 DNS 應答一律 2xx,4xx 表示沒有產生 DNS 應答。

HTTP錯誤碼
400網域、類型或封包格式不合法。
401未攜帶 Key 或 Key 無效。
403Key 已撤銷、方案不可用或無對應 scope。
404未知的 region。
406Accept 不允許 application/dns-message。
413請求體超過 64 KB。
415媒體類型不支援。
429帳號額度超限,請按 Retry-After 間隔重試。
504全部上游失敗且無可用快取。

客戶端設定

DoH URL 包含路徑,標準客戶端均支援。請使用主控台產生的完整帶 Key URL。

客戶端設定狀態說明
Firefox 自訂 DoH支援填寫完整的帶 Key URL。
Chrome / Edge 安全 DNS支援URI 範本可包含路徑。
iOS / macOS 描述檔支援在 DNS 設定載荷中填寫完整 URL。
curl / 程式化客戶端支援GET 使用 base64url,POST 使用二進位封包。
Android Private DNS不支援只接受主機名,無法攜帶 Key 路徑。

Agent Skill

讀取 Skill 文件無需驗證。請勿把 API Key 寫入共享日誌。

開啟 /docs/skill.md