:source: fortios_switch_controller_flow_tracking.py
:orphan:
.. fortios_switch_controller_flow_tracking:
fortios_switch_controller_flow_tracking -- Configure FortiSwitch flow tracking and export via ipfix/netflow in Fortinet's FortiOS and FortiGate.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
.. versionadded:: 2.0.0
.. contents::
:local:
:depth: 1
Synopsis
--------
- This module is able to configure a FortiGate or FortiOS (FOS) device by allowing the user to set and modify switch_controller feature and flow_tracking 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.16
Tips
----
Using member operation to add an element to an existing object.
FortiOS Version Compatibility
-----------------------------
Supported Version Ranges: v6.2.0 -> v7.6.6
Parameters
----------
.. raw:: html
- access_token - Token-based authentication. Generated from GUI of Fortigate. type: str required: false
- enable_log - Enable/Disable logging for task. type: bool required: false default: False
- vdom - 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. type: str default: root
- member_path - Member attribute path to operate on. type: str
- member_state - Add or delete a member under specified attribute path. type: str choices: present, absent
- switch_controller_flow_tracking - Configure FortiSwitch flow tracking and export via ipfix/netflow. type: dict
more...
| Supported Version Ranges |
| switch_controller_flow_tracking |
v6.2.0 -> 7.6.6 |
- aggregates - Configure aggregates in which all traffic sessions matching the IP Address will be grouped into the same flow. type: list member_path: aggregates:id
more...
| Supported Version Ranges |
| aggregates |
v6.2.0 -> 7.6.6 |
- id - Aggregate id. see Notes. type: int required: true
more...
|
Supported Version Ranges |
| id |
v6.2.0 -> 7.6.6 |
- ip - IP address to group all matching traffic sessions to a flow. type: str
more...
|
Supported Version Ranges |
| ip |
v6.2.0 -> 7.6.6 |
- collector_ip - Configure collector ip address. type: str
more...
|
Supported Version Ranges |
| collector_ip |
v6.2.0 -> v7.0.12 |
- collector_port - Configure collector port number(0-65535). type: int
more...
|
Supported Version Ranges |
| collector_port |
v6.2.0 -> v7.0.12 |
- collectors - Configure collectors for the flow. type: list member_path: collectors:name
more...
| Supported Version Ranges |
| collectors |
v7.2.0 -> 7.6.6 |
- ip - Collector IP address. type: str
more...
|
Supported Version Ranges |
| ip |
v7.2.0 -> 7.6.6 |
- name - Collector name. type: str required: true
more...
|
Supported Version Ranges |
| name |
v7.2.0 -> 7.6.6 |
- port - Collector port number(0-65535). type: int
more...
|
Supported Version Ranges |
| port |
v7.2.0 -> 7.6.6 |
- transport - Collector L4 transport protocol for exporting packets. type: str choices: udp, tcp, sctp
more...
|
Supported Version Ranges |
| transport |
v7.2.0 -> 7.6.6 |
| [udp] |
v7.2.0 -> 7.6.6 |
| [tcp] |
v7.2.0 -> 7.6.6 |
| [sctp] |
v7.2.0 -> 7.6.6 |
- format - Configure flow tracking protocol. type: str choices: netflow1, netflow5, netflow9, ipfix
more...
|
Supported Version Ranges |
| format |
v6.2.0 -> 7.6.6 |
| [netflow1] |
v6.2.0 -> 7.6.6 |
| [netflow5] |
v6.2.0 -> 7.6.6 |
| [netflow9] |
v6.2.0 -> 7.6.6 |
| [ipfix] |
v6.2.0 -> 7.6.6 |
- level - Configure flow tracking level. type: str choices: vlan, ip, port, proto, mac
more...
|
Supported Version Ranges |
| level |
v6.2.0 -> 7.6.6 |
| [vlan] |
v6.2.0 -> 7.6.6 |
| [ip] |
v6.2.0 -> 7.6.6 |
| [port] |
v6.2.0 -> 7.6.6 |
| [proto] |
v6.2.0 -> 7.6.6 |
| [mac] |
v6.2.0 -> 7.6.6 |
- max_export_pkt_size - Configure flow max export packet size (512-9216). type: int
more...
|
Supported Version Ranges |
| max_export_pkt_size |
v6.2.0 -> 7.6.6 |
- sample_mode - Configure sample mode for the flow tracking. type: str choices: local, perimeter, device-ingress
more...
|
Supported Version Ranges |
| sample_mode |
v6.2.0 -> 7.6.6 |
| [local] |
v6.2.0 -> 7.6.6 |
| [perimeter] |
v6.2.0 -> 7.6.6 |
| [device-ingress] |
v6.2.0 -> 7.6.6 |
- sample_rate - Configure sample rate for the perimeter and device-ingress sampling(0 - 99999). type: int
more...
|
Supported Version Ranges |
| sample_rate |
v6.2.0 -> 7.6.6 |
- template_export_period - Configure template export period (1-60). type: int
more...
|
Supported Version Ranges |
| template_export_period |
v7.2.0 -> 7.6.6 |
- timeout_general - Configure flow session general timeout (60-604800). type: int
more...
|
Supported Version Ranges |
| timeout_general |
v6.2.0 -> 7.6.6 |
- timeout_icmp - Configure flow session ICMP timeout (60-604800). type: int
more...
|
Supported Version Ranges |
| timeout_icmp |
v6.2.0 -> 7.6.6 |
- timeout_max - Configure flow session max timeout (60-604800). type: int
more...
|
Supported Version Ranges |
| timeout_max |
v6.2.0 -> 7.6.6 |
- timeout_tcp - Configure flow session TCP timeout (60-604800). type: int
more...
|
Supported Version Ranges |
| timeout_tcp |
v6.2.0 -> 7.6.6 |
- timeout_tcp_fin - Configure flow session TCP FIN timeout (60-604800). type: int
more...
|
Supported Version Ranges |
| timeout_tcp_fin |
v6.2.0 -> 7.6.6 |
- timeout_tcp_rst - Configure flow session TCP RST timeout (60-604800). type: int
more...
|
Supported Version Ranges |
| timeout_tcp_rst |
v6.2.0 -> 7.6.6 |
- timeout_udp - Configure flow session UDP timeout (60-604800). type: int
more...
|
Supported Version Ranges |
| timeout_udp |
v6.2.0 -> 7.6.6 |
- transport - Configure L4 transport protocol for exporting packets. type: str choices: udp, tcp, sctp
more...
|
Supported Version Ranges |
| transport |
v6.2.0 -> v7.0.12 |
| [udp] |
v6.2.0 -> v7.0.12 |
| [tcp] |
v6.2.0 -> v7.0.12 |
| [sctp] |
v6.2.0 -> v7.0.12 |
Notes
-----
.. note::
- Legacy fortiosapi has been deprecated, httpapi is the preferred way to run playbooks
- The module supports check_mode.
Examples
--------
.. code-block:: yaml+jinja
- name: Configure FortiSwitch flow tracking and export via ipfix/netflow.
fortinet.fortios.fortios_switch_controller_flow_tracking:
vdom: "{{ vdom }}"
switch_controller_flow_tracking:
aggregates:
-
id: "4"
ip: ""
collector_ip: ""
collector_port: "0"
collectors:
-
ip: ""
name: "default_name_10"
port: "0"
transport: "udp"
format: "netflow1"
level: "vlan"
max_export_pkt_size: "512"
sample_mode: "local"
sample_rate: "512"
template_export_period: "5"
timeout_general: "3600"
timeout_icmp: "300"
timeout_max: "604800"
timeout_tcp: "3600"
timeout_tcp_fin: "300"
timeout_tcp_rst: "120"
timeout_udp: "300"
transport: "udp"
Return Values
-------------
Common return values are documented: https://docs.ansible.com/ansible/latest/reference_appendices/common_return_values.html#common-return-values, the following are the fields unique to this module:
.. raw:: html
- build - Build number of the fortigate image returned: always type: str sample: 1547
- http_method - Last method used to provision the content into FortiGate returned: always type: str sample: PUT
- http_status - Last result given by FortiGate on last operation applied returned: always type: str sample: 200
- mkey - Master key (id) used in the last call to FortiGate returned: success type: str sample: id
- name - Name of the table used to fulfill the request returned: always type: str sample: urlfilter
- path - Path of the table used to fulfill the request returned: always type: str sample: webfilter
- revision - Internal revision number returned: always type: str sample: 17.0.2.10658
- serial - Serial number of the unit returned: always type: str sample: FGVMEVYYQT3AB5352
- status - Indication of the operation's result returned: always type: str sample: success
- vdom - Virtual domain used returned: always type: str sample: root
- version - Version of the FortiGate returned: always type: str sample: v5.6.3
Status
------
- This module is not guaranteed to have a backwards compatible interface.
Authors
-------
- Link Zheng (@chillancezen)
- Jie Xue (@JieX19)
- Hongbin Lu (@fgtdev-hblu)
- Frank Shen (@frankshen01)
- Miguel Angel Munoz (@mamunozgonzalez)
- Nicolas Thomas (@thomnico)
.. hint::
If you notice any issues in this documentation, you can create a pull request to improve it.