跳至主要內容

Android 上的 Captive Portal 登入:Cisco Meraki、HPE Aruba 與 Ubiquiti UniFi 的部署檢查表

使用此檢查表,讓 Android 登入通知在 Cisco Meraki、HPE Aruba 和 Ubiquiti UniFi 上穩定顯示。您將規劃嚴格的 walled garden、在登入前封鎖流量、使用 HTTPS 保護登入頁面並保持 DNS 正常運作。您還將選擇工作階段逾時時間、決定 DHCP option 114,並追蹤每位訪客的症狀以進行修復。

作者:Tom Hackett發佈於
📖 14 分鐘閱讀789 字數2 範例12 關鍵定義

核心系列的一部分:Captive Portal 指南 →

Android 登入頁面無法顯示,可能是因為 Google 的連線檢查在登入前就已連上網際網路,或是其重導向遭到阻擋。請將探測主機排除在您的 walled garden 之外、僅允許公用頁面和登入網域、將 HTTP 探測重導向至 HTTPS 公用頁面,並在 Cisco Meraki、HPE Aruba 或 Ubiquiti UniFi 上設定工作階段逾時。

Android Captive Portal 登入實際上是如何運作的?

Captive Portal 是訪客在網路授予網際網路存取權限之前看到的公用網頁。它會呈現訪客在連線前需完成的登入選項。Purple 關於 Captive Portal 的支援文章說明了完整步驟。

每個主要的作業系統都包含一個 Captive Network Assistant (CNA)。CNA 是一個內建的微型瀏覽器,負責為訪客處理門戶頁面。在 Android 上,CNA 執行四項任務:

  1. 手機加入網路後,立即檢查網際網路連線能力。
  2. 告知拿著手機的使用者可能需要登入。
  3. 當他們點擊通知時,為公用網頁開啟瀏覽器工作階段。
  4. 登入成功後,確認線上狀態。

當其中任何一個步驟中斷時,訪客會看到一個已連線但無法使用的網路。他們通常會歸咎於您的 WiFi,而不是他們的手機。

連線檢查探測

當 Android 手機加入網路時,它會傳送一個純 HTTP 請求給 Google 代管的連線檢查端點。該端點通常會傳回一個空的 HTTP 204 回應。如果手機收到 204,它會認定網際網路可供存取,且不顯示登入提示。

在訪客網路上,您的控制器會在登入前攔截該請求,並改為傳回重導向至公用網頁的回應。手機會看到非預期的回覆,並判定其位於 Captive Portal 後方。整個偵測過程取決於探測被攔截,而不是被允許通過。

「登入 WiFi 網路」通知

探測失敗後,Android 會顯示一個通知,告知訪客他們可能需要登入。點擊該通知會啟動 CNA 瀏覽器工作階段。如果訪客將通知滑走,手機將保持連線但無法存取網際網路。針對這種情況,Purple 建議開啟瀏覽器並造訪 neverssl.com。這個第三方網站保持純 HTTP 連線,因此控制器可以重導向它而不會產生憑證錯誤。

Android 上的 Captive Portal 登入應用程式是什麼?

Captive Portal 登入應用程式就是 Android 的 CNA。它是一個精簡的瀏覽器,沒有雜亂的網址列或擴充功能。Purple 的支援文件將其描述為「空白畫布」,可讓 Captive Portal 重導向不受阻礙地完成。原生 Android 會在驗證成功後自動關閉視窗。部分手機製造商會更改該預設值,因此在這些手機上,訪客可能需要手動關閉視窗。在視窗的背後,有三個系統協同工作。控制器負責管理與 Purple 網頁伺服器的互動。該網頁會收集訪客的詳細資訊並核發單次登入。接著,控制器會將該登入資料傳送至 Purple 的 RADIUS 伺服器(即授予存取權限的驗證服務),以完成登入。

Captive Portal API 與 DHCP option 114

較新版本的 Android 系統也可以在不進行探測的情況下偵測到入口網站。網路會透過 RFC 8910 中定義的 DHCP option 114 播送 Captive Portal API 位址。DHCP 是分發 IP 位址的服務。手機會透過 HTTPS 查詢該 API,而 RFC 8908 中定義的判定回應則會說明裝置是否受到入口網站管制,以及該入口網站位於何處。這完全避免了重新導向的把戲。只有在該選項背後的 API 端點處於作用中狀態且經過正確憑證加密時,此功能才會運作。

在開始之前,您需要準備什麼?

在動手調整任何基地台之前,請先收集以下項目:

  • 系統管理員存取權限:至您的控制器或管理主控台,例如 Cisco Meraki Dashboard、HPE Aruba (Instant 或 Central,或 Mobility Controller) 或 UniFi Network 應用程式。
  • 一個開放的訪客 SSID。Purple 建議透過開放網路提供訪客 WiFi。開放網路目前已是標準慣例,且能減少訪客的使用阻礙。
  • 專屬的訪客 VLAN。VLAN 是一個邏輯網路區段。訪客流量絕不應該與員工或付款系統共用同一個區段,這能讓您符合 PCI-DSS 的規範範圍。
  • Purple 的圍牆花園 (Walled Garden) 清單與網頁 URL。請自 captive portal 支援文章 取得最新數值。請勿自舊部署中複製這些內容。
  • RADIUS 詳細資訊:用於 Purple 的驗證伺服器,請自您的 Purple 帳戶中取得。
  • 測試用手機。請使用至少三支來自不同製造商的 Android 手機,外加一支 iPhone 進行對照。

Purple 與硬體無關。它以雲端重疊網路 (overlay) 方式執行於 Cisco Meraki、HPE Aruba、Ruckus、Juniper Mist、Ubiquiti UniFi、Cambium、Extreme 與 Fortinet。您只需設定現有的控制器,無需進行汰換。

如何在 Meraki、Aruba 和 UniFi 上為 Android 設定 captive portal 登入?

請依序完成五個設定。每一個設定都對應到每個平台上的指定功能。如需確切的功能表路徑與目前數值,請參考 Purple 支援文章,而非本摘要。

步驟 1:建立嚴格的圍牆花園 (Walled Garden)

圍牆花園是訪客在登入前可以存取的網域清單。它必須包含 Purple 的網頁網域,以及您所提供的任何社群登入網域。它絕不能包含 Google 的連線檢查主機。

常見的錯誤是使用過於寬泛的萬用字元。為了支援 Google 登入而加入每一個 Google 網域,同時也會讓 Android 的偵測封包通過。手機收到其 204 回應後,會判定其已連線,因此絕不會顯示通知。請將社群媒體登入條目的範圍限制在供應商所允許的最窄範圍內。如果您需要同時使用 Google 登入和 Android 偵測,請在每一次變更圍牆花園設定後測試這兩者。

步驟 2:在登入前封鎖其他所有內容

控制器必須攔截來自未經驗證裝置的所有網路流量。任何保持開啟的通道都會為 Android 提供一條通往錯誤「已連線」結果的路徑。

在 Cisco Meraki 上,請將 Captive Portal 強度設定為在登入前封鎖所有存取。在 HPE Aruba 上,請確保預先驗證角色拒絕除圍牆花園和 DNS 以外的所有內容。在 Ubiquiti UniFi 上,請確認訪客網路在授權前限制所有存取(預先授權允許清單除外)。

步驟 3:重新導向 HTTP,並使用 HTTPS 保護登入頁面

控制器無法在不觸發憑證錯誤的情況下乾淨地攔截 HTTPS 流量。Android 的偵測使用明文 HTTP,控制器可以對其進行重新導向。請保留偵測的 HTTP 攔截設定。

訪客抵達的頁面則是另一回事。Purple 關於 Cisco WLC Captive Portal 憑證設定 的文章展示了當控制器重新導向到未受保護的 HTTP 登入位址時會發生什麼情況。瀏覽器會顯示類似「您的連線不是不公開的」警告,而訪客會認為該網路不安全。解決方法是在控制器上安裝受公開信任的 SSL/TLS 憑證。控制器的虛擬主機名稱必須與憑證的通用名稱(Common Name)相符。相同的原則也適用於代管自身登入頁面的 Aruba 控制器。

步驟 4:為未經驗證的裝置保持 DNS 正常運作

訪客在登入前必須解析 Splash Page 主機名稱。請在預先驗證策略中,允許標準 DNS 存取您選擇的解析程式。若沒有此設定,重新導向將指向手機無法查尋的名稱。

Android 的私有 DNS 設定增加了第二個考量因素,這將在下方的疑難排解章節中說明。

步驟 5:設定符合訪問時間的工作階段逾時

工作階段逾時決定了登入狀態在訪客必須再次登入前能維持多久。請將其與訪客停留的時間相匹配。咖啡廳可能會設定幾個小時。飯店則應涵蓋整個住宿期間。

步驟 6:決定 DHCP 選項 114

僅在有運作中且符合 RFC 8908 規範的 API 端點支持時,才宣告選項 114。指向一個無法正確回應之端點的值只會增加故障點,而無法解決問題。如果您不確定,請保持未設定狀態。Android 會退回使用連線偵測,而步驟 1 到 4 已經支援此功能。啟用前請先與 Purple 客服確認。

各項解決方案在您平台上的位置

解決方案 Cisco Meraki HPE Aruba Ubiquiti UniFi
允許登入前存取認證與登入網域 SSID 認證頁面設定中的 Walled Garden 範圍 Captive Portal 設定檔或預先授權角色中的 Walled Garden 白名單 訪客熱點上的預先授權允許清單
保持探測主機處於封鎖狀態 從 Walled Garden 範圍中移除寬鬆的 Google 萬用字元 從白名單中移除寬鬆的 Google 萬用字元 從允許清單中移除寬鬆的 Google 萬用字元
在登入前封鎖所有其他流量 Captive Portal 強度:在登入前封鎖所有存取 預先授權角色拒絕除 Walled Garden 和 DNS 以外的所有流量 授權前訪客網路限制
保護登入頁面安全 重新導向至 Purple 的 HTTPS 認證頁面 URL 控制器上公開受信任的憑證 重新導向至 Purple 的 HTTPS 認證頁面 URL
工作階段長度 認證頻率與 RADIUS 工作階段逾時 Captive Portal 或 RADIUS 設定檔中的工作階段逾時 熱點上的授權過期時間
DHCP 選項 114 MX 或上游 DHCP 伺服器上的自訂 DHCP 選項 控制器或上游伺服器上的 DHCP 範圍 UniFi 閘道網路上的自訂 DHCP 選項

如何檢查 Android 登入頁面是否正常運作?

每次測試請從乾淨的狀態開始。記住該網路或保持作用中工作階段的手機,會隱藏您試圖尋找的問題。

  1. 在每部測試手冊上清除網路記憶 (忘記網路),然後重新連接。
  2. 在加入後的幾秒鐘內留意通知。沒有通知意味著探測已連上網際網路或 DNS 失敗。
  3. 點擊通知並完成登入。 認證頁面應載入且不出現憑證警告。
  4. 確認視窗行為。 在原生 Android 上,它會自動關閉。在某些製造商的版本上,您需要手動關閉它,這是正常的預期行為。
  5. 瀏覽一般的 HTTPS 網站以確認完全存取權限。
  6. 在一部手機上將「私有 DNS」設定為「嚴格」並重複測試,以便您瞭解使用該設定的訪客會看到什麼。
  7. 檢查記錄檔。 確認 Purple 中的 RADIUS 接受 (Accept) 狀態,以及控制器上用戶端的已授權狀態。

請在至少三家不同製造商的 Android 手機上進行測試。iPhone 使用不同的探測主機和 CNA,這已在 Purple 的 iPhone captive portal 隨附指南中說明,但控制器端的原因是相同的。一次測試流程即可抓出兩個平台上的問題。

對於您的特定設置有任何疑問嗎?

我們的團隊與超過 80,000 個場域的場域營運商、IT 經理和網路工程師合作。立即預約 20 分鐘的通話,我們將向您展示其他與您相似的用戶是如何解決此問題的。

為什麼 Android 的 WiFi 網路登入通知沒有顯示,該如何解決?

大多數失敗都可以歸因於五個原因之一。請從訪客回報的症狀開始著手。

症狀 可能原因 解決方法
已連線、無通知、無網際網路 探測因寬鬆的 Walled Garden 項目而獲允許通過 從 Walled Garden 中移除 Google 萬用字元項目
出現通知,但認證頁面無法載入 登入前 DNS 被封鎖,或 Walled Garden 中缺少認證網域 允許預先授權 DNS;新增 Purple 的認證網域
憑證或「非私人連線」警告 控制器登入頁面透過 HTTP 傳輸,或使用不受信任的憑證 安裝與主機名稱相符的公開受信任憑證
登入成功,但視窗仍保持開啟 製造商更改了 CNA 預設值 手動關閉視窗;無需變更網路設定
訪客每次造訪都必須重新登入 新的隨機化 MAC 位址或工作階段逾時時間過短 延長逾時時間;說明隨機化 MAC 設定
訪客忽略了通知 沒有提示可供備用 開啟瀏覽器並造訪 neverssl.com

私有 DNS 會破壞 Captive Portal 嗎?

的確有可能。Android 的私有 DNS 設定會使用 DNS over TLS 加密 DNS 查詢。它有兩種活動模式,在訪客網路上的行為各不相同。

在「自動」模式下,若網路支援,Android 就會使用加密 DNS,若不支援,則會退回使用網路本身的 DNS。Captive Portal 此時能正常載入。

在「嚴格」模式下,訪客會指定特定的 DNS 提供者主機名稱。在登入之前,該提供者是無法連線的,因為您的預先驗證策略封鎖了它。手機可能因此無法解析 Splash Page,且 Android 可能會發出無法存取私有 DNS 伺服器的警告。

您無法合理地將所有公開的加密 DNS 提供者都加入您的圍牆花園(Walled Garden)中。實際的解決方法是提供訪客端指引。在您的告示牌或說明頁面中加入一行說明:請將私有 DNS 切換為「自動」,登入後,再切換回原設定。

為什麼 Android 手機每次造訪都必須重新登入?

Android 預設對每個網路使用隨機化 MAC 位址。MAC 位址是您的控制器用來辨識裝置的硬體識別碼。隨機化的位址通常在同一個 SSID 下會保持穩定。但如果訪客清除該網路、重設網路設定或變更隱私設定,它就會改變。對您的控制器而言,該手機就成了一台全新的裝置。

第二個原因則是您自己的工作階段逾時設定。不論 MAC 位址有多穩定,過短的逾時時間都會在工作階段過期時強制進行全新登入。在判定是手機的問題之前,請先檢視這兩項因素。對於重視回訪客的場所,OpenRoaming 提供了無須 Splash Page 的自動、安全重新連線。這非常適合交通樞紐和多據點物業。

實戰情境 1:擁有 200 間客房且提供 Google 登入的飯店

說明性情境,數據僅供示意。

狀況。 一家擁有 200 間客房的城市飯店在它的 Splash Page 中加入了 Google 登入功能。在一週內,前台接待人員接連收到 Android 訪客的重複投訴。手機顯示訊號滿格但無法載入任何網頁,且未出現登入提示。iPhone 訪客回報的問題則少得多。 採取的行動。 網路團隊審查了 Meraki 的 Walled Garden。一名承包商新增了覆蓋所有 Google 網域的廣泛萬用字元,以支援新的登入選項。該項目讓 Android 的連線探測得以通過。該團隊將該萬用字元替換為 Purple 支援文章中列出的較窄範圍項目。隨後,他們在三家製造商的手機上重新進行了測試。

結果。 每一支測試手機在首次連線時都顯示了登入通知。在接下來的兩週內,前台沒有再收到任何關於 Android WiFi 的投訴。該飯店還延長了工作階段逾時時間,以覆蓋典型的三晚住宿。這免除了回訪房客每天重新登入的麻煩。了解 Purple 如何支援 旅宿業 場所。

實際案例 2:使用 UniFi 的議會圖書館網路

說明性案例,數據僅供參考。

情況。 某議會在 12 家分支圖書館透過 Ubiquiti UniFi 運作訪客 WiFi。使用較新 Android 手機的訪客反映出現「無法存取私有 DNS 伺服器」的警告,且入口網頁(Splash Page)一直無法載入。分支機構的員工花費了大量時間向訪客解釋他們不理解的設定。

採取的行動。 IT 團隊確認了在授權前已允許 DNS,因此標準查詢運作正常。受影響的手機都將私有 DNS 設定為嚴格(Strict)模式並指定了提供商。該團隊在入口網頁的說明文字和分支機構的海報上新增了簡短的說明。它指導訪客將私有 DNS 切換為自動(Automatic),登入後再切換回原設定。他們也保持 DHCP Option 114 為未設定狀態,因為當時尚未部署相容的 API 端點。

結果。 分支機構員工回報,大多數受影響的訪客現在都能根據海報說明自行完成登入。向中央 IT 服務台提出的圖書館 WiFi 支援請求減少到每月僅剩零星幾件。公共部門場所與 交通運輸 和 醫療保健 場所具有許多相同的模式。

這需要多少成本,又能獲得什麼回報?

大多數 Android Captive Portal 的修復需要花費的是員工時間,而非硬體。Walled Garden 項目、Captive Portal 強度、工作階段逾時和 DNS 規則,都只是您現有控制器上的組態變更。主要的直接成本是公開受信任的憑證(如果您的控制器自行託管其登入頁面)。

Purple 訪客 WiFi 提供三種方案:Connect、Capture 和 Engage。定價取決於場所數量和方案,因此請向 Purple 索取針對您資產的報價。

回報則是每一位選擇登入而非放棄的 Android 訪客。每次完成登入都代表一位連線的房客,而在 Capture 和 Engage 方案中,這也是透過有意識選擇同意所收集到的第一方數據。這些數據會餵送至您已在使用的 WiFi 分析、CRM 和行銷平台。Purple 自身的數據顯示,2024 年在 80,000 多個實體場所中共有 4.4 億次登入。在此規模下,單一訪客 SSID 上的偵測故障,都是可衡量的連線訪客流失。這裡還能幫您省下隱形成本。當賓客看到憑證警告或斷線畫面時,他們會對您的場所留下不好印象,而不是怪罪自己的手機。對於 零售 和餐旅品牌而言,第一印象在踏入大門的那刻就決定了。

如果員工也需要與賓客一起存取網路,請讓他們在獨立的 SSID 上運行,並使用以身分識別為基礎的驗證。Purple 的部落格文章 如何啟用單一登入 涵蓋了連接 Microsoft Entra ID、Okta 和 Google Workspace 的方法。

常見問題

Purple 賓客 WiFi 是否支援我現有的 Cisco Meraki、HPE Aruba 或 Ubiquiti UniFi 基地台?

支援。Purple 與硬體無關,可在 Cisco Meraki、HPE Aruba、Ruckus、Juniper Mist、Ubiquiti UniFi、Cambium、Extreme 和 Fortinet 上作為雲端重疊運行。您可以保留現有的基地台和控制器。只需將賓客 SSID 的 Captive Portal 指向 Purple 的快顯視窗頁面,從 Purple 的支援文章中新增圍牆花園(Walled Garden)項目,並將驗證設定為 Purple 的 RADIUS 伺服器即可。無需拆除重建現有設備。

Android 的私有 DNS 會破壞 Captive Portal 嗎?

在「嚴格」模式下有可能。在「自動」模式下,Android 會自動降級使用網路自身的 DNS,這樣入口網站便能正常載入。在指定提供者主機名稱的「嚴格」模式下,手機可能在登入前無法解析快顯視窗頁面,因為在賓客通過驗證之前,該提供者是無法連線的。最快的解決方法是讓賓客切換到「自動」模式,登入後再切換回去。您可以在指示牌上加上這項說明。

為什麼 Android 賓客每次造訪都必須重新登入?

這通常是因為手機呈現了新的隨機 MAC 位址,或是工作階段已過期。Android 會針對每個網路將 MAC 位址隨機化,而遺忘網路或重設設定都會產生新的 MAC 位址。您的工作階段逾時設定也決定了登入狀態能維持多久。建議將其設定為符合造訪模式的時間,例如設定為整個飯店住宿期間,而不是喝一杯咖啡的時間。OpenRoaming 能為回訪旅客提供自動重新連線的功能。

我的 Captive Portal 需要 SSL 憑證嗎?

需要,任何由您控制器自行代管的登入頁面都需要。現代瀏覽器預期登入頁面會使用 HTTPS,並在遇到未加密的 HTTP 連結時發出警告,這會使安全的網路看起來不安全。Purple 對於 Cisco 控制器的指引是使用受公開信任的憑證,且虛擬主機名稱需與憑證的通用名稱(Common Name)相符。Android 的探測仍然使用 HTTP,因此攔截功能仍可繼續運作。

我的賓客 WiFi 網路應該是開放式還是受密碼保護的?

建議使用具有 Captive Portal 的開放式網路。Purple 建議透過開放式網路提供賓客 WiFi,因為這已是目前的標準做法,且能減少訪客的摩擦阻力。Android 和 iPhone 都會偵測開放式 SSID 上的 Captive Portal,並提示賓客登入。請將賓客流量保持在獨立的 VLAN 上。員工或常駐人員的存取請在獨立的 SSID 上運行,並使用以身分識別為基礎的驗證。

透過 Captive Portal 收集的資料是否符合 GDPR 規範?

是的。Purple 已通過 GDPR、CCPA、ISO 27001 以及 Cyber Essentials 認證。歡迎頁面採用自願選擇同意機制,因此每位訪客都可以自行決定要分享哪些內容以及是否接收行銷資訊。您所收集的數據為第一方數據,是在登入時經同意後收集的。與您控制的任何個人數據一樣,您仍可設定自己的隱私聲明和保留政策。

解決 Android captive portal 問題需要多長時間?

大多數修復方法都只是對訪客 SSID 進行單一配置變更,然後進行測試。Walled garden 編輯、captive portal 強度、DNS 規則和工作階段逾時皆不需要新的硬體。請將大部分時間預算分配給在全新狀態下對至少三個製造商的 Android 手機進行測試。某些品牌會改變登入視窗的運作方式,而您會希望在訪客發現之前找出這個問題。

Android 的修復方法與 iPhone captive portal 的修復方法不同嗎?

部分不同。這兩個平台在控制器端的起因都是相同的:walled garden 範圍、被封鎖的 DNS、HTTP 重新導向和工作階段逾時。差異在於裝置本身。Android 探測的是 Google 託管的端點,而 iPhone 探測的是 Apple 的端點。Android 還增加了私有 DNS 行為以及製造商對登入視窗的變更。Purple 的 companion iPhone captive portal 指南詳細介紹了 Apple 端的相關內容。

關鍵定義

Captive Portal

一個快顯網頁,用於攔截來自未驗證裝置的網路流量,並將其保留至訪客登入為止。IETF 在 RFC 8952 中描述了 captive portal 的架構和訊號傳送,並在 RFC 8908 中定義了 Captive Portal API。

在 Meraki、Aruba 或 UniFi 上設定訪客 SSID 的快顯登入頁面設定時,您會遇到此功能。此檢查表中的每項修復都是為了讓 Android 偵測並開啟它。

Captive Network Assistant (CNA)

作業系統內建的微型瀏覽器,用於偵測 captive portal、通知訪客並開啟快顯登入頁面。在 Android 上,它是 captive portal 登入應用程式,原生 Android 在驗證成功後會自動關閉該程式。

您的測試會檢查其行為。某些手機製造商更改了預設的自動關閉設定,因此視窗保持開啟是預期行為,而非網路故障。

連線檢查探測 (Connectivity check probe)

Android 在加入網路時向 Google 託管的端點發送的純 HTTP 請求。HTTP 204 No Content 回應 (RFC 9110) 表示已連線;任何其他回覆(例如重新導向)則表示存在 captive portal。

偵測取決於您的控制器是否攔截此探測。如果 walled garden 項目允許其通過,手機就會收到其 204 回應,且絕不會顯示登入通知。

Walled garden

裝置在登入前可以存取的網域或範圍之預先驗證允許清單。在 Meraki 上稱為 walled garden 範圍,在 Aruba 的 captive portal 設定檔或預先驗證角色中稱為白名單,在 UniFi 上則稱為預先授權允許清單。

它必須包含 Purple 的快顯登入網域和社群登入網域,但不能包含探測主機。在此處設定寬泛的 Google 萬用字元是導致 Android 提示缺失最常見的原因。

DHCP option 114

RFC 8910 中定義的一項 DHCP 選項,在分配位址期間向用戶端宣告 Captive Portal API 的 URI,讓用戶端無需探測即可得知入口網站的資訊。

您可以在閘道器或上游伺服器上將其設定為自訂 DHCP 選項。僅在背後有運作正常且經過正確憑證驗證的端點時才進行宣告,否則會增加一個故障點。

Captive Portal API

RFC 8908 中規範的 HTTPS JSON 介面,可告知用戶端其是否處於受限狀態以及使用者入口網站的位置,用以取代傳統基於重新導向的偵測方法。

它是 DHCP option 114 所指向的端點。如果您無法確認該端點符合 RFC 8908 規範,請不要設定該選項並依賴探測機制。

RADIUS

遠端用戶撥入驗證服務(Remote Authentication Dial In User Service),為 RFC 2865 中規範的驗證、授權和計費協定。控制器會將憑證傳送到 RADIUS 伺服器,後者則會傳回 Access-Accept 或 Access-Reject。

您的控制器會將來自 Purple 的 splash page 的一次性登入資訊傳遞給 Purple 的 RADIUS 伺服器。您可以在測試期間於 Purple 的記錄中確認 RADIUS 接受(accept)狀態,並在 RADIUS 設定檔中設定工作階段逾時。

私有 DNS (DNS over TLS)

Android 中使用 DNS over TLS 加密 DNS 查詢的設定,規範於 RFC 7858。「自動」模式會降級使用網路的 DNS;「嚴格」模式則僅使用指定的提供者主機名稱。

在「嚴格(Strict)」模式下,指定的提供者在登入前是無法連線的,因此 splash page 可能會無法解析。您應透過訪客端的指示指引來處理此問題,而不是透過 walled garden 項目。

VLAN

虛擬區域網路(virtual LAN),由 IEEE 802.1Q 框架標記定義的邏輯網路區段,用於在共享的交換機基礎架構上隔離流量。

您將訪客流量放置在專屬的 VLAN 中,與員工及付款系統隔離,以符合 PCI-DSS 的範圍規範。

隨機 MAC 位址

Android 為每個網路產生的本地管理硬體位址,用以取代裝置的出廠 MAC,從而限制追蹤。在訪客清除該網路、重設設定或變更隱私設定之前,它在特定的 SSID 下會保持穩定。

對您的控制器而言,一個新的隨機位址看起來就像是一台全新的裝置,因而會強制進行重新登入。在怪罪手機之前,請先將此因素與您的工作階段逾時設定一起檢查。

OpenRoaming

由無線寬頻聯盟(Wireless Broadband Alliance)建立在 Passpoint (Hotspot 2.0) 之上的聯盟。Passpoint 是 Wi-Fi Alliance 基於 IEEE 802.11u 的規範,可讓裝置自動且安全地加入參與的網路,無需透過 splash page。

您可以在交通樞紐和多據點場域中考慮使用此功能,因為在這些場景中,回訪旅客的體驗非常重要,而重複的 captive portal 登入會造成不便。

公開信任的 SSL/TLS 憑證

由憑證授權單位發行且瀏覽器預設信任的 X.509 憑證,用於確保登入頁面透過 HTTPS 進行安全連線。控制器的虛擬主機名稱必須與憑證的通用名稱(Common Name)相符。

只要您的控制器(例如 Cisco WLC 或 Aruba 控制器)代管了自己的登入頁面,您就需要此憑證。如果沒有,訪客將會看到「連線不安全」的警告。

範例

一家擁有 200 間客房的指標性城市飯店在 Meraki 快顯登入頁面中加入了 Google 登入功能。在一週內,使用 Android 的訪客反映訊號滿格但無法載入任何網頁,且未出現登入提示,而使用 iPhone 的訪客回報的問題則少得多。這是哪裡出了問題,又是如何修復的?

網路團隊審查了 Meraki 的 walled garden,發現一名承包商加入了一個涵蓋所有 Google 網域的寬泛萬用字元。該項目讓 Android 的連線探測(connectivity probe)到達了網際網路,因此手機接收到了 204 回應,從不顯示通知。該團隊將該萬用字元替換為 Purple 支援文章中列出的較窄項目,然後在來自三家製造商的手機上進行了重新測試。每支手機在首次連線時都顯示了登入通知,且櫃檯在兩週內沒有再收到任何 Android WiFi 的投訴。該飯店還延長了其工作階段逾時時間,以覆蓋典型的三晚住宿,從而為返回的訪客省去了每日重新登入的麻煩。這些數據僅供說明之用。

一個指標性的地方議會在 12 個圖書館分館使用 Ubiquiti UniFi 運營訪客 WiFi。使用較新 Android 手機的訪客會看到 "無法存取私有 DNS 伺服器" 的警告,且快顯登入頁面永遠無法載入。IT 團隊應該如何應對?

該團隊首先確認了在授權前已允許 DNS,因此標準查詢運作正常。每支受影響的手機都將私有 DNS 設定為 "嚴格" 並指定了提供者,這在登入前是無法連線的。將每個公開的加密 DNS 提供者都加入 walled garden 並不切實際,因此團隊選擇了訪客端的指引。他們在快顯登入頁面的說明文字和分館海報上增加了一項說明:將私有 DNS 切換為 "自動",登入,然後再切換回來。由於不存在符合規範的 API 端點,他們將 DHCP option 114 保持未設定狀態。大多數受影響的訪客隨後在沒有協助的情況下完成了登入,而向中央 IT 提交的支援請求減少到每月僅剩幾件。這些數據僅供說明之用。

常見問題

Purple 訪客 WiFi 是否支援我已擁有的 Cisco Meraki、HPE Aruba 或 Ubiquiti UniFi 存取點?

是的。Purple 與硬體無關,可作為雲端重疊層運行在 Cisco Meraki、HPE Aruba、Ruckus、Juniper Mist、Ubiquiti UniFi、Cambium、Extreme Networks 和 Fortinet 上。您可保留現有的存取點和控制器。只需將訪客 SSID 的 Captive Portal 指向 Purple 的 Splash Page,並新增 Purple 支援文章中的 walled garden 項目,然後設定 Purple 的 RADIUS 伺服器進行驗證即可。無需進行設備拆換。

Android 私人 DNS 是否會破壞 Captive Portal?

在「嚴格」模式下可能會。在「自動」模式下,Android 會退回到網路自身的 DNS,入口網站便能正常載入。在指定提供者主機名稱的「嚴格」模式下,手機在登入前可能無法解析 Splash Page,因為在訪客通過驗證之前,該提供者是無法連線的。最快的解決方法是讓訪客切換到「自動」模式、登入,然後再切換回去。建議將此說明標示在您的告示牌上。

為什麼 Android 訪客每次造訪時都需要重新登入?

通常是因為手機呈現了新的隨機 MAC 位址,或是工作階段已過期。Android 會針對每個網路隨機化 MAC 位址,而清除網路或重設設定都會產生新的 MAC 位址。您的工作階段逾時也決定了登入狀態的持續時間。請將其設定為符合訪客的造訪模式,例如完整飯店住宿期間,而非僅一杯咖啡的時間。OpenRoaming 可為再次造訪的訪客提供自動重新連線。

我的 Captive Portal 需要 SSL 憑證嗎?

是的,任何由您控制器自行託管的登入頁面都需要。現代瀏覽器預期登入頁面使用 HTTPS,並在遇到未加密的 HTTP 連結時發出警告,這會使安全的網路看起來不安全。Purple 對 Cisco 控制器的建議是使用公開受信任的憑證,且虛擬主機名稱需與憑證的 Common Name 相符。Android 的探測仍會使用 HTTP,因此攔截功能仍可正常運作。

我的訪客 WiFi 網路應該是開放的還是有密碼保護的?

開放,並搭配 Captive Portal。Purple 建議透過開放網路提供訪客 WiFi,因為這已是目前的標準做法,且能減少訪客的阻礙。Android 和 iPhone 都會在開放的 SSID 上偵測到 Captive Portal 並提示訪客登入。請將訪客流量保持在獨立的 VLAN 上。將員工或住戶的存取放在另一個使用身分驗證的獨立 SSID 上。

透過 Captive Portal 收集的數據是否符合 GDPR 規範?

是的。Purple 通過 GDPR、CCPA、ISO 27001 和 Cyber Essentials 認證。Splash Page 使用自願選擇同意機制,因此每位訪客可自行決定分享哪些資訊以及是否接收行銷訊息。您收集的數據是第一方數據,是在登入時徵得同意後收集的。您仍需像管理任何您控制的個人數據一樣,設定您自己的隱私權聲明和保留政策。

解決 Android Captive Portal 問題需要多少時間?

大多數的修正都只是對訪客 SSID 進行單一設定變更,然後進行測試。變更 walled garden、Captive Portal 強度、DNS 規則和工作階段逾時皆不需要新硬體。請將大部分時間預留給在乾淨狀態下測試至少三家製造商的 Android 手機。有些品牌會改變登入視窗的行為,您會希望在您的訪客發現之前先找出問題。

Android 的修正程式與 iPhone captive portal 的修正程式不同嗎?

部分相同。兩個平台在控制器端的起因是相同的:walled garden 範圍、遭封鎖的 DNS、HTTP 重新導向和工作階段逾時。差異在於裝置本身。Android 探測的是 Google 託管的端點,而 iPhone 探測的是 Apple 的端點。Android 還加入了私人 DNS 行為以及製造商對登入視窗的自訂變更。Purple 隨附的 iPhone Captive Portal 指南詳細介紹了 Apple 端的操作。

繼續閱讀本系列

Cisco Meraki Captive Portal 疑難排解:Splash 頁面、Walled Garden 與 RADIUS 檢查清單

使用此檢查清單來找出阻礙您 Cisco Meraki Captive Portal 正常運作的四種常見故障:Splash 頁面類型、Walled Garden、授權 URL (Grant URL) 銜接或 RADIUS 連線能力。您將能夠解讀 Meraki 事件記錄、將症狀與其原因進行比對,並在不重複設定 SSID 的情況下套用正確的修正程式。

閱讀指南 →

疑難排解 Captive Portal 重新導向:解決訪客 WiFi 連線失敗問題

當訪客連線到您的 WiFi 但無法存取網際網路時,原因幾乎總是配置錯誤的 captive portal 重新導向,而不是硬體故障。本指南為 IT 經理、網路架構師和 CTO 提供深入的技術參考,以診斷並解決整個失敗鏈:從作業系統級別的連線探測和 HSTS 憑證衝突,到 RADIUS 授權缺口和 DHCP 耗盡。它將每種失敗模式對應到具體的修正方案,並展示 Purple 的硬體無關雲端覆蓋如何消除跨 Cisco Meraki、HPE Aruba、Ruckus、Juniper Mist、Ubiquiti UniFi、Cambium、Extreme Networks 和 Fortinet 部署中的這些問題。

閱讀指南 →

疑難排解公共 WiFi:「已連線,無網際網路」與 Splash Page 重新導向失敗的修復指南

本權威技術參考指南說明了 Captive Portal 偵測的底層運作機制,並詳細剖析阻止訪客 WiFi 連線的六大主要失敗模式。它為 IT 主管和網路架構師提供了實用的疑難排解框架,用以解決 HTTP 重新導向問題、DNS 衝突以及 MAC 隨機化所帶來的挑戰。

閱讀指南 →

對於您的特定設置有任何疑問嗎?

我們的團隊與超過 80,000 個場域的場域營運商、IT 經理和網路工程師合作。立即預約 20 分鐘的通話,我們將向您展示其他與您相似的用戶是如何解決此問題的。