12 stable releases

1.10.3 Feb 10, 2024
1.9.0 Nov 27, 2023
1.6.0 May 1, 2023
1.4.0 Dec 7, 2022
1.0.4-dev Jul 4, 2022

#221 in Network programming

Download history 20/week @ 2024-01-25 9/week @ 2024-02-01 11/week @ 2024-02-08 174/week @ 2024-02-15 53/week @ 2024-02-22 65/week @ 2024-02-29 49/week @ 2024-03-07 82/week @ 2024-03-14 41/week @ 2024-03-21 58/week @ 2024-03-28 51/week @ 2024-04-04 56/week @ 2024-04-11 48/week @ 2024-04-18 61/week @ 2024-04-25 50/week @ 2024-05-02 42/week @ 2024-05-09

208 downloads per month

Apache-2.0

435KB
9K SLoC

Rust 8K SLoC // 0.1% comments BASH 835 SLoC // 0.3% comments Shell 185 SLoC // 0.3% comments RPM Specfile 103 SLoC // 0.1% comments Bitbake 72 SLoC // 0.1% comments

netavark: A container network stack

Netavark is a rust based network stack for containers. It is being designed to work with Podman but is also applicable for other OCI container management applications.

Overview and scope

Netavark is a tool for configuring networking for Linux containers. Its features include:

  • Configuration of container networks via JSON configuration file
  • Creation and management of required network interfaces, including MACVLAN networks
  • All required firewall configuration to perform NAT and port forwarding as required for containers
  • Support for iptables and firewalld at present, with support for nftables planned in a future release
  • Support for rootless containers
  • Support for IPv4 and IPv6
  • Support for container DNS resolution via the aardvark-dns project

Requires

Build

$ make

Test

$ make test

Also see ./test for more information.

Communications

For general questions and discussion, please use Podman's channels.

For discussions around issues/bugs and features, you can use the GitHub issues and PRs tracking system.

Plugins

Netavark also supports executing external plugins, see ./plugin-API.md.

Dependencies

~27–42MB
~702K SLoC