為什麼一開 Fake-IP,區網就像「消失」?
在 Clash 與 mihomo 生態裡,Fake-IP(假 IP)是最常見的 DNS 強化模式之一:應用程式先向 Clash 查詢網域名稱,核心對「需要經過規則決策」的查詢回傳一段虛擬位址(常見範圍如 198.18.0.0/16),之後再依規則還原真實連線目標。這對減少洩漏、讓規則「看得到域名」很有幫助;但對區域網路裝置而言,若某些主機名也被送進同一條假解析流程,你會在瀏覽器或檔案總管裡看到怪現象:nas.local、印表機的裝置名、或供應商預設的 router.lan 登入頁,突然 ping 得到卻連不上服務,或 SMB/AirPrint 斷斷續續。
這類問題與「節點品質」無必然關係,搜尋意圖卻非常明確:使用者想知道 fake-ip-filter 要填什麼、規則裡怎麼對 RFC1918 私有位址放行。RFC1918 所謂的私有網段,即 10.0.0.0/8、172.16.0.0/12、192.168.0.0/16(另含本機與鏈路本機位址),典型家用 NAS 與印表機幾乎都落在這些範圍內。當你發現「關掉 Clash 就正常、開啟就異常」,請優先檢查 DNS 段與規則段是否同時對內網語意伸出援手——單改一邊常常不夠。
先釐清:是三種症狀中的哪一種?
在動手改檔前,建議用 30 秒把現象分類,以免把「純路由問題」誤當成 Fake-IP。第一種:你只記得內網 IP(例如 192.168.1.88)連 NAS 後台,開啟 Clash 後反而超時。這時要懷疑規則是否把所有 TCP 送進代理,或 TUN 與本機防火牆互動導致繞路異常。第二種:你依賴 mDNS 或 *.local 這類名稱找印表機,Fake-IP 若攔截查詢卻沒有在 fake-ip-filter 放行,應用程式拿到的會是「像真的但其實是假的」位址,後續連線自然對不到真正的雷射印表機或事務機。
第三種:你能用 IP 打開路由器,但用廠商提供的區網網域(例如 mywifi.mynetworksettings.com 這類情境依廠牌而異;本文仍以常見的 *.lan、自架網域為例)會失敗。這通常要把該主機名或後綴加入過濾列表,讓名稱解析回到真實的區網 DNS 或上層路由器。無論哪一種,都請在用戶端打開連線紀錄:若看到內網目的地仍被標成境外策略組,代表規則順序或「以 IP 匹配」那一側尚未補齊。關於 Fake-IP 與 DNS 的總式說明,可先讀 文件中的 DNS 與 Fake-IP 章節,再回到本文操作面。
步驟一:在 dns 區塊補強 fake-ip-filter
fake-ip-filter 的角色,是告訴核心「這些名稱不要用假位址回覆」。家庭與小型辦公室場景裡,建議至少涵蓋廣義的內網慣用後綴與本機預留名稱;若你有固定 NAS 主機名,也可以直接寫成完整域名。下列片段僅作結構示範,請依自家實際主機名增刪(欄位名稱隨內核版本可能略有差異,請對照你正在使用的發行說明):
dns:
enhanced-mode: fake-ip
fake-ip-range: 198.18.0.1/16
fake-ip-filter:
- '*.lan'
- '*.local'
- '*.*.lan'
- 'time.windows.com'
- '+.pool.ntp.org'
- 'nas.home.arpa'
# Add your NAS or printer host FQDN above
實務上有幾個細節值得寫進肌肉記憶。第一,*.local 關係到 Bonjour(mDNS),對 macOS、iOS 與部分 AirPrint 流程特別敏感;若你只加了寬鬆的國際網站規則卻漏了這裡,表面症狀會像「Finder 看得到分享、實際傳檔失敗」。第二,ntp 與部分作業系統內建時鐘同步主機有時也被建議放進過濾列表,避免不必要的假位址干擾。第三,若你在 YAML 已寫入卻仍無效,請確認 GUI 是否真的把檔案重載進核心,並檢查是否還有一份「訂閱合併後」覆寫了 dns 段——合併順序造成的「看起來有、實際沒上到」十分常見。
若你希望從頭建立可維護的整份骨架,而不只在 DNS 段打補丁,建議平行閱讀 Clash YAML 設定教學,裡面對 proxy-groups、rules 與 DNS 的相對位置有完整心智圖,能避免只修 DNS、流量卻在規則層仍被送走的遺憾。
步驟二:用 RFC1918 網段規則「靠前」直連
只有 fake-ip-filter,有時仍無法拯救「應用程式已拿著裸 IP 卻被送上代理」的情境。原因是規則匹配發生在連線建立階段;若某條寬鬆規則先把私有位址導去 PROXY,後端節點並不知道如何幫你連回客廳裡的雷射印表機。對策是在 rules 靠前處加入針對 RFC1918 的直連行(若使用支援集合的內核,也能以私有位址規則集一次到位)。手寫時請盡量帶上 no-resolve 等適用旗標,減少與 DNS 解析競態:
rules:
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,fe80::/10,DIRECT,no-resolve
- IP-CIDR,fc00::/7,DIRECT,no-resolve
# Your GEOIP / MATCH lines follow
為什麼要強調「靠前」?因為 Clash 規則是自上而下第一條命中即停;若你把私有網段放在太後面、前面先出現了 GEOIP,CN 或其他寬規則,仍可能把某些內網封包導向意料之外的策略組。NAS WebDAV、SMB、AFP,以及印表機的 raw port、IPP,大多期待真正的區網路徑,任何多跳代理都可能破壞 MTU 路徑探索與反向連線設計。
若你使用遠端規則集,也可以把私有位址維護交給可信集合,但請自行確認集合內容版本與你的稽核標準相符;自行維護雖然冗長,好處是發生故障時一眼便能對照。此段落補的是「IP 層」的保底;與上一段 fake-ip-filter(名稱層)並用,才算把最常見的兩條斷裂點都封住。
步驟三:印表機、NAS 與路由器後台的實務提醒
印表機方面,Windows「新增印表機」精靈與驅動程式有時會快取舊解析結果;在變更 DNS 之後,建議移除裝置後重搜一次,或以 IP 建立連線確認硬體正常,再切回主機名。若同一台 MFP 同時提供 Web 管理與行式列印埠,請分別測試 9100/IPP/WSD,因為不同通訊途徑對系統代理的敏感度不一。對 NAS 而言,瀏覽器能否開啟管理介面與檔案分享能否掛載是兩套客戶端堆疊;若只有網頁恢復、SMB 仍失敗,要往作業系統快取、Kerberos/NTLM 與雙網卡綁定方向追查,不一定再是 Fake-IP 單一因素。
路由器後台若走 HTTPS 自簽憑證,請留意瀏覽器是否因代理路徑改變而觸發不同的 TLS 警告;這與「連不上」不同,但也常與 Clash 同時出現而被誤判。若你使用 TUN 模式,還要確認是否與公司 VPN 或其他虛擬介面爭奪預設路由;這種情境下,即使 fake-ip-filter 正確,封包仍可能從錯誤介面離開。簡單說:DNS 正確只是必要條件,真正的充分條件還包含這條連線在作業系統眼中是否仍被視為區網。
驗證與除錯順序
建議依序完成四步驗證。其一,在開啟 Clash 的情況下,對問題主機執行解析檢視(使用你習慣且允許的指令或圖形工具),確認回傳的不是一整片落在 198.18.0.0/16 的假位址—除非是預期要被代理的目標。其二,在連線日誌中搜尋該會話,核對策略是否為 DIRECT、目的地位址是否符合真實內網。其三,暫時關閉實驗性進階選項或第三方防火牆外掛,排除與 TUN 的互斥。其四,把本次修改的 YAML 區段存成註解版本,日後若訂閱範本升級衝突,能快速還原。
若完成以上步驟仍無法定位,請把問題收窄到「只有特定客戶端失敗」還是「全機皆失敗」。前一種多半是應用程式繞過系統 DNS、或使用內建 DoH;後一種則比較像規則或 TUN 層的全域行為。把這個分類告訴社群或同事時,也能大幅縮短來回問答時間。
結語
Clash Fake-IP 能讓大多數對外網站走得既快又好懂,但對家中或辦公室的 NAS、印表機與路由器管理頁,你需要刻意把內網語意「留回真實世界」:用 fake-ip-filter 放行走真解析的主機名,再用 RFC1918 的網段規則在 IP 層保底直連。這套組合與通論裡的「分流僅是寫規則」相比,更貼近搜尋「開假 IP 後區網壞掉」的使用者路徑;若你接下來要整理整份設定,仍可回到 YAML 全文教學 把結構一次補齊。相較於零散偏方,把名稱與位址兩條鏈路寫清楚,維護成本通常更低,也比反覆重裝驅動或怪罪印表機「不支援代理」來得踏實。若你正要選一套日誌清楚、能對照 Fake-IP 命中與規則順序的用戶端,歡迎先到 用戶端下載頁 取得最新版本,再依本文片段調整。→ 立即免費下載 Clash,開啟流暢上網新體驗