SonicWall TZ 與 SonicWave 與 Purple WiFi 的整合
本技術參考指南詳細介紹了 SonicWall TZ 防火牆和 SonicWave AP 與 Purple WiFi 平台的整合。其中提供了實用的設定步驟,涵蓋 Captive Portal 重新導向、Walled Garden 例外狀況、802.1X 驗證,以及使用私人預共用金鑰 (PPSK) 的動態 VLAN 導向。
收聽此指南
查看播客逐字稿

執行摘要
將 SonicWall 網路基礎設施與 Purple 的雲端覆蓋(cloud overlay)整合,可提供企業級的存取控制以及精密的第一方數據收集。本指南涵蓋了四個不同使用案例的技術實作:帶有 Captive Portal 重新導向的訪客 WiFi、Walled Garden 例外狀況、使用 802.1X 的安全員工 WiFi,以及使用 SonicWall 私人預共用金鑰 (PPSK) 搭配動態 VLAN 導向的多租戶隔離。
我們每年在 80,000 多個上線場所處理 4.4 億次登入。以下詳述的架構在旅宿業、零售業和公共部門環境中已得到大規模驗證。它允許您保留現有的 SonicWall 硬體,同時將身分識別管理、Splash Page 託管和 RADIUS 驗證分流至 Purple 雲端。
技術深挖
此整合依賴兩種主要機制:用於 Captive Portal 重新導向的輕量級熱點訊息 (LHM),以及用於 802.1X 和 PPSK 驗證的 RADIUS。
透過 LHM 進行 Captive Portal 重新導向
SonicOS 使用 LHM 來處理外部 Captive Portal 重新導向。當未經驗證的訪客設備嘗試存取網際網路時,SonicWall TZ 防火牆會攔截 HTTP 請求並將用戶端重新導向至 Purple 託管的 Splash Page。訪客完成驗證流程(例如社群登入、表單填寫)。然後,Purple 會在 TCP 連接埠 4043 上將 LHM 授權封包傳回給 SonicWall。收到此封包後,SonicWall 會更新其內部存取控制清單,允許該設備的 MAC 位址存取網際網路。

Walled Garden 架構
在驗證之前,訪客設備會被保留在受限區域中。Walled Garden 是允許設備存取以轉譯 Splash Page 並完成登入程序的一組特定完整網域名稱 (FQDN)。這包括 Purple 的 CDN (cdn.purple.ai)、驗證 API (api.purple.ai),以及 Google Workspace、Microsoft Entra ID 和 Meta 等第三方身分識別提供者所需的網域。
SonicOS 使用 FQDN 位址物件來實作 Walled Garden。防火牆對這些物件執行動態 DNS 解析,自動更新允許的 IP 範圍。這至關重要,因為身分識別提供者和 CDN 使用動態 IP 分配;靜態 IP 白名單必然會失效。
安全員工 WiFi 與 802.1X
對於員工網路,SonicWave AP 充當 802.1X 驗證器,將請求代理至 Purple 的 RADIUS 伺服器。我們建議對使用憑證的受控設備使用 EAP-TLS,或對針對 Microsoft Entra ID 等目錄進行使用者名稱/密碼驗證的使用 PEAP-MSCHAPv2。驗證成功後,Purple 會傳回標準 RADIUS 屬性(Tunnel-Type、Tunnel-Medium-Type 和 Tunnel-Private-Group-ID),以動態地將設備分配到正確的員工 VLAN。
使用 PPSK 的多租戶隔離
基於身分的網路(Identity-Based Networks)消除了對複雜的多 SSID 部署的需求。使用 SonicWall PPSK,單一 SSID(例如 "Multi-Tenant-WiFi")在整個場所中廣播。每個租戶都會收到一個唯一的密碼。當設備使用特定的 PPSK 進行關聯時,SonicWave AP 會針對 Purple 的 RADIUS 伺服器驗證該金鑰。Purple 會識別租戶並傳回關聯的 VLAN ID。然後,SonicWall 會將流量導向至隔離的租戶 VLAN 中。

實作指南
1. 設定 SonicWall Captive Portal (LHM)
要在執行 SonicOS 7.x 的 SonicWall TZ 系列上設定外部 Captive Portal:
- 導覽至 Object > Match Objects > Zones。編輯分配給您訪客網路的區域(例如 WLAN)。
- 在 Guest Services 索引標籤下,啟用 Enable Guest Services 和 External Guest Authentication。
- 導覽至 Configure > Guest Services > General。
- 將 Client Redirect Protocol 設定為 HTTP。
- 將 Web Server 位址設定為
portal.purple.ai。 - 將 Port 設定為
4043。 - 在 Auth Pages 索引標籤下,將 Login URL 設定為您的 Purple 場所控制面板中提供的特定 Splash Page URL。
- 儲存設定。SonicOS 將自動產生一個 NAT 原則和一個 WAN 到 WAN 的存取規則,以允許 TCP 連接埠 4043。請勿修改這些自動產生的規則。
2. 建立 Walled Garden
為所需的網域建立 FQDN 位址物件,並將它們新增至位址群組中。將此群組套用至訪客區域中的允許規則。
所需的 Purple 網域:
*.purple.ai*.purpleportal.net
作業系統 Captive Portal 探測:
captive.apple.com(iOS/macOS)connectivitycheck.gstatic.com(Android)msftconnecttest.com(Windows)
常見的社群登入網域 (Google):
accounts.google.comoauth2.googleapis.comapis.google.com*.gstatic.com
3. 為 SonicWave AP 設定 RADIUS
要透過無線網路管理員將 SonicWave AP 與 Purple RADIUS 整合:
- 導覽至 Policies > Policy Hierarchy 並選擇您的 AP 原則。
- 選擇 802.1X 索引標籤。
- 輸入 Purple RADIUS 伺服器 IP 位址(可在您的 Purple 控制面板中找到)。
- 輸入 Purple 產生的共用金鑰。
- 將 Authentication Port 設定為
1812,並將 Accounting Port 設定為1813。 - 根據您的身分識別提供者選擇適當的 EAP 方法。
4. 設定動態 VLAN 導向
在啟用動態分配之前,請確保目標 VLAN 已作為子介面存在於 SonicWall TZ 防火牆上。
在 Purple 控制面板中,將使用者群組或 PPSK 對應至目標 VLAN ID。驗證成功後,Purple 將傳回以下屬性:
Tunnel-Type = VLAN (13)Tunnel-Medium-Type = 802 (6)Tunnel-Private-Group-ID = [VLAN ID](例如:「110」)
最佳實踐
- 測試 LHM 連接埠可達性:必須能從網際網路透過 TCP 連接埠 4043 連線至 SonicWall WAN 介面。在正式上線前,請使用外部連接埠掃描器進行測試。如果 ISP 阻擋了此連接埠,授權封包將會被捨棄,而訪客將會卡在 Splash Page。
- 預先配置 VLAN 子介面:如果在驗證事件發生前未在 SonicWall 上設定目標 VLAN 子介面,動態 VLAN 導向將會靜默失敗。裝置將會退回到預設的未標記 (Untagged) VLAN。
- 強制使用網頁版 OAuth:確保您的 Splash Page 設定強制執行網頁版 OAuth 流程。深層連結 (Deep-linking) 至原生社群媒體應用程式(例如 Facebook iOS App)通常會中斷 Captive Portal 流程,因為原生應用程式的流量會被 Walled Garden 阻擋。
- 最佳化 DNS 重新整理間隔:SonicOS 會定期解析 FQDN 物件。在體育場或交通樞紐等高流動率的環境中,請將 Walled Garden 物件的 DNS 重新整理間隔設定為 60 秒,以確保能精確追蹤 CDN IP 的變更。
疑難排解與風險緩釋
問題現象:訪客完成了 Splash Page 登入,但無法存取網際網路。 原因:TCP 4043 上的 LHM 授權封包未到達 SonicWall。 解決方案:驗證自動產生的 WAN-to-WAN 存取規則是否存在。檢查上游 ISP 路由器是否阻擋了連接埠。確保 SonicWall WAN IP 已正確註冊於 Purple 控制面板中。
問題現象:Splash Page 無法載入,或社群登入按鈕傳回 CORS 錯誤。 原因:Walled Garden 設定不完整。 解決方案:在未驗證狀態下連接測試裝置。使用瀏覽器開發者工具(「網路」分頁)來識別被阻擋的 HTTPS 要求。將失敗的網域在 SonicOS 中新增為 FQDN 位址物件。
問題現象:員工裝置透過 802.1X 進行驗證,但收到的是預設 VLAN 的 IP 位址,而非指派的 VLAN。
原因:SonicWall 上不存在目標 VLAN 子介面,或者 RADIUS 屬性格式錯誤。
解決方案:驗證 VLAN 子介面是否已啟用。檢查 Purple RADIUS 記錄,確認 Tunnel-Private-Group-ID 是否以符合 VLAN ID 的字串值傳送。
投資報酬率與商業影響
將 SonicWall 基礎架構與 Purple 結合部署,能將標準的網路成本中心轉化為可衡量的商業資產。
對於擁有 200 個據點的零售連鎖店而言,從使用一般的預先共用金鑰轉移到品牌專屬的 Captive Portal,通常能在六個月內使已知客戶輪廓增加 40%。此第一方數據可直接整合至 CRM 系統中,從而推動精準行銷活動並提高回訪率。
在共同工作空間或學生宿舍等多租戶環境中,採用支援動態 VLAN 導向的 PPSK,可免除為每個租戶管理專用硬體的營運開銷。您只需部署一個實體網路,並透過身分識別進行邏輯區隔。這可在降低高達 60% 的硬體資本支出的同時,維持嚴格符合 ISO 27001 規範的網路隔離。
關鍵定義
Lightweight Hotspot Messaging (LHM)
SonicWall 用於與外部 Captive Portal 通訊的協定。它負責處理重新導向和授權交握。
將 SonicOS 與 Purple 等雲端管理的訪客 WiFi 平台整合時所需。
Walled Garden
允許未經驗證的設備存取的一組特定網域或 IP 位址。
對於允許訪客設備在獲得完整網際網路存取權限之前載入 Splash Page、存取 CDN 並完成社群登入 OAuth 流程至關重要。
Private Pre-Shared Key (PPSK)
一種安全方法,其中多個唯一的密碼在單一 SSID 上皆有效,且每個密碼都與特定的使用者或原則綁定。
用於多租戶環境中,在不廣播多個 SSID 的情況下隔離流量。
Captive Network Assistant (CNA)
內建的作業系統機制(在 iOS、Android、Windows 上),可偵測 Captive Portal 並自動開啟受限的瀏覽器視窗以進行驗證。
如果作業系統探測網域(例如 captive.apple.com)不在 Walled Garden 中,則不會觸發 CNA,訪客會認為 WiFi 已損壞。
Dynamic VLAN Steering
根據設備的身分或憑證將其分配給特定 VLAN 的過程,而不是根據其連線的 SSID。
由 Purple RADIUS 將 Tunnel-Private-Group-ID 屬性傳回給 SonicWall 進行管理。
FQDN Address Object
基於完整網域名稱 (FQDN) 而非靜態 IP 位址的防火牆物件。
SonicOS 會動態解析這些物件,這對於健全的 Walled Garden 設定至關重要。
Identity-Based Network
一種網路架構,其中存取原則和區隔是根據已驗證的使用者或設備來套用,而不是根據實體連接埠或 SSID。
透過將 Purple RADIUS 與 SonicWall PPSK 和 802.1X 結合來實現。
Tunnel-Private-Group-ID
用於指定連線設備之 VLAN ID 的標準 RFC 2868 RADIUS 屬性。
必須由 Purple 作為字串值(例如 '100')傳回,以指示 SonicWall 導向設備。
範例
一家擁有 150 間客房的飯店 (Premier Inn) 需要透過 Splash Page 提供免費的訪客 Guest WiFi,並為房務設備提供安全的員工 Staff WiFi 網路。他們配備了一台 SonicWall TZ570 和 40 台 SonicWave AP。他們應該如何區隔這些流量?
部署兩個 SSID。SSID 1:「Guest-WiFi」對應至 VLAN 100。將 SonicWall WLAN 區域設定為「外部訪客驗證」,並指向 TCP 4043 上的 portal.purple.ai。設定 Purple 和社群登入的 Walled Garden FQDN。SSID 2:「Staff-WiFi」使用 802.1X 對應至 VLAN 200。將 SonicWave AP 原則指向 Purple 的 RADIUS 伺服器。設定 Purple 透過 MAC 位址略過 (MAB) 或 PEAP-MSCHAPv2 驗證房務設備,並傳回 Tunnel-Private-Group-ID '200'。
一個共享工作空間管理著 15 家共享同一個開放式辦公室的不同公司。他們希望為每家公司提供安全、隔離的網路,而不需要從其 SonicWave AP 廣播 15 個不同的 SSID。
部署一個名為「Workspace-Secure」的單一 SSID,並使用帶有 PPSK 的 WPA2-Enterprise。在 SonicWall TZ 防火牆上建立 15 個 VLAN 子介面(例如 VLAN 101-115)。在 Purple 控制面板中,為每家公司產生一個唯一的 PPSK,並將其對應至其特定的 VLAN ID。當使用者使用其公司的 PPSK 連線時,Purple RADIUS 會傳回對應的 Tunnel-Private-Group-ID,然後 SonicWall 會將設備導向至隔離的 VLAN 中。
練習題
Q1. 您已將 SonicWall 訪客區域設定為「外部訪客驗證」,並將網頁伺服器設定為 portal.purple.ai。訪客被重新導向至 Splash Page 且可以成功登入,但他們始終無法存取網際網路。最可能的原因是什麼?
提示:思考 Purple 如何告訴 SonicWall 驗證已成功。
查看標準答案
LHM 授權封包被封鎖。SonicWall WAN 介面上的 TCP 連接埠 4043 必須開啟,才能接收來自 Purple 的成功訊號。請檢查上游防火牆或 ISP 設定是否有封鎖連接埠。
Q2. 某個場所希望在他們的 Splash Page 上提供 Facebook 登入。您將 www.facebook.com 新增至 Walled Garden FQDN 位址群組中。訪客回報 Facebook 登入頁面可以載入,但樣式損壞且登入按鈕無法運作。
提示:現代網頁應用程式會從多個網域載入資源。
查看標準答案
Walled Garden 設定不完整。您還必須將提供 Facebook CSS、JavaScript 和 API 呼叫的網域加入白名單,特別是 graph.facebook.com、connect.facebook.net 和 CDN 網域(例如 *.fbcdn.net)。
Q3. 您正在為多租戶辦公室部署 PPSK。您將 SSID 設定為帶有 PPSK 的 WPA2-Enterprise,並將 RADIUS 伺服器指向 Purple。您在 Purple 中建立了一個對應至 VLAN 50 的 PPSK。當使用者使用該 PPSK 連線時,他們卻收到了來自 VLAN 10 的 IP 位址。為什麼?
提示:SonicWall 需要在 RADIUS 請求完成之前知道將流量傳送到何處。
查看標準答案
VLAN 50 尚未在 SonicWall TZ 防火牆上建立為子介面。動態 VLAN 導向要求目標 VLAN 必須預先存在於防火牆上;如果不存在,設備將退回到預設的未標記 VLAN(在此情況下為 VLAN 10)。
繼續閱讀本系列
CommScope Ruckus 與 Purple WiFi 整合:安裝與設定指南
本技術參考指南為 CommScope Ruckus 架構與 Purple WiFi 的整合提供了權威的設定指南。其中詳細介紹了使用 Guest WiFi Captive Portal、透過 802.1X 的安全員工 WiFi,以及使用 Ruckus Dynamic PSK 的多租戶網路隔離的逐步部署步驟。
Allied Telesis Access Points Integration with Purple WiFi
本指南提供將 Allied Telesis TQ 系列無線基地台與 Purple WiFi 整合的完整設定指南。內容涵蓋外部 Captive Portal 重新導向、802.1X RADIUS 驗證,以及使用私有預共用金鑰 (PPSK) 進行動態 VLAN 導向,以實現安全的多租戶部署。
Grandstream GWN Access Points Integration with Purple WiFi
本權威技術參考指南詳細說明如何將 Grandstream GWN 基地台與 Purple 的 Guest WiFi 及分析平台進行整合。內容涵蓋 Grandstream Captive Portal 設定、RADIUS AAA 設定、Walled Garden(圍牆花園)設定、支援動態 VLAN 導向的安全員工 802.1X 驗證,以及多租戶 PPSK 分割,為大規模部署訪客與員工 WiFi 的 MSP 和 IT 團隊提供具體可行的逐步指引。