If you have been running Podman as a drop-in replacement for Docker, version 6.0.0 is the release that deserves your attention. Not because the release notes are flashy, but because the team rebuilt the networking layer from the ground up. That kind of work tends to break things in weird ways you do not discover until Monday morning.
The core change is straightforward: slirp4netns and iptables are being phased out in favor of Netavark, Pasta, and nftables. If you run custom network configurations, you will need to update them. If you just run containers the normal way, Podman v6.0.0 handles everything automatically.
What Actually Changed in the Networking Stack
Podman has always used a collection of separate tools to handle container networking. Slirp4netns created user-mode network namespaces. Iptables handled the firewall rules. The result worked, but maintenance was scattered across multiple projects with different release cycles.
Version 6.0.0 consolidates this. Netavark takes over as the primary network driver. It handles DNS, port forwarding, and network isolation without needing a daemon running in the background. Pasta replaces slirp4netns for rootless port forwarding and adds a capability the old stack did not have: it can preserve the actual source IP address for containers on custom networks.
That last part is not a minor detail. If you have ever tried to trace a request back to its origin container and found only the podman bridge IP, this release fixes that.
Nftables replaces iptables as the firewall backend. The performance difference is negligible for most setups, but nftables is what the Linux kernel ecosystem is standardizing on. Podman is following that direction rather than fighting it.
Quadlet Gets a Major Upgrade
Containers are not just development tools. A lot of teams run them as system services, which means systemd integration. Quadlet is Podman's answer to that, and v6.0.0 brings significant improvements.
The most practical addition is REST API support for Quadlet. You can now manage Quadlet units programmatically, query their status, and trigger reloads without touching the systemd socket directly. If you are building automation around containerized services, this closes a gap that required workarounds before.
Volume units got expanded features too. You can now define volume options like labels, driver options, and mount propagation directly in the unit file. Previously this required either a custom script or manual volume creation before the service would start.
Podman Machine Gets an OS Update Command
For macOS and Windows users running Podman Machine, the new podman machine os update command is exactly what it sounds like: you can now update the VM OS without rebuilding your entire machine. In previous versions, staying current meant destroying and recreating the machine, which meant your images, volumes, and configurations went with it unless you exported everything first.
The os update command handles this in place. Your existing setup stays intact. This has been one of the roughest edges in the Podman Machine experience, and it is good to see it addressed.
Docker Compatibility Improvements
Podman has always marketed itself as a Docker-compatible alternative, but compatibility gaps still showed up in the details. Podman v6.0.0 updated its Docker API support to cover more of the current Docker CLI surface, and command output formatting has been tightened to match Docker's behavior more closely.
If you are migrating from Docker Desktop or simply maintaining a docker-compose.yml file, the transition should feel less like a puzzle. One commenter who switched after Docker Desktop started consuming excessive memory said it was "literally as easy as installing it and pointing it at our docker-compose.yml. Zero changes needed." That is the bar, and v6.0.0 gets closer to it.
What You Need to Update
If you run a standard setup with no custom networking, update and test. The transition to Netavark and nftables is mostly automatic. Your existing containers will restart with the new networking layer.
If you have custom network configurations, read the release notes before updating. The migration from slirp4netns to Pasta can change how IP addressing works, and nftables rules are not 100% compatible with the iptables syntax you might have written manually.
One thing to check: if your setup relies on iptables modules that nftables does not load automatically, you may need to adjust your system configuration. Most people will not hit this, but it is worth a quick review if you run firewalld or custom routing rules.
Podman v6.0.0 is available now. If you run a container-heavy workflow, the networking overhaul alone makes this a worthwhile upgrade. Just give yourself an hour to test before putting it on production.


