Skip to content

asciimoth/wgo

Repository files navigation

WireGuard library for Go

Go Reference

Important

This project is a fork of the original wireguard-go project with some modifications. All credit goes to the original wireguard-go authors.

Things done

  • replaced the built-in TUN and conn implementations with reusable tuntap and batchudp libraries
  • support on-the-fly attach/detach/swap operations for Bind and Tun instances
  • added usage examples
  • added Device configuration methods matching UAPI get/set options
  • added leveled logging
  • implemented amnesiawg-go-compatible obfuscation
    • added support for per-peer obfuscation options (with a nuance)
  • added more end-to-end and compatibility tests with other WireGuard implementations
  • added performance tests with a comparison against other WireGuard implementations
  • WASM builds supported

TODO