Thanks to visit codestin.com
Credit goes to GitHub.com

Skip to content

A STUN server running inside a WireGuard® tunnel, returning the transport address of the WireGuard endpoint to enable P2P VPN tunnels through NATs.

Notifications You must be signed in to change notification settings

holesch/salty-stun

Repository files navigation

salty-stun

on-push

salty-stun is a STUN server that runs inside a WireGuard® tunnel. It listens for incoming STUN requests and responds with the transport address of the WireGuard endpoint. This allows two peers to establish a P2P VPN tunnel through NATs.

Installation

salty-stun uses libsodium and libb2 for cryptographic operations. On a debian-based system, you can install these dependencies with:

$ sudo apt install libsodium-dev libb2-dev

To build and install salty-stun, run the following commands:

$ meson setup build
$ meson compile -C build
$ sudo meson install -C build

Usage

See the man page salty-stun(1) for usage information.

Acknowledgements

The idea is based on a blog post by Rytis Karpuška at NordVPN: Reaching Beyond 1Gbps: How we achieved NAT traversal with vanilla WireGuard.

WireGuard is a registered trademark of Jason A. Donenfeld. This project is not affiliated with or endorsed by WireGuard or its developers.

About

A STUN server running inside a WireGuard® tunnel, returning the transport address of the WireGuard endpoint to enable P2P VPN tunnels through NATs.

Topics

Resources

Stars

Watchers

Forks