8000 GitHub - drio/udppunch: udppunch hole for wireguard
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

drio/udppunch

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

udp punch

Fork from natpunch-go. I modified the code slightly to make easier to test so I could understand the code better. The code "punches holes" in NAT/firewall devices to allow peers in a wireguard network to connect to each other directly.

You start the server. The server listens for udp traffic in a port you specify.

You setup wireguard in the peers you want to connect. You setup everything with the exception of the endpoint. That is the part that the client in this project will setup for you. After setting up wg, you start the client in each of the peers. The client will connect to the server and send its public key. The server will store that and also the public side/view of the peer. The server will broadcast this information to the other peers in the network. When the client receives the list of peers (public keys and endpoints) it uses that to finish the configuration of the wireguard interface.

If all goes well, you end up with secure, direct end to end encrypted wireguard connections between peers.

Fantastic.

What you are seeing here are six ssh sessions against three machines. The first row are for the server and the two next ones are for the two clients. On the left terminals you can see, in this order: the server and the two clients. In the client panes you can see the commands to setup the wg interface and then how the client runs and configures the endpoints.

usage

server side

./punch-server-linux-amd64 -port 19993

client side

make sure wireguard is up

./dist/punch-client-linux-amd64 -server xxxx:19993 -iface wg0

resource

About

udppunch hole for wireguard

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 88.0%
  • Makefile 12.0%
0