podman-network(1)

✨ NAME ✨

podman-network β€” manage Podman networks, bestie πŸ’–

πŸ¦‹ SYNOPSIS πŸ¦‹

podman network subcommand

🌸 DESCRIPTION 🌸

Okay so the network command is literally the main character for managing networks in Podman. Periodt.

Podman uses Netavark as the network backend. No cap. 🫢

πŸ’… DNS NOTES πŸ’…

On networks with DNS enabled β€” which is the default, unless --disable-dns is used β€” aardvark-dns registers each container under its name and aliases. Containers that share a pod network namespace are registered under the pod name. Slay. ✨

Here's the tea β˜•:

  • The container name is always registered.
  • The short container ID (first 12 characters) is always registered as an alias.
  • When --hostname is explicitly set, that hostname is also registered as an alias.
  • By default the hostname inside the container is the short ID, so it already matches the alias.
  • Setting container_name_as_hostname=true in the [containers] section of containers.conf(5) changes the hostname only; DNS entries remain unchanged. Not me pointing that out twice β€” it's important, okay? 😭
  • Additional names can be set with the alias= option in --network (e.g., podman run --network mynet:alias=foo), with --network-alias, or with --alias on podman network connect.
  • Auto-generated names use an underscore between words, for example exciting_chebyshev.

That's the whole DNS vibe check. Keep it in mind, iykyk. 🧚

πŸ‘‘ COMMANDS πŸ‘‘

These are all the subcommands, bestie β€” every single one, no skips:

Literally all of them. ✨πŸ”₯

πŸŽ€ SUBNET NOTES πŸŽ€

Podman requires specific default IPs and, thus, network subnets. The default values used by Podman can be modified in the containers.conf(5) file. Big important energy. πŸ’œ

🌈 Podman network 🌈

The default bridge network (called podman) uses 10.88.0.0/16 as a subnet. When Podman runs as root, the podman network is used as default. It is the same as adding the option --network bridge or --network podman.

This subnet can be changed in containers.conf(5) under the [network] section. Set the default_subnet to any subnet that is free in the environment. The name of the default network can also be changed from podman to another name using the default network key.

⚠️ Note that this is only done when no containers are running. So don't try to be sneaky, bestie β€” shut those containers down first. 😭

πŸ“ Pasta πŸ“

Pasta by default performs no Network Address Translation (NAT) and copies the IPs from your main interface into the container namespace. It's giving direct and unbothered. πŸ’…

If pasta cannot find an interface with the default route, it will select an interface if there is only one interface with a valid route. If you do not have a default route and several interfaces have defined routes, pasta will be unable to figure out the correct interface and it will fail to start. Not dramatic β€” just facts. πŸ’€

To specify the interface, use -i option to pasta. A default set of pasta options can be set in containers.conf(5) under the [network] section with the pasta_options key.

Pasta is the default rootless networking tool. Iconic. πŸ‘‘

πŸ¦‹ Podman network create πŸ¦‹

When a new network is created with a podman network create command, and no subnet is given with the --subnet option, Podman starts picking a free subnet from 10.89.0.0/24 to 10.255.255.0/24. Use the default_subnet_pools option under the [network] section in containers.conf(5) to change the range and/or size that is assigned by default.

That's the subnet selection process β€” automatic but configurable. No cap. 🌸


⭐ SEE ALSO ⭐

podman(1), podman-network-create(1), containers.conf(5) β€” go read them, bestie, they're literally linked. πŸ“šβœ¨


πŸ’– That's the entire podman-network(1) page from the General Commands Manual β€” go forth and manage those networks, bestie! You're gonna slay. πŸ’…βœ¨

πŸ“¦ where this page comes from