gratuitous ARP
termoUm pacote ARP não solicitado em que um host anuncia o próprio endereço IP e o próprio endereço MAC a todos no enlace.
Hosts o enviam quando começam a usar um endereço, e a redundância de primeiro hop o envia no failover para que hosts e switches do enlace aprendam onde o endereço do gateway mora agora. A RFC 5227 chama o mesmo pacote de ARP Announcement.
A RFC 5227 define o ARP Announcement como um ARP request, em broadcast no enlace local, em que os campos de IP de origem e de destino levam o endereço anunciado. O objetivo é garantir que outros hosts não fiquem com entradas velhas no cache, deixadas por um host que usava o endereço antes. Um host que segue a RFC 5227 primeiro faz as sondagens e depois envia dois anúncios, com dois segundos de intervalo.
É um request e não um reply por história e por pragmatismo: Stevens o documentou assim, BSD, Windows e Mac OS enviam requests, e algumas implementações de ARP ignoram replies que ninguém pediu. A RFC 2281, do HSRP, faz diferente e envia em broadcast uma resposta ARP com o MAC virtual. Quando um roteador VRRP vira o Active Router, a RFC 9568 manda enviar em broadcast um gratuitous ARP para cada endereço IPv4 virtual, com o MAC virtual, para que a mudança chegue a todos os caches do enlace de uma vez.
A RFC 5227 é direta sobre um equívoco: um único gratuitous ARP não detecta endereço duplicado. O dono atual registra um erro, o recém-chegado segue em frente, e os dois param de funcionar direito. Detectar o conflito exige as sondagens antes do anúncio e a defesa do endereço, que continua enquanto ele estiver em uso.
Também conhecido como: garp, arp announcement, gratuitous arp request, unsolicited arp
Fontes
- RFC 5227, IPv4 Address Conflict Detection, July 2008: sections 1.1, 2.3, 2.4, 3 and 4 (read 2026-10-18)
- RFC 9568, Virtual Router Redundancy Protocol (VRRP) Version 3 for IPv4 and IPv6, April 2024: sections 6.4.2 and 8.1.2 (read 2026-10-19)
- RFC 2281, Cisco Hot Standby Router Protocol (HSRP), March 1998: sections 5.6 and 6.1 (read 2026-10-19)