公共 Wi-Fi 與隱私
Mac 上沒有出現 Wi-Fi 登入頁面
公共網路通常會攔住所有流量,直到你在登入頁面上登入。macOS 會找到並打開這類頁面,但有時不會,這時就必須自己打開。
症狀
- Mac 已加入網路,但沒有出現登入視窗。
- 網頁無法載入,或顯示安全性警告。
- 連線原本正常,過一段時間後就停止了。
可能原因
- Mac 自動加入了網路。Mac 自動加入已知網路時,你可能會錯過登入視窗。
- VPN 或自訂 DNS。VPN 或其他 DNS 伺服器可能讓網路無法把你導向它的登入頁面。
- 工作階段已過期。Apple 表示,工作階段結束時,網路可能在 Safari 中顯示錯誤的頁面或安全性警告。
- 網路設定。Apple 要求網路業者以標準方式公告登入頁面,但並非所有網路都會這樣做。
如何檢查
按住 Option 鍵並按一下 Wi-Fi 圖像,確認你連上的是正確的網路。
顯示 Wi-Fi 服務的 DNS 伺服器。自訂的伺服器會顯示在這裡。
networksetup -getdnsservers Wi-Fi輸出
There aren't any DNS Servers set on Wi-Fi.表示 Mac 使用的是網路提供的 DNS。查看服務順序最上方是否有 VPN。
networksetup -listnetworkserviceorder
如何修正
在完成登入前先關閉 VPN。
在瀏覽器中打開使用 http 而不是 https 的網頁,例如 http://captive.apple.com。
如果網路仍然沒有將你重新導向,請暫時移除自訂 DNS。
sudo networksetup -setdnsservers Wi-Fi empty需要管理者密碼。
在登入頁面上登入。
如果你使用自訂 DNS,登入後再把 DNS 伺服器設定回去。
如果頁面仍然沒有出現,請從 Wi-Fi 選單中忘記這個網路,再重新加入。
使用 Kilobat
用 Kilobat 的診斷檢查是否有登入頁面。
kilobat diagnose --json輸出網路需要登入時,
measurements.captivePortal為true。Kilobat 的 Wi-Fi 選單會顯示「需要登入」,「健康狀態」標籤頁會顯示「打開網路登入頁面」。
如果你用 Kilobat 設定了 DNS,請先切回網路提供的 DNS 再登入。
kilobat dns automatic更改 DNS 需要管理者密碼。
常見問題
為什麼出現的是憑證警告,而不是登入頁面?
網路攔截了 https 網頁,改為顯示它自己的頁面。請改開 http 網頁。
在公共 Wi-Fi 上應該使用 VPN 嗎?
VPN 可以保護你的流量,但請在登入之後再開啟。
資料來源
- Apple Developer 新聞:How to modernize your captive network(2020年6月22日)
- Apple 支援:如果 Mac 無法透過 Wi-Fi 連上網際網路
- networksetup(8),macOS 27.2 內建的 man 頁面
資料來源檢查日期:2026年10月29日。man 頁面為 macOS 內建版本;在終端機中用 man <name> 開啟。