SonicWall TZ and SonicWave Integration with Purple WiFi
This technical reference details the integration of SonicWall TZ firewalls and SonicWave APs with the Purple WiFi platform. It provides actionable configuration steps for captive portal redirection, walled garden exceptions, 802.1X authentication, and dynamic VLAN steering using Private Pre-Shared Keys (PPSK).
Escuchar esta guía
Ver transcripción del podcast

执行摘要
将 SonicWall 网络基础设施与 Purple 的云覆盖层集成,可提供企业级访问控制以及先进的第一方数据捕获。本指南涵盖了四个不同用例的技术实现:具有 Captive Portal 重定向的访客 WiFi、Walled Garden 例外情况、使用 802.1X 的安全员工 WiFi,以及使用具有动态 VLAN 引导的 SonicWall 私有预共享密钥 (PPSK) 的多租户隔离。
我们每年在超过 80,000 个活跃场所处理 4.4 亿次登录。下面详述的架构已在酒店、零售和公共部门环境中得到大规模验证。它允许您保留现有的 SonicWall 硬件,同时将身份管理、Splash 页面托管和 RADIUS 身份验证卸载到 Purple 云。
技术深挖
该集成依赖于两种主要机制:用于 Captive Portal 重定向的轻量级热点消息传递 (LHM),以及用于 802.1X 和 PPSK 身份验证的 RADIUS。
通过 LHM 进行 Captive Portal 重定向
SonicOS 使用 LHM 处理外部 captive portal 重定向。当未通过身份验证的访客设备尝试访问互联网时,SonicWall TZ 防火墙会拦截 HTTP 请求,并将客户端重定向到 Purple 托管的 splash 页面。访客完成身份验证流程(例如,社交登录、表单填写)。然后,Purple 通过 TCP 端口 4043 向 SonicWall 发送回 LHM 授权数据包。收到此数据包后,SonicWall 将更新其内部访问控制列表,允许该设备的 MAC 地址访问互联网。

Walled Garden 架构
在身份验证之前,访客设备将保留在受限区域中。Walled Garden 是允许设备访问以渲染 splash 页面并完成登录过程的特定完全限定域名 (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 场馆控制面板中提供的特定展示页面 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
要通过 Wireless Network Manager 将 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 端口可见性:必须能够从互联网访问 SonicWall WAN 接口的 TCP 端口 4043。在上线前使用外部端口扫描器对此进行测试。如果 ISP 阻止了此端口,授权数据包将丢失,访客将一直受阻于展示页面。
- 预先配置 VLAN 子接口:如果在验证事件发生之前未在 SonicWall 上配置目标 VLAN 子接口,动态 VLAN 引导将静默失败。设备将退回到默认的未标记 VLAN。
- 强制基于 Web 的 OAuth:确保您的展示页面配置强制执行基于 Web 的 OAuth 流程。深层链接到原生社交媒体应用(例如 Facebook iOS 应用)通常会中断 Captive Portal 流程,因为原生应用流量会被 Walled Garden 阻止。
- 优化 DNS 刷新间隔:SonicOS 会定期解析 FQDN 对象。在体育场或交通枢纽等高周转环境中,请将 Walled Garden 对象的 DNS 刷新间隔设置为 60 秒,以确保准确跟踪 CDN IP 更改。
故障排除与风险缓解
现象:访客完成了展示页面登录,但无法访问互联网。 原因:TCP 4043 上的 LHM 授权数据包未到达 SonicWall。 解决方法:验证自动生成的 WAN 到 WAN 访问规则是否存在。检查上游 ISP 路由器是否有端口阻止。确保 SonicWall WAN IP 在 Purple 控制面板中正确注册。
现象:展示页面加载失败,或社交登录按钮返回 CORS 错误。 原因:Walled Garden 配置不完整。 解决方法:在未验证状态下连接测试设备。使用浏览器开发者工具(Network 选项卡)识别被阻止的 HTTPS 请求。在 SonicOS 中将失败的域名添加为 FQDN 地址对象。
现象:员工设备通过 802.1X 进行身份验证,但从默认 VLAN 而不是分配的 VLAN 获取 IP 地址。
原因:SonicWall 上不存在目标 VLAN 子接口,或者 RADIUS 属性格式错误。
解决方法:验证 VLAN 子接口是否处于活动状态。检查 Purple RADIUS 日志以确认 Tunnel-Private-Group-ID 是否作为与 VLAN ID 匹配的字符串值发送。
ROI 与业务影响
将 SonicWall 基础设施与 Purple 一起部署,可将标准的网络成本中心转变为可衡量的业务资产。
对于拥有200个网点的零售连锁店,从通用的预共享密钥过渡到品牌化的 Captive Portal,通常会在六个月内使已知客户画像增加40%。这些第一方数据可直接集成至CRM系统,从而推动精准营销活动并增加回头客流量。
在联合办公空间或学生公寓等多租户环境中,支持动态VLAN引导的PPSK消除了为每个租户管理专用硬件的运营开销。您只需部署一个物理网络,并根据身份进行逻辑划分。这在降低高达60%硬件资本支出的同时,还能保持严格符合ISO 27001标准的网络隔离。
Definiciones clave
Lightweight Hotspot Messaging (LHM)
Un protocolo utilizado por SonicWall para comunicarse con Captive Portals externos. Gestiona el direccionamiento y el saludo de autorización.
Requerido para integrar SonicOS con plataformas de WiFi para invitados gestionadas en la nube como Purple.
Walled Garden
Un conjunto específico de dominios o direcciones IP a los que se permite acceder a los dispositivos no autenticados.
Crítico para permitir que los dispositivos de los invitados carguen la página de bienvenida, accedan a las CDN y completen los flujos OAuth de inicio de sesión social antes de obtener acceso total a internet.
Private Pre-Shared Key (PPSK)
Un método de seguridad en el que múltiples contraseñas únicas son válidas en un único SSID, estando cada contraseña vinculada a un usuario o política específicos.
Utilizado en entornos multiinquilino para aislar el tráfico sin transmitir múltiples SSIDs.
Captive Network Assistant (CNA)
El mecanismo integrado del sistema operativo (en iOS, Android, Windows) que detecta un Captive Portal y abre automáticamente una ventana de navegador limitada para la autenticación.
Si los dominios de prueba del sistema operativo (por ejemplo, captive.apple.com) no están en el walled garden, el CNA no se activará y los invitados pensarán que el WiFi no funciona.
Dynamic VLAN Steering
El proceso de asignar un dispositivo a una VLAN específica en función de su identidad o credenciales, en lugar del SSID al que se conectó.
Gestionado por Purple RADIUS que devuelve el atributo Tunnel-Private-Group-ID a SonicWall.
FQDN Address Object
Un objeto de cortafuegos basado en un nombre de dominio completo (Fully Qualified Domain Name) en lugar de una dirección IP estática.
SonicOS resuelve estos objetos de forma dinámica, lo que los hace esenciales para configuraciones sólidas de walled garden.
Identity-Based Network
Una arquitectura de red donde las políticas de acceso y la segmentación se aplican en función del usuario o dispositivo autenticado, en lugar de los puertos físicos o SSIDs.
Se logra combinando Purple RADIUS con SonicWall PPSK y 802.1X.
Tunnel-Private-Group-ID
El atributo estándar RADIUS RFC 2868 utilizado para especificar el identificador de VLAN (VLAN ID) para un dispositivo que se conecta.
Debe ser devuelto por Purple como un valor de cadena (por ejemplo, '100') para indicar a SonicWall que dirija el dispositivo.
Ejemplos prácticos
A 150-room hotel (Premier Inn) needs to provide free Guest WiFi via a splash page and a secure Staff WiFi network for housekeeping devices. They have a SonicWall TZ570 and 40 SonicWave APs. How should they segment this traffic?
Deploy two SSIDs. SSID 1: 'Guest-WiFi' mapped to VLAN 100. Configure the SonicWall WLAN zone for External Guest Authentication pointing to portal.purple.ai on TCP 4043. Configure the walled garden FQDNs for Purple and social logins. SSID 2: 'Staff-WiFi' mapped to VLAN 200 using 802.1X. Point the SonicWave AP policy to Purple's RADIUS server. Configure Purple to authenticate housekeeping devices via MAC address bypass (MAB) or PEAP-MSCHAPv2, returning Tunnel-Private-Group-ID '200'.
A coworking space manages 15 different companies sharing one open-plan office. They want to provide secure, isolated networks for each company without broadcasting 15 different SSIDs from their SonicWave APs.
Deploy a single SSID named 'Workspace-Secure' using WPA2-Enterprise with PPSK. Create 15 VLAN sub-interfaces on the SonicWall TZ firewall (e.g., VLANs 101-115). In the Purple dashboard, generate a unique PPSK for each company and map it to their specific VLAN ID. When a user connects using their company's PPSK, Purple RADIUS returns the corresponding Tunnel-Private-Group-ID, and the SonicWall steers the device into the isolated VLAN.
Preguntas de práctica
Q1. Has configurado la zona de invitados de SonicWall para la Autenticación de Invitados Externa y has establecido el servidor web en portal.purple.ai. Los invitados son redirigidos a la splash page y pueden iniciar sesión correctamente, pero nunca obtienen acceso a internet. ¿Cuál es la causa más probable?
Sugerencia: Piensa en cómo Purple indica al SonicWall que la autenticación se ha realizado correctamente.
Ver respuesta modelo
El paquete de autorización LHM está siendo bloqueado. El puerto TCP 4043 debe estar abierto en la interfaz WAN de SonicWall para recibir la señal de éxito de Purple. Comprueba los firewalls ascendentes o las configuraciones del ISP para verificar si hay bloqueo de puertos.
Q2. Un establecimiento desea ofrecer inicio de sesión con Facebook en su splash page. Añades www.facebook.com al grupo de direcciones FQDN del walled garden. Los invitados informan de que la página de inicio de sesión de Facebook se carga, pero el diseño está dañado y el botón de inicio de sesión no funciona.
Sugerencia: Las aplicaciones web modernas cargan recursos desde múltiples dominios.
Ver respuesta modelo
El walled garden está incompleto. También debes incluir en la lista blanca los dominios que sirven el CSS, JavaScript y las llamadas API de Facebook, específicamente graph.facebook.com, connect.facebook.net y el dominio CDN (por ejemplo, *.fbcdn.net).
Q3. Estás desplegando PPSK para una oficina multiinquilino. Configuras el SSID para WPA2-Enterprise con PPSK y apuntas el servidor RADIUS a Purple. Creas una PPSK en Purple asignada a la VLAN 50. Cuando un usuario se conecta con esa PPSK, recibe una dirección IP de la VLAN 10 en su lugar. ¿Por qué?
Sugerencia: El SonicWall necesita saber a dónde enviar el tráfico antes de que se complete la solicitud RADIUS.
Ver respuesta modelo
La VLAN 50 no se ha creado como una subinterfaz en el firewall SonicWall TZ. El direccionamiento dinámico de VLAN requiere que la VLAN de destino exista previamente en el firewall; si no existe, el dispositivo vuelve a la VLAN por defecto sin etiquetar (en este caso, la VLAN 10).
Continúe leyendo esta serie
Guía paso a paso para el acceso de invitados: Integración de Cisco WLC y Catalyst con Purple WiFi
Esta guía de referencia detalla la integración paso a paso de los Cisco Catalyst 9800 WLCs con Purple WiFi. Cubre el proceso de External Web Authentication para portales cautivos de invitados, 802.1X EAP-TLS para el acceso seguro del personal e Cisco iPSK para la segmentación dinámica de VLAN en entornos multiinquilino.
Integración de CommScope Ruckus con Purple WiFi: Guía de instalación y configuración
Esta guía de referencia técnica proporciona un manual de configuración definitivo para integrar arquitecturas de CommScope Ruckus con Purple WiFi. Detalla implementaciones paso a paso para captive portals de Guest WiFi, WiFi seguro para el personal a través de 802.1X y aislamiento de red multiinquilino mediante Ruckus Dynamic PSK.
Integración de puntos de acceso Allied Telesis con Purple WiFi
Esta guía proporciona un manual de configuración completo para integrar los puntos de acceso de la serie TQ de Allied Telesis con Purple WiFi. Cubre la redirección externa de Captive Portal, la autenticación RADIUS 802.1X y el direccionamiento dinámico de VLAN mediante claves precompartidas privadas (PPSK) para despliegues multiinquilino seguros.