在 macOS 上挑一款 VPN,難點通常不在價格,而在系統權限:裝得上不等於授權通過,授權通過也不等於 M 系列晶片上能穩定重連。這篇 macOS VPN 推薦依「權限、擴充功能、晶片相容、訂閱匯入、分流」的順序拆開來講,每一步都給出可驗證的結果,讀完可以對照自己的機器直接排查。
適用對象有兩類:第一次在 Mac 上裝用戶端的人,以及裝過但被「系統擴充功能已封鎖載入」卡住、或者系統大版本更新後突然連不上的人。
macOS 上的 VPN 由哪幾層組成
一條通道在 macOS 上通常由三部分組成:選單列裡的用戶端介面、負責建立通道的網路擴充功能,以及系統網路堆疊裡多出來的 utun 介面與隨之改寫的路由與 DNS。介面只是遙控器,真正在做事的是擴充功能。
這也是 macOS 裝 VPN 比裝一般 App 多一步的原因:用戶端要把一個系統層級元件註冊進系統,由使用者手動核准。早期方案用核心擴充功能(kext)實作,需要降低開機安全性才能載入,Apple 早已把這條路標為棄用,在 Apple silicon 上基本上不可行。現在正規用戶端走的是系統擴充功能加 NetworkExtension 框架,權限模型更窄,載入前必須經過簽章驗證。
在「系統設定 → 一般 → 登入項目與擴充功能 → 網路擴充功能」裡看到的項目,就是通道本體。它被關掉時,用戶端介面照樣能開啟、能點連線,但連線會立刻失敗或者一直轉圈,這是最常被誤判成「服務掛了」的一幕。
安裝後必須過的三道授權
首次安裝並啟動用戶端後,依序確認下面幾項。缺任何一項,後面都會以「連不上」的形式出現。
- ✅ 系統擴充功能核准:系統提示某個擴充功能「已封鎖載入」時,到「系統設定 → 隱私權與安全性」底部點「允許」,依提示輸入密碼或重新開機。
- ✅ 網路擴充功能開關:在「登入項目與擴充功能 → 網路擴充功能」裡勾選用戶端對應的項目;macOS 13 之前這個開關在「安全性與隱私權 → 一般」。
- ✅ 登入項目與背景執行:需要開機自動連線,就把用戶端加進「登入項目」,並允許它在背景保持執行。
- ✅ 首次連線時的網路設定授權:系統會彈一次授權框,點了拒絕,之後每次連線都會失敗。
- ❌ 不要關閉 SIP、不要降低開機安全性:正規用戶端不需要這兩步,遇到要求這麼做的用戶端應該直接放棄。
- ❌ 不要同時開兩個都接管全域流量的用戶端:路由表會互相覆蓋,表現為時通時斷、越排查越亂。
如果擴充功能清單裡出現同名但版本更舊的項目,先移除再重裝。殘留項目會佔住註冊位置,新版本裝上了也不會生效,而且錯誤訊息通常不會說明原因。
授權失敗的排查順序
點了「允許」還是連不上,依下面順序走,通常五分鐘內能定位到具體環節。
- 確認是否真的需要重新開機:部分系統版本要求重新開機後擴充功能才載入,提示框裡會寫明,別跳過。
- 開啟「登入項目與擴充功能 → 網路擴充功能」,看項目是勾選狀態還是灰色不可用。灰色通常意味著簽章驗證未通過或系統版本不支援。
- 檢查機器是否被描述檔或 MDM 管理:被管理的裝置,擴充功能白名單由管理方下發,個人無法自行核准。
- 暫時關閉第三方安全軟體與清理工具再試:它們會攔截系統層級元件的註冊流程。
- 徹底解除安裝後重裝:用用戶端自帶的解除安裝入口,或刪除 App 後一併清理其擴充功能項目,而不是把圖示拖進垃圾桶了事。
判斷順序:擴充功能未核准,用戶端能開但連不上;擴充功能已核准但網路擴充功能未勾選,連線秒斷;兩者都正常,問題就在線路、DNS 或分流規則上。
M 系列晶片的相容要點
換到 Apple silicon 之後,相容性問題基本上集中在下面四處,逐條對照即可。
原生 arm64 與 Rosetta 2
純 Intel 版本的用戶端靠 Rosetta 2 轉譯可以執行,但網路擴充功能屬於系統層級元件,在轉譯層下註冊與喚醒的行為都不夠穩定。優先選同時提供 arm64 與 x86_64 的通用版本;只提供 kext 的舊用戶端在 Apple silicon 上可以直接排除。
睡眠喚醒後的重連
闔蓋休眠會拆掉通道,好的用戶端在喚醒後自動重建。如果每次都要手動點一次連線,先看「登入項目」裡用戶端是否被允許背景執行,再看用戶端自身的「喚醒後自動連線」開關是否開啟。
能效與低耗電模式
加解密由 CPU 完成,長時間掛著通道對電池續航有明顯影響。開啟低耗電模式後系統會壓低背景活動,如果發現喚醒後重連變慢,可以先關掉它做對照,再判斷是不是用戶端本身的問題。
系統版本
網路擴充功能的授權介面在大版本之間挪過位置,舊系統對新版擴充功能 API 的支援也不完整。把系統保持在仍在安全更新期內的版本,能省掉一大半「莫名其妙連不上」的麻煩。
訂閱怎麼匯入 macOS 用戶端
macOS 用戶端大致兩類:廠商自研的原生 App,安裝後登入或貼上訂閱連結即可;以及設定檔驅動的通用用戶端,需要自己維護規則。兩類都支援訂閱連結,差別只在入口位置。
- 在使用者面板複製訂閱連結,整行複製,不要截斷,也不要轉發給他人,連結本身就是憑證。
- 在用戶端裡找到「新增訂閱」或「從連結匯入」,貼上後儲存並更新一次,讓節點清單重新整理出來。
- 選一條線路連線。首次連線會再彈一次網路設定授權,選擇允許。
- 驗證是否真的接管了流量,用下面三條指令對照。
ifconfig | grep -E "^utun"
scutil --dns | grep nameserver
route -n get default
判斷標準:出現新的 utun 介面;scutil --dns 輸出的第一個 resolver 指向通道內的位址;route -n get default 的 interface 是 utun 開頭。若使用分流模式,預設路由可能仍留在實體網卡上,這是正常的,此時要看的是目標網段有沒有被單獨路由進通道。
分流規則與 DNS 外洩
DNS 外洩指的是通道已經建好,網域名稱解析卻仍然走當地電信業者。查詢封包從實體網卡出去,結果既可能被污染,也會把存取意圖暴露給本地網路,還會讓「連上了但打不開」變成常態。驗證方法很簡單:scutil --dns 看第一個 resolver 的 nameserver 是不是通道內位址,或者用兩台裝置分別查一次出口與 DNS 歸屬做對照。
分流(規則模式)是 macOS 上更實用的預設:常用網站直連,其餘走通道,速度與相容性都更好。全域模式留給排障用,當你懷疑「是不是規則寫錯了」,切全域再試一次,能快速把問題歸因到規則還是線路。
無論哪種模式,私有網段都要放行直連:10.0.0.0/8、172.16.0.0/12、192.168.0.0/16。否則 AirDrop、區域網路印表機和 NAS 會一起失聯,很多人把它誤判成「VPN 把網卡搞壞了」。
與 Apple 服務共存的四個注意點
iCloud 私密轉送
私密轉送本身也走代理,和 VPN 同時開啟會爭搶代理設定,表現為部分網站能開、部分一直轉圈。兩者二選一,或在使用 VPN 時關掉私密轉送。
限制 IP 位址追蹤
Safari 的這項功能會改寫部分請求路徑。排查「只有瀏覽器打不開」的問題時,先關掉它做對照,再判斷是不是通道的 DNS 出了問題。
商店與媒體庫區域
App Store、Apple Music 的區域跟隨帳號,不跟隨出口 IP。換線路不會改變商店區域,也不會讓已購內容重新授權,這一點經常被誤解。
時間與憑證
系統時間偏差會導致 TLS 握手失敗,症狀是「顯示已連線,但所有網頁都打不開」。先確認「日期與時間」是自動同步,再去懷疑線路。
線路類型與使用情境對照
選線路之前先分情境。三類線路的差別不在「快不快」,而在路徑與壅塞。
| 線路類型 | 路徑特點 | 適合情境 | 需要注意 |
|---|---|---|---|
| 直連 | 入口與出口在同一地區,路徑最短 | 就近存取、輕量網頁與文件 | 跨境段品質取決於當地電信業者 |
| 中轉 | 先接入中轉節點,再出國際段 | 本地到出口鏈路品質差時的折衷方案 | 多一跳,延遲略高於專線 |
| IEPL 專線 | 獨立鏈路,不經過公共網際網路壅塞段 | 視訊會議、直播、晚間尖峰時段的長連線 | 成本高,通常只在高價值地區部署 |
再補一條經驗:視訊會議對封包遺失比對延遲更敏感,直播更怕抖動,大檔案下載只看頻寬。三類需求對應的線路選擇並不相同,不必用一條線路打天下。具體到地區與城市,可以在線路頁依情境篩選。
在 VPNAF 這邊怎麼選
VPNAF 覆蓋 90+ 國家、160+ 線路,macOS 用戶端走系統擴充功能,授權一次之後可以設為開機自動連線,之後只需要在需要時切換線路。
計費上,月訂閱分三種:¥9.9 含 60GB、¥18 含 250GB、¥28 含 500GB,流量依啟用日每月重置,中途升級按差價折算剩餘天數。流量包三種:¥158/300GB、¥358/1000GB、¥658/3000GB,用完為止,永久不過期。付款支援支付寶、微信與 USDT,續費和升級都在面板裡完成。
註冊只需要使用者名稱和密碼,無需電子郵件地址;同一帳號不限台數,Mac 與行動裝置可以同時上線。訂閱期內不滿意,60 天內可以無理由退款。方案級距與流量包的完整對照在方案頁。
常見問題速查
顯示已連線,但瀏覽器打不開網頁
依序查 DNS、系統時間、分流規則三項。三者都排除之後,再換一條線路做對照,基本就能確定問題出在通道還是線路。
每次開機都要手動連一次
把用戶端加入登入項目,並開啟「開機自動連線」。若仍不生效,檢查是否被低耗電模式或第三方清理工具限制了背景啟動。
系統大版本更新後連不上
更新會重置部分擴充功能授權。回到「登入項目與擴充功能」重新核准一次,通常就能恢復,不需要重裝用戶端。
Intel Mac 還能繼續用嗎
能。選仍在維護、提供通用二進位檔的用戶端即可;只提供核心擴充功能的舊版本不建議繼續使用,後續系統更新隨時可能徹底失效。
一句話結論:macOS 上的 VPN 連不上,先查權限,擴充功能是否被允許、網路擴充功能是否勾選;權限確認無誤,再去比線路與方案。