Dynamic ARP inspection (DAI)
The primary goal of DAI is to protect the network against ARP Poisening and Man in the middle attacks.
ARP poisoning, also known as ARP spoofing, is a type of attack that involves sending falsified ARP (Address Resolution Protocol) messages to an Ethernet LAN. The purpose of these messages is to link the attacker's MAC address with the IP address of a legitimate computer or server on the network, which causes the traffic meant for that IP address to be misdirected to the attacker. This allows the attacker to intercept, modify, or stop data in transit, facilitating man-in-the-middle or denial-of-service attacks.
If DHCP Snooping is activated, two databases are maintained by the fortigate by monitoring DHCP Offers and Requests:
DHCP snooping Client DB.
IPSG (IP Source Guard) DB contains the statically assigned IPs
All ARP packets on untrusted ports without a valid entry in one of theses databases are dropped.
When an ARP Request or ARP reply arives on a untrusted port, it's checked against the IP, interface and VLAN. No DAI is happening on DHCP Snooping trusted ports.
DAI is is configured on a per-VLAN basis and can only be activated through the CLI:
config system interface
edit "VLAN200"
set vdom "root"
set ip 10.1.5.1 255.255.255.0
set allowaccess ping
set switch-controller-dhcp-snooping enable
set switch-controller-arp-inspection enable
set interface "fortilink"
set vlanid 200
next
end
View DAI Statistics:
FG01# diagnose switch-controller switch-info arp-inspection stats S448EFTF2300001234:
Vdom: root
S448EFTF23007654:
vlan 200 arp-request arp-reply
-----------------------------------------------------------------------
received 11 138
forwarded 11 4
dropped 0 134
ARP inspection log entries:

Only malicious ARP Packets are dropped, the port remains functionial.
By default DAI is linked to the DHCP-snooping port setting, distinguishing between Trusted and Untrusted ports. ARP spoofing is permitted on Trusted ports, while it is blocked on Untrusted ports. However, it is possible to manually disable ARP inspection on a DHCP snooping Untrusted port.:
#config switch-controller managed-switch
edit <switch-id>
config ports
edit port 3
set dhcp-snooping untrusted
set arp-inspection-trust trusted
next
end
next
end
Last updated
Was this helpful?