GotaTun — WireGuard Rebuilt in Rust
Mullvad released GotaTun, a Rust implementation of WireGuard, to Android, removing wireguard-go crashes, improving stability, and adding privacy features like DAITA and Multihop.
A Rust rewrite stopped years of WireGuard crashes in their tracks. Android crash rates collapsed overnight — and Mullvad plans to roll it everywhere.
Mullvad released GotaTun, a Rust implementation of WireGuard, to Android, removing wireguard-go crashes, improving stability, and adding privacy features like DAITA and Multihop.
Source: Mullvad — Source link
Highlights
| Metric | Value | Notes |
|---|---|---|
| Implementation | GotaTun is a WireGuard implementation written in Rust, forked from BoringTun. | |
| Android rollout | Rolled out to all Android users. | Deployed to Android prior to the publication date. |
| Crash origin | Over 85% of Google Play crash reports traced to wireguard-go. | |
| Crash elimination | No crashes have been attributed to GotaTun since rollout. | |
| Crash-rate improvement | User-perceived crash rate dropped from 0.40% to 0.01% after the Android release (version 2025.10). | |
| Privacy & platform support | GotaTun includes DAITA and Multihop and provides first-class Android support. |
Key points
- GotaTun replaces wireguard-go to improve stability and long-term maintainability.
- Rust enables safe multi-threading and zero-copy strategies for better performance.
- Interoperability between Rust and Go (FFI) introduced complexity and obscured crashes, motivating the rewrite.
- Android rollout (version 2025.10) produced an immediate, large reduction in user-perceived crashes and reports of better speed and battery life.
- Mullvad will pursue a third-party security audit and plans to replace wireguard-go across desktop and iOS.
- The project is a fork of BoringTun and not a new protocol — it remains WireGuard under the hood.
- Ongoing work will focus on broader platform rollouts and performance improvements in 2026.
Timeline
- mid-2024 — Mullvad began maintaining a fork of wireguard-go to support DAITA and Multihop.
- End of November 2025 — GotaTun rolled out on Android with version 2025.10.
- December 19, 2025 — Mullvad announced GotaTun in a blog post.
Why this matters
Replacing wireguard-go with a Rust implementation reduces crash rates, simplifies maintenance, improves performance and privacy features, and lowers operational overhead for debugging — outcomes that directly improve user experience and lower long-term engineering and security risk.