No description
  • Rust 70.4%
  • C 26.3%
  • Shell 1.8%
  • Makefile 1.5%
Find a file
2026-04-18 02:44:10 +02:00
include feat: UAPI header include/inet8.h + version 0.4.1 2026-04-18 00:28:49 +02:00
src feat: tools/iproute2-plugin — ip-inet8 wrapper fuer ip addr show (0.5.2) iproute2 hat kein Laufzeit-Plugin-System fuer Address-Families. AF_INET8 (family 18) erscheint in 'ip addr show' als 'family 18 ???'. ip-inet8: Shell-Wrapper der /proc/net/inet8_addr liest und die 'family 18'-Zeilen via awk durch 'inet8 A.B.C.D.E.F.G.H/64' ersetzt. Installation: make install (installiert nach /usr/local/bin/ip-inet8) Bumps MODULE_VERSION und Cargo.toml auf 0.5.2. 2026-04-18 01:05:12 +02:00
tools feat: tools/iproute2-plugin — ip-inet8 wrapper fuer ip addr show (0.5.2) iproute2 hat kein Laufzeit-Plugin-System fuer Address-Families. AF_INET8 (family 18) erscheint in 'ip addr show' als 'family 18 ???'. ip-inet8: Shell-Wrapper der /proc/net/inet8_addr liest und die 'family 18'-Zeilen via awk durch 'inet8 A.B.C.D.E.F.G.H/64' ersetzt. Installation: make install (installiert nach /usr/local/bin/ip-inet8) Bumps MODULE_VERSION und Cargo.toml auf 0.5.2. 2026-04-18 01:05:12 +02:00
.gitignore chore: .gitignore — Rust und Kernel-Build-Artefakte ignorieren 2026-04-18 02:44:10 +02:00
Cargo.lock feat: tools/iproute2-plugin — ip-inet8 wrapper fuer ip addr show (0.5.2) iproute2 hat kein Laufzeit-Plugin-System fuer Address-Families. AF_INET8 (family 18) erscheint in 'ip addr show' als 'family 18 ???'. ip-inet8: Shell-Wrapper der /proc/net/inet8_addr liest und die 'family 18'-Zeilen via awk durch 'inet8 A.B.C.D.E.F.G.H/64' ersetzt. Installation: make install (installiert nach /usr/local/bin/ip-inet8) Bumps MODULE_VERSION und Cargo.toml auf 0.5.2. 2026-04-18 01:05:12 +02:00
Cargo.toml feat: tools/iproute2-plugin — ip-inet8 wrapper fuer ip addr show (0.5.2) iproute2 hat kein Laufzeit-Plugin-System fuer Address-Families. AF_INET8 (family 18) erscheint in 'ip addr show' als 'family 18 ???'. ip-inet8: Shell-Wrapper der /proc/net/inet8_addr liest und die 'family 18'-Zeilen via awk durch 'inet8 A.B.C.D.E.F.G.H/64' ersetzt. Installation: make install (installiert nach /usr/local/bin/ip-inet8) Bumps MODULE_VERSION und Cargo.toml auf 0.5.2. 2026-04-18 01:05:12 +02:00
Kbuild feat: implement AF_INET8 socket layer with loopback and /proc/net/inet8 2026-04-17 23:00:48 +02:00
LICENSE Initial commit 2026-04-17 07:46:24 +02:00
Makefile Fix license headers: GPL-2.0 → GPL-3.0; fix VecDeque recv queue 2026-04-17 05:57:19 +00:00
README.md build: drop DKMS support 2026-04-17 21:56:03 +02:00
rust-toolchain.toml docs: clarify kernel version comments in rust-toolchain.toml and README 2026-04-17 06:14:22 +00:00

inet8-rust

A minimal IPv8 Layer-3 network stack implemented as a Linux kernel module in Rust.

Requirements

Requirement Minimum version
Linux kernel 6.11 (Rust support officially stabilised)
Kernel config CONFIG_RUST=y must be enabled
Rust toolchain 1.85.0 (see rust-toolchain.toml)

Note: Starting with kernel 7.1 the minimum required Rust version is expected to be raised to 1.85.0 (the version shipped with Debian 13 "Trixie"). This repository already targets that baseline.

Building

Against the running kernel

make

Against a specific kernel

make KDIR=/lib/modules/<version>/build

Without kernel headers (unit tests / cargo check)

make check   # cargo check
make test    # cargo test

Installation

sudo make modules_install
sudo depmod -a
sudo modprobe inet8

Kernel version notes

Kernel Rust support Notes
< 6.1 none Not supported
6.1 6.10 experimental Unstable ABI, not recommended
6.11+ official Minimum supported version
7.0+ stable / first-class Recommended

License

GPL-3.0 — see LICENSE.