A tc-bpf action to rewrite wg.reserved_zero[3] to client_id required by warp, and vice versa for ingress.
- Register with
warp-register.pyfirst, save the result into/etc/wireguard/cf.conf - Edit
config.h- Find line
static const __u8 warp_private[3] = {11, 45, 14}; - Change
{11, 45, 14}to the content ofClientIDincf.confabove
- Find line
maketo build the eBPF module./attach.sh <your network interface>to load it into your systemwg-quick up cfstart the wireguard tunnel./detach.shto remove it from your system
Debian/Ubuntu: sudo apt install build-essential clang libc6-dev-i386 libbpf-dev
Arch: sudo pacman -S base-devel clang libbpf
- IPv6 support
- Ritare/1919: eBPF example
- iBug/warp-helper: original wg-warp-helper
- Wireguard Protocol: Wireguard protocol specification