Gtp5g
Linux kernel module 5G GTP-U
Install / Use
/learn @PrinzOwO/Gtp5gREADME
gtp5g - 5G compatible GTP kernel module
gtp5g is a customized Linux kernel module gtp5g to handle packet by PFCP IEs such as PDR and FAR. For detailed information, please reference to 3GPP specification TS 29.281 and TS 29.244.
Note:1
The latest implementation of gtp5g and libgtp5gnl is in
https://github.com/free5gc/gtp5g
https://github.com/free5gc/libgtp5gnl
Notice
Due to the evolution of Linux kernel, this module would not work with every kernel version.
Please run this module with kernel version 5.0.0-23-generic or upper than 5.4 (Ubuntu 20.04).
Please check the libgtp5gnl version is the same as gtp5g, because the type translating between libgtp5gnl and gtp5g had been changed.
Usage
Compile
make clean && make
Install kernel module
Install the module to the system and load automatically at boot
sudo make install
Remove kernel module
Remove the kernel module from the system
sudo make uninstall
Create a gtp5g interface and update Rules
The gtp5g interface will be created by using libgtp5gnl scripts
- Checkout the latest or compatible source of libgtp5gnl
- cd libgtp5gnl
- Create an interface and update rules
- sudo ./run.sh UPF_PDR_FAR_QER
- Troubleshoot
- dmesg
- echo #interfaceName #ID > /proc/gtp5g/pdr
- cat /proc/gtp5g/pdr
- Delete an interface
- sudo ./run.sh Clean
- Note: It will delete list of rules and interface
Change Log
v0.2.0
- Changed to host type between gtp5g and libgtp5gnl
- Supported forwarding policy feature, but need to set ip rule and ip route with Linux mark by self
- Fixed bugs about "any" and "assigned" in SDF filter
v0.1.0
- First version
- Supported packet matching about UE IP, TEID and SDF filter
- Auto process packet by PDR/FAR
Related Skills
node-connect
341.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
84.4kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
341.0kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
84.4kCommit, push, and open a PR
