WireGuard-Go is the official userspace implementation of the WireGuard VPN protocol written in Go, providing a portable alternative to kernel-level deployments. The project enables systems that cannot run the native kernel module to still create secure WireGuard tunnels by operating entirely in user space. When executed, the program creates a virtual network interface that can be configured using standard networking tools such as wg and ip, closely mirroring the behavior of kernel implementations. The software is part of the broader WireGuard ecosystem, which aims to deliver a fast, simple, and modern VPN built on state-of-the-art cryptography. Because it runs in user space, wireguard-go is especially useful for platforms like macOS, Windows, or restricted environments where kernel modules are unavailable.

Features

  • Userspace WireGuard implementation in Go
  • Creates virtual VPN interfaces programmatically
  • Compatible with standard wg and ip tooling
  • Cross-platform support beyond Linux kernel
  • Foreground or background daemon modes
  • Configurable debug logging via environment variables

Project Samples

Project Activity

See All Activity >

Categories

VPN

License

MIT License

Follow WireGuard Go

WireGuard Go Web Site

Other Useful Business Software
Our Free Plans just got better! | Auth0 Icon
Our Free Plans just got better! | Auth0

With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
Try free now
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of WireGuard Go!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Programming Language

Go

Related Categories

Go VPN Software

Registered

2026-02-23