How VPN Kill Switches Work: Types, Testing, and Setup

By  |  Updated: September 25, 2026  |  ~18 min read

A VPN kill switch is the fail-closed part of a VPN app. If the encrypted tunnel disappears, it prevents protected traffic from quietly falling back to your normal connection. That blocks accidental exposure of your public IP address, DNS requests, and active transfers while the VPN reconnects.

The critical detail is scope. Some kill switches protect the whole device, some stop only selected apps, and some remain active even after a manual disconnect or restart. This guide explains the differences, compares current implementations, and gives you a repeatable test.

Quick answer

What Does a VPN Kill Switch Do?

It blocks network traffic that would otherwise leave outside the VPN tunnel. A standard switch engages after an active tunnel drops. An always-on or permanent mode is stricter: it permits internet traffic only while the VPN is connected, including after reboot or manual disconnect. For maximum protection, enable auto-connect and device-wide always-on mode, then test every OS you use.

How a VPN kill switch blocks unencrypted traffic when the VPN disconnects
Table of Contents

The safety netWhat Is a VPN Kill Switch?

A VPN creates an encrypted tunnel between your device and a VPN server. If that tunnel fails, most operating systems restore connectivity over Wi-Fi, Ethernet, or mobile data. The fallback is convenient, but websites can then see your ISP-assigned IP and DNS requests may go to your normal resolver.

A kill switch inserts a policy between apps and the network. It allows the traffic needed to establish the VPN, allows protected traffic through the tunnel interface, and denies traffic that tries to use an ordinary interface when protection is required. A page stops loading or a transfer pauses instead of continuing under your real IP.

What it protects: public IP, DNS queries, background connections, transfers, and IPv4/IPv6 traffic—if the implementation covers those paths. It does not anonymize logged-in accounts, erase cookies, detect malware, or undo exposure before the VPN connected.

Kill switch vs. related features

FeatureMain jobDuring tunnel failureReplaces a kill switch?
Kill switchBlocks unsafe pathsTraffic stops until the secure route returns—
Auto-connectStarts/restores VPNAttempts reconnection but may not block the gapNo
DNS leak protectionKeeps lookups in tunnelProtects DNS, not all trafficNo
Always-on VPNRequires VPN connectivityCan block until VPN is availableYes, with “block without VPN”
Split tunnelingCreates exceptionsBehavior depends on rules and scopeNo

Under the hoodHow a VPN Kill Switch Works

Modern kill switches usually rely on OS firewall, packet-filtering, or VPN framework rules—not repeated IP checks. The app identifies the permitted tunnel interface and VPN server connection, then prevents other routes from carrying protected traffic. Strong implementations cover IPv4, IPv6, DNS, network changes, sleep/wake, connecting, and server changes.

1Policy installedAllowed tunnel and control traffic are defined.
2Tunnel monitoredThe app or OS tracks connection state.
3Failure detectedA network swap, server loss, or crash removes the route.
4Traffic blockedFallback stays denied until protection returns.

Traffic state during an unexpected disconnect

A working switch changes the failure period from unsafe fallback to blocked.

Connected
Allowed
Tunnel drops
Detected
Switch active
Denied
Reconnecting
Denied
Restored
Allowed

A reactive switch may be inactive before the first VPN connection or after you click Disconnect. An always-on mode keeps non-VPN internet unavailable in those states. That distinction matters more than names such as Network Lock or Lockdown Mode.

Firewall rules, routes, and process control

A network-level design typically permits loopback and required local services, permits contact with the selected VPN server, permits traffic through the tunnel, and rejects everything else. Application-level modes instead terminate or suspend named programs. Because APIs differ, the same provider can behave differently across Windows, macOS, Android, iOS, and Linux.

Protection modesTypes of VPN Kill Switches

System-level

Blocks non-VPN traffic for the whole device after a drop. It protects browsers, sync clients, messaging, and background services without an app list.

  • Best default
  • Broad coverage
  • May interrupt LAN devices

Application-level

Closes or blocks selected apps. Ordinary internet can remain available elsewhere, but unlisted processes remain outside its scope.

  • Useful for a torrent/work app
  • Granular, less comprehensive
  • Needs app-list maintenance

Standard/reactive

Engages after an active session fails. Intentional disconnection usually restores normal internet.

  • Convenient daily default
  • Fewer confusing outages
  • Can leave pre-connect gaps

Always-on/permanent

Blocks internet whenever the VPN is unavailable—even after restart or deliberate disconnect.

  • Strongest sensitive-work mode
  • Prevents forgetting
  • Complicates captive portals

Relative protection scope by mode

Qualitative model, not a performance benchmark.

Always-onBroadest
System reactiveBroad
App-levelSelected

Current implementationsVPN Kill Switch Comparison

Provider support changes by app build and distribution channel. This comparison reflects official documentation reviewed for this update; inspect your exact app before assuming protection is enabled.

VPNCoverageStricter/app optionImportant caveat
NordVPNWindows, Linux, Android 8+, iOS; macOS varies by appWindows app switch; Linux also blocks manual disconnect; direct Mac app can close selected appsOff by default on Windows, Android, macOS, and Linux; automatic on iOS. Mac builds differ.
ExpressVPNWindows, macOS, Linux, Android, iOS, routers“Enable at all times” on Windows, Mac, LinuxStandard mode is default but does not block deliberate disconnect; router switch cannot be disabled.
Proton VPNWindows, macOS, Linux, Android (OS), iOS/iPadOSAdvanced on Windows/Linux; iOS/iPadOS advanced is betaDocuments brief Mac server-switch exposure and some Apple-service DNS exceptions.
SurfsharkWindows, macOS, Android, iOS, LinuxOptions vary by platform/buildLinux switch is in Snap and .deb packages, not Flatpak.

Feature comparison, not a claim of identical leak resistance. OS updates, protocol choice, split-tunnel rules, and app versions affect results.

Want both system-wide and per-app controls? NordVPN offers Internet and App Kill Switch modes on Windows plus platform-specific protection elsewhere.

Try NordVPN Risk-Free →

Device differencesHow Kill Switches Behave by Platform

Windows

Apps can use Windows Filtering Platform and routing controls. Windows commonly offers both device-wide and app-specific modes. Check reboot persistence, LAN exemptions, and whether split-tunneled apps intentionally stay outside the VPN.

macOS

Apps use Apple networking frameworks and packet-filtering capabilities. App Store builds may differ from direct downloads. Test server switching, sleep/wake, Wi-Fi changes, and local printer/NAS behavior.

Android

Android provides native Always-on VPN and Block connections without VPN. Google’s Android VPN documentation confirms always-on VPN can block connections that do not use it. Menu names vary, and strict mode may block LAN traffic.

iPhone and iPad

iOS apps operate inside Apple’s Network Extension framework. Providers may reconnect automatically and offer standard or advanced modes, but Apple-controlled traffic can create documented exceptions. Test independently rather than inferring behavior from Windows.

Linux

Linux clients commonly use nftables/iptables, policy routing, and interface rules. Protection can depend on GUI, CLI, NetworkManager, or manual profiles. Importing WireGuard/OpenVPN alone does not guarantee a fail-closed firewall.

Routers and browser extensions

A router kill switch can protect devices that cannot run VPN apps, if their traffic uses that router policy. Browser extensions normally protect browser traffic only and are not system-wide unless they control the full desktop VPN app. A kill switch also does not provide obfuscation or unblock a filtered service by itself; see how to unblock websites with VPNs or proxies for those separate techniques.

Failure conditionsWhen VPN Tunnels Drop—and What Can Leak

A laptop wakes, a phone moves from Wi-Fi to 5G, a router renews its address, a server restarts, a VPN process crashes, or battery management pauses it. Network handoffs and captive portals are especially valuable stress tests.

Network handoff

Changing interface changes the default route. Queued connections can resume before the VPN.

Sleep and wake

The physical interface may return before the tunnel; background apps reconnect immediately.

Server/protocol failure

Maintenance, blocked ports, or process failure removes encryption while the normal route remains.

Configuration conflict

Split tunneling, custom DNS, endpoint security, another VPN, or firewall tools can compete with rules.

If fallback occurs, destinations can see your ISP IP, your ISP can observe destination addresses or DNS, and peer-to-peer sessions can advertise the non-VPN address. HTTPS still encrypts page content, but does not hide destination IPs or replace VPN privacy.

Not retroactive: if an app sends traffic before a reactive switch becomes active, that exposure has happened. For sensitive work, use always-on enforcement, launch at startup, and open sensitive apps only after confirming the VPN IP.

ConfigurationHow to Enable a VPN Kill Switch Safely

  1. Update the OS and VPN app.Restart if the installer replaces a VPN service or extension.
  2. Open connection/privacy settings.Look for Kill Switch, Network Lock, Lockdown, or Always-on VPN. Auto-connect alone is not enough.
  3. Choose scope.Use device-wide protection by default; app mode knowingly leaves other traffic online.
  4. Choose strictness.Always-on is safest; standard is easier around captive portals.
  5. Review LAN and split-tunnel exceptions.Allow only what you actually need.
  6. Enable startup auto-connect.It restores protection; the switch covers the gap.
  7. Run the tests below.Repeat after major OS/VPN updates.

On Android, open system VPN settings for your provider, enable Always-on VPN, then Block connections without VPN. Elsewhere, use the provider app because names and modes vary.

VerificationHow to Test for IP and DNS Leaks

Testing must prove traffic stops during failure and returns through the VPN—not the ISP. Save your normal and VPN-assigned IP addresses first.

  1. Establish a baseline.With VPN off, note public IPv4/IPv6 and DNS. Connect and confirm they change.
  2. Create continuous traffic.Use a repeating request, stream, or harmless download.
  3. Force an unexpected failure.Toggle Wi-Fi, swap Wi-Fi/Ethernet, or move between Wi-Fi and mobile data. Clicking Disconnect does not test reactive mode.
  4. Observe the gap.Traffic should fail or pause. The baseline IP and ISP resolver must not appear.
  5. Repeat transitions.Test sleep/wake, server and protocol changes, app termination, reboot, IPv6, and split-tunneled apps.

Five-event stress-test checklist

Pass only when traffic blocks during the gap and resumes with VPN IP/DNS.

Wi-Fi toggleRequired
Network handoffRequired
Sleep/wakeRequired
Process failureRequired
RebootAlways-on

See DNS leaks and how to prevent them for resolver testing. If your normal IP appears, stop sensitive activity, disable conflicting tools, update the app, and report the OS, protocol, and reproduction steps.

When internet stopsKill Switch Troubleshooting

SymptomLikely causeWhat to try
No internet after closing VPNPermanent rules remainReopen and disconnect normally; change strict mode if safe; restart app/service/device.
Captive portal will not openPortal must load before tunnelUse the provider captive-portal flow; reconnect immediately after authentication.
Printer/NAS disappearsLAN traffic blockedAllow LAN only on trusted networks or exempt the required device/subnet.
Connected but pages failDNS, firewall, protocol conflictRestore automatic DNS, change protocol, remove duplicate profiles, inspect firewall logs.
Leak during server changeRules removed too earlyEnable always-on, change protocol, update, and report the reproducible sequence.
Split app loses accessSwitch overrides bypassCheck documented interaction and decide which policy takes priority.

Buying criteriaHow to Choose a Reliable Kill Switch

Look for native support on every device, device-wide and always-on modes, clear status/defaults, IPv6 and DNS coverage, explicit LAN/split-tunnel exceptions, and a record of transparent security updates. Then test it. Audits help, but a label or marketing page does not prove your configuration is leak-free.

Also compare logging policy, protocols, app security, ownership, servers, and performance. See how to choose the right VPN, split vs. full tunneling, and how VPNs work.

Recommended starting point: NordVPN combines a system-wide Internet Kill Switch with a Windows App Kill Switch and platform-specific controls. Enable it, then run the five-event test.

Get NordVPN With a 30-Day Guarantee →

Common questionsVPN Kill Switch FAQ

Should I leave it on all the time?
Yes if exposing your IP matters. Standard mode is a low-friction default; always-on is better for torrenting, remote work, journalism, or any workflow that must never fall back.
Does it slow down a VPN?
Normally not measurably. Firewall checks add negligible overhead compared with encryption, server distance, and congestion.
Why does internet stop after I disconnect?
Always-on mode is working: it treats manual disconnect as unsafe. Reconnect or intentionally disable strict mode. Restart the app/service if its status and behavior disagree.
Does it prevent DNS leaks?
It should block DNS during tunnel failure if it covers all paths. Connected-state DNS leak protection is separate. Test both.
Does it work with split tunneling?
Sometimes. Some apps keep bypassed apps online, others block all traffic, and some disallow the combination. Verify your intended behavior.
Can it protect a torrent client?
Yes. Use a device-wide or targeted app switch; for defense in depth, bind the client to the VPN interface and force-test a failure.
Do free VPNs include one?
Some do, but coverage varies. Verify the exact app and failure behavior. See are free VPNs safe?
Will it block local devices?
It can. Many apps have an “allow LAN” option. Use the exception only on trusted networks.

Bottom Line: Use Fail-Closed Protection, Then Test It

Prefer a system-wide, always-on implementation; pair it with auto-connect; understand LAN and split-tunnel exceptions; and test Wi-Fi handoffs, sleep/wake, process failure, and reboot. The best kill switch is the one that demonstrably prevents your device from sending protected traffic outside the tunnel.

Sources & comparison methodology

Current provider support documentation and OS networking references were compared by platform, scope, disconnect behavior, reboot persistence, LAN handling, and known limitations. Product labels were normalized into app-level, system-wide reactive, and always-on modes. Conceptual charts explain scope and tests; they do not use invented performance or adoption figures.

VPN apps change frequently. Recheck provider documentation and test your exact OS, build, protocol, and settings.

Affiliate disclosure: Some links are affiliate links. We may earn a commission at no extra cost to you; this does not change our technical criteria.

Share this:

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *