🍺 BREW Explorer

← all formulae

slirp4netns

brew install slirp4netns v1.3.4 GPL-2.0-or-later

User-mode networking for unprivileged Linux network namespaces, enabling rootless containers to access the network without root privileges.

Why you might care

Essential for rootless container runtimes like Podman and crun that need network connectivity without elevated privileges. Implements a user-space TCP/IP stack (slirp) to bridge namespace-isolated processes to the host network, avoiding the need for privileged veth setup. Primary runtime dependency for rootless container tooling.

Categories

Alternatives

veth slirp podman-network
3.1k
30-day installs · #790
13.1k
90-day · #703
51.1k
365-day · #673
919
★ GitHub stars · updated 25d ago

Runtime dependencies

Build dependencies

GitHub topics

rootless-containers slirp usermode-networking

Links

Blurb generated by claude-haiku-4-5 on today.

Raw metadata
{
  "aliases": [],
  "alternatives": [
    "veth",
    "slirp",
    "podman-network"
  ],
  "build_dependencies": [
    "autoconf",
    "automake",
    "pkgconf"
  ],
  "categories": [
    "container-runtime",
    "networking",
    "virtualization"
  ],
  "caveats": null,
  "conflicts_with": [],
  "dependencies": [
    "glib",
    "libcap",
    "libseccomp",
    "libslirp"
  ],
  "deprecated": 0,
  "deprecation_reason": null,
  "desc": "User-mode networking for unprivileged network namespaces",
  "disable_reason": null,
  "disabled": 0,
  "enrichment_fetched_at": "2026-06-20T23:41:06+00:00",
  "first_seen": "2026-06-20T23:34:18+00:00",
  "full_name": "slirp4netns",
  "github_default_branch": "master",
  "github_last_commit_at": "2026-05-26T13:57:21Z",
  "github_readme_excerpt": "# slirp4netns: User-mode networking for unprivileged network namespaces \n\nslirp4netns provides user-mode networking (\"slirp\") for unprivileged network namespaces.\n\n\u003c!-- START doctoc generated TOC please keep comment here to allow auto update --\u003e\n\u003c!-- DON\u0027T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --\u003e\n\n\n- [Motivation](#motivation)\n- [Projects using slirp4netns](#projects-using-slirp4netns)\n- [Maintenance policy](#maintenance-policy)\n- [Quick start](#quick-start)\n  - [Install](#install)\n  - [Usage](#usage)\n- [Manual](#manual)\n- [Benchmarks](#benchmarks)\n  - [iperf3 (netns -\u003e host)](#iperf3-netns---host)\n- [Install from source](#install-from-source)\n- [Acknowledgement](#acknowledgement)\n- [License](#license)\n\n\u003c!-- END doctoc generated TOC please keep comment here to allow auto update --\u003e\n\n## Motivation\n\nStarting with Linux 3.8, unprivileged users can create [`network_namespaces(7)`](http://man7.org/linux/man-pages/man7/network_namespaces.7.html) along with [`user_namespaces(7)`](http://man7.org/linux/man-pages/man7/user_namespaces.7.html).\nHowever, unprivileged network namespaces had not been very useful, because creating [`veth(4)`](http://man7.org/linux/man-pages/man4/veth.4.html) pairs across the host and network namespaces still requires the root privileges. (i.e. No internet connection)\n\nslirp4netns allows connecting a network namespace to the Internet in a completely unprivileged way, by connecting a TAP device in a network namespace to the usermode TCP/IP stack ([\"slirp\"](https://gitlab.freedesktop.org/slirp/libslirp)).\n\n## Projects using slirp4netns\n\nKubernetes distributions:\n* [Usernetes](https://github.com/rootless-containers/usernetes) (via RootlessKit)\n* [k3s](https://k3s.io) (via RootlessKit)\n\nContainer engines:\n* [Podman](https://github.com/containers/libpod)\n* [Buildah](https://github.com/containers/buildah)\n* [ctnr](https://github.com/mgoltzsche/ctnr) (via slirp-cni-plugin)\n* [Docker \u0026 Moby](https://get.docker.com/rootless) (optionally, via Ro",
  "github_repo": "rootless-containers/slirp4netns",
  "github_stars": 919,
  "github_topics": [
    "rootless-containers",
    "slirp",
    "usermode-networking"
  ],
  "homepage": "https://github.com/rootless-containers/slirp4netns",
  "homepage_og_description": null,
  "homepage_og_image": null,
  "homepage_title": null,
  "installs_30d": 3064,
  "installs_365d": 51126,
  "installs_90d": 13056,
  "keg_only": 0,
  "keg_only_reason": null,
  "last_seen": "2026-06-20T23:34:18+00:00",
  "license": "GPL-2.0-or-later",
  "llm_generated_at": "2026-06-20T23:47:04+00:00",
  "llm_model": "claude-haiku-4-5",
  "name": "slirp4netns",
  "oldnames": [],
  "one_liner": "User-mode networking for unprivileged Linux network namespaces, enabling rootless containers to access the network without root privileges.",
  "optional_dependencies": [],
  "rank_30d": 790,
  "rank_365d": 673,
  "rank_90d": 703,
  "raw_hash": "a4a774e499edb8af",
  "recommended_dependencies": [],
  "revision": 0,
  "ruby_source_path": "Formula/s/slirp4netns.rb",
  "tap": "homebrew/core",
  "test_dependencies": [
    "jq"
  ],
  "uses_from_macos": [],
  "version_head": null,
  "version_stable": "1.3.4",
  "versioned_formulae": [],
  "why_use_this": "Essential for rootless container runtimes like Podman and crun that need network connectivity without elevated privileges. Implements a user-space TCP/IP stack (slirp) to bridge namespace-isolated processes to the host network, avoiding the need for privileged veth setup. Primary runtime dependency for rootless container tooling."
}