規則是有順序的 JSON 數組

每個對象表示一條規則。enabled 控制啓用,remarks 爲備註,outboundTag 選擇已存在的出站。客戶端編輯器與核心原生配置並非完全相同;優先從客戶端導出規則,再在相同結構中修改。

保存後還要選中該規則集並重新應用配置。規則由上到下匹配,命中後不繼續向下查找。

常用匹配字段

同一條件中的多個值通常表示任選其一;不同條件同時填寫時需要共同滿足。客戶端會將同一條中的 Domain、IP、進程條件拆開處理,建議每條只選擇其中一種。

字段寫法與作用
domain域名數組;full:example.com 精確匹配,domain:example.com 包含其子域名,regexp: 爲正則,geosite: 爲分類
ip單個 IP、CIDR 或 geoip: 分類;geoip:private 匹配私有地址
port目標端口或範圍,如 443 或 1000-2000
sourcePort / source來源端口 / 來源 IP 條件,核心支持範圍需匹配
networktcp、udp 或二者
protocol嗅探得到的應用協議,如 http、tls、bittorrent;需要相應嗅探
inboundTag限定請求來自哪個入站
outboundTagdirect 直連、proxy 代理、block 阻止,或已經定義的自定義 tag
enabled / remarks客戶端規則啓用狀態 / 備註

從一條明確規則開始

下面的示例讓 example.com 及其子域名直連,其餘交給 proxy。示例中的最後一條是兜底規則,應始終位於後面;如果已有規則集有兜底規則,只新增需要的精確規則即可。

JSON · client routing rules複製
[
  {
    "remarks": "Example domain direct",
    "domain": [
      "domain:example.com"
    ],
    "outboundTag": "direct",
    "enabled": true
  },
  {
    "remarks": "Fallback proxy",
    "port": "0-65535",
    "outboundTag": "proxy",
    "enabled": true
  }
]

常見規則組合

把局域網 IP 和私有域名設爲 direct,可讓本地設備保持可達;使用 GEO 分類前應更新對應數據。需要阻止 UDP 443 時可寫 network=udp、port=443、outboundTag=block,這會影響 QUIC / HTTP/3,不應當成所有連接問題的通用修復。

域名規則需要客戶端擁有域名信息;如果應用直接連接 IP,純域名規則可能無法命中。嗅探、DNS 模式和應用自己的加密 DNS 都會影響可用信息。

域名解析策略

Xray 的 AsIs 在路由階段保留域名;IPIfNonMatch 會在域名未匹配時嘗試解析後匹配 IP;IPOnDemand 在匹配需要 IP 信息的規則時解析。解析策略與規則順序相互影響,不代表所有實際出站解析也使用相同 DNS。

將域名規則放在合適位置,避免過早觸發寬泛 IP 規則。DNS 出站解析的設置請在本站 DNS 章節中單獨覈對。

DNS 設置說明

導入、驗證與回退

規則可以從文件、剪貼板或訂閱 URL 導入。導入前保留舊規則集;JSON 不能包含尾隨逗號或註釋。確認 outboundTag 存在,分類數據有效,沒有將所有流量誤匹配到第一條。

用一個明確目標驗證:發起一次新連接,查看日誌中選擇的出站。舊的長連接可能繼續使用原出口,必要時重啓目標應用再測。失敗時切回舊規則集,不需要刪除所有配置。