What Is a VPN Kill Switch? How It Works and Why You Need One

What Is a VPN Kill Switch? How It Works and Why You Need One

A VPN kill switch is a feature that cuts your device's internet access the instant the encrypted VPN tunnel drops. Think of it as the emergency brake on a train: it does nothing at all until something goes wrong, and then it stops everything at once. Without it, your traffic quietly falls back to your normal connection, and your real IP address becomes visible to every site, app and network you were talking to.

That fallback is the whole problem. A VPN connection can fail for a second or two without any warning on screen, and in that window your device keeps sending data as if nothing happened. Below we cover how a kill switch works, the two main types, how to turn one on for each platform, and how to check that yours actually blocks traffic.

What Is a VPN Kill Switch?

The one-sentence version

A kill switch is a piece of the VPN app that watches the tunnel and blocks all internet traffic on your device the moment that tunnel stops working. It is a fail-safe, not a performance feature. You will never notice it while everything is fine, which is exactly the point.

The name sounds dramatic, but the behavior is simple. Connected means traffic flows. Not connected means traffic stops. There is no third state where data leaks through the open network while the app reconnects.

What happens without one

Without a kill switch, a dropped VPN is invisible. Your operating system does what operating systems always do: it finds another route and keeps going. Your browser keeps loading pages, your torrent client keeps seeding, your email keeps syncing, and none of it is secure any more, because it now travels unencrypted from your real IP address.

The exposure lasts as long as the outage does. That might be two seconds while your client hops to a healthier server, or an hour while a laptop sits unattended on a hotel network.

A laptop browser showing a connection-failed page while a VPN client window beside it displays a red "Kill switch active, internet blocked" status banner.

How a VPN Kill Switch Works

Monitoring the tunnel

The kill switch runs a constant health check on the connection. It watches the virtual network adapter the VPN creates, the state of the control channel to the server, and in many clients a heartbeat that expects a reply within a set interval. When one of those signals fails, or the adapter simply disconnects, the switch treats the tunnel as down. That is why a kill switch is part of the VPN app rather than something you bolt on afterward: only the client knows a healthy tunnel from a stalled one.

Blocking traffic at the firewall level

The blocking itself does not happen inside your browser. It happens at the operating system's firewall layer, which is the only place a rule can catch traffic from every app at once. On Windows, VPN clients drive the Windows Filtering Platform, the built-in system that lets software insert packet-filtering rules deep in the network stack. On Linux, clients write nftables or iptables rules, which are the kernel's own firewall tables.

The practical effect is a rule that says: allow packets only on the VPN adapter, drop everything else. When the tunnel comes back, the client removes or relaxes the rule and normal traffic resumes.

Good to know

App-level and system-level kill switches use the same firewall machinery. The only difference is scope: one writes a rule covering the whole device, the other covers a named list of apps.

The timing gap most providers don't advertise

Detection is not instant. There is a short window between the tunnel failing and the client noticing and applying the block, and no VPN shrinks that window to zero. Providers rarely quantify it, and no credible measurement in milliseconds exists, so treat any specific number you see with suspicion. The gap matters most for software that reconnects aggressively, because a background sync process can fire off several requests in the time a heartbeat takes to time out.

Watch out

A kill switch does not protect you against routing attacks that never break the tunnel. In the TunnelVision attack (CVE-2024-3661), a hostile DHCP server on your local network uses DHCP option 121, a standard feature for pushing custom routes that was introduced by RFC 3442 back in 2002, to steer your traffic around the tunnel. The VPN control channel stays up, the client still shows "connected," and the kill switch never fires. Windows, macOS, iOS and Linux are all affected. Android is not, because it ignores that DHCP option.

What Causes a VPN Connection to Drop

VPN connections are not fragile, but they fail often enough that a fail-safe earns its place. The usual causes:

  • Weak or congested Wi-Fi, where packet loss breaks the tunnel before it breaks your browsing.
  • Switching networks, for example moving from home Wi-Fi to mobile data, which forces a reconnect.
  • Server-side problems, when the server you are connected to reboots, fills up or goes down for maintenance.
  • Sleep and wake cycles, which suspend the network adapter and leave the client confused about its own state.
  • Firewall or antivirus interference, where security software blocks the VPN protocol's port.
  • The app crashing or being closed, which is exactly the scenario a strict kill switch is designed for.

Two of those catch people out more than the rest. Sleep and wake cycles break kill switches that survive every other failure, and IPv6 is usually what escapes when they break. Reboots are the other weak point, and almost nobody advertises it: your operating system has network access before the VPN app has even launched, so packets slip out during startup.

Types of VPN Kill Switches

System-level (internet) kill switch

A system-level kill switch, sometimes labelled an internet kill switch, blocks every connection on the device. Nothing reaches the network unless it goes through the tunnel. ExpressVPN's Network Lock works this way, and Proton VPN goes further on Windows and Linux with a permanent kill switch that blocks internet access unless the VPN is active.

This is the best option for privacy and the most disruptive one. An active download, a video call or a game session dies the instant the tunnel wobbles, with no warning beyond the connection going dead.

App-level kill switch

An app-level kill switch blocks only the apps you nominate. You might protect your torrent client and your browser while leaving your video calls untouched, which is the usual fix for the disruption complaint. NordVPN offers this per-app control alongside its system-wide option.

The trade is coverage. Anything not on your list keeps working normally when the tunnel drops, and if you forget to add an app, it is unprotected without ever telling you.

Always-on VPN and persistent kill switches

Always-on is a related but separate idea: the VPN starts at boot and is expected to stay connected. On Android it requires Android 7.0 or higher. Pairing it with lockdown mode, which Android exposes as "Block connections without VPN" and which requires Android 8.0 or higher, gives you a true OS-level kill switch that blocks any traffic not using the VPN.

A persistent kill switch keeps blocking even after you quit the app or restart the machine, which closes the reboot gap. It also means a device that cannot reach the VPN server cannot reach anything at all until you turn the feature off.

Side-by-side VPN client settings panels, one showing a single system-wide kill switch toggle and the other showing a per-app list with checkboxes beside a browser and a torrent client.

Why a VPN Kill Switch Matters

IP address and location exposure

Your real IP address is the most identifying thing a VPN hides. It maps to your internet provider and an approximate location, and it links every request in a session back to one household. A drop of a few seconds is enough for a site to log it.

Data leaks on public Wi-Fi and high-risk networks

On a shared network, losing the tunnel means more than a logged IP. Anything not separately encrypted becomes readable to whoever else is on that network, and the network operator sees every destination you visit. This is where the failure people notice least does the most damage: seeding a torrent or leaving a machine unattended when the server drops out, with nothing on screen to flag it.

Who needs one most

Anyone on public Wi-Fi regularly, anyone sharing files, and anyone whose privacy carries consequences: journalists, researchers, people working around network censorship. If you use a VPN only to watch a different streaming catalogue, a kill switch is a nice-to-have. If you use one to stay private, it is the difference between protection and the appearance of protection.

Our top pick What is a VPN? logo
What is a VPN?
New to VPNs, or not sure whether the one you have is doing what you think it is? Our plain-English explainer covers what a VPN does, what it does not do, and how to pick a service you can trust.
Freeguide
Check price →

Downsides and Limitations of a Kill Switch

The kill switch ships turned off on several major clients, so the protection does nothing until you go into settings and enable it yourself. Surfshark, for example, offers soft and strict modes and leaves the feature off by default.

Once it is on, the friction matters. Wanting to browse without the VPN for a moment means connecting first and then manually switching the kill switch off, and that is enough of a nuisance that people leave it disabled. A system-level switch also has no idea which connections you care about, so it takes down the video call along with the torrent.

Implementation quality varies more than it should. Windows rules are frequently IPv4 only, and Linux clients often omit IPv6 rules entirely and fail to restore firewall state on disconnect. A PureVPN Linux client flaw tracked as CVE-2025-59692 left the kill switch failing after suspend and resume, with IPv6 leaking straight out.

And a kill switch is not a defence against every leak. TunnelCrack research, presented at USENIX Security in 2023 as "Bypassing Tunnels: Leaking VPN Client Traffic by Abusing Routing Tables," evaluated more than 66 VPN apps across five platforms and found two attack classes, LocalNet and ServerIP, that trick a client into sending traffic outside the tunnel while it still believes it is connected. LocalNet is tracked as CVE-2023-36672 and CVE-2023-35838. Every iOS app tested was vulnerable to it, and over a third of Linux clients were too.

How to Turn On a VPN Kill Switch

Windows

Open your VPN app, go to Settings, then look for Connection, Security or Privacy depending on the client. Enable the kill switch, and if the app offers a choice, pick the system-wide or "always" option rather than the app-level list. Make sure the setting survives a restart, then confirm it is still on.

macOS

The path is the same, but the naming differs. Look for a Network Lock, Internet Kill Switch or Advanced tab. macOS clients enforce blocking through the system packet filter, and they need permission to install a network extension the first time you enable the feature. Approve that prompt in System Settings under Privacy and Security, or the switch silently does nothing.

Android and iOS

On Android, the OS-level option is the strongest one available on any consumer platform. Open Settings, tap Network and internet, then VPN, then the gear icon beside your VPN entry, and turn on both the always-on VPN and "Block connections without VPN." Android is honest about the trade: you get a warning that there is no internet until the VPN connects, plus a notification that cannot be swiped away while the connection is down.

iOS has no true OS-level kill switch, so behavior depends entirely on the APIs Apple allows. iOS does not terminate connections that were already open when the VPN connects, so long-lived sessions keep talking outside the tunnel, and no VPN app can end them on its own. Apple later exposed a kill switch capability that lets clients block those pre-existing connections. Where a client does not offer it, toggling airplane mode on and off after connecting is still the practical way to force lingering connections back through the tunnel.

Router-level protection

Running the VPN on your router protects every device behind it, including ones with no VPN app at all. Most VPN-capable router firmware can add firewall rules that block WAN traffic whenever the tunnel is down. The catch is that there is no per-device signal when the tunnel drops, so a phone on your network simply loses the internet with no explanation.

Tip

Turn the kill switch on, then confirm it survives the three events that break most clients: a reboot, a sleep and wake cycle, and a network change from Wi-Fi to mobile data. A switch that only works while the machine stays awake and on one network is not much of a switch.

How to Test Whether Your Kill Switch Actually Works

You cannot politely ask a VPN to fail, which is why most people meet their kill switch by accident within the first few days of daily use. You can, however, simulate a failure. The tests that actually expose a weak kill switch are these:

  1. Force-quit the VPN process from Task Manager or Activity Monitor, then immediately reload a page. Nothing should load.
  2. Pull the network cable or toggle airplane mode, wait a few seconds, then restore the connection and watch whether traffic flows before the VPN reconnects.
  3. Switch from Wi-Fi to a phone hotspot mid-transfer, which is the change-of-network case that catches clients out most often.
  4. Reboot with the VPN set to launch at startup, then check whether anything reached the internet before the tunnel came up.
  5. Sleep the machine and wake it, then run an IP and IPv6 leak check before touching anything else.

Run a leak test after each one, and check IPv6 specifically rather than trusting a generic "your IP is hidden" result. Independent stress testing shows how common the failures are: RTINGS bought and tested 23 VPNs for its kill-switch robustness test, and in a 2025 round covering 20 popular services, 17 leaked data in at least one failure scenario. That tested set has grown over time, so the count tracks one round rather than a fixed statistic. Free apps were the worst offenders, with nearly all of them leaking IPv6 traffic. For how these failures are measured in a controlled environment, a 2025 academic testbed study is worth reading.

An IP leak test results page in a browser showing a masked IPv4 address alongside an exposed IPv6 address highlighted in red as a detected leak.

Kill Switch Support by Platform and VPN Type

Support is not equal across operating systems, and the differences come from what each OS lets a VPN app do rather than from how much a provider cares.

Kill switch support by platform and VPN type
Platform System-level support App-level support Known leak behavior
Windows Yes, enforced through the Windows Filtering Platform Yes, on most major clients Rules are often IPv4 only; vulnerable to TunnelVision (CVE-2024-3661)
macOS Yes, via the system packet filter Limited Affected by TunnelVision; consistently vulnerable to the LocalNet attack
Android Yes, OS-level via Block connections without VPN (Android 8.0+) Yes, per-app allow and deny lists Strongest of the five: immune to TunnelVision, roughly 25 percent LocalNet exposure, ServerIP fixed from Android 12
iOS No true OS kill switch; app-implemented only No Every iOS app tested was LocalNet-vulnerable; pre-existing connections survive VPN connect
Linux Yes, via nftables or iptables rules Varies by client IPv6 rules frequently omitted; firewall state not restored on disconnect (CVE-2025-59692)
Router Yes, firewall rules block WAN traffic when the tunnel is down No Protects every device behind it, but gives no per-device signal that the tunnel dropped

Provider behavior varies on top of that. The same service's switch can hold firm on Android and prove unreliable on iOS, so a review of a Windows client tells you little about the same brand's iPhone app. NordVPN's kill switch, for example, fires only after an established connection drops rather than before you have ever connected, which is worth knowing before you test it. NordVPN's kill switch documentation is a fair model of what a provider should publish about the feature.

Kill Switch vs. Split Tunneling vs. Always-On VPN

These three get confused constantly, partly because they share a settings screen.

  • A kill switch stops traffic when the VPN fails. It is reactive and it is about failure.
  • Split tunneling deliberately routes chosen apps or sites outside the tunnel while the VPN is working normally. It is proactive and it is about exceptions.
  • Always-on VPN starts the connection at boot and keeps it running. It is about availability, not blocking.

They combine in ways that bite. Split tunneling and a system-level kill switch fight each other, because one lets traffic outside the tunnel and the other stops it. Always-on without lockdown mode is a common half-measure: the VPN restarts itself, but nothing blocks traffic in the gap before it connects.

A VPN app settings screen with three labelled toggles visible, kill switch, split tunneling and always-on VPN, with the kill switch enabled and split tunneling greyed out.

The Bottom Line

A kill switch is the one VPN setting that turns a privacy tool into a reliable one. It costs nothing while the connection is healthy, and it protects you in the seconds you would otherwise never know about. Turn it on, then verify it against a reboot, a sleep and wake cycle, and a network switch, because plenty of clients pass the easy test and fail those three.

Keep its limits in mind. A kill switch handles a tunnel that drops. It does not handle a tunnel that is quietly bypassed while the client still reports a healthy connection, which is exactly what the TunnelVision and TunnelCrack research showed. Enable it, test it, and pick a provider that publishes what its switch actually blocks.

Frequently Asked Questions

Is a VPN kill switch always on?
Not usually. Several major clients ship with it disabled, and some offer soft and strict modes where only the strict one blocks everything. Check the setting after a major app update too, because a reinstall can reset it to the default.
Should I use a kill switch on public Wi-Fi?
Yes, and it is the environment where it matters most. Captive portals on hotel and airport networks force your device to talk to the local network before the VPN can connect, which is exactly the window a persistent kill switch closes.
What happens if my VPN drops without a kill switch?
Your device silently falls back to the normal connection and keeps working, which is why the drop is easy to miss. The practical tell is that a geo-blocked page suddenly loads, or your streaming service switches back to your home catalogue.
Can I still use the internet when the kill switch triggers?
On a system-level switch, no. On an app-level switch, anything not on your protected list keeps working. To get back online with the VPN off, reconnect first and then disable the kill switch, rather than trying to turn it off while the tunnel is down.
Do free VPNs have kill switches?
Some advertise one, but quality is the problem rather than presence. Free apps were the worst performers in leak testing, so treat a free client's kill switch as unproven until you have tested it yourself.
Does a kill switch slow my connection?
No, at least not noticeably. The firewall rules it installs are evaluated by the kernel alongside every other rule already in place, and it adds no encryption or routing work of its own. Any slowdown you feel comes from the VPN itself, not the switch.
What is the difference between a kill switch and always-on VPN?
Always-on keeps the connection running and restarts it automatically; a kill switch blocks traffic when it is not running. Used alone, always-on still leaves a gap during the reconnect, which is why Android pairs it with a separate lockdown setting rather than treating the two as one feature.