community.general.nios_network – Configure Infoblox NIOS network object

Note

This plugin is part of the community.general collection (version 1.3.6).

To install it use: ansible-galaxy collection install community.general.

To use it in a playbook, specify: community.general.nios_network.

Synopsis

  • Adds and/or removes instances of network objects from Infoblox NIOS servers. This module manages NIOS network objects using the Infoblox WAPI interface over REST.

  • Supports both IPV4 and IPV6 internet protocols

Requirements

The below requirements are needed on the host that executes this module.

  • infoblox-client

Parameters

Parameter Choices/Defaults Comments
comment
string
Configures a text string comment to be associated with the instance of this object. The provided text string will be configured on the object instance.
container
boolean
    Choices:
  • no
  • yes
If set to true it'll create the network container to be added or removed from the system.
extattrs
string
Allows for the configuration of Extensible Attributes on the instance of the object. This argument accepts a set of key / value pairs for configuration.
network
string / required
Specifies the network to add or remove from the system. The value should use CIDR notation.

aliases: name, cidr
network_view
string / required
Default:
"default"
Configures the name of the network view to associate with this configured instance.
options
list / elements=dictionary
Configures the set of DHCP options to be included as part of the configured network instance. This argument accepts a list of values (see suboptions). When configuring suboptions at least one of name or num must be specified.
name
string
The name of the DHCP option to configure. The standard options are router, router-templates, domain-name-servers, domain-name, broadcast-address, broadcast-address-offset, dhcp-lease-time, and dhcp6.name-servers.
num
string
The number of the DHCP option to configure
use_option
boolean
    Choices:
  • no
  • yes ←
Only applies to a subset of options (see NIOS API documentation)
value
string / required
The value of the DHCP option specified by name
vendor_class
string
Default:
"DHCP"
The name of the space this DHCP option is associated to
provider
dictionary
A dict object containing connection details.
host
string
Specifies the DNS host name or address for connecting to the remote instance of NIOS WAPI over REST
Value can also be specified using INFOBLOX_HOST environment variable.
http_request_timeout
integer
Default:
10
The amount of time before to wait before receiving a response
Value can also be specified using INFOBLOX_HTTP_REQUEST_TIMEOUT environment variable.
max_results
integer
Default:
1000
Specifies the maximum number of objects to be returned, if set to a negative number the appliance will return an error when the number of returned objects would exceed the setting.
Value can also be specified using INFOBLOX_MAX_RESULTS environment variable.
max_retries
integer
Default:
3
Configures the number of attempted retries before the connection is declared usable
Value can also be specified using INFOBLOX_MAX_RETRIES environment variable.
password
string
Specifies the password to use to authenticate the connection to the remote instance of NIOS.
Value can also be specified using INFOBLOX_PASSWORD environment variable.
username
string
Configures the username to use to authenticate the connection to the remote instance of NIOS.
Value can also be specified using INFOBLOX_USERNAME environment variable.
validate_certs
boolean
    Choices:
  • no ←
  • yes
Boolean value to enable or disable verifying SSL certificates
Value can also be specified using INFOBLOX_SSL_VERIFY environment variable.

aliases: ssl_verify
wapi_version
string
Default:
"2.1"
Specifies the version of WAPI to use
Value can also be specified using INFOBLOX_WAP_VERSION environment variable.
Until ansible 2.8 the default WAPI was 1.4
state
string
    Choices:
  • present ←
  • absent
Configures the intended state of the instance of the object on the NIOS server. When this value is set to present, the object is configured on the device and when this value is set to absent the value is removed (if necessary) from the device.

Notes

Note

  • This module must be run locally, which can be achieved by specifying connection: local.

  • Please read the Infoblox Guide for more detailed information on how to use Infoblox with Ansible.

Examples

- name: Configure a network ipv4
  community.general.nios_network:
    network: 192.168.10.0/24
    comment: this is a test comment
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local
- name: Configure a network ipv6
  community.general.nios_network:
    network: fe80::/64
    comment: this is a test comment
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local
- name: Set dhcp options for a network ipv4
  community.general.nios_network:
    network: 192.168.10.0/24
    comment: this is a test comment
    options:
      - name: domain-name
        value: ansible.com
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local
- name: Remove a network ipv4
  community.general.nios_network:
    network: 192.168.10.0/24
    state: absent
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local
- name: Configure a ipv4 network container
  community.general.nios_network:
    network: 192.168.10.0/24
    container: true
    comment: test network container
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local
- name: Configure a ipv6 network container
  community.general.nios_network:
    network: fe80::/64
    container: true
    comment: test network container
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local
- name: Remove a ipv4 network container
  community.general.nios_network:
    networkr: 192.168.10.0/24
    container: true
    comment: test network container
    state: absent
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local

Authors

  • Peter Sprygada (@privateip)