Skip to main content

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).

📖 6 min read📝 1,263 words🔧 2 worked examples3 practice questions📚 8 key definitions

Listen to this guide

View podcast transcript
SONICWALL TZ AND SONICWAVE INTEGRATION WITH PURPLE WIFI Purple WiFi Intelligence Platform - Technical Briefing Series Duration: Approximately 10 minutes Voice: UK English, senior consultant tone - confident, conversational, authoritative --- SEGMENT 1: INTRODUCTION AND CONTEXT (approximately 1 minute) Welcome to the Purple Technical Briefing Series. Today we are covering one of the more technically involved integrations in the enterprise WiFi space: SonicWall TZ firewalls and SonicWave access points, deployed alongside Purple for guest authentication, staff access control, and multi-tenant network isolation. If you are an IT security engineer or an MSP managing venues - hotels, retail chains, conference centres, or mixed-use developments - this briefing is for you. We are going to move quickly through the architecture, the configuration steps, and the places where deployments go wrong. SonicWall is a strong choice in the SMB and mid-market space. The TZ series firewalls are widely deployed, and SonicWave APs integrate natively through SonicOS and the Wireless Network Manager. When you add Purple on top, you get a cloud-managed guest WiFi layer with branded splash pages, RADIUS-based authentication, and first-party data capture - all without replacing your existing SonicWall infrastructure. Let us get into the architecture. --- SEGMENT 2: TECHNICAL DEEP-DIVE (approximately 5 minutes) There are four distinct use cases to cover here, and each one has a different configuration path. 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. Let us start with Guest WiFi and the SonicWall captive portal. SonicOS uses a mechanism called Lightweight Hotspot Messaging - LHM - to handle external captive portal redirects. When a guest connects to your guest SSID and opens a browser, the SonicWall intercepts that HTTP request and redirects it to Purple's splash page URL. The guest authenticates on Purple's platform - via social login, email, or a click-through - and Purple sends an LHM authorisation back to the SonicWall on TCP port 4043. The SonicWall then opens internet access for that device's MAC address. The configuration in SonicOS 7.x works like this. First, navigate to Object, then Match Objects, then Zones. Edit the zone assigned to your guest WiFi - typically a WLAN or custom zone. Under Guest Services, enable both "Enable Guest Services" and "External Guest Authentication." Then go to Configure, Guest Services, General. Set the Client Redirect Protocol to HTTP. Enter Purple's portal hostname as the web server address - that is portal.purple.ai. Set the redirect path to your venue's specific splash page URL, which Purple provides in the venue dashboard. The port is 4043. On the Auth Pages tab, set the login URL to Purple's external portal URL. Set the logout URL if you want to handle session termination. On the Advanced tab, enable "Allow unauthenticated users to access HTTPS sites" only if you need to support HTTPS-first devices - but be aware this weakens the redirect enforcement. Once saved, SonicOS automatically creates a NAT policy and a WAN-to-WAN access rule permitting TCP 4043. Do not delete these auto-generated rules. They are what allows the LHM handshake to complete. Now, Walled Garden configuration. Before a guest authenticates, their device needs to reach certain domains to make the splash page work. Purple's platform depends on its own CDN and API endpoints. The OS captive portal detection probes - captive.apple.com for iOS devices, connectivitycheck.gstatic.com for Android, and msftconnecttest.com for Windows - must all be whitelisted. If you are offering social login, add accounts.google.com, oauth2.googleapis.com, apis.google.com, and gstatic.com for Google. Add www.facebook.com, graph.facebook.com, connect.facebook.net, and the fbcdn.net CDN domain if you are offering Facebook login. In SonicOS, add these as FQDN address objects under Object, Match Objects, Addresses. Then create access rules in the guest zone that permit unauthenticated devices to reach these FQDNs. Use dynamic DNS resolution - SonicOS resolves FQDN objects at regular intervals - rather than static IP entries, which will drift as CDN IP ranges change. Moving on to Secure Staff WiFi with 802.1X. This is where SonicWave APs and Purple's RADIUS server work together. The SonicWave AP acts as the authenticator in the 802.1X exchange. The supplicant is the staff device. Purple's RADIUS server is the authentication server. The EAP method you choose depends on your identity provider. If you are using Microsoft Entra ID or Okta, PEAP-MSCHAPv2 is the most common choice because it works with username and password credentials. If you have deployed device certificates - which is the recommended approach for managed devices - use EAP-TLS. In the Wireless Network Manager, navigate to Policies, Policy Hierarchy, select your AP policy, and click the 802.1X tab. Enter Purple's RADIUS server IP address - available in your Purple venue dashboard under the RADIUS settings section. The shared secret is generated by Purple and must match exactly on both sides. Set the authentication port to 1812 and the accounting port to 1813. For EAP settings, select the method that matches your identity provider configuration. On the Purple side, create a RADIUS policy for staff authentication. Map the staff SSID to a specific VLAN - for example, VLAN 200 for staff. Purple's RADIUS server returns the VLAN assignment using three standard attributes: Tunnel-Type set to VLAN, Tunnel-Medium-Type set to 802, and Tunnel-Private-Group-ID set to the VLAN ID as a string - so "200" for VLAN 200. The SonicWall firewall and SonicWave AP honour these attributes and place the authenticated staff device into the correct VLAN automatically. Now, the most architecturally interesting use case: PPSK and multi-tenant isolation. Private Pre-Shared Keys allow you to run a single SSID and assign each tenant, resident, or user group a unique passphrase. When a device connects using a specific PPSK, the SonicWave AP sends that key to Purple's RADIUS server for validation. Purple looks up the key, identifies the associated tenant or user group, and returns the appropriate VLAN assignment via the Tunnel-Private-Group-ID attribute. The SonicWall then steers that device into the correct VLAN - completely isolated from other tenants on the same SSID. This is Identity-Based Networking in practice. You are not managing SSIDs per tenant. You are managing identities per tenant. In a mixed-use development with ten retail units, one SSID broadcasts across the entire building. Each tenant gets their own PPSK. Each PPSK maps to a dedicated VLAN and subnet. Tenant A's devices never see Tenant B's traffic, even though they are sharing the same physical access points. The PPSK configuration in SonicOS requires RADIUS-based PPSK mode on the SSID. In the Wireless Network Manager, edit the SSID, set the security mode to WPA2-Enterprise with PPSK, and point the RADIUS server at Purple. Purple manages the PPSK-to-VLAN mapping table centrally. When you add a new tenant, you create a new PPSK in Purple, assign it a VLAN, and the change propagates to all SonicWave APs in that venue without touching the firewall configuration. --- SEGMENT 3: IMPLEMENTATION RECOMMENDATIONS AND PITFALLS (approximately 2 minutes) Let me give you the three things that most commonly go wrong in SonicWall and Purple deployments. First: the LHM port. TCP 4043 must be open from the WAN to the SonicWall's WAN interface. If your ISP or upstream firewall blocks this port, the LHM authorisation handshake never completes, and guests get stuck on the splash page after authenticating. They see a successful login on Purple's side, but the SonicWall never receives the authorisation signal. Test this with a telnet or curl check to port 4043 from an external IP before go-live. Second: FQDN object resolution timing. SonicOS resolves FQDN address objects at boot and then at a configurable interval. If you add a new walled garden domain and the resolution has not refreshed yet, unauthenticated devices cannot reach it. Force a manual refresh after adding new FQDN objects, or set the DNS refresh interval to 60 seconds in high-traffic deployments. Third: VLAN sub-interface configuration. Dynamic VLAN assignment via RADIUS only works if the target VLANs exist as sub-interfaces on the SonicWall before the first device authenticates. If a RADIUS response returns Tunnel-Private-Group-ID 110 but VLAN 110 does not exist as a sub-interface on the SonicWall, the device either gets dropped or falls back to the default VLAN. Build and test all VLAN sub-interfaces before enabling RADIUS VLAN assignment. For MSPs managing multiple venues, Purple's cloud dashboard lets you manage RADIUS policies, PPSK tables, and splash page configurations centrally. You can push configuration changes to all venues from a single interface. That is the operational advantage of a cloud overlay approach - the SonicWall hardware stays in place, and Purple handles the identity and policy layer above it. --- SEGMENT 4: RAPID-FIRE Q&A (approximately 1 minute) A few questions that come up regularly. "Can I use SonicWave APs in standalone mode with Purple?" Yes, but you lose some functionality. In standalone mode, SonicWave APs manage their own RADIUS configuration locally. You can still point them at Purple's RADIUS server for 802.1X. But for PPSK with dynamic VLAN assignment, you need the SonicWall TZ as the RADIUS proxy or the Wireless Network Manager managing the AP policy centrally. "Does Purple support WPA3 on SonicWave?" WPA3 support on SonicWave depends on the firmware version and AP model. SonicWave 600 series APs support WPA3. For captive portal use cases, WPA3 with Opportunistic Wireless Encryption is compatible with Purple's LHM redirect flow, but test on your specific firmware version before deploying at scale. "How does Purple handle GDPR for guest data collected via the splash page?" Purple is ISO 27001 certified, GDPR compliant, and Cyber Essentials certified. Consent is captured at the splash page with configurable opt-in checkboxes. Purple stores first-party data in line with your data retention policy. Guests can access and delete their data via Purple's self-service portal. "What RADIUS attributes does Purple return for dynamic VLAN assignment?" Three attributes: Tunnel-Type with value VLAN, Tunnel-Medium-Type with value 802, and Tunnel-Private-Group-ID with the VLAN ID as a string. These are the standard RFC 2868 attributes supported by SonicOS and SonicWave. --- SEGMENT 5: SUMMARY AND NEXT STEPS (approximately 1 minute) To summarise. SonicWall TZ firewalls and SonicWave APs integrate with Purple via two primary mechanisms: LHM for guest captive portal redirection, and RADIUS for 802.1X staff authentication and PPSK-based multi-tenant isolation. The key configuration steps are: enable External Guest Authentication on the guest zone, configure the Purple portal URL on port 4043, build your walled garden FQDN objects, configure RADIUS on the SonicWave AP policy in Wireless Network Manager, and create your VLAN sub-interfaces on the SonicWall before enabling dynamic VLAN assignment. For multi-tenant deployments, PPSK with RADIUS-based VLAN steering is the architecture to use. One SSID, one set of APs, complete tenant isolation via identity-based VLAN assignment. If you are planning a deployment or reviewing an existing one, Purple's technical team can provide venue-specific RADIUS configuration files and walled garden domain lists. The Purple platform supports 80,000 live venues and has processed 440 million logins in 2024 - the integration patterns we have covered today are proven at scale. Thanks for listening. The full written guide with step-by-step configuration tables and Mermaid architecture diagrams is available on the Purple website. --- END OF SCRIPT

header_image.png

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.

architecture_overview.png

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.

ppsk_vlan_diagram.png

Implementation Guide

1. Configuring the SonicWall Captive Portal (LHM)

To configure the external captive portal on a SonicWall TZ series running SonicOS 7.x:

  1. Navigate to Object > Match Objects > Zones. Edit the zone assigned to your guest network (e.g., WLAN).
  2. Under the Guest Services tab, enable Enable Guest Services and External Guest Authentication.
  3. Navigate to Configure > Guest Services > General.
  4. Set the Client Redirect Protocol to HTTP.
  5. Set the Web Server address to portal.purple.ai.
  6. Set the Port to 4043.
  7. Under the Auth Pages tab, set the Login URL to the specific splash page URL provided in your Purple venue dashboard.
  8. 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.com
  • oauth2.googleapis.com
  • apis.google.com
  • *.gstatic.com

3. Configuring RADIUS for SonicWave APs

To integrate SonicWave APs with Purple RADIUS via the Wireless Network Manager:

  1. Navigate to Policies > Policy Hierarchy and select your AP Policy.
  2. Select the 802.1X tab.
  3. Enter the Purple RADIUS server IP address (found in your Purple dashboard).
  4. Enter the shared secret generated by Purple.
  5. Set the Authentication Port to 1812 and the Accounting Port to 1813.
  6. 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 co-working 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'.

Examiner's Commentary: This approach strictly isolates untrusted guest traffic from operational systems. Using Purple for both the captive portal and RADIUS authentication centralises identity management. MAB is appropriate for headless devices (like cleaning carts), while 802.1X secures staff phones.

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.

Examiner's Commentary: This Identity-Based Network design scales cleanly. Broadcasting 15 SSIDs would cause severe management frame overhead and degrade WiFi performance. PPSK provides the security of unique credentials and the isolation of dedicated VLANs without the RF penalty of multiple SSIDs.

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).