Documentation ¶
Overview ¶
Package swgp implements a simple proxy protocol with minimal overhead for WireGuard traffic.
There are currently 2 proxy modes:
1. Zero overhead: Simply AES encrypt the first 16 bytes of all packets. Handshake packets (message type 1, 2, 3) are also randomly padded to look like normal traffic.
2. Paranoid: Pad all types of packets without exceeding MTU, then XChaCha20-Poly1305 encrypt the whole packet. We pad data packets because:
- The length of a WireGuard data packet is always a multiple of 16.
- Many IPv6 websites cap their outgoing MTU to 1280 for maximum compatibility.
Directories ¶
Path | Synopsis |
---|---|
cmd
|
|
Package packet provides implementations of packet handlers that transform WireGuard packets.
|
Package packet provides implementations of packet handlers that transform WireGuard packets. |
Package service consists of encapsulations that utilize packet handlers to provide swgp service over a connection or other abstractions.
|
Package service consists of encapsulations that utilize packet handlers to provide swgp service over a connection or other abstractions. |
Click to show internal directories.
Click to hide internal directories.