This article explains why the 'diagnose sniffer packet any' command may display incorrect destination MAC addresses such as 00:00:00:00:00:00 instead of the next hop MAC address.
FortiGate.
To identify if traffic is reaching the next hop, packet capture can be taken to examine the destination MAC address when traffic exits the FortiGate.
Run the following capture:
diagnose sniffer packet any 'host 8.8.8.8 and icmp' 6 0 l
displays 00:00:00:00:00:00 in the destination MAC address field instead of the next hop MAC address.
Here the traffic is leaving out of FortiGate port1 towards the destination 8.8.8.8 but the destination MAC address is not showing the next hop device.
For a specified interface, such as ethx or a VLAN interface, libpcap provides both source and destination MAC addresses.
However, when capturing traffic on the 'any' interface, libpcap does not support displaying MAC addresses because it uses the SLL (Linux cooked-mode capture) structure in the same position for further processing.
As a result, monitoring tools that rely on libpcap, including sniffer and tcpmon, are unable to display MAC addresses unless a specific interface is defined: https://wiki.wireshark.org/SLL
Take the same sniffer with specifying the interface port1:
diagnose sniffer packet port1 'host 8.8.8.8 and icmp' 6 0 l
The Destination MAC address is now, clearly visible.
The Fortinet Security Fabric brings together the concepts of convergence and consolidation to provide comprehensive cybersecurity protection for all users, devices, and applications and across all network edges.
Copyright 2025 Fortinet, Inc. All Rights Reserved.