- AnsibleFest
- Products
- Community
- Webinars & Training
- Blog

Documentation

# icx_vlan – Manage VLANs on Ruckus ICX 7000 series switches

New in version 2.9.

- Synopsis

- Parameters

- Notes

- Examples

- Return Values

- Status

## Synopsis

- This module provides declarative management of VLANs on ICX network devices.

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
aggregate list |  | List of VLANs definitions.
| associated_interfaces list |  | This is a intent option and checks the operational state of the for given vlan `name` for associated interfaces. If the value in the `associated_interfaces` does not match with the operational state of vlan interfaces on device it will result in failure.
| associated_tagged list |  | This is a intent option and checks the operational state of given vlan `name` for associated tagged ports and lags. If the value in the `associated_tagged` does not match with the operational state of vlan interfaces on device it will result in failure.
| check_running_config boolean | Choices: no yes | Check running configuration. This can be set as environment variable. Module will use environment variable value(default:True), unless it is overridden, by specifying it as module parameter.
| delay integer |  | Delay the play should wait to check for declarative intent params values.
| interfaces dictionary |  | List of ethernet ports or LAGS to be added as access(untagged) ports to the vlan. To add a range of ports use 'to' keyword. See the example.
|  | name list |  | Name of the interface or lag
|  | purge boolean | Choices: no yes | Purge interfaces not defined in the name
| ip_arp_inspection boolean | Choices: no yes | Enables dynamic ARP inspection on a VLAN.
| ip_dhcp_snooping boolean | Choices: no yes | Enables DHCP snooping on a VLAN.
| name string |  | Name of the VLAN.
| state string | Choices: present absent | State of the VLAN configuration.
| stp dictionary |  | Enable spanning-tree 802-1w/rstp for this vlan.
|  | enabled boolean | Choices: no yes | Manage the state(Enable/Disable) of the spanning_tree_802_1w in the current vlan
|  | priority string |  | Configures the priority of the bridge. The value ranges from 0 through 65535. A lower numerical value means the bridge has a higher priority. Thus, the highest priority is 0. The default is 32768.
|  | type string | Choices: 802-1w ← rstp | Specify the type of spanning-tree
| tagged dictionary |  | List of ethernet ports or LAGS to be added as trunk(tagged) ports to the vlan. To add a range of ports use 'to' keyword. See the example.
|  | name list |  | Name of the interface or lag
|  | purge boolean | Choices: no yes | Purge interfaces not defined in the name
| vlan_id string / required |  | ID of the VLAN. Range 1-4094.
associated_interfaces list |  | This is a intent option and checks the operational state of the for given vlan `name` for associated interfaces. If the value in the `associated_interfaces` does not match with the operational state of vlan interfaces on device it will result in failure.
associated_tagged list |  | This is a intent option and checks the operational state of given vlan `name` for associated tagged ports and lags. If the value in the `associated_tagged` does not match with the operational state of vlan interfaces on device it will result in failure.
check_running_config boolean | Choices: no yes ← | Check running configuration. This can be set as environment variable. Module will use environment variable value(default:True), unless it is overridden, by specifying it as module parameter.
delay integer | Default: 10 | Delay the play should wait to check for declarative intent params values.
interfaces dictionary |  | List of ethernet ports or LAGS to be added as access(untagged) ports to the vlan. To add a range of ports use 'to' keyword. See the example.
| name list |  | Name of the interface or lag
| purge boolean | Choices: no yes | Purge interfaces not defined in the name
ip_arp_inspection boolean | Choices: no yes | Enables dynamic ARP inspection on a VLAN.
ip_dhcp_snooping boolean | Choices: no yes | Enables DHCP snooping on a VLAN.
name string |  | Name of the VLAN.
purge boolean | Choices: no ← yes | Purge VLANs not defined in the aggregate parameter.
state string | Choices: present ← absent | State of the VLAN configuration.
stp dictionary |  | Enable spanning-tree 802-1w/rstp for this vlan.
| enabled boolean | Choices: no yes | Manage the state(Enable/Disable) of the spanning_tree_802_1w in the current vlan
| priority string |  | Configures the priority of the bridge. The value ranges from 0 through 65535. A lower numerical value means the bridge has a higher priority. Thus, the highest priority is 0. The default is 32768.
| type string | Choices: 802-1w ← rstp | Specify the type of spanning-tree
tagged dictionary |  | List of ethernet ports or LAGS to be added as trunk(tagged) ports to the vlan. To add a range of ports use 'to' keyword. See the example.
| name list |  | Name of the interface or lag
| purge boolean | Choices: no yes | Purge interfaces not defined in the name
vlan_id integer / required |  | ID of the VLAN. Range 1-4094.

## Notes

Note

- Tested against ICX 10.1.

- For information on using ICX platform, see the ICX OS Platform Options guide.

## Examples

    - name: Add a single ethernet 1/1/48 as access(untagged) port to vlan 20
      icx_vlan:
        name: test-vlan
        vlan_id: 20
        interfaces:
          name:
            - ethernet 1/1/48

    - name: Add a single LAG 10 as access(untagged) port to vlan 20
      icx_vlan:
        vlan_id: 20
        interfaces:
          name:
            - lag 10

    - name: Add a range of ethernet ports as trunk(tagged) ports to vlan 20 by port
      icx_vlan:
        vlan_id: 20
        tagged:
          name:
            - ethernet 1/1/40 to 1/1/48

    - name: Add discontinuous lags, ethernet ports as access(untagged) and trunk(tagged) port to vlan 20.
      icx_vlan:
        vlan_id: 20
        interfaces:
          name:
            - ethernet 1/1/40 to 1/1/48
            - ethernet 2/1/1
            - lag 1
            - lag 3 to 5
        tagged:
          name:
            - ethernet 1/1/20 to 1/1/25
            - lag 1 to 3

    - name: Remove an access and range of trunk ports from vlan
      icx_vlan:
        vlan_id: 20
        interfaces:
          name:
            - ethernet 1/1/40
        tagged:
          name:
            - ethernet 1/1/39 to 1/1/70

    - name: Enable dhcp snooping, disable arp inspection in vlan
      icx_vlan:
        vlan_id: 20
        ip_dhcp_snooping: present
        ip_arp_inspection: absent

    - name: Create vlan 20.  Enable  arp inspection in vlan. Purge all other vlans.
      icx_vlan:
        vlan_id: 20
        ip_arp_inspection: present
        purge: present

    - name: Remove vlan 20.
      icx_vlan:
        vlan_id: 20
        state: absent

## Return Values

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

Key | Returned | Description
--- | --- | ---
commands list | always | The list of configuration mode commands to send to the device Sample: ['vlan 100', 'name test-vlan']

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]

- This module is maintained by the Ansible Community. [community]

### Authors

- Ruckus Wireless (@Commscope)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.