containers.podman.podman_network module – Manage podman networks¶
Note
This module is part of the containers.podman collection (version 1.16.2).
It is not included in ansible-core.
To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install containers.podman.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: containers.podman.podman_network.
New in containers.podman 1.0.0
Synopsis¶
- Manage podman networks with podman network command. 
Requirements¶
The below requirements are needed on the host that executes this module.
- podman 
Parameters¶
| Parameter | Comments | 
|---|---|
| Return additional information which can be helpful for investigations. Choices: 
 | |
| disable dns plugin (default “false”) Choices: 
 | |
| Set network-scoped DNS resolver/nameserver for containers in this network. If not set, the host servers from /etc/resolv.conf is used. | |
| Driver to manage the network (default “bridge”) | |
| Path to  Default:  | |
| Remove all containers that use the network. If the container is running, it is stopped and removed. Choices: 
 | |
| IPv4 or IPv6 gateway for the subnet | |
| For bridge, it uses the bridge interface name. For macvlan, it is the parent device on the host (it is the same as ‘opt.parent’) | |
| Restrict external access from this network (default “false”) Choices: 
 | |
| Allocate container IP from range | |
| Set the ipam driver (IP Address Management Driver) for the network. When unset podman chooses an ipam driver automatically based on the network driver Choices: 
 | |
| Enable IPv6 (Dual Stack) networking. You must pass a IPv6 subnet. The subnet option must be used with the ipv6 option. Idempotency is not supported because it generates subnets randomly. Choices: 
 | |
| Create a Macvlan connection based on this device | |
| Name of the network | |
| List of dictionaries with network configuration. Each dictionary should contain ‘subnet’ and ‘gateway’ keys. ‘ip_range’ is optional. | |
| Gateway for the subnet | |
| Allocate container IP from range | |
| Subnet in CIDR format | |
| Add network options. Currently ‘vlan’ and ‘mtu’ are supported. | |
| Set the threshold for broadcast queueing. Must be a 32 bit integer. Setting this value to -1 disables broadcast queueing altogether. | |
| This option assigns the given name to the created Linux Bridge. Sets ‘com.docker.network.bridge.name’ option. | |
| Sets the Maximum Transmission Unit (MTU) and takes an integer value. Sets ‘com.docker.network.driver.mtu’ option. | |
| This option isolates networks by blocking traffic between those that have this option enabled. Choices: 
 | |
| Sets the Route Metric for the default route created in every container joined to this network. Can only be used with the Netavark network backend. | |
| This option sets the specified ip/macvlan mode on the interface. | |
| MTU size for bridge network interface. | |
| If set to 1, Podman will NOT automatically add a default route to subnets. | |
| The host device which should be used for the macvlan interface (it is the same as ‘interface’ in that case). Defaults to the default route interface. | |
| VLAN tag for bridge which enables vlan_filtering. | |
| This option assigns a VRF to the bridge interface. It accepts the name of the VRF and defaults to none. Can only be used with the Netavark network backend. | |
| Path to the directory to write quadlet file in. By default, it will be set as  | |
| The permissions of the quadlet file. The  If  If  Specifying  | |
| Name of quadlet file to write. By default it takes name value. | |
| Options for the quadlet file. Provide missing in usual network args options as a list of lines to add. | |
| Recreate network even if exists. Choices: 
 | |
| A static route in the format <destination in CIDR notation>,<gateway>,<route metric (optional)>. This route will be added to every container in this network. | |
| State of network, default ‘present’ Choices: 
 | |
| Subnet in CIDR format | 
Examples¶
- name: Create a podman network
  containers.podman.podman_network:
    name: podman_network
  become: true
- name: Create internal podman network
  containers.podman.podman_network:
    name: podman_internal
    internal: true
    ip_range: 192.168.22.128/25
    subnet: 192.168.22.0/24
    gateway: 192.168.22.1
  become: true
- name: Create Quadlet file for podman network
  containers.podman.podman_network:
    name: podman_network
    state: quadlet
    quadlet_options:
      - IPv6=true
      - Label="ipv6 network"
Return Values¶
Common return values are documented here, the following are the fields unique to this module:
| Key | Description | 
|---|---|
| Facts from created or updated networks Returned: always Sample:  |