Skip to main content

Overview

Local network access (also called “Allow LAN” or “Local network sharing”) controls whether your device can communicate with other devices on your local network while connected to Mullvad VPN. When enabled:
  • Access printers, NAS, file shares, media servers
  • Connect to local services (home assistant, routers, IoT devices)
  • Participate in local multiplayer games
  • Use Chromecast, AirPlay, and local streaming
When disabled (default):
  • Maximum security and privacy
  • No local network communication
  • Protection against local network attacks
Local network access is available on all platforms: Windows, Linux, macOS, Android, and iOS. On iOS, the local network is always accessible due to platform limitations.

How It Works

Without VPN (Normal Network Access)

VPN Connected with Local Network Access Disabled (Default)

Firewall blocks local network traffic for maximum security.

VPN Connected with Local Network Access Enabled

Firewall allows traffic to private IP ranges.

Private IP Address Ranges

When local network access is enabled, Mullvad allows traffic to these private (non-routable) IP ranges:

IPv4 Private Ranges

IPv6 Private Ranges

Multicast Ranges (Outgoing Only)

When local network access is enabled, outgoing traffic to local multicast is allowed: IPv4 Multicast:
  • 224.0.0.0/24 - Local subnet multicast
  • 239.0.0.0/8 - Administratively scoped multicast (mDNS, SSDP)
  • 255.255.255.255/32 - Broadcast
IPv6 Multicast:
  • ff01::/16 - Interface-local multicast
  • ff02::/16 - Link-local multicast
  • ff03::/16 - Realm-local multicast
  • ff04::/16 - Admin-local multicast
  • ff05::/16 - Site-local multicast
Multicast is used by service discovery protocols like mDNS (Bonjour), SSDP (UPnP), and device discovery.

Enabling Local Network Access

Using the GUI

1

Open Settings

Navigate to SettingsVPN settings
2

Find Local Network Sharing

Look for Local network sharing or Allow LAN setting
3

Enable or Disable

  • Toggle On to allow local network access
  • Toggle Off to block local network access (maximum security)
4

Changes Apply Immediately

No reconnection required - firewall rules update instantly

Using the CLI

Output:
or

What You Can Access

When local network access is enabled:

Network Services

Accessible:
  • Printers: Network and WiFi printers
  • File shares: SMB/CIFS, NFS, AFP
  • Network storage: NAS devices, file servers
  • Media servers: Plex, Jellyfin, DLNA
  • Streaming devices: Chromecast, AirPlay, Roku
  • Gaming: Local multiplayer, game servers on LAN
  • IoT devices: Smart home hubs, lights, cameras
  • Routers: Web interfaces, management panels
  • Development servers: Local web servers, databases

Service Discovery Protocols

Works:
  • mDNS/Bonjour: Discover devices (.local domains)
  • SSDP/UPnP: Media devices, DLNA
  • NetBIOS: Windows network browsing
  • SMB discovery: Network neighborhood

Security Implications

Risks of Enabling Local Network Access

Potential security risks:
  1. Local network attacks: Malicious devices on local network can attack your device
  2. Compromised networks: If local network is compromised, your device is exposed
  3. Public WiFi risks: Dangerous on untrusted networks (cafes, hotels, airports)
  4. Rogue devices: Attackers on same WiFi can scan and probe your device
  5. ARP spoofing: Man-in-the-middle attacks on local network

When to Enable

Safe to enable on:
  • Home networks: Trusted environment you control
  • Office networks: Corporate networks with security measures
  • Trusted private networks: Friends, family, known safe environments

When to Disable

Should disable on:
  • Public WiFi: Coffee shops, airports, hotels
  • Shared networks: Coworking spaces, libraries
  • Untrusted networks: Any network you don’t control or trust
  • Travel: Unfamiliar networks abroad
Best practice: Disable local network access by default. Enable only when needed and on trusted networks. Disable again when leaving home.

Use Cases

Home Office Setup

Media Streaming

Access local media servers and casting devices:
  1. Enable local network access
  2. Connect to VPN
  3. Stream to Chromecast, use Plex, access NAS
  4. Internet traffic still goes through VPN

Gaming

Local multiplayer or LAN games:

Development

Access local development servers:

Private Custom DNS

Local network access is required for private custom DNS servers:
Without local network access enabled:
  • Private DNS servers (192.168.x.x, 10.x.x.x) are unreachable
  • DNS queries will fail
  • Internet access may not work
Public custom DNS (e.g., 8.8.8.8, 1.1.1.1) does not require local network access. It’s routed through the VPN tunnel.

Platform Differences

Windows, Linux, macOS

  • Local network access can be enabled or disabled
  • Firewall rules enforced at kernel level
  • Changes apply immediately
  • Full control over local network access

Android

  • Local network access can be enabled or disabled
  • Enforced via VPN Service API routing rules
  • Works as expected

iOS

iOS limitation: Local network is always accessible regardless of the setting.This is a limitation of iOS VPN APIs. The setting is shown for consistency but has no effect on iOS.
From the README (source/README.md:70):
* The local network is always accessible on iOS with the current implementation

Compatibility

Local network access works with: No conflicts with any other Mullvad features.

Troubleshooting

Cannot Access Local Devices

If you can’t reach local network devices:
  1. Enable local network access:
  2. Verify setting:
    Should show: Local network sharing setting: allow
  3. Check device IP: Ensure target device is on private IP range
  4. Check firewall: Ensure target device’s firewall allows connections
  5. Verify network: Ensure you’re on the same network as target device

Local DNS Not Working

If private DNS server is unreachable:
  1. Enable local network access:
  2. Set private DNS:
  3. Test DNS resolution:
  4. Verify DNS server is running: Check DNS server is online and accessible

Chromecast/AirPlay Not Working

If casting devices aren’t discovered:
  1. Enable local network access:
  2. Restart casting app: Close and reopen the app
  3. Check device is on same network: Ensure casting device and your device are on same WiFi
  4. Check router: Some routers have AP isolation that prevents device-to-device communication

SMB/Network Shares Not Visible

  1. Enable local network access
  2. Manual connection: Instead of browsing, connect directly by IP:
    • Windows: \\192.168.1.100\share
    • macOS: smb://192.168.1.100/share
    • Linux: smb://192.168.1.100/share
  3. Check credentials: Ensure you have correct username/password
  4. Check SMB version: Older SMB versions may be disabled on modern systems

Best Practices

Network-Specific Settings

Access your printers, NAS, smart home devices.

Automation Ideas

Script to toggle based on network (example for macOS/Linux):

Security Hygiene

  1. Default to disabled: Only enable when needed
  2. Disable on public WiFi: Always block on untrusted networks
  3. Review regularly: Check setting when changing networks
  4. Combine with firewall: Use OS firewall for additional protection
  5. Monitor connections: Check for unexpected network activity

Technical Details

Firewall Implementation

From source code (talpid-core/src/firewall/linux.rs:947):
Firewall rules are added/removed based on allow_lan setting.

Always-Allowed Protocols

Regardless of local network access setting, these protocols are always allowed:
  • DHCPv4: Client-server (ports 67-68)
  • DHCPv6: Client-server (ports 546-547)
  • NDP subset: Router solicitation/advertisement, neighbor solicitation/advertisement
These are required for network connectivity and IP configuration.

Android Implementation

From source code (talpid-tunnel/src/tun_provider/android/mod.rs:323-341):
Android uses VPN Service API to exclude private IPs from VPN routing.

Further Reading