If we don’t send any traffic, the routers don’t have any dynamic ARP
entries in their ARP tables. Once we initiate traffic the ARP will probe
the neighboring host. Now we send ping from R1 to R2 and we
check the ARP tables once again:

We see in the R1's ARP table entry with the R2 IP address. The next
refresh attempt will be in 249 min, until then the entry will reside in
the ARP table.
On switches we can block ARP traffic by MAC access list:

Now, we check how Duplicate Address Detection works with ARP and the Gratuitous ARP role in the process.
I changed IP address on R2 and now both routers have the same IP
(10.0.0.1). Once we change IP address, ARP protocol generates ARP
Gratuitous reply. The interesting fact is the respond is sent for
non-exist request. There are few reasons why the message is generated
and one of them is detection of IP conflict.