Forum Discussion
Altera_Forum
Honored Contributor
13 years agoARP packets are (typically) sent when you make an outgoing connection to an IP address for which you don't have a MAC address. This is all handled by the IP stack.
Since an ARP response needs an entry in the ARP table, the receipt of an ARP message usually adds an entry for the remote system. This means that a system than only receives incomming connections (maybe typical of an embedded system using TCP for management) will never send ARP requests, only ARP responses. Some ICMP messages have to be processed in order to get TCP working properly (especially the 'fragmentation required' one), that code should be part of the IP stack (but might be optional for an embedded system that only uses TCP for management). Usually an application doesn't worry about arp or icmp - except for 'ping',