MullvadVPN schmeißt Go raus: WireGuard läuft künftig komplett in Rust

Gary Madeo
Gary Madeo
Avatar-Foto
Gründer und Autor
Ich bin Gary und schreibe hier über Technik, die ich selbst nutze. Von PC-Hardware über Smart-Home-Spielereien bis zu VPN-Tricks – keine Buzzwords, nur ehrliche Tests und...
- Gründer und Autor
Bildquelle: Gemini Nanobanana Pro

Mullvad räumt bei seinen Apps auf. Die bisher genutzte Basis wireguard-go fliegt raus und wird durch eine eigene Userspace-Implementierung namens GotaTun ersetzt. Der Clou: Das Ganze ist komplett in Rust geschrieben. Android ist bereits umgestellt, die restlichen Plattformen sollen folgen.

Am WireGuard-Protokoll selbst ändert sich für uns Nutzer nichts – WireGuard bleibt WireGuard. Der Unterschied liegt ausschließlich unter der Haube, nämlich darin, wie der Code in den Apps umgesetzt wird. Und genau da lag offenbar das Problem.

Das Ende vom Gefrickel

Intelligente Haustechnik, Hardware und Streaming-Lösungen für modernes Wohnen. Entdecken Sie innovative Geräte und Anwendungen bei Techboys.de.
Weniger Abstürze in der Android-App (Quelle: Mullvad Blog)

Der Mullvad-App-Stack ist schon länger weitgehend in Rust geschrieben, die VPN-Engine lief dagegen in Go. In der Theorie lässt sich das über Schnittstellen (FFI) verheiraten, in der Praxis wird das aber schnell unerquicklich. Sobald Netzwerk-Code, Multithreading und die Eigenheiten mobiler Plattformen dazukommen, landet man in einer ungemütlichen Zone.

Mullvad spricht offen davon, dass ein Großteil der Android-Abstürze genau hier entstanden ist. Nicht wegen WireGuard an sich, sondern wegen der Reibungsverluste an der Nahtstelle zwischen Rust und Go. Wer so etwas schon einmal debuggen durfte, weiß, wie schnell man dabei im Nebel stochert.

Mehr Kontrolle, weniger Ballast

Mehr zum Thema Mullvad

▶ Wenn du Mullvad noch nicht kennst: In meinem ausführlichen Test habe ich den Dienst über mehrere Wochen im Alltag genutzt.
▶ Mullvad ist für mich vor allem deshalb sympathisch, weil technische Entscheidungen nachvollziehbar getroffen werden.
▶Wenig Marketing, klare Defaults, kein Schnickschnack – man merkt, dass hier eher Ingenieure als Werbetexter am Werk sind.

Mit GotaTun fällt diese Sprachgrenze weg. Die Engine basiert auf Cloudflares BoringTun, wird aber von Mullvad selbst weiterentwickelt und direkt in den bestehenden Rust-Code integriert. Der Stack wird homogener, die Fehlerquellen weniger. Laut Mullvad sind die Crash-Raten auf Android seit dem Umstieg deutlich gesunken. Auch die Speicherverwaltung und parallele Abläufe lassen sich so wesentlich besser kontrollieren.

Man könnte das als internes Refactoring abtun, aber es ist mehr als das. WireGuard gilt oft als „fertig“, weil das Protokoll bewusst schlank gehalten ist. Was dabei leicht untergeht: Im Alltag entscheidet nicht das Protokoll über Stabilität, Akkuverbrauch oder saubere Multihop-Verbindungen, sondern die Implementierung darunter.

Mullvad holt sich hier die komplette Kontrolle über den eigenen VPN-Unterbau zurück. Weniger Fremdcode, weniger implizite Annahmen darüber, was „schon irgendwie passen wird“. Dass sie den Code offenlegen, passt ins Bild. Jetzt muss sich im realen Betrieb zeigen, ob die neue Rust-Engine auf allen Plattformen das hält, was sie auf Android verspricht: weniger Abstürze und deutlich mehr Ruhe im Unterbau.

Wer tiefer graben will: zum Weiterlesen

Wenn Du Dich für die technischen Details unter der VPN-Haube interessierst, hier der passende Lesestoff:

Der Kontext: Kernel vs. Userspace, C vs. Go vs. Rust – die offizielle WireGuard-Seite listet schön auf, was für ein Zoo an Implementierungen da draußen existiert. 👉 WireGuard.com: Known Implementations

Die Primärquelle: Mullvad erklärt in ihrem Blog detailliert die Beweggründe für den Wechsel und wie sie GotaTun technisch aufgehängt haben. 👉 Mullvad Blog: Introducing GotaTun

Der technische Unterbau: Da GotaTun auf Cloudflares BoringTun basiert, lohnt sich dieser Deep-Dive. Cloudflare erklärt, warum eine Userspace-Implementierung in Rust performancetechnisch Sinn ergibt. Pflichtlektüre für Netzwerk-Nerds. 👉 Cloudflare Blog: BoringTun, a userspace WireGuard implementation in Rust

THEMA:
QUELLE(N):Mullvad Blog
Diesen Beitrag teilen
Avatar-Foto
Gründer und Autor
Folgen:
Ich bin Gary und schreibe hier über Technik, die ich selbst nutze. Von PC-Hardware über Smart-Home-Spielereien bis zu VPN-Tricks – keine Buzzwords, nur ehrliche Tests und Anleitungen. Zur Ablenkung tippe ich über Fußball (meist ohne Magenschmerzen). Mein neuestes Projekt ist keycaps-deutsch.de, wo ich mich der Suche nach der perfekten mechanischen Tastatur verschrieben habe.
Keine Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert