On this page
cisco.meraki.meraki_ms_l3_interface – Manage routed interfaces on MS switches
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_ms_l3_interface.
Synopsis
- Allows for creation, management, and visibility into routed interfaces on Meraki MS switches.
 
Parameters
| Parameter | Choices/Defaults | Comments | |
|---|---|---|---|
| auth_key
        
        string / required
         | 
      
        
        Authentication key provided by the dashboard. Required if environmental variable  MERAKI_KEY is not set.
        | 
     ||
| default_gateway
        
        string
         | 
      
        
        The next hop for any traffic that isn't going to a directly connected subnet or over a static route.
        
       
        This IP address must exist in a subnet with a routed interface.
         | 
     ||
| host
        
        string
         | 
      Default: 
        "api.meraki.com"
         | 
      
        
        Hostname for Meraki dashboard.
        
       
        Can be used to access regional Meraki environments, such as China.
         | 
     |
| interface_id
        
        string
         | 
      
        
        Uniqiue identification number for layer 3 interface.
         | 
     ||
| interface_ip
        
        string
         | 
      
        
        The IP address this switch will use for layer 3 routing on this VLAN or subnet.
        
       
        This cannot be the same as the switch's management IP.
         | 
     ||
| internal_error_retry_time
        
        integer
         | 
      Default: 
        60
         | 
      
        
        Number of seconds to retry if server returns an internal server error.
         | 
     |
| multicast_routing
        
        string
         | 
      
       
  | 
      
        
        Enable multicast support if multicast routing between VLANs is required.
         | 
     |
| name
        
        string
         | 
      
        
        A friendly name or description for the interface or VLAN.
         | 
     ||
| org_id
        
        string
         | 
      
        
        ID of organization.
         | 
     ||
| org_name
        
        string
         | 
      
        
        Name of organization.
        
       aliases: organization  | 
     ||
| ospf_settings
        
        dictionary
         | 
      
        
        The OSPF routing settings of the interface.
         | 
     ||
| area
        
        string
         | 
      
        
        The OSPF area to which this interface should belong.
        
       
        Can be either 'disabled' or the identifier of an existing OSPF area.
         | 
     ||
| cost
        
        integer
         | 
      
        
        The path cost for this interface.
         | 
     ||
| is_passive_enabled
        
        boolean
         | 
      
       
  | 
      
        
        When enabled, OSPF will not run on the interface, but the subnet will still be advertised.
         | 
     |
| 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.
         | 
     |
| serial
        
        string
         | 
      
        
        Serial number of MS switch hosting the layer 3 interface.
         | 
     ||
| state
        
        string
         | 
      
       
  | 
      
        
        Create or modify an organization.
         | 
     |
| subnet
        
        string
         | 
      
        
        The network that this routed interface is on, in CIDR notation.
         | 
     ||
| 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
         | 
      
        
        The VLAN this routed interface is on.
        
       
        VLAN must be between 1 and 4094.
         | 
     ||
Notes
Note
- Once a layer 3 interface is created, the API does not allow updating the interface and specifying 
default_gateway. - 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_FORMATenvironment 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 l3 interfaces
  meraki_ms_l3_interface:
    auth_key: abc123
    state: query
    serial: aaa-bbb-ccc
- name: Query one l3 interface
  meraki_ms_l3_interface:
    auth_key: abc123
    state: query
    serial: aaa-bbb-ccc
    name: Test L3 interface
- name: Create l3 interface
  meraki_ms_l3_interface:
    auth_key: abc123
    state: present
    serial: aaa-bbb-ccc
    name: "Test L3 interface 2"
    subnet: "192.168.3.0/24"
    interface_ip: "192.168.3.2"
    multicast_routing: disabled
    vlan_id: 11
    ospf_settings:
      area: 0
      cost: 1
      is_passive_enabled: true
- name: Update l3 interface
  meraki_ms_l3_interface:
    auth_key: abc123
    state: present
    serial: aaa-bbb-ccc
    name: "Test L3 interface 2"
    subnet: "192.168.3.0/24"
    interface_ip: "192.168.3.2"
    multicast_routing: disabled
    vlan_id: 11
    ospf_settings:
      area: 0
      cost: 2
      is_passive_enabled: true
- name: Delete l3 interface
  meraki_ms_l3_interface:
    auth_key: abc123
    state: absent
    serial: aaa-bbb-ccc
    interface_id: abc123344566
  Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | ||
|---|---|---|---|---|
| data
        
        complex
         | 
      success | 
        
        Information about the layer 3 interfaces.
          | 
     ||
| default_gateway
        
        string
         | 
      success | 
        
        The next hop for any traffic that isn't going to a directly connected subnet or over a static route.
         Sample:
        
       
        192.168.2.1
         | 
     ||
| interface_id
        
        string
         | 
      success | 
        
        Uniqiue identification number for layer 3 interface.
         Sample:
        
       
        62487444811111120
         | 
     ||
| interface_ip
        
        string
         | 
      success | 
        
        The IP address this switch will use for layer 3 routing on this VLAN or subnet.
         Sample:
        
       
        192.168.2.2
         | 
     ||
| multicast_routing
        
        string
         | 
      success | 
        
        Enable multicast support if multicast routing between VLANs is required.
         Sample:
        
       
        disabled
         | 
     ||
| name
        
        string
         | 
      success | 
        
        A friendly name or description for the interface or VLAN.
         Sample:
        
       
        L3 interface
         | 
     ||
| ospf_settings
        
        complex
         | 
      success | 
        
        The OSPF routing settings of the interface.
          | 
     ||
| area
        
        string
         | 
      success | 
        
        The OSPF area to which this interface should belong.
          | 
     ||
| cost
        
        integer
         | 
      success | 
        
        The path cost for this interface.
         Sample:
        
       
        1
         | 
     ||
| is_passive_enabled
        
        boolean
         | 
      success | 
        
        When enabled, OSPF will not run on the interface, but the subnet will still be advertised.
         Sample:
        
       
        True
         | 
     ||
| subnet
        
        string
         | 
      success | 
        
        The network that this routed interface is on, in CIDR notation.
         Sample:
        
       
        192.168.2.0/24
         | 
     ||
| vlan_id
        
        integer
         | 
      success | 
        
        The VLAN this routed interface is on.
         Sample:
        
       
        10
         | 
     ||
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_ms_l3_interface_module.html