wireguardctrl: Go package that enables control of WireGuard devices on multiple platforms
mdlayher at gmail.com
Tue Aug 7 20:16:49 CEST 2018
It's been a couple of weeks since my previous thread, so I wanted to
follow up with a new one now that my Go package has a new name and an
wireguardctrl is a Go package that abstracts away the WireGuard kernel,
userspace, and any future OS-specific interfaces.
At this point, I've got all of the device and peer retrieval
functionality done, but I still need to implement device peer
configuration for both the kernel and userspace interfaces. There are a
couple issues open around this topic.
I think this package is at a point where I'd feel comfortable having
folks try it out and see what happens. I've got some integration tests
hooked up in Travis CI for both the kernel and userspace modules, and it
seems to work well! My next plan is to consider building some kind of
one-shot utility for setting up a tunnel by running a small program on
Thanks for your time, and feel free to reach out here or on IRC for any
- Matt Layher
PS: Jason, if you do end up making a language bindings page for the
website, I'd still like this package to be listed there! I also found
the beginnings of a Python library today: https://github.com/apognu/wgctl.
More information about the WireGuard