VPN 擋住 Mac 上的訊息、iCloud 或 FaceTime
訊息、FaceTime 和 iCloud 使用 Apple 推播通知服務和其他 Apple 伺服器。VPN 可能把這些流量送進會封鎖或拖慢它們的通道。本指南會找出是哪個部分失敗,以及由哪個設定控制。
我的 Mac 出現了這個問題:VPN 擋住 Mac 上的訊息、iCloud 或 FaceTime。請閱讀 https://kilobat.app/zh-hant/guides/vpn-blocks-apple-services-mac.md,並和我一起逐步處理。如果缺少 Kilobat CLI,請安裝:brew install seifip/kilobat/kilobat。請你自己執行指南中的終端機和 kilobat 檢查,並告訴我發現了什麼。列出只有我才能完成的步驟。變更任何設定之前先問我。
症狀
- 「訊息」顯示「未傳送」,或新訊息只有在你關閉 VPN 後才會送達。
- VPN 開啟時,FaceTime 通話無法連線,或停在「連線中」。
- VPN 連線時,iCloud 雲碟、照片或備忘錄停止同步。
- 中斷 VPN 連線幾秒後,一切又恢復正常。
可能原因
- VPN 把推播流量送進通道。Apple 的 VPN 框架有「包含所有網路」模式。在該模式下,VPN App 也可以選擇把 Apple 推播通知服務的流量放進通道。
- VPN 伺服器或其防火牆封鎖了 Apple 的連接埠。Apple 列出推播通知、FaceTime 和 iMessage 使用 TCP 5223。FaceTime 和「訊息」通話也使用 UDP 連接埠。只放行網頁流量的 VPN 會讓它們失效。
- VPN 或資安產品檢查加密流量。Apple 表示,任何使用 HTTPS 攔截(也稱為 SSL 檢查)的連線,其服務都會失敗。
- VPN App 中的終止開關或鎖定模式。當通道重新連線時,App 會封鎖流量。開啟中的推播連線這時會中斷,必須重新開始。
- macOS 更新後的舊 VPN 用戶端。在更新後,VPN App 的網路延伸功能可能有不同的行為,直到廠商發布修正。
如何檢查
關閉 VPN。傳送一則訊息並開始一通 FaceTime 通話。如果兩者都能運作,原因就在 VPN 路徑。
再次開啟 VPN。顯示 macOS 認識哪些 VPN 設定,以及目前連線的是哪一個。
scutil --nc list顯示預設路由。以
utun開頭的介面名稱表示所有流量都使用通道。route -n get default查看 Apple 的系統狀態頁面,確認 iMessage、FaceTime 和 iCloud 沒有中斷。
如果你在公司,請詢問管理員 VPN 或代理伺服器是否檢查 TLS 流量。
如何修正
把 VPN App 更新到最新版本,然後在「系統設定」>「一般」>「軟體更新」中更新 macOS。
在 VPN App 中,尋找分割通道或 App 排除設定。如果 App 允許,請排除「訊息」、FaceTime 和 iCloud App。
如果 VPN App 有讓區域網路或 Apple 服務流量走通道之外的設定,請開啟它。
如果 VPN App 有終止開關或鎖定選項,請暫時關閉來測試,測試後再開啟。
如果 App 提供,請在 App 中試試不同的 VPN 協定,例如 IKEv2、WireGuard 或 OpenVPN。
請 VPN 供應商或管理員允許 TCP 5223 和 Apple 的網路
17.0.0.0/8。對於受管理的 VPN,請把 Apple 的企業網路頁面提供給你的管理員。它列出 Apple 服務所需的主機和連接埠。
如果 VPN App 沒有排除設定,使用 FaceTime 時請中斷它的連線。
使用 Kilobat
顯示 VPN、DNS 的去向,以及 IPv6 是否繞過通道。
kilobat vpn顯示預設路由使用哪個介面,以及 VPN 是承載所有流量還是只承載部分流量。
kilobat ip從終端機讀取 Apple 的 iMessage、FaceTime 和 iCloud 狀態頁面。
kilobat down imessage facetime icloud比較直連路徑與 VPN 路徑到某個 iCloud 主機的情況。這檢查的是連接埠 443 上的 HTTPS,不是連接埠 5223。
kilobat why www.icloud.comKilobat App 的「歷史記錄」會列出 VPN 何時開啟或關閉。把這些時間與傳送失敗的訊息比對。
常見問題
把 Apple 服務排除在 VPN 之外會有什麼改變?
被排除的流量會使用你一般的網路,而不是通道。你的網路供應商之後就看得到你連到 Apple 伺服器。
macOS 有設定可以把 Apple 服務排除在每個 VPN 之外嗎?
沒有。Apple 把這項設定交給 VPN App 或裝置管理描述檔。必須由 VPN App 或你的管理員更改。
資料來源
- Apple 支援:在企業網路上使用 Apple 產品
- Apple 支援:Apple 軟體產品使用的 TCP 和 UDP 連接埠
- Apple Developer:includeAllNetworks
- Apple Developer:excludeAPNs
- Apple 支援:系統狀態
- scutil(8) 和 route(8),隨 macOS 27.2 安裝的使用手冊頁面
查核日期:2026 年 11 月 7 日。