Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kioubit/l3mp
Multiplex layer 3 tunnels through another layer 3 tunnel (eBPF)
https://github.com/kioubit/l3mp
ebpf networking tunnel
Last synced: about 2 months ago
JSON representation
Multiplex layer 3 tunnels through another layer 3 tunnel (eBPF)
- Host: GitHub
- URL: https://github.com/kioubit/l3mp
- Owner: Kioubit
- Created: 2024-01-25T14:33:49.000Z (12 months ago)
- Default Branch: master
- Last Pushed: 2024-01-25T17:45:06.000Z (12 months ago)
- Last Synced: 2024-11-20T01:17:17.583Z (about 2 months ago)
- Topics: ebpf, networking, tunnel
- Language: C
- Homepage:
- Size: 57.6 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# L3MP
Multiplex up to 16 layer 3 tunnels through a single layer 3 tunnel
- Uses the "diffserv" field in the IPv4/IPv6 header to label packets
- Zero byte overhead (no MTU penalty)
- Performant: Packets are never copied to userspace.
(Uses an eBPF TC direct-action program that runs in the kernel eBPF sandbox)## Usage:
Requires root privileges or the CAP_NET_ADMIN linux capability
```
./l3mp
The interface-label definitions file contains up to 16 entries in this format:
@
Where is a number from 0 to 16
```### Building
#### Main program
Run ``go build -o L3MP .``
#### Re-compile included eBPF program (Optional)
Requires llvm and clang to be installed. To start the compilation, run ``go generate .``