跳轉到

什麼是 OONI

連不上某個網站時,第一個直覺通常是「是我網路有問題嗎?」OONI(Open Observatory of Network Interference,網路干擾開放觀測)就是為了把這種感受轉成可驗證的資料。它提供開源檢測工具 OONI Probe 與公開資料平台 OONI Explorer,讓任何人都能跑檢測、查紀錄,把封鎖、監控、降速這些行為留下時間、地點、ASN 都對得上的觀測痕跡。

對在台灣的我們,OONI 的價值不只在於「有沒有被封鎖」這個單點問題,而在於它讓討論能以資料為基礎。社群、媒體、研究者要佐證一次連線異常時,有可引用、可重現的紀錄。也因此,ASN 觀測涵蓋率 在台灣才會是個值得長期關注的議題:觀測點越多元,這份紀錄的代表性就越強。

OONI 計畫主要推動事項

  1. 測試網路審查:OONI Probe 用於測試網站或網路可訪問性的應用程式,使用者可以使用它來檢查特定網站或線上服務是否被封鎖。
  2. 開放資料:OONI 將收集到的檢測數據資料公開,提供自由開放的查閱與分析,提高對全球網路審查狀況的認知。
  3. 倡議與研究:透過分析檢測數據資料,OONI 與研究人員和倡議者合作,共同關注全球及區域性網路干擾的趨勢與影響
  4. 在地社群合作:OONI 與其他組織、在地社群與專案合作,以增強檢測技術能力,推進網路開放及無障礙訪問的目標。

參與 OONI 的檢測活動,等於把你這條網路的觀測資料留進公開資料集。當其他人需要佐證封鎖事件、追跨境差異、或對照不同 ASN 的狀況時,會有更多元的紀錄可以引用。

如何運作?

OONI 如何運作,透過比對網頁呈現來推測是否內容被干預
  • Probe:為 OONI 檢測觀察程式。
  • Censor:為資訊傳輸過程中的監控者,可能為公司 IT 網路、電信公司、國家等級的網路架構。網路干預可透過以下方式進行,但其結果與目的都是阻止檢視網站內容。
    1. DNS 篡改(DNS tampering、DNS 異常)
    2. IP 封鎖(DNS tampering、TCP/IP 異常)
    3. HTTP 封鎖(HTTP blocking、例如:封鎖頁面)
    4. 基於 TLS 的干擾(例如在 TLS 握手期間的 ClientHello 訊息後觀察到的連線重置)
  • Tor:洋蔥路由網路,將連線請求透過三層節點的轉介傳送取得資訊。
  • Helper:檢測目標對象,可能為網站、通訊軟體連線、VPN 連線、連線效能等。

在臺灣比較熟悉與類似的阻擋行為與技術如中華電信提供的「色情守門員」、透過 DNS 阻擋廣告、惡意網站的 AdGuardPi-Hole。 或是數位發展部與財團法人臺灣網路資訊中心(TWNIC)進行網域阻擋的打擊詐騙方式,都可算是阻擋網頁瀏覽。

我們所處的網路是否真的自由?

以上舉例通常都是針對惡意網站、網路廣告、釣魚詐騙來進行善意阻擋(如:DNS RPZ),但如果是刻意阻擋某些內容呢?或是來自某些未被觀察紀錄到 ASNs 的阻擋行為?雖然目前觀測的資料都無大規模阻擋,但因為觀測資料多樣性不足,都只集中在中華電信(AS3462)的觀測資料,因此在「各區域觀察資料與 ASNs 涵蓋率」研究項目中會比對目前我們還有多少在 TW 的 ASNs 是未被觀測到的。

OONI 適合做什麼、不適合做什麼

OONI 的定位跟 TorTails 不一樣:Tor 與 Tails 給使用者保護自己用,OONI 給社群、媒體、研究者觀測網路環境用。動手前先回頭看 威脅模型怎麼想 有助於釐清需求是不是真的對得上 OONI 解決的問題。

適合

  • 佐證封鎖事件。某個網站某個時段在某個 ASN 連不上,OONI Probe 跑過會留下可引用的紀錄。
  • 長期觀測單一地區的網路環境變化。把 OONI Probe 跑成 cronjob,幾個月下來能看到趨勢。
  • 跨 ASN、跨地區比較。OONI Explorer 上不同 ASN 的觀測結果可以對照,找出哪一段網路有差異。
  • 媒體、研究、倡議用途。需要外部可驗證的數據時,公開資料集是堅實的引用基礎。

不適合

  • 即時警報。OONI 資料有約一小時延遲,不是給「現在這一秒網站連不上」做即時診斷用的。
  • 判斷單一裝置中毒或本地 DNS 設錯。OONI 看的是網路層的可及性,不是端點安全。
  • 辨識深度封包檢測(DPI)行為的細節。OONI 觀察的是「結果」(連得上/連不上、回應內容是否異常),不是「過程」中的封包細節。
  • 取代 Tor 或 VPN。OONI 不會把你的連線匿名化,它只是讓你知道網路有沒有在干預。

OONI Probe 觀測程式提供行動裝置版本(Android, iOS)、桌面版本(Windows 64bit, macOS)、或是無任何桌面介面的終端程式版本

OONI 桌面程式操作頁面

終端機介面可以使用 ooniprobe run 執行所有檢測項目。或是設定 cronjob 在空閒時間跑觀察檢測。

# 在第 4、10 和 22 小時的第 10 分鐘執行。
10 4,10,22 * * * ooniprobe run > /dev/null 2>&1 &

自動執行

目前 ooniprobe autorun 的指令還未實作完成,因此先使用 cronjob 方式定時檢測。

OONI Explorer 觀測資料

OONI Explore 觀測資料網站(延遲一小時)

檢測到的觀察資料會即時回傳到 OONI 的資料庫,可透過 OONI Explorer 線上分析各個區域的狀況及不同檢測項目的結果。此外,也可以直接存取 S3 儲存空間(Registry of Open Data on AWS),下載延遲一小時的原始觀測資料,以便進行更深入的交叉分析。可根據分析議題需求選擇即時查閱或下載詳細資料進行進一步研究。

觀察 AS 資料

可將「縱軸」項目選成 ASN 篩選分離各 ASN 觀測資料狀況。

OONI Explore 可將「縱軸」項目選成 ASN 篩選分離各 ASN 觀測資料狀況。

常見問題

我在家裡跑 OONI Probe,會不會被 ISP 標記?

OONI Probe 的測試行為(連到一份公開的測試清單上的網站、記錄回應)跟一般使用者瀏覽網頁差別不大,台灣目前沒有任何 ISP 因為跑 OONI 而封鎖或警告使用者的案例。如果擔心,預設清單(Test List)排除了多數高敏感類型的網站,可以放心。在審查嚴格的國家(如中國、伊朗)情況不同,OONI 官方文件有額外的風險說明。

OONI 檢測會不會誤判?

會。OONI 看到的是「連線結果與一般情況不同」,不會自動斷定原因。常見誤判來源:對方網站本身故障、CDN 負載平衡造成 IP 變動、本地 DNS 設定錯誤、企業/校園網路的合規過濾。OONI Explorer 把判斷邏輯(DNS、TCP、TLS、HTTP 各層的觀察結果)公開,誤判可以被追查與修正。要做嚴謹結論前,建議交叉比對多個 ASN、多個時段的紀錄。

TWNIC 的 DNS RPZ 阻擋詐騙網站,OONI 算這是審查嗎?

OONI 的角色是觀測與記錄,不是判定。它會把「在這個 ASN、這個時段、這個網站 DNS 解析異常」如實寫下來。是不是「審查」、是不是「合理」要靠人去詮釋。TWNIC 的詐騙網站封鎖在 OONI 資料裡會呈現為 DNS 異常,但不會被自動標記成審查。這也是為什麼觀測資料的價值在於「公開、可重現」,而不是「誰說了算」。

可以同時跑 OONI Probe 跟 Tor 嗎?

可以,但要分清楚目的。OONI Probe 是觀測工具,跑檢測時走的是你本地的 ISP 連線(這樣才能觀測到當地的網路環境)。如果讓 OONI 走 Tor,觀測到的是 Tor 出口節點的網路環境,不是你本地的,失去意義。Tor Browser 與 OONI Probe 在同一台電腦上可以共存,各跑各的。

我在台灣,最簡單的貢獻方式是什麼?

手機裝 OONI Probe,每天讓它跑一次自動檢測就是有效貢獻。如果家裡有 Linux 主機,照本文「如何安裝」段的 cronjob 範例設定,就能持續累積。想再進一步可以參考 OONI 網站檢測清單 補充本地關注的網站,或讀 ASN 觀測涵蓋率 了解哪些 ASN 還缺觀測點。

一同瞭解

下一步可參與的專案