Container network stack
Go to file
openshift-merge-bot[bot] d22d9d5dec
Merge pull request #1268 from Luap99/lint
fix new clippy lint warnings
2025-06-09 13:40:52 +00:00
.github .github: check_cirrus_cron work around github bug 2025-04-11 18:54:52 +02:00
contrib update MSRV to v1.83 2025-05-30 18:25:12 +02:00
docs docs/Makefile: several fixes 2025-02-18 17:03:24 +01:00
examples bump netlink-packet-route to 0.18.1 2023-12-08 18:42:10 +01:00
hack ci: ensure tree is clean after build 2025-04-23 15:07:16 +02:00
rpm rpm: update description 2025-05-13 18:27:34 +02:00
src make more use of NetavarkError 2025-06-03 15:16:50 +02:00
test make more use of NetavarkError 2025-06-03 15:16:50 +02:00
test-dhcp drop DhcpProxy error type from NetavarkError 2025-06-03 14:14:48 +02:00
.cirrus.yml update MSRV to v1.83 2025-05-30 18:25:12 +02:00
.gitignore GHA: Automate release 2025-03-28 10:54:56 -04:00
.packit.yaml [skip-ci] Packit: Remove epel targets 2024-10-28 17:47:06 +05:30
CODE-OF-CONDUCT.md Inital checking 2021-09-21 09:23:34 -05:00
CONTRIBUTING.md Add link to c/common contributor's guide 2025-03-25 10:15:43 +01:00
Cargo.lock Merge pull request #1267 from Luap99/nix 2025-06-09 13:38:08 +00:00
Cargo.toml Merge pull request #1267 from Luap99/nix 2025-06-09 13:38:08 +00:00
DISTRO_PACKAGE.md update to nftables release 0.3 from crates.io 2024-01-25 14:43:39 +01:00
LICENSE Initial commit 2021-09-21 09:03:34 -05:00
Makefile Merge pull request #1235 from Luap99/make 2025-04-30 18:36:10 +00:00
OWNERS OWNERS: remove edsantiago 2024-11-26 15:18:49 +01:00
README.md update MSRV to v1.83 2025-05-30 18:25:12 +02:00
RELEASE_NOTES.md release notes for v1.15.0 2025-05-13 16:32:24 +02:00
SECURITY.md SECURITY.md: initial addition 2021-10-05 10:15:02 -04:00
build.rs generate protobuf in OUT_DIR 2024-12-13 14:54:18 +01:00
perf-netavark.sh perf-netavark: accept fw driver as argument 2024-01-10 18:53:31 +01:00
plugin-API.md add documentation for netavark plugins 2023-04-04 17:58:27 +02:00

README.md

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, firewalld and nftables
  • Support for rootless containers
  • Support for IPv4 and IPv6
  • Support for container DNS resolution via the aardvark-dns project

Requires

MSRV (Minimum Supported Rust Version)

v1.83

We test that Netavark can be build on this Rust version and on some newer versions. All newer versions should also build, and if they do not, the issue should be reported and will be fixed. Older versions are not guaranteed to build and issues will not be fixed.

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.

Contributing