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).
Listen to this guide
View podcast transcript
- Executive Summary
- Technical Deep-Dive
- Captive Portal Redirection via LHM
- Walled Garden Architecture
- Secure Staff WiFi and 802.1X
- Multi-Tenant Isolation with PPSK
- Implementation Guide
- 1. Configuring the SonicWall Captive Portal (LHM)
- 2. Building the Walled Garden
- 3. Configuring RADIUS for SonicWave APs
- 4. Configuring Dynamic VLAN Steering
- Best Practices
- Troubleshooting & Risk Mitigation
- ROI & Business Impact

Executive Summary
Integrating SonicWall network infrastructure with Purple's cloud overlay provides enterprise-grade access control alongside sophisticated first-party data capture. This guide covers the technical implementation of four distinct use cases: Guest WiFi with captive portal redirection, Walled Garden exceptions, Secure Staff WiFi using 802.1X, and Multi-Tenant isolation using SonicWall Private Pre-Shared Keys (PPSK) with dynamic VLAN steering.
We process 440 million logins annually across 80,000+ live venues. The architecture detailed below is proven at scale in hospitality, retail, and public-sector environments. It allows you to maintain your existing SonicWall hardware while offloading identity management, splash page hosting, and RADIUS authentication to the Purple cloud.
Technical Deep-Dive
The integration relies on two primary mechanisms: Lightweight Hotspot Messaging (LHM) for captive portal redirection, and RADIUS for 802.1X and PPSK authentication.
Captive Portal Redirection via LHM
SonicOS uses LHM to handle external captive portal redirects. When an unauthenticated guest device attempts to access the internet, the SonicWall TZ firewall intercepts the HTTP request and redirects the client to Purple's hosted splash page. The guest completes the authentication flow (e.g., social login, form completion). Purple then sends an LHM authorisation packet back to the SonicWall on TCP port 4043. Upon receiving this packet, the SonicWall updates its internal access control list, permitting the device's MAC address to access the internet.

Walled Garden Architecture
Before authentication, the guest device is held in a restricted zone. The walled garden is the specific set of Fully Qualified Domain Names (FQDNs) the device is permitted to access to render the splash page and complete the login process. This includes Purple's CDN (cdn.purple.ai), the authentication API (api.purple.ai), and the domains required by third-party identity providers like Google Workspace, Microsoft Entra ID, and Meta.
SonicOS implements walled gardens using FQDN address objects. The firewall performs dynamic DNS resolution on these objects, updating the permitted IP ranges automatically. This is critical because identity providers and CDNs use dynamic IP allocation; static IP whitelists will inevitably fail.
Secure Staff WiFi and 802.1X
For staff networks, SonicWave APs act as the 802.1X authenticator, proxying requests to Purple's RADIUS server. We recommend EAP-TLS for managed devices using certificates, or PEAP-MSCHAPv2 for username/password authentication against directories like Microsoft Entra ID. Upon successful authentication, Purple returns standard RADIUS attributes (Tunnel-Type, Tunnel-Medium-Type, and Tunnel-Private-Group-ID) to assign the device to the correct staff VLAN dynamically.
Multi-Tenant Isolation with PPSK
Identity-Based Networks eliminate the need for complex multi-SSID deployments. Using SonicWall PPSK, a single SSID (e.g., "Multi-Tenant-WiFi") broadcasts across the venue. Each tenant receives a unique passphrase. When a device associates using a specific PPSK, the SonicWave AP validates the key against Purple's RADIUS server. Purple identifies the tenant and returns the associated VLAN ID. The SonicWall then steers the traffic into the isolated tenant VLAN.

Implementation Guide
1. Configuring the SonicWall Captive Portal (LHM)
To configure the external captive portal on a SonicWall TZ series running SonicOS 7.x:
- Navigate to Object > Match Objects > Zones. Edit the zone assigned to your guest network (e.g., WLAN).
- Under the Guest Services tab, enable Enable Guest Services and External Guest Authentication.
- Navigate to Configure > Guest Services > General.
- Set the Client Redirect Protocol to HTTP.
- Set the Web Server address to
portal.purple.ai. - Set the Port to
4043. - Under the Auth Pages tab, set the Login URL to the specific splash page URL provided in your Purple venue dashboard.
- Save the configuration. SonicOS will automatically generate a NAT policy and a WAN-to-WAN access rule to permit TCP port 4043. Do not modify these auto-generated rules.
2. Building the Walled Garden
Create FQDN address objects for the required domains and add them to an address group. Apply this group to an allow rule in your guest zone.
Required Purple Domains:
*.purple.ai*.purpleportal.net
OS Captive Portal Probes:
captive.apple.com(iOS/macOS)connectivitycheck.gstatic.com(Android)msftconnecttest.com(Windows)
Common Social Login Domains (Google):
accounts.google.comoauth2.googleapis.comapis.google.com*.gstatic.com
3. Configuring RADIUS for SonicWave APs
To integrate SonicWave APs with Purple RADIUS via the Wireless Network Manager:
- Navigate to Policies > Policy Hierarchy and select your AP Policy.
- Select the 802.1X tab.
- Enter the Purple RADIUS server IP address (found in your Purple dashboard).
- Enter the shared secret generated by Purple.
- Set the Authentication Port to
1812and the Accounting Port to1813. - Select the appropriate EAP method based on your identity provider.
4. Configuring Dynamic VLAN Steering
Ensure the target VLANs exist as sub-interfaces on the SonicWall TZ firewall before enabling dynamic assignment.
In the Purple dashboard, map the user group or PPSK to the target VLAN ID. Purple will return the following attributes upon successful authentication:
Tunnel-Type = VLAN (13)Tunnel-Medium-Type = 802 (6)Tunnel-Private-Group-ID = [VLAN ID](e.g., "110")
Best Practices
- Test LHM Port Visibility: TCP port 4043 must be reachable from the internet to the SonicWall WAN interface. Test this using an external port scanner before go-live. If the ISP blocks this port, the authorisation packet will drop, and guests will remain trapped on the splash page.
- Pre-Provision VLAN Sub-Interfaces: Dynamic VLAN steering will fail silently if the target VLAN sub-interface is not configured on the SonicWall prior to the authentication event. The device will fall back to the default untagged VLAN.
- Force Web-Based OAuth: Ensure your splash page configuration forces web-based OAuth flows. Deep-linking to native social media apps (like the Facebook iOS app) often breaks the captive portal sequence because the native app traffic is blocked by the walled garden.
- Optimise DNS Refresh Intervals: SonicOS resolves FQDN objects periodically. In high-turnover environments like stadiums or transport hubs, set the DNS refresh interval for walled garden objects to 60 seconds to ensure CDN IP changes are tracked accurately.
Troubleshooting & Risk Mitigation
Symptom: Guest completes the splash page login but has no internet access. Cause: The LHM authorisation packet on TCP 4043 is not reaching the SonicWall. Resolution: Verify the auto-generated WAN-to-WAN access rule exists. Check upstream ISP routers for port blocking. Ensure the SonicWall WAN IP is correctly registered in the Purple dashboard.
Symptom: Splash page fails to load, or social login buttons return CORS errors. Cause: Incomplete walled garden configuration. Resolution: Connect a test device in an unauthenticated state. Use the browser developer tools (Network tab) to identify blocked HTTPS requests. Add the failing domains as FQDN address objects in SonicOS.
Symptom: Staff devices authenticate via 802.1X but receive an IP address from the default VLAN instead of the assigned VLAN.
Cause: The target VLAN sub-interface does not exist on the SonicWall, or the RADIUS attributes are malformed.
Resolution: Verify the VLAN sub-interface is active. Check the Purple RADIUS logs to confirm Tunnel-Private-Group-ID is being sent as a string value matching the VLAN ID.
ROI & Business Impact
Deploying SonicWall infrastructure with Purple transforms a standard network cost centre into a measurable business asset.
For a 200-location retail chain, moving from generic pre-shared keys to a branded captive portal typically yields a 40% increase in known customer profiles within six months. This first-party data integrates directly into CRM systems, driving targeted marketing campaigns and increasing repeat footfall.
In multi-tenant environments like coworking spaces or student accommodation, PPSK with dynamic VLAN steering eliminates the operational overhead of managing dedicated hardware per tenant. You deploy one physical network and segment it logically via identity. This reduces hardware capital expenditure by up to 60% while maintaining strict ISO 27001-compliant network isolation.
Key Definitions
Lightweight Hotspot Messaging (LHM)
A protocol used by SonicWall to communicate with external captive portals. It handles the redirect and authorisation handshake.
Required for integrating SonicOS with cloud-managed guest WiFi platforms like Purple.
Walled Garden
A specific set of domains or IP addresses that unauthenticated devices are permitted to access.
Critical for allowing guest devices to load the splash page, access CDNs, and complete social login OAuth flows before gaining full internet access.
Private Pre-Shared Key (PPSK)
A security method where multiple unique passphrases are valid on a single SSID, with each passphrase tied to a specific user or policy.
Used in multi-tenant environments to isolate traffic without broadcasting multiple SSIDs.
Captive Network Assistant (CNA)
The built-in OS mechanism (on iOS, Android, Windows) that detects a captive portal and automatically opens a limited browser window for authentication.
If the OS probe domains (e.g., captive.apple.com) are not in the walled garden, the CNA will not trigger, and guests will think the WiFi is broken.
Dynamic VLAN Steering
The process of assigning a device to a specific VLAN based on its identity or credentials, rather than the SSID it connected to.
Managed by Purple RADIUS returning the Tunnel-Private-Group-ID attribute to the SonicWall.
FQDN Address Object
A firewall object based on a Fully Qualified Domain Name rather than a static IP address.
SonicOS resolves these objects dynamically, making them essential for robust walled garden configurations.
Identity-Based Network
A network architecture where access policies and segmentation are applied based on the authenticated user or device, rather than physical ports or SSIDs.
Achieved by combining Purple RADIUS with SonicWall PPSK and 802.1X.
Tunnel-Private-Group-ID
The standard RFC 2868 RADIUS attribute used to specify the VLAN ID for a connecting device.
Must be returned by Purple as a string value (e.g., '100') to instruct the SonicWall to steer the device.
Worked Examples
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.
Practice Questions
Q1. You have configured the SonicWall guest zone for External Guest Authentication and set the web server to portal.purple.ai. Guests are redirected to the splash page and can log in successfully, but they never gain internet access. What is the most likely cause?
Hint: Think about how Purple tells the SonicWall that the authentication was successful.
View model answer
The LHM authorisation packet is being blocked. TCP port 4043 must be open on the SonicWall WAN interface to receive the success signal from Purple. Check upstream firewalls or ISP configurations for port blocking.
Q2. A venue wants to offer Facebook login on their splash page. You add www.facebook.com to the walled garden FQDN address group. Guests report that the Facebook login page loads, but the styling is broken and the login button does not work.
Hint: Modern web applications load assets from multiple domains.
View model answer
The walled garden is incomplete. You must also whitelist the domains that serve Facebook's CSS, JavaScript, and API calls, specifically graph.facebook.com, connect.facebook.net, and the CDN domain (e.g., *.fbcdn.net).
Q3. You are deploying PPSK for a multi-tenant office. You configure the SSID for WPA2-Enterprise with PPSK and point the RADIUS server to Purple. You create a PPSK in Purple mapped to VLAN 50. When a user connects with that PPSK, they receive an IP address from VLAN 10 instead. Why?
Hint: The SonicWall needs to know where to send the traffic before the RADIUS request completes.
View model answer
VLAN 50 has not been created as a sub-interface on the SonicWall TZ firewall. Dynamic VLAN steering requires the target VLAN to exist on the firewall beforehand; if it does not, the device falls back to the default untagged VLAN (in this case, VLAN 10).
Continue reading in this series
DrayTek Vigor Routers and Access Points Integration with Purple WiFi
This guide provides step-by-step technical instructions for integrating DrayTek Vigor routers and VigorAP access points with Purple's cloud platform. It covers DrayTek captive portal configuration for Guest WiFi, 802.1X authentication for secure Staff WiFi, Walled Garden setup, and DrayTek Multiple PSK (PPSK) configuration for Multi-Tenant network segmentation with dynamic VLAN assignment. Designed for IT installers and SMB network administrators deploying Purple across hospitality, retail, and multi-tenant venues.
DrayTek Vigor Routers and Access Points Integration with Purple WiFi
This guide provides step-by-step technical instructions for integrating DrayTek Vigor routers and VigorAP access points with Purple's cloud platform. It covers DrayTek captive portal configuration for Guest WiFi, 802.1X authentication for secure Staff WiFi, Walled Garden setup, and DrayTek Multiple PSK (PPSK) configuration for Multi-Tenant network segmentation with dynamic VLAN assignment. Designed for IT installers and SMB network administrators deploying Purple across hospitality, retail, and multi-tenant venues.
Cambium Networks cnPilot and cnMaestro Integration with Purple WiFi
This authoritative guide details the integration of Cambium Networks cnPilot access points and cnMaestro cloud controller with the Purple WiFi intelligence platform. It covers architecture, captive portal configuration, walled garden requirements, 802.1X Staff WiFi, and dynamic VLAN segmentation using Cambium ePSK for multi-tenant environments.