The archive · Developer & Business Tools · Product decision · 2026
Mullvad's stable per-key exit IPs let sites link sessions; co-founder confirms fix
A researcher finds Mullvad pins exit IPs to WireGuard keys for days, letting sites link sessions; co-founder confirms and starts patching same day
Mullvad VPN AB
What the business is
Mullvad runs a flat-fee privacy VPN that promises no logs and no account identity, assigning each user an exit IP derived from their WireGuard key instead of random per connection
How it started
Mullvad had deliberately kept a user's exit IP stable for the life of their WireGuard key: the official client rotates keys every 72 hours by default, and a repeatable address means a server that works for one service still works when the user comes back. Its co-founder later described the design as a trade-off between privacy and user experience.
What happened
On May 15, 2026 a research post titled 'Mullvad exit IPs are surprisingly identifying' drew 613 points and 389 comments on Hacker News. It reported that exit IPs were not randomized per connection but deterministically picked from the WireGuard key, which rotates every 1–30 days or never with third-party clients, and that IP positions correlated across servers, letting observers link a user's sessions. Co-founder kfreds replied on the thread within about an hour of learning of the finding: some aspects were as intended and some were not, the cause was not exactly as described, Mullvad was already testing a patch of the unintended behavior on a subset of its infrastructure, and it would re-evaluate whether the intended behaviors were acceptable. Obscura's CEO, a Mullvad partner, called the cross-server correlation genuinely unintended.
No ending yet — it is still running.
Background
Mullvad, the flat-fee Swedish VPN built on WireGuard, assigns each user's exit IP from their key instead of randomizing it per connection. The official client rotates that key every 72 hours by default, so the stable address was meant to refresh before it became a lasting identifier.
On May 15, 2026 a researcher's post, 'Mullvad exit IPs are surprisingly identifying', drew 613 points and 389 comments on Hacker News. It reported exit IPs were deterministic per WireGuard key — rotating every 1–30 days, or never with third-party clients — and that IP positions correlated across servers, linking a user's sessions. Co-founder kfreds replied in the thread: some aspects were intended and some not, the cause differed from the post's account, and Mullvad was already testing a patch of the unintended behavior on part of its infrastructure while re-evaluating the intended behaviors.
The finding tested a genuine product trade-off. A stable IP per server is useful: a server that works for one service keeps working when the user returns, and randomizing per connection would force logouts, CAPTCHAs and risk scoring. But partner Obscura's CEO called the cross-server correlation genuinely unintended, and defenders had to fall back on Mullvad's no-logs stance and cash-by-mail signups while critics said the convenience had lowered the bar for identifying the users the company promises to protect.
What has to be true
- A stable exit IP per WireGuard key made sessions usable, but it made the key itself an identity signal that observers could use to link a user's traffic
- Mullvad's core promise is anonymity — no logs, no accounts — so a correlation leak attacked the product's central claim, not a peripheral feature
- The same-day public reply separated intended from unintended behavior, started testing a patch, and promised to re-evaluate the design trade-off
- Some determinism was deliberate UX while the cross-server IP-pool correlation was an accident, which is why the fix had to touch both code and product judgment
What can be applied
Stability is the enemy of anonymity: the exit IP kept steady so sessions survive is the same signal that links them, so privacy products need outsiders to attack their intended trade-offs
Aftermath
As of May 15, 2026 Mullvad was testing a patch for the unintended exit-IP behavior on part of its infrastructure and had promised to re-evaluate whether the intended per-key stability was acceptable. The thread records no completed resolution; the immediate mitigation offered to users was key rotation, 72 hours by default in Mullvad's own client.
Sources
spotted an error? The archive wants to know.
Your turn
You just read one. Describe what you are building, and see who is betting on the same thing.
Free account · 3 free questions · no card