部落格
連線模式詳解:區域網路 vs. Cloudflare Tunnel
Tactic Remote 支援兩種連線模式:區域網路模式在同一 Wi-Fi 下延遲低於 100ms,Cloudflare Tunnel 模式可從任何地方安全存取。本文介紹兩者的運作原理及適用情境。
繼續查看該欄目下的產品與工程更新。
瀏覽此分類Tactic Remote 新使用者最常見的問題之一是:「我應該使用區域網路模式還是 Cloudflare Tunnel?」答案取決於你的工作方式和工作地點。本文將詳細介紹兩種模式 — 它們在架構上的差異、效能和安全特性,以及 Tactic Remote 如何處理兩者之間的切換。
兩種模式,統一介面
在深入技術細節之前,最重要的一點是:無論你使用哪種連線模式,iPhone 應用的使用體驗完全一致。工作階段管理、終端機串流傳輸、審批工作流程、推播通知 — 無論你的手機與 Mac 在同一 Wi-Fi 下,還是在全國各地透過行動網路連線,所有功能的表現都完全相同。
連線模式只影響你的 iPhone 如何到達 Companion 應用的 API。傳輸層之上的一切都完全一致。
區域網路模式
區域網路模式是預設且最簡單的設定。Mac 上的 Companion 應用將其 HTTP/WebSocket 伺服器繫結到區域網路的某個連接埠,iPhone 直接連線到該 IP 位址和連接埠。
運作原理
- Companion 應用在連接埠 48736(可設定)上啟動內嵌伺服器。
- Mac 廣播其區域網路 IP 位址(例如
192.168.1.42:48736)。 - iPhone 透過本地 Wi-Fi 網路連線到該位址。
- 所有通訊均在兩台裝置之間透過區域網路直接傳輸 — 無中間環節。
效能
區域網路模式提供最低延遲,因為封包走的是最短路徑:iPhone 到路由器到 Mac(或在某些網路設定下透過 Wi-Fi Direct 直連)。
| 指標 | 典型範圍 |
|---|---|
| 連線建立 | 30-80ms |
| 終端機更新延遲 | 40-100ms |
| 審批往返時間 | 60-120ms |
| WebSocket ping | 5-20ms |
| 短暫中斷後重連 | 0.5-1.5s |
以上數據基於標準的家庭或辦公 Wi-Fi 網路。擁擠的網路(例如會議場所的 Wi-Fi)可能會有更高的延遲,但在同一網路下,區域網路模式的效能始終優於隧道連線。
安全特性
區域網路模式的安全性依賴兩個層面:
網路隔離。 你的區域網路充當安全邊界。只有同一網路上的裝置才能存取 Companion 應用的連接埠。對於大多數家庭和辦公環境來說,這已經足夠。
Token 認證。 每個 API 請求都需要 Bearer Token。即使攻擊者在你的區域網路中,沒有 Token 也無法與 Companion 應用互動。
區域網路模式無法防護的情境:當你的網路中有被入侵的裝置並且該裝置已經取得了你的 Token。在無法信任區域網路的環境中(共享辦公空間、飯店 Wi-Fi),建議使用 Cloudflare Tunnel 模式。
限制
- 必須在同一網路。 iPhone 和 Mac 必須在同一 Wi-Fi 網路(或同一區域網路內可達)。一旦你離開家庭網路,連線就會中斷。
- IP 位址變化。 如果 Mac 的區域網路 IP 發生變化(DHCP 租約續期、重新連線 Wi-Fi),你需要更新 iPhone 的連線設定。QR 碼重新掃描可以緩解這個問題,但仍然需要手動操作。
- 無法透過行動數據存取。 行動數據網路無法路由到你的家庭網路,這是先天限制。
Cloudflare Tunnel 模式
Cloudflare Tunnel 模式從你的 Mac 向 Cloudflare 全球邊緣網路建立一條持久的出站連線。iPhone 連線到一個 Cloudflare URL,Cloudflare 將流量透過隧道路由回你的 Mac。
運作原理
- Companion 應用使用你的隧道憑證,將
cloudflared作為託管子程序啟動。 cloudflared向最近的 Cloudflare 邊緣伺服器建立出站連線(通常同時建立 2-4 個連線以實現冗餘)。- 你的隧道可透過你設定的 URL 存取(例如
claude.yourdomain.com)。 - iPhone 連線到該 URL。Cloudflare 透過其網路將請求路由到你 Mac 上的
cloudflared程序。 cloudflared將請求轉送到 Companion 應用的本機伺服器。
關鍵架構特性:你的 Mac 從不接受來自網際網路的入站連線。隧道是純出站的,這意味著無需開放連接埠、無需設定防火牆規則、不會暴露在連接埠掃描之下。
效能
Cloudflare Tunnel 會增加可感知的延遲,因為流量需要經過 Cloudflare 的邊緣網路:
| 指標 | 典型範圍 |
|---|---|
| 連線建立 | 150-300ms |
| 終端機更新延遲 | 100-250ms |
| 審批往返時間 | 200-400ms |
| WebSocket ping | 40-120ms |
| 短暫中斷後重連 | 2-4s |
延遲取決於你與最近的 Cloudflare 邊緣伺服器之間的地理距離。Cloudflare 在全球 300 多個城市營運,因此都會區的大多數使用者看到的延遲接近上述範圍的下限。Cloudflare 接入點較少的地區可能會有更高的延遲。
在實際使用中,這種延遲在最初幾分鐘比較明顯,但很快就會習慣。終端機輸出仍然流暢捲動,審批互動也足夠靈敏 — 大多數使用者在收到通知後 15 秒內就能完成處理。
安全特性
Cloudflare Tunnel 在多個方面提供比區域網路模式更強的安全保障:
無入站攻擊面。 你的 Mac 從不監聽來自網際網路的連線。沒有可掃描的連接埠,沒有可暴力破解的入口。
TLS 加密。 iPhone 與 Cloudflare 之間以及 Cloudflare 與你的 Mac 之間的所有流量都使用 TLS 加密。結合 Tactic Remote 的 Token 認證,這提供了兩層獨立的安全保障。
Cloudflare 的 DDoS 和機器人防護 預設套用於你的隧道端點,為自動化攻擊提供額外防護。
權衡之處:流量會經過 Cloudflare 的網路。雖然經過加密,但這意味著 Cloudflare 是一個受信任的中間方。對於大多數個人開發者來說,考慮到便利性,這是可以接受的權衡。對於敏感環境,請參閱我們的 安全與網路強化 指南以了解額外措施。
限制
- 需要 Cloudflare 帳號。 你需要一個免費的 Cloudflare 帳號和一個由 Cloudflare 管理的網域。隧道本身免費,但初始 DNS 設定需要幾分鐘。
- 依賴 Cloudflare 可用性。 如果 Cloudflare 發生故障,隧道模式將無法使用。這種情況很少見(Cloudflare 的運行時間紀錄非常出色),但值得注意。
- 延遲高於區域網路模式。 如上所述,每次互動會比區域網路模式增加 50-200ms 的延遲。
QR 碼連線流程
兩種模式使用相同的 QR 碼流程進行初始配對,但 QR 碼內容不同:
區域網路 QR 碼 編碼內容:http://<local-ip>:<port> 加上認證 Token。
Cloudflare Tunnel QR 碼 編碼內容:https://<your-tunnel-domain> 加上認證 Token。
iPhone 應用根據 URL 方案和網路特徵自動偵測連線模式。如果 QR 碼包含區域網路 IP 位址,應用設定為區域網路模式。如果包含 HTTPS 網域,則設定為 Cloudflare Tunnel 模式。
要切換模式,你可以從 Companion 應用的選單列下拉選單中產生新的 QR 碼,然後用 iPhone 掃描。應用會取代之前的連線設定。整個模式切換在 10 秒內完成。
並排對比
| 因素 | 區域網路 | Cloudflare Tunnel |
|---|---|---|
| 設定複雜度 | 最簡(自動) | 中等(5-10 分鐘) |
| 延遲 | 40-100ms | 100-250ms |
| 支援外網存取 | 否 | 是 |
| 需要 Cloudflare 帳號 | 否 | 是 |
| 需要入站連接埠 | 無(僅限區域網路) | 無 |
| 第三方信任 | 無 | Cloudflare |
| 費用 | 免費 | 免費(Cloudflare 免費方案) |
| 重連速度 | 0.5-1.5s | 2-4s |
| 最適合 | 家庭/辦公室固定辦公 | 通勤、旅行、遠端 |
建議使用模式
在以下情況使用區域網路模式: 你在工位上或與 Mac 在同一網路中。更低的延遲使終端機串流傳輸明顯更流暢,且不依賴第三方服務。
在以下情況使用 Cloudflare Tunnel 模式: 你需要從區域網路外存取 — 通勤、旅行、在不同地點工作,或者你想在家啟動任務然後在辦公室監控進度。
同時使用兩者: 在 Mac 上設定 Cloudflare Tunnel,但在家時透過區域網路模式連線。Companion 應用可以同時提供兩種模式。你的 iPhone 可以儲存兩個連線設定,在應用的連線設定中一鍵切換。
我們的許多使用者將 Cloudflare Tunnel 設定為備用方案,日常使用區域網路模式。當他們離開家時,切換到隧道設定。這樣在條件允許時獲得最低延遲,在需要時獲得遠端存取能力。
下一步
我們正在探索自動模式選擇功能,可以偵測你的 iPhone 是否與 Mac 在同一網路中,自動走本地路由,離開時回退到 Cloudflare Tunnel。這將完全消除手動模式切換。早期測試表明 iOS 上的網路偵測是可靠的,但 VPN 和分割隧道設定等邊緣案例仍需解決。
有關設定說明,請參閱 快速入門 了解區域網路模式,參閱 Cloudflare Tunnel 設定 了解遠端存取設定。