nl-pktloc-lookup(8)
β¨ nl-pktloc-lookup β¨
okay bestie, welcome to the System Manager's Manual section for nl-pktloc-lookup β yes she's a section 8 girlie, system manager vibes only π
πΈ NAME πΈ
nl-pktloc-lookup β Lookup packet location definitions
π¦ SYNOPSIS π¦
nl-pktloc-lookup name
nl-pktloc-lookup --list
π DESCRIPTION π
So basically nl-pktloc-lookup goes rummaging through the packet location database looking for a matching entry πβ¨
It's the one you call when you need to resolve packet location aliases into their actual definition, which means: the alignment, the layer, the offset, and the mask. Like, the whole glow-up from cute little nickname to full spec, no cap π«Ά
π OPTIONS π
-h,--helpβ prints the help text to the console and then dips. exit, stage left π-v,--versionβ prints versioning info to the console and exits. cute little resume moment β¨-l,--listβ lists all the packet location definitions. the full roster, everybody's here π--u32=VALUEβ prints the packet location definition in a special format that iproute2's u32 selector parser understands. It'll output a u32 selector that compares the value you gave with the value specified by the packet location. iconic behavior fr fr π₯
okay so listen: due to the limitation of u32, it is not possible to use packet locations based on the link layer. nl-pktloc-lookup will print an error message in that case. not a bug, just the rules bestie π
Example:
selector=$(nl-pktloc-lookup --u32 22 tcp.sport)
tc filter add [...] u32 match $(selector) flowid 1:2
ποΈ FILES ποΈ
/etc/libnl/pktloc
π AUTHOR π
Thomas Graf is the original author and current maintainer of libnl and libnl tools. Many people have contributed to it since. the whole squad ate, periodt ππ
k that's the whole page bestie, go forth and resolve those packet locations β¨
this was nl-pktloc-lookup, part of libnl, dated 27 October 2010 β mwah, love u, bye ππ
π¦ where this page comes from
- alpine 3.22: libnl3-doc 3.11.0-r0 Β· LGPL-2.1-or-later
- alpine 3.23: libnl3-doc 3.11.0-r0 Β· LGPL-2.1-or-later
- alpine 3.24: libnl3-doc 3.11.0-r0 Β· LGPL-2.1-or-later
- arch rolling: libnl 3.12.0-1 Β· LGPL-2.1-only
- centos-stream 10: libnl3-cli 3.11.0-1.el10 Β· LGPL-2.1-only
- centos-stream 9: libnl3-cli 3.11.0-1.el9 Β· LGPL-2.1-only
- centos-stream 9: libnl3-cli 3.11.0-1.el9 Β· LGPL-2.1-only
- debian bookworm: libnl-utils 3.7.0-0.2+b1
- debian trixie: libnl-utils 3.7.0-2
- fedora 43: libnl3-cli 3.11.0-6.fc43 Β· LGPL-2.1-only
- fedora 43: libnl3-cli 3.11.0-6.fc43 Β· LGPL-2.1-only
- fedora 43: libnl3-cli 3.12.0-2.fc43 Β· LGPL-2.1-only
- fedora 43: libnl3-cli 3.12.0-2.fc43 Β· LGPL-2.1-only
- fedora 44: libnl3-cli 3.12.0-3.fc44 Β· LGPL-2.1-only
- fedora 44: libnl3-cli 3.12.0-3.fc44 Β· LGPL-2.1-only
- nixpkgs unstable: libnl 3.12.0
- opensuse-leap 16.0: libnl-tools 3.11.0-160000.2.2 Β· GPL-2.0-only
- opensuse-leap 16.0: libnl-tools 3.11.0-160000.2.2 Β· GPL-2.0-only
- opensuse-leap 16.0: libnl-tools 3.11.0-160000.2.2 Β· GPL-2.0-only
- opensuse-leap 16.0: libnl-tools 3.11.0-160000.2.2 Β· GPL-2.0-only
- ubuntu jammy: libnl-utils 3.5.0-0.1
- ubuntu noble: libnl-utils 3.7.0-0.3build1
- ubuntu noble: libnl-utils 3.7.0-0.3build1.1
- ubuntu questing: libnl-utils 3.7.0-2build1
- ubuntu resolute: libnl-utils 3.12.0-2
- ubuntu stonking: libnl-utils 3.12.0-2
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms