Fake-IP 究竟做了什麼

開了 fake-ip 之後,程式問「example.com 的位址是多少」,核心不去真的解析,直接從一個保留網段裡挑一個沒用過的位址回給它,常見是 198.18.0.0/16。程式拿著這個假位址來連,核心一查表就知道對應的是哪個網域,然後按網域去比對規則。

省下來的是一次真實解析:不解析,就沒有被投毒的機會,也不用等國外權威伺服器的往返。代價是——所有想看真實 IP 的東西都會看到一個 198.18 開頭的假貨。區域網路裝置探索、部分 P2P、某些遊戲的直連打洞,都可能因此不正常。

合作推薦訂閱連結從哪來?本站合作機場註冊即送 1GB 香港高速體驗流量,可直接一鍵匯入。取得高速節點

一份能用的起點

dns:
  enable: true
  ipv6: false
  enhanced-mode: fake-ip
  fake-ip-range: 198.18.0.1/16
  fake-ip-filter:
    - "*.lan"
    - "*.local"
    - "+.pool.ntp.org"
  nameserver:
    - 223.5.5.5
    - 119.29.29.29
  fallback:
    - https://dns.google/dns-query
    - tls://1.0.0.1:853

nameserver 是預設使用的解析器,一般填你所在網路能快速回應的那幾個。fallback 是給不放心的網域準備的加密解析,走 DoH 或 DoT。兩者不是主備關係——核心會依自己的策略決定採信哪一邊的結果,所以 fallback 裡放的必須是你信得過的。

fake-ip-filter 要放什麼

  • 本機網域。*.lan*.local、路由器後台的網域。給它們假 IP,你就再也連不上自己家的裝置。
  • 需要真實 IP 才能運作的服務。時間同步、某些內網服務探索、部分下載工具的 tracker。
  • 被你規則放直連的網域。它們本來就要走本地網路,拿假位址沒有意義。
  • 遊戲。這類最難一概而論:有的遊戲用網域連大廳、用 IP 連對戰伺服器,fake-ip 會讓它在對戰階段找不到路。發現某個遊戲在 TUN 下進不了房間,先把它的網域加進 filter 試試。

什麼時候退回 redir-host

redir-host 是舊辦法:正常解析網域拿到真實 IP,同時把網域記下來,轉發時仍然按網域比對規則。它慢一點,也要承擔被污染的風險,但因為位址是真的,相容性問題少得多。

判斷標準很直接:如果你只是上網、看影片、用開發工具,fake-ip 更省心;如果你在跑 P2P、玩連線遊戲、需要存取大量區域網路裝置,或者已經為了 fake-ip 往 filter 裡加了十幾條例外,那就換回 redir-host,別跟它硬拚。

nameserver-policy 處理特例

有些網域必須用指定的 DNS 才能拿到正確結果,典型是公司內網網域和某些只對本地解析器回傳正確 CDN 的站點。nameserver-policy 按網域指定解析器,比把整個 nameserver 改掉精準得多。

  nameserver-policy:
    "+.corp.example.com": 10.0.0.53
    "geosite:cn": [223.5.5.5, 119.29.29.29]
改完 dns 段一定要中斷既有連線再測,否則你測的還是舊解析結果的快取。系統那層快取也要清(Windows 上是 ipconfig /flushdns)。還有:在 fake-ip 模式下用 nslookup 查出來的 198.18 開頭位址是設計如此,不是故障。