跳至主要內容

故障排除 Captive Portal 重新導向:解決訪客 WiFi 連線失敗問題

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

📖 9 分鐘閱讀📝 2,237 字數🔧 2 範例3 練習題📚 9 關鍵定義

收聽此指南

查看播客逐字稿
主持人(英國英語,自信的顧問口氣): 歡迎來到 Purple 技術簡報。今天我們要解決企業網路中最令人頭痛的頑疾之一:Captive Portal 重新導向失敗。當您的訪客 WiFi 顯示已連線但無法存取網際網路時,訪客會感到沮喪,您的服務台會被詢問淹沒,而您的資料收集策略也會陷入停頓。在本次簡報中,我們將剖析 Captive Portal 的技術架構,探討為什麼現代作業系統和瀏覽器經常封鎖它們,並為您提供具體的實作策略,以永久解決這些問題。 [暫停] 讓我們設想一下場景。您已在一百個零售據點部署了 Cisco Meraki 或 HPE Aruba 存取點。硬體非常穩固。但訪客抱怨無法存取網際網路。他們選取了 SSID,裝置顯示了 WiFi 圖示,但登入頁面卻從未出現。或者更糟的是,他們看到了可怕的 SSL 憑證錯誤。 為什麼會這樣?這要歸結於作業系統如何偵測網際網路連線。當裝置連線到網路時,它會向已知 URL 發送 HTTP 探測。對於 iOS,它是 captive.apple.com。對於 Android,它是 connectivitycheck.gstatic.com。Windows 則使用 msftconnecttest.com。如果裝置收到標準的 HTTP 200 OK 回應,它會假定自己已直接存取網際網路。如果網路閘道攔截了該請求,並以 HTTP 302 重新導向至另一個 URL 回應,作業系統就知道自己處於 Captive Portal 之後。然後它會開啟一個虛擬瀏覽器來載入登入頁面。 失敗通常發生在該攔截點。 [暫停] 第一個主要的失敗點是網路連線狀態指標探測(Network Connectivity Status Indicator, 簡稱 NCSI)。如果您的防火牆或閘道封鎖了這些未加密的 HTTP 請求,作業系統就永遠不會收到 302 重新導向。它只會假定網路已損壞。要解決此問題,您必須確保預先驗證存取控制清單允許 HTTP 流量流向那些特定的 OS 偵測 URL。 第二個且日益常見的問題是 HTTP 嚴格傳輸安全(HTTP Strict Transport Security, 簡稱 HSTS)。現代瀏覽器對主要網域強制執行 HTTPS。如果使用者連線到您的 WiFi 並立即嘗試開啟 google.com,其瀏覽器會堅持使用加密連線。當您的閘道攔截該 HTTPS 請求並嘗試將其重新導向至 Captive Portal 時,瀏覽器會偵測到中間人攻擊。您閘道提供的憑證與 google.com 不相符。結果就是被強制封鎖。使用者會看到安全性警告,且無法繼續前往登入頁面。 這裡的解決方案有兩個方面。首先,依賴我們剛才討論的 OS 層級偵測機制。它們專門使用未加密的 HTTP 來避免這種憑證不相符的情況。其次,確保您的 Walled Garden(圍牆花園)配置無懈可擊。 什麼是 walled garden?它是顧客在進行身分驗證之前可以存取的網域和 IP 位址清單。如果您使用 Microsoft Entra ID 或 Google Workspace 進行社群登入,或是透過 Stripe 處理付款,這些網域就必須包含在您的 walled garden 中。如果沒有包含,系統雖然可能會載入 splash page,但驗證程序將會無聲無息地失敗。 [PAUSE] 讓我們來看一個真實世界的案例。麥當勞在數千個據點為數百萬名顧客提供服務。他們使用 Purple 來管理其顧客 WiFi。如果他們的工作階段逾時時間設定得太短,顧客在享用長時間午餐並查看手機時,可能會被迫重新驗證多次,這會破壞使用體驗。我們建議針對餐飲旅宿和零售環境,將工作階段持續時間設定為 24 小時,並使用 MAC 位址快取來無縫識別返回的裝置。 [PAUSE] 接下來是實作建議。在部署 Captive Portal 時,您必須設定您的閘道以正確攔截 DNS 和 HTTP 流量。如果您使用像 Purple 這樣的雲端重疊網路 (cloud overlay),不論您的本機硬體是 Juniper Mist 還是 Ubiquiti UniFi,都必須能夠連線到 Purple RADIUS 伺服器。 這裡有一個關鍵的陷阱:DNS 解析。如果顧客裝置無法解析您 Captive Portal 的主機名稱,重新導向就會失敗。請確保您的 DHCP 伺服器發送可靠的 DNS 位址,並驗證您的閘道允許 DNS 查詢通過 walled garden。 此外,還要考慮實體環境。像體育場或交通樞紐(例如曼徹斯特機場集團)這樣的高密度場域,需要處理數千個並行連線嘗試。如果您的本機 DHCP 記憶池用盡,新裝置雖然會連線到存取點 (AP),但會無法取得 IP 位址,甚至根本無法進入 Captive Portal 階段。請務必針對尖峰容量適當調整子網路大小,並對暫時性訪客網路使用較短的 DHCP 租約時間。 [PAUSE] 現在進行基於常見技術支援工單的快速問答環節。 問題一:為什麼入口網站在 iPhone 上運作正常,但在 Android 裝置上卻失敗? 答案:這幾乎可以肯定是一個 walled garden 的問題。您可能已經將 captive.apple.com 加入白名單,但遺漏了 connectivitycheck.gstatic.com。請更新您的預先驗證存取控制清單。 問題二:顧客已成功驗證,但仍無法連線上網。為什麼? 答案:請檢查您的 RADIUS 設定。閘道可能沒有收到來自 RADIUS 伺服器的 Access-Accept 訊息,或者驗證後的防火牆規則阻擋了流量。請驗證共用金鑰並確保連接埠 1812 和 1813 已啟用。 問題三:我們可以使用 HTTPS 進行初始重新導向以避免安全性警告嗎? 答案:不行。在沒有造成憑證錯誤的情況下,您無法攔截 HTTPS 請求,除非您在每台顧客裝置上安裝根憑證,而這在公用 WiFi 上是不可能的。您必須依賴未加密的 HTTP 作業系統探測來觸發入口網站。 [PAUSE] 總結來說:Captive Portal 故障很少是硬體故障所致。它們幾乎總是重新導向流程、walled garden 或 DNS 設定中的配置不一致所引起的。 第一點:確保在進行驗證之前可以存取 OS 偵測 URL。 第二點:配置您的 walled garden,以包含所有必要的識別資訊提供者和內容傳遞網路。 第三點:驗證您的閘道器與驗證平台之間的 RADIUS 通訊。 第四點:針對尖峰密度規劃您的 DHCP 範圍大小。 透過掌握這些要素,您可以消除連線阻礙。您不再讓訪客感到挫折,並開始收集推動忠誠度和營收所需的第一方數據。Purple 的 Identity-Based Networks 簡化了此流程,提供一個與硬體無關的雲端重疊網路,在全球 80,000 個實體場域中無縫處理 RADIUS、captive portals 和分析的複雜性。 感謝您參與本次 Purple 技術簡報。如需更詳細的配置指南和架構圖,請造訪 purple.ai。

header_image.png

執行摘要

「訪客 WiFi 已連線但無網際網路」是企業網路中最常見的支援工單之一。這個症狀對每位訪客來說都清晰可見,但對大多數 IT 團隊而言,在了解重新導向鏈之前,其根本原因都是隱形的。Captive Portal(也稱為歡迎頁面或熱點閘道)會攔截裝置的初始 HTTP 連線探測,並向登入頁面發送 HTTP 302 重新導向。如果該鏈中的任何步驟中斷 - 封鎖的探測、HSTS 衝突、Walled Garden 缺口、RADIUS 失敗或 DHCP 耗盡 - 訪客就只會看到已連線的 WiFi 圖示,卻無法存取網際網路。本指南將帶您了解每種故障模式、底層協定機制,以及解決這些問題的設定變更。Purple 在 80,000 多個實體場域營運,每年處理 4.4 億次登入(Purple 內部數據,2024 年),此處描述的模式代表我們在旅宿業、零售業、大眾運輸和公共部門部署中看到最常見的根本原因。


技術深入剖析

Captive Portal 偵測的實際運作原理

每個主要作業系統都內建一種機制,用於在授予網際網路存取權限之前,偵測網路是否需要驗證。了解這些機制是解決所有 Captive Portal 問題的基礎。

當裝置與 SSID 關聯時,OS 會向預先定義的 URL 發送未加密的 HTTP GET 要求。下表列出了各平台的探測 URL。

作業系統 探測 URL 預期回應
iOS / macOS http://captive.apple.com/hotspot-detect.html 包含特定內文的 HTTP 200
Android (Google) http://connectivitycheck.gstatic.com/generate_204 HTTP 204 No Content
Windows (NCSI) http://www.msftconnecttest.com/connecttest.txt 包含內文「Microsoft Connect Test」的 HTTP 200
Chrome (所有平台) http://www.gstatic.com/generate_204 HTTP 204 No Content
Firefox http://detectportal.firefox.com/success.txt HTTP 200

如果閘道攔截了這些要求之一,並傳回指向 Captive Portal URL 的 HTTP 302 重新導向,OS 就會識別出其位於 Portal 後方,並開啟一個虛擬瀏覽器(輕量級 WebView)來顯示歡迎頁面。如果探測被完全封鎖,OS 就會回報「無網際網路連線」,且永遠不會嘗試開啟 Portal。這是導致「訪客 WiFi 已連線但無網際網路」症狀最常見的單一原因。

redirect_flow_diagram.png

HSTS 問題

HTTP Strict Transport Security (HSTS) 是一種在 RFC 6797 中定義的網路安全政策。它指示瀏覽器拒絕所有指向某個網域的純 HTTP 連線,並拒絕任何未完全比對的憑證。包括 google.com、facebook.com 和大多數銀行網站在內的主要網域,都已列入 Chrome、Firefox、Safari 和 Edge 內建的 HSTS 預載清單中。

當訪客開啟瀏覽器並輸入 google.com 時,瀏覽器會在要求離開裝置之前將其升級為 HTTPS。閘道無法攔截 HTTPS 要求並進行乾淨的重新導向 - 它必須出示 google.com 的憑證,但它並未持有該憑證。瀏覽器會偵測到憑證不符並顯示嚴重的安全警告。訪客將無法進入登入頁面。

正確的架構完全依賴上述的作業系統級別 HTTP 探測。這些探測針對非 HSTS URL 使用純 HTTP,目的就是為了讓閘道能夠攔截並重新導向它們,而不會產生憑證衝突。您的閘道必須攔截這些 HTTP 探測並發出 302 重新導向。請勿嘗試為了 Captive Portal 的目的而攔截 HTTPS 流量。

圍牆花園 (Walled garden)

圍牆花園是裝置在通過驗證之前可以存取的網域和 IP 位址集合。如果圍牆花園範圍太窄,歡迎頁面可能會載入,但驗證會失敗。常見的遺漏包括:

  • 身分識別提供者網域:如果您使用 Microsoft Entra ID、Okta 或 Google Workspace 進行社群或 SSO 登入,其驗證端點必須包含在圍牆花園中。
  • CDN 和資產網域:您的歡迎頁面可能會從內容傳遞網路載入 CSS、JavaScript 或字型。如果這些 CDN 網域被封鎖,頁面渲染將會損壞。
  • 金流處理商網域:如果您透過 Stripe 或其他處理商收取存取費用,其 JavaScript SDK 網域必須預先通過驗證。
  • Purple 平台網域:Purple 的雲端重疊網路需要閘道才能連線至 Purple 的 RADIUS 伺服器和入口網站端點。這些內容已記錄在適用於各支援平台的 Purple 硬體整合指南中。

RADIUS 與授權空窗期

RADIUS (Remote Authentication Dial-In User Service) 是將本機閘道連線至驗證平台的協定。當訪客完成登入表單時,Captive Portal 會將憑證傳送至 RADIUS 伺服器。RADIUS 伺服器會傳回 Access-Accept 或 Access-Reject 訊息。閘道會根據該訊息開啟或保持關閉授與網際網路存取權限的防火牆規則。

授權空窗期 - 即訪客在歡迎頁面上成功登入但仍無法上網 - 幾乎總是意味著閘道未收到或未處理 Access-Accept 訊息。常見原因包括共用金鑰不相符、本機防火牆封鎖了 UDP 連接埠 1812 和 1813,或是閘道上的 RADIUS 伺服器 IP 位址設定錯誤。

高密度環境中的 DHCP 耗盡

在體育場、會議中心和交通樞紐中,DHCP 耗盡是導致連線失敗的常見原因,其現象與 Captive Portal 問題完全相同。如果 DHCP 位址池已滿,新裝置雖然與存取點關聯,但永遠無法取得 IP 位址。沒有 IP 位址,裝置就無法傳送 HTTP 探測,也永遠無法進入 Captive Portal。裝置顯示為已連線到 SSID,但無法上網。

對於像曼徹斯特機場集團 (MAG) 這樣旅客流量會急劇達到尖峰的場地,子網路大小必須根據最大同時連線裝置數量來規劃,而不是平均值。較短的 DHCP 租期(針對臨時訪客網路設定為 15 - 30 分鐘)可以快速回收已離開裝置的位址。


實作指南

整合 Purple 的雲端重疊(cloud overlay)時,以下步驟適用於任何硬體平台 - Cisco Meraki、HPE Aruba、Ruckus、Juniper Mist、Ubiquiti UniFi、Cambium、Extreme Networks 或 Fortinet。

步驟 1:配置 SSID 以使用外部 Captive Portal。 在您的硬體控制器中,將訪客 SSID 設定為將未驗證的用戶端重新導向至 Purple 的外部入口網站 URL。停用控制器本身上的任何本機歡迎頁面。

步驟 2:定義 Walled Garden(圍牆花園)。 至少新增以下網域:Purple 的入口網站和 RADIUS 端點(請參閱您的硬體整合指南)、上述列出的作業系統偵測探測 URL、您的身分識別提供者網域(Microsoft Entra ID、Okta 或 Google Workspace),以及您的歡迎頁面資源使用的任何 CDN 網域。

步驟 3:配置 RADIUS。 輸入 Purple 的 RADIUS 伺服器 IP 位址、來自您 Purple 儀表板的共用金鑰,並將驗證連接埠設定為 1812,將記帳連接埠設定為 1813。驗證您的本機防火牆是否允許這些連接埠上的輸出 UDP。

步驟 4:設定工作階段參數。 對於餐旅和零售業,將工作階段持續時間設定為 24 小時,並啟用 MAC 位址快取。這可以防止訪客在單次造訪期間被迫重新驗證。對於高安全性環境,適合使用較短的工作階段和重新驗證。

步驟 5:規劃您的 DHCP 範圍大小。 計算您場地在尖峰容量時的最大同時連線裝置數量。一家擁有 500 個座位的餐廳在繁忙服務期間可能會出現 800 台裝置。將 DHCP 位址池大小設定為 1,000 個位址,租期為 30 分鐘。

步驟 6:跨作業系統測試。 設定完成後,在 iOS、Android 和 Windows 裝置上測試完整流程。每個系統都使用不同的探測 URL 和 WebView 實作。在一個平台失敗而其他平台正常工作時,幾乎都是因為 Walled Garden 漏掉設定。


最佳實踐

troubleshooting_checklist.png

以下建議反映了 Purple 在全球 80,000 多個場地部署中所累積的標準與模式。

區隔訪客與員工網路。 運行至少三個 SSID:Guest WiFiStaff WiFi 和一個 IoT 網路。訪客流量必須與內部系統隔離。有關架構詳細資訊,請參閱我們的指南 Three SSIDs to rule them all: guest, Passpoint, and IoT WiFi

使用專用的訪客 VLAN。 將訪客流量分割到專屬的 VLAN 中,以防止橫向移動並簡化防火牆策略。如果任何付款卡資料傳輸通過網路,這是 PCI-DSS 的要求。

實施有意識選擇的同意加入。 GDPR 要求在 Captive Portal 收集資料必須基於知情且肯定的同意。Purple 的「有意識選擇的同意加入」清楚呈現資料收集選項,每個目的都有獨立的勾選框。對於在英國或歐盟營運的場所,這並非可選項目。

主動監控 Portal 健康狀況。 Purple 的 WiFi Analytics 平台提供登入成功率、工作階段數和驗證失敗的即時可見性。成功登入數突然下降是 RADIUS 或 Walled Garden 問題的早期預警,能讓您在訪客開始抱怨之前發現問題。

套用一致的品牌形象。 Splash page 是訪客與您的網路進行的第一次品牌互動。設計良好的 Portal 可提高同意加入率,並建立對 WiFi 體驗的期望。請參閱 How to make a great first impression with your guest WiFi 以取得設計指引。


疑難排解與風險緩釋

當回報 Captive Portal 問題時,在進行任何組態變更之前,請遵循以下診斷順序。

隔離失敗點。 詢問訪客他們使用的是哪個 OS 和瀏覽器。在同一個 OS 上親自測試相同的流程。如果問題僅限於特定 OS,原因幾乎可以肯定是由於缺少該 OS 探測 URL 的 Walled Garden 條目。

檢查 DNS 解析。 從訪客 VLAN 上的裝置嘗試解析 Captive Portal 主機名稱。如果 DNS 解析失敗,即使重新導向正確發出,裝置也無法到達 Splash page。驗證您的 DHCP 伺服器是否正在發送可靠的 DNS 位址,以及閘道器是否允許在預先驗證狀態下進行 DNS 查詢。

擷取重新導向。 使用瀏覽器開發者工具 (F12) 或封包擷取來觀察 HTTP 交換。您應該會看到 OS 探測請求,隨後是包含 Portal URL 的 HTTP 302 回應。如果您看到探測請求但沒有 302 回應,則閘道器未正確攔截。如果您根本沒有看到探測請求,則 OS 已判定其具有網際網路存取權限(可能是來自快取狀態)並且未傳送探測。 **驗證 RADIUS 通訊。**在閘道器上,檢查 RADIUS 計費記錄。成功的驗證會產生一個 Accounting-Start 記錄。如果訪客登入後沒有看到任何計費記錄,則表示 RADIUS 通訊中斷。請檢查共用密鑰、伺服器 IP 和防火牆規則。

**檢查 DHCP 租約使用率。**在 DHCP 伺服器上,檢查目前的租約數量與 IP 位址池大小。如果使用率超過 90%,即表示即將耗盡。請立即擴大 IP 位址池或縮短租約時間。

下表將最常見的症狀對應到其根本原因及相關的解決方案。

症狀 最可能的根本原因 解決方案
所有裝置上皆未顯示入口網站 作業系統探測被閘道器 ACL 阻擋 將探測 URL 新增至驗證前允許清單
iOS 上有顯示入口網站,但 Android 上沒有 圍牆花園(Walled Garden)中缺少 Android 探測 URL connectivitycheck.gstatic.com 新增至圍牆花園
入口網站載入時出現 HTTPS 憑證錯誤 閘道器攔截了 HTTPS 而非 HTTP 僅依賴 HTTP 探測攔截
入口網站已載入,但登入後無法上網 閘道器未收到 RADIUS Access-Accept 驗證共用密鑰、連接埠 1812/1813 以及 RADIUS 伺服器 IP
社群媒體登入按鈕無回應且失敗 身分識別提供者網域不在圍牆花園中 新增 Microsoft Entra ID / Google Workspace 端點
訪客每次造訪都必須重新驗證 工作階段持續時間太短或停用了 MAC 快取 將工作階段設定為 24 小時,啟用 MAC 位址快取
尖峰時段發生間歇性失敗 DHCP IP 位址池耗盡 擴大子網路,縮短租約時間

投資報酬率(ROI)與業務影響

每一次 Captive Portal 失敗都是一次遺失資料收集的機會。Purple 的 Guest WiFi 平台可將每次成功的驗證轉化為第一方資料記錄 - 姓名、電子郵件、人口統計資料和造訪頻率 - 這些資料會直接匯入行銷自動化和忠誠度計劃中。

對於像 Premier Inn 或 Whitbread 這樣的 餐飲旅宿 業者而言,若能在擁有 700 家物業的旗下體系中將入口網站驗證成功率提高 10%,每個月就能直接增加數萬筆額外的自願訂閱記錄。這些記錄可驅動個人化電子郵件行銷活動,其開信率明顯高於購買的郵件清單。

對於 零售 業者而言,Captive Portal 是瞭解顧客停留時間、重複造訪頻率和跨據點行為的入口。Purple 已在其場域網路中收集了 290 億個資料點(Purple 內部數據)。這些資料的價值完全取決於產生這些資料的驗證率。

對於像曼徹斯特機場集團(Manchester Airports Group)這樣的 交通運輸 樞紐而言,可靠的客用 WiFi 是董事會級別追蹤的旅客滿意度指標。在離境尖峰時段間歇性失敗的入口網站會引發投訴,並損害場域的淨推薦值(Net Promoter Score)。 對於 醫療保健 環境而言,可靠的訪客 WiFi 可減輕臨床工作人員處理網路連線投訴的壓力,並提升患者體驗指標。

Purple 擁有 99.999% 的可用性執行等級協定(SLA),可確保雲端覆蓋網路本身不會成為故障點。當 Captive Portal 出現問題時,原因幾乎總是本地配置 - 本指南將協助您自行解決這些問題,而無需提交技術支援工單。


參考資料

[1] Troubleshooting Tip: General captive portal explanation, flow and troubleshooting. Fortinet Community, November 2024. https://community.fortinet.com/fortigate-3/troubleshooting-tip-general-captive-portal-explanation-flow-and-troubleshooting-188409

[2] RFC 8910: Captive-Portal Identification in DHCP and Router Advertisements. IETF. https://www.rfc-editor.org/info/rfc8910

[3] Network Connectivity Status Indicator overview for Windows. Microsoft Learn, February 2025. https://learn.microsoft.com/en-us/windows-server/networking/ncsi/ncsi-overview

[4] 7 Captive Portal Problems That Break Guest WiFi (And Quick Fixes). Spotipo, February 2026. https://www.spotipo.com/post/troubleshooting-captive-portals-common-issues

[5] Solution for HSTS issues with captive portal. Ubiquiti Community. https://community.ui.com/questions/Solution-for-HSTS-issues-with-captive-portal/17b033e7-3dfe-4830-af8f-bf6ead23d8b0

關鍵定義

Captive portal

在獲得完整網際網路存取權限之前,向加入網路的裝置顯示的網頁。閘道器會攔截裝置的初始 HTTP 連線探測,並將其重新導向至該入口網站的 URL。

從飯店大廳到體育場大廳,每個訪客 WiFi 登入頁面背後的機制。定義於 RFC 8910。

Walled garden

裝置在完成 Captive Portal 驗證之前可以存取的網域和 IP 位址集合。前往 walled garden 目的地的流量會繞過驗證要求。

必須包含作業系統探測 URL、識別身分提供者端點、CDN 網域和金流處理程序網域。設定錯誤的 walled garden 是導致 Captive Portal 失敗的第二大常見原因。

NCSI (Network Connectivity Status Indicator)

一項 Windows 功能,透過探測 `msftconnecttest.com` 來判斷裝置是否具有網際網路存取權限,或者是否位於 Captive Portal 後方。定義於 Microsoft 的網路說明文件中。

如果閘道器阻擋了此探測,Windows 就會回報「無網際網路存取」且永遠不會觸發 Captive Portal WebView。修正方法是將 NCSI URL 新增至驗證前的允許清單中。

HSTS (HTTP Strict Transport Security)

RFC 6797 中定義的一種網路安全性原則,指示瀏覽器拒絕純 HTTP 連線,並拒絕任何與網域不完全匹配的憑證。

防止閘道器攔截 HTTPS 要求以進行 Captive Portal 重新導向。包含 google.com 在內的主要網域在所有主流瀏覽器中都位於 HSTS 預載清單中。

HTTP 302 redirect

一種標準的 HTTP 回應碼,表示請求的資源暫時位於不同的 URI,於 Location 標頭中提供。

閘道器用來將裝置的連線探測轉向至 Captive Portal 登入頁面的機制。某些閘道器會改用 HTTP 303 或帶有重新導向主體的 HTTP 200。

RADIUS (Remote Authentication Dial-In User Service)

一種提供集中式驗證、授權和記帳 (AAA) 管理的網路協定,在 UDP 連接埠 1812(驗證)和 1813(記帳)上運作。

Purple 的雲端平台扮演 RADIUS 伺服器的角色。本機閘道器(Meraki、Aruba 等)會向 Purple 的 RADIUS 伺服器傳送驗證請求,並根據 Access-Accept 或 Access-Reject 回應採取行動。

MAC 位址快取

儲存裝置唯一硬體識別碼的程序,以便識別返回的裝置並維持工作階段狀態,而無需重新進行驗證。

可在工作階段空檔內的短暫斷線和重複訪問之間保持工作階段持續性。這對於賓客在不同區域之間移動的餐旅環境至關重要。

身分導向網路

Purple 的架構模型,其中存取原則、VLAN 分配和分析是根據使用者的已驗證身分套用,而非僅根據裝置的 IP 或 MAC 位址。

可在 Cisco Meraki、HPE Aruba、Ruckus、Juniper Mist、Ubiquiti UniFi、Cambium、Extreme 和 Fortinet 硬體上,實現細粒度存取控制、個人化體驗以及將網路行為準確歸因於個別使用者。

DHCP 耗盡

DHCP 集中所有可用的 IP 位址均已分配完畢的狀況,導致新裝置無法取得位址,進而無法連線至 Captive Portal。

常見於高密度場地在尖峰時段的情況。其表現與 Captive Portal 故障完全相同 - 裝置顯示已連線到 SSID 但沒有網際網路。可透過檢查伺服器上的 DHCP 租約使用率來診斷。

範例

一家擁有 200 間客房且使用 HPE Aruba 基地台的飯店報告,使用 Android 裝置的訪客無法存取 Captive Portal,而 iOS 使用者則可正常連線。IT 團隊已確認可從管理 VLAN 連線到入口網站 URL。

IT 團隊應檢查 HPE Aruba 控制器上的預先驗證圍牆花園(walled garden)。iOS 裝置會探測 captive.apple.com,這可能已被列入白名單。Android 裝置會探測 connectivitycheck.gstatic.comclients3.google.com/generate_204。這些 Google 網域幾乎肯定不在圍牆花園中。將它們新增至預先驗證允許清單即可解決此問題。該團隊還應將 connectivitycheck.android.com 新增為次要 Android 探測 URL。更新圍牆花園後,重新啟動受影響的 SSID,並在原廠重設的 Android 裝置上進行測試以確認修復,因為先前已連線裝置上的快取網路狀態可能會遮蔽結果。

考官評語: 此案例說明了 Captive Portal 偵測的特定作業系統特性。每個平台使用不同的探測 URL,僅針對一個作業系統配置的圍牆花園將會產生這種不對稱的失敗模式。關鍵的診斷訊號是失敗具有裝置類型特定性,而不是在所有裝置上斷斷續續地發生。所有裝置上斷斷續續的失敗則指向 RADIUS 或 DHCP 問題。

一家擁有 150 台 Cisco Meraki MX 設備的連鎖零售店報告,訪客在 Purple 登入頁面上完成了驗證 - Purple 儀表板顯示登入成功 - 但訪客在填寫完表單後仍然無法存取網際網路。此問題同時影響所有地點。

因為 Purple 雲端平台顯示登入成功,代表驗證步驟本身是正常運作的。失敗發生在授權步驟 - Meraki 設備沒有收到或沒有執行來自 Purple RADIUS 伺服器的 RADIUS Access-Accept 訊息。團隊應依序檢查三件事:第一,驗證 Meraki 儀表板上的 RADIUS 共用密鑰與 Purple 入口網站中的密鑰是否完全一致(一個字元的差異就會導致無聲失敗);第二,確認允許從 Meraki 設備到 Purple 的 RADIUS 伺服器 IP 位址的連接埠 1812 和 1813 的輸出 UDP 流量;第三,檢查最近的網路變更是否引入了封鎖此流量的防火牆規則或 NAT 政策。由於該問題同時影響所有 150 個地點,原因可能是集中式防火牆政策變更,或是 Purple RADIUS 伺服器 IP 位址變更未同步到 Meraki 配置中。

考官評語: 此處關鍵的診斷見解是,Purple 儀表板顯示登入成功意味著雲端驗證步驟已完成。因此,失敗發生在本地執行步驟 - 從雲端到閘道器的 RADIUS 訊息。雲端驗證與本地授權之間的這種區別,對於排除任何使用雲端重疊架構的 Captive Portal 部署故障至關重要。

練習題

Q1. 在一個擁有 5,000 個座位的場地舉辦大型會議期間,IT 團隊收到報告指出數百名與會者無法存取訪客 WiFi 入口網站。無線基地台顯示連線數量正常。該問題在活動開始 45 分鐘後發生。最可能的原因是什麼,立即的修正方法又是什麼?

提示:此問題是在活動進行後開始的,而不是在開始時。請考慮隨著更多裝置加入,什麼資源會變得吃緊。

查看標準答案

最可能的原因是 DHCP 位址池耗盡。隨著與會者陸續抵達並連線到 SSID,DHCP 位址池被填滿。新裝置雖然與存取點建立了關聯,但無法取得 IP 位址,因此它們永遠不會發送觸發 Captive Portal 所需的 HTTP 探測。立即的解決方案是將 DHCP 租期縮短至 15 分鐘(以便更快地收回已離開裝置的位址),並在可能的情況下透過新增第二個子網來擴大位址池。長期的解決方案是根據下一次活動的最大同時在線裝置數量(而非平均值)來規劃 DHCP 位址池的大小。

Q2. 您已在某家連鎖零售店的 Ubiquiti UniFi 存取點上部署了 Purple。Splash page 在所有裝置上都能正常載入。訪客填寫完電子郵件擷取表單並看到了成功訊息。但當他們嘗試瀏覽網頁時,卻無法存取網際網路。Purple 儀表板顯示登入成功。您首先要檢查什麼?

提示:雲端平台已記錄該驗證。失敗發生在本機執行步驟。

查看標準答案

由於 Purple 的儀表板顯示登入成功,這表示雲端驗證步驟已正確完成。失敗發生在 RADIUS 授權步驟 - UniFi 控制器沒有收到或未執行來自 Purple RADIUS 伺服器的 Access-Accept 訊息。請依以下順序檢查:(1) UniFi 控制器上的 RADIUS 共用密鑰與 Purple 儀表板中的密鑰完全一致;(2) 允許從控制器到 Purple RADIUS 伺服器 IP 位址的 1812 和 1813 連接埠輸出 UDP 流量;(3) UniFi 控制器上設定的 RADIUS 伺服器 IP 位址為最新(Purple 可能已更新這些位址)。在控制器上進行封包擷取將能確認 Access-Accept 訊息是否送達。

Q3. 一家飯店的 IT 經理回報,在裝置上使用 VPN 的訪客完全無法存取 Captive Portal。未使用 VPN 的訪客則可正常連線。該飯店使用 Cisco Meraki MX 設備。IT 團隊是否應該變更 Captive Portal 設定以配合 VPN 使用者?

提示:思考在 Captive Portal 攔截之前,VPN 對裝置的網路流量做了什麼處理。

查看標準答案

不需變更 - Captive Portal 設定不需要做任何修改。VPN 用戶端會在流量離開裝置前將其完全加密,這包括了 HTTP 連線探測。閘道無法攔截已加密的 VPN 流量,因此永遠不會發出 302 重新導向。訪客必須先停用其 VPN,完成 Captive Portal 驗證,然後重新啟用 VPN。這是 Captive Portal 和 VPN 的基本架構限制,而非設定錯誤。IT 團隊應在訪客 WiFi 說明中加入備註,建議 VPN 使用者在連線前先停用 VPN。

繼續閱讀本系列

疑難排解大眾 WiFi:解決「已連線,無網路」與登入頁面重新導向失敗問題

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

閱讀指南 →

高密度無線網路中 DHCP 逾時的十大原因

本權威技術參考指南確定了高密度無線網路中 DHCP 逾時的十大原因,並提供了可操作且不限廠商的修復策略。本指南專為高階 IT 領導者、網路架構師和場地營運總監設計,內容涵蓋深入的工程原理、逐步實作工作流程以及可衡量的業務成果。了解如何消除連線瓶頸並最佳化您的無線基礎設施,以在要求嚴苛的企業環境中提供無縫的連線體驗。

閱讀指南 →

使用封包擷取 (PCAP) 診斷慢速 WiFi 效能

本技術參考指南為 IT 經理、網路架構師和場地營運總監提供了一套結構化的封包級方法論,以使用封包擷取 (PCAP) 分析來診斷和解決企業 WiFi 效能緩慢的問題。透過剖析原始的 802.11 訊框(包括重傳率、空中時間利用率和實體層中繼資料),團隊可以精準地將射頻層 (RF) 瓶頸與有線網路或應用程式問題隔離開來。本指南適用於飯店、連鎖零售、體育場和會議中心等高密度場地,提供具體可行的診斷工作流程、真實案例研究和組態修復步驟,以收回網路容量並保障顧客體驗。

閱讀指南 →