Visual RFC.
ALL RFCs / RFC 5227
Read the RFC ↗

RFC 5227 / START HERE

IPv4 conflict detection, before the details

ACD means Address Conflict Detection. IPv4 is Internet Protocol version 4; ARP is Address Resolution Protocol, used to connect an IPv4 address with hardware on the local link.

RFC5227 describes how a host checks an IPv4 address before using it, announces the address, and keeps listening for accidental conflicts while it uses the address. A link is a shared local network where broadcasts can reach the other participants.

The idea in one picture

  1. Probe the candidate

  2. Announce the mapping

  3. Monitor and respond

A simplified picture of the idea; the chapters explain the actual mechanisms.

Why it exists

Two devices using the same IPv4 address on one link can disrupt each other. Checking first helps, but a temporarily broken link can hide a collision until later. This RFC expands ARP behavior without replacing its packet format, and applies to manually configured addresses as well as Dynamic Host Configuration Protocol (DHCP) assignments.

A familiar example

A fictional laptop is offered 192.0.2.10. It probes without claiming ownership, then announces only if no conflict is observed. A later conflict needs an explicit response; special fixed-address infrastructure has a different defense option. ACD does not authenticate peers or detect identical addresses on unrelated links.

Helpful background

You can start here without reading another RFC. If these ideas are unfamiliar, these short introductions may help.

What you’ll learn next

Begin with chapter one, or choose a topic.

  1. Distinguish an ARP Probe from an AnnouncementAddress Resolution Protocol (ARP) connects an IPv4 address with a local hardware address. Address Conflict Detection (ACD) uses the same packet format to ask whether an address is occupied before claiming it.
  2. Wait, probe three times, and limit retriesA host checks before beginning to use an address, including after relevant link changes. Random timing reduces synchronized probes; silence only means no conflict has been observed yet.
  3. Recognize occupied addresses, competing Probes and echoesConflict checking examines ARP packets received on the interface being tested. The sender-IP test and the competing-Probe test have different requirement levels.
  4. Announce, refresh stale mappings and answer peersSuccessful probing leads to two broadcast ARP Announcements. The first establishes when ordinary use may begin; an existing peer cache entry can be refreshed from the sender mapping.
  5. Choose a conflict response for an address already in useMonitoring continues for the entire time an address is in use. A conflicting sender can lead to giving up, a limited defense, or special behavior for infrastructure deliberately configured to retain its address.
Start with chapter one →

This introduction explains RFC 5227 (2008). Read the original RFC ↗