netbox.netbox.netbox_mac_address module – Create, update or delete MAC addresses within NetBox

Note

This module is part of the netbox.netbox collection (version 3.21.0).

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 netbox.netbox. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: netbox.netbox.netbox_mac_address.

New in netbox.netbox 3.21.0

Synopsis

  • Creates, updates or removes MAC addresses from NetBox

Requirements

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

  • pynetbox

Parameters

Parameter

Comments

cert

Certificate path

data

Defines the MAC address configuration

assigned_object

The object to assign this MAC address to

comments

Comments for the MAC address

custom_fields

Must exist in NetBox and in key/value format

description

Description of the MAC address

mac_address

The MAC address

tags

Any tags that the MAC address may need to be associated with

netbox_token

The NetBox API token.

netbox_url

The URL of the NetBox instance.

Must be accessible by the Ansible control host.

query_params

This can be used to override the specified values in ALLOWED_QUERY_PARAMS that are defined

in plugins/module_utils/netbox_utils.py and provides control to users on what may make

an object unique in their environment.

state

validate_certs

If no, SSL certificates will not be validated.

This should only be used on personally controlled sites using a self-signed certificates.

:ansible-option-default-bold:`Default:` :ansible-option-default:`true`

Notes

Note

  • Tags should be defined as a YAML list

  • This should be ran with connection local and hosts localhost

Examples

- name: "Test NetBox MAC address module"
  connection: local
  hosts: localhost
  gather_facts: false

  tasks:
    - name: Create MAC address within NetBox with only required information
      netbox.netbox.netbox_mac_address:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          mac_address: "00:11:22:33:44:55"
        state: present

    - name: Create MAC address with interface assignment
      netbox.netbox.netbox_mac_address:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          mac_address: "AA:BB:CC:DD:EE:FF"
          assigned_object:
            device: Test Nexus One
            name: Ethernet1/1
          description: "MAC address for eth1/1"
          tags:
            - Network
        state: present

    - name: Delete MAC address within netbox
      netbox.netbox.netbox_mac_address:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          mac_address: "00:11:22:33:44:55"
        state: absent

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

mac_address

Serialized object as created or already existent within NetBox

:ansible-option-returned-bold:`Returned:` success (when state=present)

msg

Message indicating failure or info about what has been achieved

:ansible-option-returned-bold:`Returned:` always

Authors

  • Martin Rødvand (@rodvand)