Skip to content

macOS 上安裝 Tailscale 的三種方法

比較 Mac App Store、Standalone 與開源 tailscaled 三種 macOS 版本的差異、功能支援與選擇建議

Updated View as Markdown

在 macOS 上跑 Tailscale 有三種版本:Mac App Store 版、Standalone 版和開源 tailscaled CLI 版。三種版本的核心連線功能完全一樣,差別在打包方式、與 macOS 的互動機制,以及隨之而來的功能限制。本文整理三者的差異、功能比較、怎麼判斷自己裝的是哪一版、怎麼切換,以及該怎麼選。

本文以 Tailscale v1.102(2026 年 10 月)為準;三種版本目前都要求 macOS 12.0(Monterey)以上。

三種版本是什麼

Mac App Store 版

從 App Store 安裝的版本。安裝最簡單、更新全交給 App Store 自動處理,但上架 App Store 的 app 必須跑在 macOS 的 App Sandbox 裡,並以 Network Extension 的方式實作 VPN。沙盒把 app 和系統其他部分隔離,安全,但代價是一些功能限制——最常見的坑是和「螢幕使用時間」(Screen Time)的網站內容過濾器相衝突。

Standalone 版

從 Tailscale 官方下載 .pkg 安裝的版本(下載頁)。macOS 10.15(Catalina)起提供了 System Extension 這個新架構:以 root 權限執行,但仍然關在沙盒裡、與核心隔離,比舊式的核心擴充功能(kernel extension)安全,而且不經過 App Store 也能發佈。Standalone 版就是走這條路:

  • 不需要 Apple ID,打開 .pkg 就能裝
  • 更新由 app 內建的更新器(Sparkle)處理,不用等 App Store 審核,安全修正推出更快
  • 能偵測其他工具干擾 VPN 隧道,並主動提醒你

Tailscale 官方目前最推薦的就是這個版本。

開源 tailscaled 版

Tailscale 的核心是開放原始碼的,可以直接在 macOS 上跑 tailscale 和 tailscaled 這兩支 CLI 程式(例如用 Homebrew 安裝)。它不走 Network/System Extension,而是直接用核心的 utun 介面建立隧道。代價是:

  • 沒有 GUI:沒有選單列圖示,一切用指令操作,也不會出現在 macOS 系統設定的 VPN 清單裡
  • 測試程度不如另外兩版

好處是完全開源、可以在登入前(開機時)就跑起來、可以當 Tailscale SSH server 等。官方的定位是給有經驗的 macOS 系統管理員做無人值守(unattended)的部署。

怎麼安裝

Mac App Store 版

直接從 App Store 安裝。想用指令自動化部署的話,可以用 mas-cli:

mas install 1475387142

Standalone 版

從官方下載頁取回 .pkg(Tailscale-latest-macos.pkg),點兩下安裝;慣用 Homebrew 的話,brew install --cask tailscale-app 裝的也是同一個 .pkg。

開源 tailscaled 版

用 Homebrew 安裝並啟動:

brew install --formula tailscale
sudo brew services start tailscale
sudo tailscale up

--formula 要記得帶:Homebrew 上還有個裝 Standalone 版 GUI 的 cask tailscale-app,而且它以前的名字就叫 tailscale,明確指定才不會裝錯。brew services 會透過 launchd 把 tailscaled 註冊成開機自動啟動的系統服務。不想用 Homebrew 也可以自己編譯:先安裝 Go,執行 go install tailscale.com/cmd/tailscale{,d}@main,再跑 sudo tailscaled install-system-daemon 把它裝成 launchd 服務(詳見官方 wiki)。最後一樣執行 sudo tailscale up 登入。

開源版的 MagicDNS 由 tailscaled 自動設定:它會用 macOS 的 split DNS,在 /etc/resolver/ 底下為 tailnet 網域建立設定檔,把這些網域指到 100.100.100.100,不會動到機器的全域 DNS。

功能差異比較表

完整差異如下(整理自官方比較表):

功能 App Store 版 Standalone 版 開源 tailscaled 版
VPN 實作方式 Network Extension System Extension utun 介面
GUI 有 有 沒有
CLI 有 有 有
需要 Apple ID 需要 不用 不用
登入前(開機時)執行 不能(沙盒限制) 不能 能
金鑰與狀態存放 使用者 Keychain 磁碟上的檔案 磁碟上的檔案
沙盒 有 僅系統擴充功能 沒有
自動更新 有,由 App Store 管 有,app 內建 沒有,需手動更新
開放原始碼 否 否 是
MagicDNS 支援 支援 支援
Taildrop 支援 支援 不完整
Funnel 僅連接埠 僅連接埠 支援
Exit node 支援 支援 部分:可當 exit node,不能用別的
MDM 支援 有 有 沒有
當 Tailscale SSH server 不能 不能 能
當 Tailscale SSH client 能 能 能
tailscale ssh 指令 沒有,用一般 ssh 有 有
支援 services collection 沒有 有 有
與螢幕使用時間過濾器相容 不相容 相容 相容
產生支援用設定報告 有限 能 不能

幾個值得注意的地方:

  • 兩個 GUI 版不能當 Tailscale SSH server,這只有開源版支援。
  • Serve 與 Funnel 在 GUI 版上都受沙盒限制:只能分享連接埠,不能分享檔案或資料夾,詳見本站 Tailscale Serve 與 Tailscale Funnel。官方的版本比較表把 Funnel 標成 GUI 版不支援,但 tailscale funnel 指令參考與原始碼都只擋檔案與資料夾,本站以後者為準。
  • App Store 版的金鑰與狀態存在使用者 Keychain、跟著登入的使用者走,也因為沙盒的關係沒辦法在使用者登入前執行;開源版能辦到這點,斷電重開後不用登入就能連回這台機器(例如遠端 VNC)。

怎麼判斷自己裝的是哪一版

  • 完全沒有選單列圖示、只能用指令:就是開源 tailscaled 版,它沒有 GUI。
  • 有選單列圖示:是兩個 GUI 版之一。兩版都裝在 /Applications/Tailscale.app,介面一模一樣,從外觀分不出來。

兩個 GUI 版可以用 App Store 的收據檔分辨——只有 App Store 版的 app 裡會有 _MASReceipt:

ls /Applications/Tailscale.app/Contents/_MASReceipt

有東西就是 App Store 版,顯示 No such file or directory 就是 Standalone 版。也可以回想當初怎麼裝的:從 App Store 裝、更新出現在 App Store 的是 App Store 版;下載 .pkg 裝、更新由 app 自己處理的是 Standalone 版。

切換版本

App Store 版和 Standalone 版不能同時裝在同一台機器上:兩個同時跑會讓 Tailscale 的擴充功能無法啟動。要換版本時照這個順序:

  1. 把目前的 Tailscale.app 丟進垃圾桶
  2. 清空垃圾桶
  3. 重新開機
  4. 再安裝另一個版本

換到開源版也一樣:先照上面的步驟把 GUI 版移乾淨,再 brew install --formula tailscale。反方向(開源版換回 GUI 版)則先把服務停掉並移除:

sudo brew services stop tailscale
brew uninstall --formula tailscale

自己編譯安裝的話,改用 sudo tailscaled uninstall-system-daemon 移除。

該怎麼選

  • 一般使用者:選 Standalone 版。這是 Tailscale 官方的建議:更新更快、功能限制更少,更新也不用等 App Store 審核。App Store 版只有在沒辦法安裝 .pkg,或管理上必須仰賴 App Store(例如公司政策)的環境才考慮——它最省事,但要知道螢幕使用時間過濾器衝突這個坑。
  • 開發者:選 Standalone 版。比起 App Store 版多了 tailscale ssh 指令、完整的支援用設定報告,也和螢幕使用時間相容。如果需要用 Serve/Funnel 分享檔案或資料夾,或把這台機器當 Tailscale SSH server,就改用開源版(代價是沒有 GUI)。
  • 伺服器 / headless(例如 Mac mini 當 home server):選開源 tailscaled 版。它能在使用者登入前就執行、能當 SSH server,斷電重開後不用登入就能連回,是無人值守情境的正解。

常見問題

  • 兩個版本都裝了,Tailscale 連不上? App Store 版和 Standalone 版同時存在會讓擴充功能起不來。照「切換版本」一節的步驟移除其中一個,清空垃圾桶再重開機。
  • 裝的是 App Store 版,瀏覽器打不開網頁? 檢查是不是「螢幕使用時間」的內容與隱私權限制(網站內容過濾器)和 Tailscale 相衝。這是 App Store 版的已知限制,無法相容;換 Standalone 版就能解決。
  • tailscale serve 不能分享資料夾? GUI 版的沙盒限制:只能分享連接埠。見本站 Tailscale Serve 一文的說明。

參考資料

Navigation

Type to search…

↑↓ navigate↵ selectEsc close