netlink library for Linux kernel GTP code
Go to file
Oliver Smith a295615229 Add IPv6 support
Implement IPv6 in libgtpnl and the gtp-tunnel testing tool. Allow to


to specify IPv4-in-IPv6-GTP and IPv6-in-IPv4-GTP in the tunnel
declaration from control plane.

This patch is based on multiple patches from Pablo in OS#6123. I decided
to squash them to directly implement v4-in-v6 and vice versa, instead of
implementing another variant first and then changing it again.

Co-developed-by: Pablo Neira Ayuso <>
Related: OS#6096
Change-Id: If864c9170f74af52a95cbc4cdb1b866e0309306b
2023-10-24 13:54:09 +02:00
contrib install gtp-tunnel and gtp-link tools 2021-02-12 09:36:52 +01:00
debian README, debian/control: update URLs 2023-10-19 16:09:15 +02:00
include Add IPv6 support 2023-10-24 13:54:09 +02:00
m4 add libgtpnl 2014-02-20 19:41:29 +01:00
src Add IPv6 support 2023-10-24 13:54:09 +02:00
tools Add IPv6 support 2023-10-24 13:54:09 +02:00
.gitignore gitignore: add gtp-link, gtp-tunnel 2023-10-19 15:54:51 +02:00
.gitreview gitreview: new file 2023-10-18 14:21:19 +02:00
AUTHORS Add copright headers and license files, list Pablo as author 2014-04-03 09:37:38 -04:00
COPYING Re-license the library as LGPLv2-or-later 2016-07-28 20:34:45 +02:00 configure: regular_C(PP)FLAGS -> C(PP)FLAGS 2023-10-19 16:09:15 +02:00 Depend on 2018-05-02 16:36:24 +02:00 README, debian/control: update URLs 2023-10-19 16:09:15 +02:00
TODO-RELEASE Depend on 2018-05-02 16:36:24 +02:00 configure: add --enable-werror 2023-10-19 16:09:15 +02:00
git-version-gen Use git-version-gen to set VERSION 2018-05-02 16:36:27 +02:00 add libgtpnl 2014-02-20 19:41:29 +01:00

libgtpnl - netlink library for Linux kernel GTP

In order to control the kernel-side GTP-U plane, a netlink based control interface between GTP-C in userspace and GTP-U in kernelspace was invented.

The encoding and decoding of these control messages is implemented in the libgtpnl (library for GTP netlink).

libgtpnl is part of the Osmocom Open Source Mobile Communications project.


The official homepage of the project is

GIT Repository

You can clone from the official libgtpnl.git repository using

git clone

Visiting the URL in a browser shows a web interface.

Mailing List

Discussions related to libgtpnl are happening on the mailing list, please see for subscription options and the list archive.

Please observe the Osmocom Mailing List Rules when posting.


Our coding standards are described at

We use a gerrit based patch submission/review process for managing contributions. Please see for more details

The current patch queue for libgtpnl can be seen at