IoT detection service

Internet of Things (IoT) detection is a subscription service that allows FortiGate to detect unknown devices in FortiGuard that are not detected by the local Device Database (CIDB). When the service is activated, FortiGate can send device information to the FortiGuard collection server. When a new device is detected, FortiGate queries the results from the FortiGuard query for more information about the device.

This feature requires an IoT Detection Service license.

FortiGate device requirements:

The FortiGate device must be:

  • Registered with FortiCare
  • Connected to an anycast FortiGuard server
How the service works:
  1. Enable Device Detection on an interface..

  2. FortiGate uses the interface to detect device traffic flow.

  3. Upon detecting traffic from an unknown device, FortiGate sends the device data to the FortiGuard collection server.

  4. The collection server returns data about the new device to the FortiGuard query server.

  5. If the device signature does not appear in the local Device Database (CIDB) or some fields are not complete, FortiGate queries FortiGuard for more information about the device.

To view the latest device information in the GUI, go to Dashboard > Users & Devices and expand the Device Inventory widget.

To debug the daemon in the CLI:
  1. Disable the local device database in order to force all queries to go to FortiGuard.

    # diagnose src-vis local-sig disable

  2. Enable iotd debugs.

    # diagnose debug application iotd -1

    # diagnose debug enable

    FortiGate sends the device data to the FortiGuard collection server.

    FortiWiFi-60E # [iotd] recv request from caller size:61

    [iotd] service:collect hostname: ip: fd:-1 request tlv_len:41

    [iotd] txt(.....y...w.....Jasons-iPhone6....579=23..)

    [iotd] hex(02010007017903060f77fc0203000e4a61736f6e732d6950686f6e6536020400083537393d32330cff)

    [iotd] service:collect ip: fd:-1 got server hostname