Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kwakubiney/safehaven
Proof of concept for a VPN over UDP
https://github.com/kwakubiney/safehaven
linux networking tunnel udp
Last synced: 2 months ago
JSON representation
Proof of concept for a VPN over UDP
- Host: GitHub
- URL: https://github.com/kwakubiney/safehaven
- Owner: kwakubiney
- License: mit
- Created: 2023-07-07T14:23:18.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-05-19T11:27:25.000Z (8 months ago)
- Last Synced: 2024-10-13T19:08:37.027Z (3 months ago)
- Topics: linux, networking, tunnel, udp
- Language: Go
- Homepage:
- Size: 21.5 KB
- Stars: 8
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# safehaven
* Architecture
![architecture](https://github.com/kwakubiney/safehaven/assets/71296367/7a637a3f-337d-4e44-a793-4aa01049d191)## How does it work
Checkout my blog [post](https://kwakubiney.github.io/posts/UDP-Tunneling-With-Safehaven/) for implementation details.## Demo
[Click here to watch demo](https://www.youtube.com/watch?v=BJcXyx5ae1Ac)## How to use?
* Only available on Linux
```
Usage:
-d string
private network destination (default "10.108.0.2")
-g global
routes all traffic to tunnel server
-l string
local address
-s string
remote server address (default "138.197.32.138")
-srv
server mode
-tc string
client tun device ip (default "192.168.1.100/24")
-tname string
tunname (default "tun0")
-ts string
server tun device ip (default "192.168.1.102/24")
```* Build the project.
* Run using appropriate flags on client.
* Run on server in `server mode` and also run `sysctl -w net.ipv4.ip_forward=1` on server to allow IP forwarding.
* `ping` destination address from client after setup & you should receive echo replies back.`NB`: Your server must know how to reach the private network else your packet will get lost in the sauce on the server.