pkg.soopen package index

brew / rank 3579

Install libnl with Homebrew, Nix, pacman

Netlink Library Suite. Version 3.12.0 via Homebrew; verified from local package data. Also installable with nix: nix profile install nixpkgs#libnl.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install libnl

local Homebrew formula metadata

Linux

Nixverified · 92%
nix profile install nixpkgs#libnl

nixpkgs package indexes · pkgs/by-name/li/libnl/package.nix · source: api.github.com

Arch Linux pacmanverified · 92%
sudo pacman -S libnl

Arch Linux sync databases · libnl · source: geo.mirror.pkgbuild.com

overview

Package summary

Netlink Library Suite

Commands and aliases

  • genl-ctrl-list
  • idiag-socket-details
  • nf-ct-add
  • nf-ct-events
  • nf-ct-list
  • nf-exp-add
  • nf-exp-delete
  • nf-exp-list
  • nf-log
  • nf-monitor
  • nf-queue
  • nl-addr-add
  • nl-addr-delete
  • nl-addr-list
  • nl-class-add
  • nl-class-delete
  • nl-class-list
  • nl-classid-lookup
  • nl-cls-add
  • nl-cls-delete
  • nl-cls-list
  • nl-fib-lookup
  • nl-link-enslave
  • nl-link-ifindex2name
  • nl-link-list
  • nl-link-name2ifindex
  • nl-link-release
  • nl-link-set
  • nl-link-stats
  • nl-list-caches
  • nl-list-sockets
  • nl-monitor

history

Project history and usage

libnl is the Netlink Protocol Library Suite, a set of C libraries for Linux applications that talk to kernel netlink interfaces. Netlink replaced many ioctl-style networking control paths with a message-based IPC mechanism between user space and the kernel.

Project history

The Infradead project page describes libnl as a suite split into smaller libraries: libnl for socket and message fundamentals, libnl-route for NETLINK_ROUTE interfaces, libnl-genl for generic netlink, and libnl-nf for netfilter interfaces. The split is explicitly intended to avoid forcing every application to link one large library.

The project history includes a long-lived 1.1.x branch and a 3.x branch. The Infradead page warns that 1.1.x support is limited and tells new applications to target libnl3, while also documenting distribution package names for CentOS, Debian, Fedora, OpenSUSE, Slackware, and Ubuntu.

Adoption history

libnl became a standard dependency for Linux networking software that needed structured access to routes, addresses, links, traffic control, generic netlink families, and netfilter state. Its inclusion in many distribution package sets reflects netlink's role as the Linux kernel's preferred extensible networking control API.

How it is used

Callers use libnl core primitives for netlink sockets, message construction, parsing, send, receive, and cache handling, then add family-specific libraries when they need route, generic netlink, or netfilter support. The Homebrew package exposes many nl-* and nf-* command-line helpers around those APIs.

Why package nerds care

libnl matters to package maintainers because it is Linux-specific, ABI-sensitive, and central to network managers, firewall tools, wireless stacks, containers, and low-level diagnostics. The project's documented SONAME problems in releases 3.2.18 and 3.2.19 show why distributions track its ABI carefully.

Timeline

  • 1.1.x era: The project maintained a stable branch but later advised new applications to use libnl3.
  • 3.2.10: The project reverted an unnecessary SONAME bump after discussion to reduce distribution-maintainer pain.
  • 3.2.18-3.2.19: The project documented an incorrect SONAME that required affected binaries to be relinked for compatibility with 3.2.20 and later.
  • 2014-07-16: The Infradead project page records libnl 3.2.25 as released.

Related projects

  • Related kernel interfaces include netlink, NETLINK_ROUTE, generic netlink, and netfilter.
  • The libnl suite's related libraries include libnl, libnl-route, libnl-genl, and libnl-nf.

security posture

Risk level: green

library-like package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • library-like package without higher-risk signals

Signals

  • metadata:library-like

Install behavior

  • No Homebrew bottle metadata was recorded.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
genl-ctrl-listexecutableindexed executableDiscovered from the local executable index.
idiag-socket-detailsexecutableindexed executableDiscovered from the local executable index.
nf-ct-addexecutableindexed executableDiscovered from the local executable index.
nf-ct-eventsexecutableindexed executableDiscovered from the local executable index.
nf-ct-listexecutableindexed executableDiscovered from the local executable index.
nf-exp-addexecutableindexed executableDiscovered from the local executable index.
nf-exp-deleteexecutableindexed executableDiscovered from the local executable index.
nf-exp-listexecutableindexed executableDiscovered from the local executable index.
nf-logexecutableindexed executableDiscovered from the local executable index.
nf-monitorexecutableindexed executableDiscovered from the local executable index.
nf-queueexecutableindexed executableDiscovered from the local executable index.
nl-addr-addexecutableindexed executableDiscovered from the local executable index.
nl-addr-deleteexecutableindexed executableDiscovered from the local executable index.
nl-addr-listexecutableindexed executableDiscovered from the local executable index.
nl-class-addexecutableindexed executableDiscovered from the local executable index.
nl-class-deleteexecutableindexed executableDiscovered from the local executable index.
nl-class-listexecutableindexed executableDiscovered from the local executable index.
nl-classid-lookupexecutableindexed executableDiscovered from the local executable index.
nl-cls-addexecutableindexed executableDiscovered from the local executable index.
nl-cls-deleteexecutableindexed executableDiscovered from the local executable index.
nl-cls-listexecutableindexed executableDiscovered from the local executable index.
nl-fib-lookupexecutableindexed executableDiscovered from the local executable index.
nl-link-enslaveexecutableindexed executableDiscovered from the local executable index.
nl-link-ifindex2nameexecutableindexed executableDiscovered from the local executable index.
nl-link-listexecutableindexed executableDiscovered from the local executable index.
nl-link-name2ifindexexecutableindexed executableDiscovered from the local executable index.
nl-link-releaseexecutableindexed executableDiscovered from the local executable index.
nl-link-setexecutableindexed executableDiscovered from the local executable index.
nl-link-statsexecutableindexed executableDiscovered from the local executable index.
nl-list-cachesexecutableindexed executableDiscovered from the local executable index.
nl-list-socketsexecutableindexed executableDiscovered from the local executable index.
nl-monitorexecutableindexed executableDiscovered from the local executable index.
nl-neigh-addexecutableindexed executableDiscovered from the local executable index.
nl-neigh-deleteexecutableindexed executableDiscovered from the local executable index.
nl-neigh-listexecutableindexed executableDiscovered from the local executable index.
nl-neightbl-listexecutableindexed executableDiscovered from the local executable index.
nl-nh-listexecutableindexed executableDiscovered from the local executable index.
nl-pktloc-lookupexecutableindexed executableDiscovered from the local executable index.
nl-qdisc-addexecutableindexed executableDiscovered from the local executable index.
nl-qdisc-deleteexecutableindexed executableDiscovered from the local executable index.
nl-qdisc-listexecutableindexed executableDiscovered from the local executable index.
nl-route-addexecutableindexed executableDiscovered from the local executable index.
nl-route-deleteexecutableindexed executableDiscovered from the local executable index.
nl-route-getexecutableindexed executableDiscovered from the local executable index.
nl-route-listexecutableindexed executableDiscovered from the local executable index.
nl-rule-listexecutableindexed executableDiscovered from the local executable index.
nl-tctree-listexecutableindexed executableDiscovered from the local executable index.
nl-util-addrexecutableindexed executableDiscovered from the local executable index.

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-08-03
manager version3.12.0
manager updated
local dataunknown
upstreamnot available
latest detectednot detected
  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:libnl
Version3.12.0
Package managerHomebrew
Homepagehttps://github.com/thom311/libnl
Repositoryhttps://github.com/thom311/libnl
Bottlenot recorded
Servicenone declared

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

libnl

nix profile install nixpkgs#libnl
  • normalized package name match
  • Matched by: Libnl
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/li/libnl/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
pacman95%

libnl 3.12.0-1

Library for applications dealing with netlink sockets

https://github.com/thom311/libnl/

sudo pacman -S libnl
  • License: LGPL-2.1-only
  • Architecture: x86_64
  • 2 dependencies
  • 7 provides
  • normalized package name match
  • Matched by: Libnl
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: libnl from https://geo.mirror.pkgbuild.com/core/os/x86_64/core.db.tar.gz

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • pkg.so package database
  • pkgdb category and tag curation