When Your Quick Sunday Feature Takes All Day: WSL2 Multi-VM Networking

“This Should Be Quick” Famous last words. After implementing basic networking support and learning about WSL2’s shared network architecture, I wanted to make it work reliably across multiple distributions. The plan: add integration tests, support more distros (Debian, Fedora, AlmaLinux, Kali, openSUSE), and document the limitations properly. What I thought would be a quick Sunday afternoon turned into a deep dive into systemd services, DNS resolution, and why background processes in SSH are surprisingly hard. ...

November 10, 2025 · 7 min · Zoltan Toma

Vagrant WSL2 Networking: A Reality Check

Starting with High Hopes After adding Docker support, snapshots, and data disk management to the Vagrant WSL2 Provider, networking felt like the obvious next step. The goal was simple: make config.vm.network work just like it does in VirtualBox. config.vm.network "private_network", ip: "192.168.33.10" config.vm.network "forwarded_port", guest: 80, host: 8080 How hard could it be? Claude: Narrator: It was harder than expected. The VirtualBox Mental Model When you use VirtualBox, each VM gets its own network interfaces. Private networks create host-only adapters, each VM has its own IP, and everything just works. I assumed WSL2 would be similar - after all, it’s running on Hyper-V, right? ...

November 8, 2025 · 6 min · Zoltan Toma