On this page
fortinet.fortios.fortios_system_switch_interface – Configure software switch interfaces by grouping physical and WiFi interfaces in Fortinet’s FortiOS and FortiGate.
Note
This plugin is part of the fortinet.fortios collection (version 2.1.2).
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 fortinet.fortios.
To use it in a playbook, specify: fortinet.fortios.fortios_system_switch_interface.
New in version 2.10: of fortinet.fortios
Synopsis
- This module is able to configure a FortiGate or FortiOS (FOS) device by allowing the user to set and modify system feature and switch_interface category. Examples include all parameters and values need to be adjusted to datasources before usage. Tested with FOS v6.0.0
 
Requirements
The below requirements are needed on the host that executes this module.
- ansible>=2.9.0
 
Parameters
| Parameter | Choices/Defaults | Comments | ||
|---|---|---|---|---|
| access_token
        
        string
         | 
      
        
        Token-based authentication. Generated from GUI of Fortigate.
         | 
     |||
| enable_log
        
        boolean
         | 
      
       
  | 
      
        
        Enable/Disable logging for task.
         | 
     ||
| state
        
        string / required
         | 
      
       
  | 
      
        
        Indicates whether to create or remove the object.
         | 
     ||
| system_switch_interface
        
        dictionary
         | 
      
        
        Configure software switch interfaces by grouping physical and WiFi interfaces.
         | 
     |||
| intra_switch_policy
        
        string
         | 
      
       
  | 
      
        
        Allow any traffic between switch interfaces or require firewall policies to allow traffic between switch interfaces.
         | 
     ||
| mac_ttl
        
        integer
         | 
      
        
        Duration for which MAC addresses are held in the ARP table (300 - 8640000 sec).
         | 
     |||
| member
        
        list / elements=string
         | 
      
        
        Names of the interfaces that belong to the virtual switch.
         | 
     |||
| interface_name
        
        string
         | 
      
        
        Physical interface name. Source system.interface.name.
         | 
     |||
| name
        
        string / required
         | 
      
        
        Interface name (name cannot be in use by any other interfaces, VLANs, or inter-VDOM links).
         | 
     |||
| span
        
        string
         | 
      
       
  | 
      
        
        Enable/disable port spanning. Port spanning echoes traffic received by the software switch to the span destination port.
         | 
     ||
| span_dest_port
        
        string
         | 
      
        
        SPAN destination port name. All traffic on the SPAN source ports is echoed to the SPAN destination port. Source system.interface.name.
         | 
     |||
| span_direction
        
        string
         | 
      
       
  | 
      
        
        The direction in which the SPAN port operates, either: rx, tx, or both.
         | 
     ||
| span_source_port
        
        list / elements=string
         | 
      
        
        Physical interface name. Port spanning echoes all traffic on the SPAN source ports to the SPAN destination port.
         | 
     |||
| interface_name
        
        string
         | 
      
        
        Physical interface name. Source system.interface.name.
         | 
     |||
| type
        
        string
         | 
      
       
  | 
      
        
        Type of switch based on functionality: switch for normal functionality, or hub to duplicate packets to all port members.
         | 
     ||
| vdom
        
        string
         | 
      
        
        VDOM that the software switch belongs to. Source system.vdom.name.
         | 
     |||
| vdom
        
        string
         | 
      Default: 
        "root"
         | 
      
        
        Virtual domain, among those defined previously. A vdom is a virtual instance of the FortiGate that can be configured and used as a different unit.
         | 
     ||
Notes
Note
- Legacy fortiosapi has been deprecated, httpapi is the preferred way to run playbooks
 
Examples
- hosts: fortigates
  collections:
    - fortinet.fortios
  connection: httpapi
  vars:
   vdom: "root"
   ansible_httpapi_use_ssl: yes
   ansible_httpapi_validate_certs: no
   ansible_httpapi_port: 443
  tasks:
  - name: Configure software switch interfaces by grouping physical and WiFi interfaces.
    fortios_system_switch_interface:
      vdom:  "{{ vdom }}"
      state: "present"
      access_token: "<your_own_value>"
      system_switch_interface:
        intra_switch_policy: "implicit"
        mac_ttl: "4"
        member:
         -
            interface_name: "<your_own_value> (source system.interface.name)"
        name: "default_name_7"
        span: "disable"
        span_dest_port: "<your_own_value> (source system.interface.name)"
        span_direction: "rx"
        span_source_port:
         -
            interface_name: "<your_own_value> (source system.interface.name)"
        type: "switch"
        vdom: "<your_own_value> (source system.vdom.name)"
  Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | 
|---|---|---|
| build
        
        string
         | 
      always | 
        
        Build number of the fortigate image
         Sample:
        
       
        1547
         | 
     
| http_method
        
        string
         | 
      always | 
        
        Last method used to provision the content into FortiGate
         Sample:
        
       
        PUT
         | 
     
| http_status
        
        string
         | 
      always | 
        
        Last result given by FortiGate on last operation applied
         Sample:
        
       
        200
         | 
     
| mkey
        
        string
         | 
      success | 
        
        Master key (id) used in the last call to FortiGate
         Sample:
        
       
        id
         | 
     
| name
        
        string
         | 
      always | 
        
        Name of the table used to fulfill the request
         Sample:
        
       
        urlfilter
         | 
     
| path
        
        string
         | 
      always | 
        
        Path of the table used to fulfill the request
         Sample:
        
       
        webfilter
         | 
     
| revision
        
        string
         | 
      always | 
        
        Internal revision number
         Sample:
        
       
        17.0.2.10658
         | 
     
| serial
        
        string
         | 
      always | 
        
        Serial number of the unit
         Sample:
        
       
        FGVMEVYYQT3AB5352
         | 
     
| status
        
        string
         | 
      always | 
        
        Indication of the operation's result
         Sample:
        
       
        success
         | 
     
| vdom
        
        string
         | 
      always | 
        
        Virtual domain used
         Sample:
        
       
        root
         | 
     
| version
        
        string
         | 
      always | 
        
        Version of the FortiGate
         Sample:
        
       
        v5.6.3
         | 
     
Authors
- Link Zheng (@chillancezen)
 - Jie Xue (@JieX19)
 - Hongbin Lu (@fgtdev-hblu)
 - Frank Shen (@frankshen01)
 - Miguel Angel Munoz (@mamunozgonzalez)
 - Nicolas Thomas (@thomnico)
 
© 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/fortinet/fortios/fortios_system_switch_interface_module.html