WireGuard

What WireGuard is
WireGuard is a free VPN for securely encapsulating IP packets over UDP. It runs on Linux, Windows, macOS, iOS and Android, and can also be self-hosted. Peers authenticate with public keys, while cryptokey routing links those keys to allowed tunnel IP addresses that also act as routing and access-control rules. The protocol uses the Noise framework with Curve25519, ChaCha20, Poly1305, BLAKE2, SipHash24 and HKDF. WireGuard periodically rotates session keys for perfect forward secrecy, authenticates the first handshake message before allocating server state, and describes cookie mitigation under load. IP roaming lets peers update endpoints from authenticated traffic. The project says its compact implementation is intended to be auditable. The wg utility configures interfaces and peers, while wg-quick handles routine setup and teardown. Interfaces can be moved into Docker network namespaces. WireGuard does not focus on obfuscation, does not tunnel over TCP, and is not post-quantum secure by default.
Who it suits
WireGuard suits people needing a free VPN across major desktop and mobile platforms, including self-hosted and Docker-based setups. It also fits users who prefer public-key configuration and command-line tools.
What it does well
- Free plan across desktop and mobile platforms
- Public-key peer authentication
- Rotating session keys provide forward secrecy
- Docker network-namespace support
- wg-quick automates routine setup
What to know first
- No TCP tunneling
- Obfuscation is outside the protocol
- Not post-quantum secure by default
- Basic administrative control
Verdict
WireGuard offers a free, cross-platform VPN with public-key routing, roaming and a compact design. Its UDP-only transport, limited obfuscation focus and default post-quantum limitation matter for specialized deployments.
Facts from WireGuard's own pages
- Access model
- vpn · wireguard.com, 22 Sept 2026
- Admin control level
- basic · wireguard.com, 22 Sept 2026
- Configuration
- Peers authenticate with public keys, and WireGuard handles the rest of the connection transparently. · wireguard.com, 11 Oct 2026
- Containers
- A WireGuard interface can be moved into a Docker container’s network namespace so the container can use the tunnel as its only network interface. · wireguard.com, 11 Oct 2026
- Container use
- A WireGuard interface can be moved into a Docker container's network namespace so the tunnel is the container's only network interface. · wireguard.com, 11 Oct 2026
- Cryptography
- WireGuard uses the Noise protocol framework, Curve25519, ChaCha20, Poly1305, BLAKE2, SipHash24, and HKDF. · wireguard.com, 11 Oct 2026
- Denial-of-service mitigation
- The first handshake message is authenticated before the server allocates state, and the protocol describes cookie-based mitigation when the server is under load. · wireguard.com, 11 Oct 2026
- Free plan
- Yes · wireguard.com, 22 Sept 2026
- Installation options
- The installation page provides Windows, macOS, iOS, Android, and numerous Linux and BSD installation options, with source compilation available for unlisted distributions. · wireguard.com, 11 Oct 2026
- Integrations
- The project describes using WireGuard with Docker network namespaces and lists packages or installation instructions for many Linux distributions and BSD systems. · wireguard.com, 11 Oct 2026
- Key security
- The protocol periodically establishes rotating session keys to provide perfect forward secrecy. · wireguard.com, 11 Oct 2026
- License
- The kernel components are GPLv2; other project components use MIT, BSD, Apache 2.0, or GPL depending on context. · wireguard.com, 11 Oct 2026
- Licensing
- The kernel components are GPLv2, while other project components use MIT, BSD, Apache 2.0, or GPL depending on context. · wireguard.com, 11 Oct 2026
- Limit: obfuscation
- WireGuard does not focus on obfuscation and says that should happen at a layer above the protocol. · wireguard.com, 11 Oct 2026
- Limit: post-quantum
- WireGuard is not post-quantum secure by default, though its pre-shared-key parameter can add a layer of post-quantum secrecy. · wireguard.com, 11 Oct 2026
- Limit: transport
- WireGuard does not support tunneling over TCP; the site says transforming its UDP packets to TCP is the job of an upper layer. · wireguard.com, 11 Oct 2026
- Performance and design
- The project describes WireGuard as a fast, simple VPN designed for uses ranging from embedded interfaces to supercomputers. · wireguard.com, 11 Oct 2026
- Platforms
- The project lists Windows, macOS, BSD, iOS, and Android as supported cross-platform targets, and provides Linux installation instructions. · wireguard.com, 11 Oct 2026
- Purpose
- WireGuard is a fast, modern VPN that securely encapsulates IP packets over UDP. · wireguard.com, 11 Oct 2026
- Roaming
- WireGuard supports IP roaming: peers update their endpoint based on authenticated traffic from the most recent endpoint. · wireguard.com, 11 Oct 2026
- Routing
- Its cryptokey routing associates peer public keys with allowed tunnel IP addresses, which serve as routing and access-control rules. · wireguard.com, 11 Oct 2026
- Security review
- The project says its cryptographic choices have been reviewed by cryptographers and its small implementation is designed to be auditable. · wireguard.com, 11 Oct 2026
- Support
- The project recommends its #wireguard IRC channel for setup and usage help, and directs development discussion to its mailing list. · wireguard.com, 11 Oct 2026
- Supported platforms
- The project lists Windows, macOS, BSD, iOS, and Android as cross-platform targets, and its installation page provides Linux distribution instructions. · wireguard.com, 11 Oct 2026
Where WireGuard stands on Freedom251
- Vpn Client#8 of 25
- Business VPN Software#39 of 94
- Virtual Private Network Software#28 of 54