cisco.meraki.meraki_mx_vlan – Manage VLANs in the Meraki cloud
Note
This plugin is part of the cisco.meraki collection (version 2.5.0).
You might already have this collection installed if you are using the ansible
package. 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 cisco.meraki
.
To use it in a playbook, specify: cisco.meraki.meraki_mx_vlan
.
Synopsis
- Create, edit, query, or delete VLANs in a Meraki environment.
Parameters
Parameter | Choices/Defaults | Comments | |
---|---|---|---|
appliance_ip string | IP address of appliance. Address must be within subnet specified in subnet parameter. | ||
auth_key string / required | Authentication key provided by the dashboard. Required if environmental variable MERAKI_KEY is not set. | ||
dhcp_boot_filename string | Filename to boot from for DHCP boot | ||
dhcp_boot_next_server string | DHCP boot option to direct boot clients to the server to load boot file from. | ||
dhcp_boot_options_enabled boolean |
| Enable DHCP boot options | |
dhcp_handling string |
| How to handle DHCP packets on network. | |
dhcp_lease_time string |
| DHCP lease timer setting | |
dhcp_options list / elements=dictionary | List of DHCP option values | ||
code integer | DHCP option number. | ||
type string |
| Type of value for DHCP option. | |
value string | Value for DHCP option. | ||
dhcp_relay_server_ips list / elements=string | IP addresses to forward DHCP packets to. | ||
dns_nameservers string | Semi-colon delimited list of DNS IP addresses. Specify one of the following options for preprogrammed DNS entries opendns, google_dns, upstream_dns | ||
fixed_ip_assignments list / elements=dictionary | Static IP address assignments to be distributed via DHCP by MAC address. | ||
ip string | IP address for fixed IP assignment binding. | ||
mac string | MAC address for fixed IP assignment binding. | ||
name string | Descriptive name of IP assignment binding. | ||
host string | Default: "api.meraki.com" | Hostname for Meraki dashboard. Can be used to access regional Meraki environments, such as China. | |
internal_error_retry_time integer | Default: 60 | Number of seconds to retry if server returns an internal server error. | |
name string | Name of VLAN. aliases: vlan_name | ||
net_id string | ID of network which VLAN is in or should be in. | ||
net_name string | Name of network which VLAN is in or should be in. aliases: network | ||
org_id string | ID of organization. | ||
org_name string | Name of organization. aliases: organization | ||
output_format string |
| Instructs module whether response keys should be snake case (ex. net_id ) or camel case (ex. netId ). | |
output_level string |
| Set amount of debug output during module execution. | |
rate_limit_retry_time integer | Default: 165 | Number of seconds to retry if rate limiter is triggered. | |
reserved_ip_range list / elements=dictionary | IP address ranges which should be reserve and not distributed via DHCP. | ||
comment string | Description of IP addresses reservation | ||
end string | Last IP address of reserved IP address range, inclusive. | ||
start string | First IP address of reserved IP address range, inclusive. | ||
state string |
| Specifies whether object should be queried, created/modified, or removed. | |
subnet string | CIDR notation of network subnet. | ||
timeout integer | Default: 30 | Time to timeout for HTTP requests. | |
use_https boolean |
| If no , it will use HTTP. Otherwise it will use HTTPS.Only useful for internal Meraki developers. | |
use_proxy boolean |
| If no , it will not use a proxy, even if one is defined in an environment variable on the target hosts. | |
validate_certs boolean |
| Whether to validate HTTP certificates. | |
vlan_id integer | ID number of VLAN. ID should be between 1-4096. | ||
vpn_nat_subnet string | The translated VPN subnet if VPN and VPN subnet translation are enabled on the VLAN. |
Notes
Note
- Meraki’s API will return an error if VLANs aren’t enabled on a network. VLANs are returned properly if VLANs are enabled on a network.
- Some of the options are likely only used for developers within Meraki.
- Meraki’s API defaults to networks having VLAN support disabled and there is no way to enable VLANs support in the API. VLAN support must be enabled manually.
- More information about the Meraki API can be found at https://dashboard.meraki.com/api_docs.
- Some of the options are likely only used for developers within Meraki.
- As of Ansible 2.9, Meraki modules output keys as snake case. To use camel case, set the
ANSIBLE_MERAKI_FORMAT
environment variable tocamelcase
. - Ansible’s Meraki modules will stop supporting camel case output in Ansible 2.13. Please update your playbooks.
- Check Mode downloads the current configuration from the dashboard, then compares changes against this download. Check Mode will report changed if there are differences in the configurations, but does not submit changes to the API for validation of change.
Examples
- name: Query all VLANs in a network. meraki_vlan: auth_key: abc12345 org_name: YourOrg net_name: YourNet state: query delegate_to: localhost - name: Query information about a single VLAN by ID. meraki_vlan: auth_key: abc12345 org_name: YourOrg net_name: YourNet vlan_id: 2 state: query delegate_to: localhost - name: Create a VLAN. meraki_vlan: auth_key: abc12345 org_name: YourOrg net_name: YourNet state: present vlan_id: 2 name: TestVLAN subnet: 192.0.1.0/24 appliance_ip: 192.0.1.1 delegate_to: localhost - name: Update a VLAN. meraki_vlan: auth_key: abc12345 org_name: YourOrg net_name: YourNet state: present vlan_id: 2 name: TestVLAN subnet: 192.0.1.0/24 appliance_ip: 192.168.250.2 fixed_ip_assignments: - mac: "13:37:de:ad:be:ef" ip: 192.168.250.10 name: fixed_ip reserved_ip_range: - start: 192.168.250.10 end: 192.168.250.20 comment: reserved_range dns_nameservers: opendns delegate_to: localhost - name: Enable DHCP on VLAN with options meraki_vlan: auth_key: abc123 state: present org_name: YourOrg net_name: YourNet vlan_id: 2 name: TestVLAN subnet: 192.168.250.0/24 appliance_ip: 192.168.250.2 dhcp_handling: server dhcp_lease_time: 1 hour dhcp_boot_options_enabled: false dhcp_options: - code: 5 type: ip value: 192.0.1.1 delegate_to: localhost - name: Delete a VLAN. meraki_vlan: auth_key: abc12345 org_name: YourOrg net_name: YourNet state: absent vlan_id: 2 delegate_to: localhost
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description | |||
---|---|---|---|---|---|
response complex | success | Information about the organization which was created or modified | |||
appliance_ip string | success | IP address of Meraki appliance in the VLAN Sample: 192.0.1.1 | |||
dhcp_boot_filename string | success | Filename for boot file. Sample: boot.txt | |||
dhcp_boot_next_server string | success | DHCP boot option to direct boot clients to the server to load the boot file from. Sample: 192.0.1.2 | |||
dhcp_boot_options_enabled boolean | success | Whether DHCP boot options are enabled. | |||
dhcp_handling string | success | Status of DHCP server on VLAN. Sample: Run a DHCP server | |||
dhcp_lease_time string | success | DHCP lease time when server is active. Sample: 1 day | |||
dhcp_options complex | success | DHCP options. | |||
code integer | success | Code for DHCP option. Integer between 2 and 254. Sample: 43 | |||
type string | success | Type for DHCP option. Choices are text , ip , hex , integer .Sample: text | |||
value string | success | Value for the DHCP option. Sample: 192.0.1.2 | |||
dnsnamservers string | success | IP address or Meraki defined DNS servers which VLAN should use by default Sample: upstream_dns | |||
fixed_ip_assignments complex | success | List of MAC addresses which have IP addresses assigned. | |||
macaddress complex | success | MAC address which has IP address assigned to it. Key value is the actual MAC address. | |||
ip string | success | IP address which is assigned to the MAC address. Sample: 192.0.1.4 | |||
name string | success | Descriptive name for binding. Sample: fixed_ip | |||
id integer | success | VLAN ID number. Sample: 2 | |||
name string | success | Descriptive name of VLAN. Sample: TestVLAN | |||
networkId string | success | ID number of Meraki network which VLAN is associated to. Sample: N_12345 | |||
reserved_ip_ranges complex | success | List of IP address ranges which are reserved for static assignment. | |||
comment string | success | Description for IP address reservation. Sample: reserved_range | |||
end string | success | Last IP address in reservation range. Sample: 192.0.1.10 | |||
start string | success | First IP address in reservation range. Sample: 192.0.1.5 | |||
subnet string | success | CIDR notation IP subnet of VLAN. Sample: 192.0.1.0/24 |
Authors
- Kevin Breit (@kbreit)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/cisco/meraki/meraki_mx_vlan_module.html