網路分流路由檢測
測試不同的網路目的地所使用的網路出口 IP 及路由策略,評估分流規則是否生效。
| 網站 | 出口 IP | IP歸屬地 | 運營商 | 狀態/延遲 |
|---|
讀懂分流與路由洩漏
什麼是分流、它是怎麼洩漏的、以及這個測試的結果該怎麼看。
分流指的是隻有一部分流量走 VPN 或代理,其餘的直接出去。這經常是刻意為之,因為把本地流量或流媒體放在隧道外面更快。問題出在「分流的位置和你以為的不一樣」:為某個域名寫的規則,可能覆蓋不到這個域名解析出來的那些地址;為 IPv4 寫的規則,可能讓 IPv6 完全留在隧道外面。這個測試會同時向多個互相獨立的端點發起連線,比對每個端點看到的出口地址 —— 這能發現單端點檢測根本看不到的分流。
因為它們被路由到了不同的地方。如果兩個端點報出兩個不同的地址,說明你有一部分流量離開了隧道。常見原因有三種:代理規則按主機名而不是目標地址匹配;代理側做了負載均衡,給同一個會話分配了多個出口;以及雙棧環境下 IPv4 走了隧道而 IPv6 沒走。同一地址族內出現多個出口不一定是問題,但它意味著觀察者可以透過多個地址關聯你的會話 —— 這降低而不是提高匿名性。
在很多配置下確實會。相當多的 VPN 和代理配置只接管 IPv4 路由,於是任何能走 IPv6 的站點都會直接從你的真實地址訪問,而其餘流量看起來來自隧道。由於現代作業系統在 IPv6 可用時會優先用它,這可能悄悄把你大部分的瀏覽行為送到隧道外面。這個測試會分別探測 IPv4 和 IPv6 端點,兩個地址族報出不同出口時你會立刻看到。
只要客戶端支援,就按目標地址而不是按主機名做路由 —— 主機名規則在域名解析之前就被判定,會漏掉一切直接用地址訪問的流量。確認隧道同時接管了 IPv6 和 IPv4;如果出口不支援 IPv6,就乾脆把 IPv6 關掉。開啟客戶端提供的killswitch 或鎖定模式,讓隧道斷開時流量被丟棄而不是明文發出去。改完任何配置都重新跑一次這個測試:在配置檔案裡看著沒問題的規則,一旦進入作業系統路由表,行為經常和預期不同。
不是。有意把區域網流量、印表機或某個流媒體服務放在隧道外面是合理的,往往還能提升速度。有風險的是你沒打算分流卻分流了,或者分流的範圍比你以為的更大。真正該問的問題不是「流量有沒有被分開」,而是「你在意的那部分流量在不在隧道里」。這個測試就是用「哪個端點看到了哪個出口地址」來回答它的,而不是給你一個籠統的總體結論。