netbox_ip_address – Creates or removes IP addresses from Netbox
netbox_ip_address – Creates or removes IP addresses from Netbox
New in version 2.8.
Synopsis
- Creates or removes IP addresses from Netbox
Requirements
The below requirements are needed on the host that executes this module.
- pynetbox
Parameters
Parameter | Choices/Defaults | Comments | |
---|---|---|---|
data - / required |
Defines the IP address configuration | ||
address - |
Required if state is | ||
custom_fields - |
must exist in Netbox | ||
description - |
The description of the interface | ||
family - |
|
Specifies with address family the IP address belongs to | |
interface - |
The name and device of the interface that the IP address should be assigned to Required if state is | ||
nat_inside - |
The inside IP address this IP is assigned to | ||
prefix - |
With state | ||
role - |
|
The role of the IP address | |
status - |
|
The status of the IP address | |
tags - |
Any tags that the IP address may need to be associated with | ||
tenant - |
The tenant that the device will be assigned to | ||
vrf - |
VRF that IP address is associated with | ||
netbox_token - / required |
The token created within Netbox to authorize API access | ||
netbox_url - / required |
URL of the Netbox instance resolvable by Ansible control host | ||
state - |
|
Use | |
validate_certs boolean |
|
If |
Notes
Note
- Tags should be defined as a YAML list
- This should be ran with connection
local
and hostslocalhost
Examples
- name: "Test Netbox IP address module"
connection: local
hosts: localhost
gather_facts: False
tasks:
- name: Create IP address within Netbox with only required information
netbox_ip_address:
netbox_url: http://netbox.local
netbox_token: thisIsMyToken
data:
address: 192.168.1.10
state: present
- name: Force to create (even if it already exists) the IP
netbox_ip_address:
netbox_url: http://netbox.local
netbox_token: thisIsMyToken
data:
address: 192.168.1.10
state: new
- name: Get a new available IP inside 192.168.1.0/24
netbox_ip_address:
netbox_url: http://netbox.local
netbox_token: thisIsMyToken
data:
prefix: 192.168.1.0/24
state: new
- name: Delete IP address within netbox
netbox_ip_address:
netbox_url: http://netbox.local
netbox_token: thisIsMyToken
data:
address: 192.168.1.10
state: absent
- name: Create IP address with several specified options
netbox_ip_address:
netbox_url: http://netbox.local
netbox_token: thisIsMyToken
data:
family: 4
address: 192.168.1.20
vrf: Test
tenant: Test Tenant
status: Reserved
role: Loopback
description: Test description
tags:
- Schnozzberry
state: present
- name: Create IP address and assign a nat_inside IP
netbox_ip_address:
netbox_url: http://netbox.local
netbox_token: thisIsMyToken
data:
family: 4
address: 192.168.1.30
vrf: Test
nat_inside:
address: 192.168.1.20
vrf: Test
interface:
name: GigabitEthernet1
device: test100
- name: Ensure that an IP inside 192.168.1.0/24 is attached to GigabitEthernet1
netbox_ip_address:
netbox_url: http://netbox.local
netbox_token: thisIsMyToken
data:
prefix: 192.168.1.0/24
vrf: Test
interface:
name: GigabitEthernet1
device: test100
state: present
- name: Attach a new available IP of 192.168.1.0/24 to GigabitEthernet1
netbox_ip_address:
netbox_url: http://netbox.local
netbox_token: thisIsMyToken
data:
prefix: 192.168.1.0/24
vrf: Test
interface:
name: GigabitEthernet1
device: test100
state: new
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
ip_address dictionary |
on creation |
Serialized object as created or already existent within Netbox
|
msg string |
always |
Message indicating failure or info about what has been achieved
|
Status
- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Community. [community]
Authors
- Mikhail Yohman (@FragmentedPacket)
- Anthony Ruhier (@Anthony25)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/netbox_ip_address_module.html