skip to content

Why wait a full DHCP lease period before ARP validation drops, while a gateway claim still succeeds?

level: middleimportance: should knowfreq 55%

answer

  1. the table starts empty
  2. learned only from exchanges the switch saw
  3. an existing lease is invisible until renewal
  4. renewal comes at half the lease
  5. logging buys coverage, leaves the claim unblocked

basics

~20 s

The binding table starts empty and learns only from DHCP exchanges the switch observes. Hosts already holding leases stay absent until they renew, at half the lease. Drop before then and their ARP is discarded: no gateway resolution.

solid answer

~50 s

Neighbour-claim validation compares the sender pair in an ARP frame on an untrusted port against the snooping binding table, which begins empty. It fills only as the switch observes DHCP transactions, so every host that leased its address before snooping was switched on stays invisible until it renews, which for a typical client is at half the lease. Move straight to dropping and those hosts fail address resolution: everything off-subnet dies while nothing on the host looks wrong. Running validation in log-only for longer than a lease converts the problem into a worklist, because every address still logging a mismatch on flip day is a host that will break, and the residue that never clears is the population that never leases at all. The wait has a real price: for as long as you only log, a host claiming the gateway's address keeps succeeding and you are merely watching it.

go deeper

for a junior

Know that the switch learns bindings only from DHCP exchanges it forwards, and that a host already holding an address is not in the table yet.

for a middle

Explain the renewal timing that governs how long the table takes to fill, and describe the exact failure a premature flip causes: address resolution fails while the host looks healthy.

for a senior

Run the window as a coverage exercise. Show how the logged mismatch list becomes a per-rack worklist, and how you decide it has flattened rather than guessing at a date.

for a principal

Frame the wait as accepted exposure with an end date. Be able to justify how long you left a gateway claim unblocked, to whom, and what shortened it.

## The table is a record of what the switch happened to see Dynamic ARP inspection does not know anything about your addressing plan. On an untrusted port it takes the sender MAC and sender IP out of an ARP frame and looks for a binding that matches; no binding, no pass. The bindings come from one place only — DHCP exchanges the switch itself forwarded after snooping was enabled. That single fact drives the whole rollout order. When you enable snooping on a live segment, the table is empty. Hosts do not re-request an address because a switch feature was turned on; they keep using the lease they already hold. A client normally contacts the server again at **T1**, half the lease, and falls back to broadcasting at **T2**, seven eighths of it. So the table fills gradually over roughly half a lease period for a well-behaved population, and never at all for the hosts that do not use DHCP. ## What happens if you skip the wait Enable dropping in the same window and every host whose lease predates snooping loses the ability to resolve its default gateway. The failure has three properties that make it expensive: - It is **partial and confusing**: existing conversations continue until an ARP entry ages out, so the rack degrades over minutes rather than failing at once. - It is **invisible from the host**: the interface is up, the address is valid, the lease is fine. The packets simply stop being forwarded. - It is **wide**: one command on a top-of-rack switch reaches every port on it. A storage controller or an out-of-band management interface with a static address never had a binding and never will, so for that population the wait changes nothing — they need static bindings entered from the inventory. ## What the log window actually buys Running validation in log-only mode does two jobs at once. 1. **It fills the table.** Every renewal observed during the window becomes a binding. 2. **It produces the exception list.** Each logged mismatch is an address that would have been dropped. Sorted and de-duplicated, that list is the set of hosts you must resolve before flipping — by letting them renew, by adding a static binding, or by deciding the port is exempt. The list shrinks quickly at first, as leases renew, then flattens. The flat residue is the interesting part: those are the hosts that will never appear on their own. ## What a log entry proves, and what it does not A validation log entry proves exactly one thing: a frame on an untrusted port carried a sender pair with no matching binding. That is the signature of a host claiming an address it was not given — and it is also precisely what a legitimate statically addressed appliance produces, every few seconds, forever. The record proves a mismatch, not intent. Treating the log as an attack feed during a rollout wastes the window; treating it as a coverage worklist is what it is for. ## Shortening the wait, and what each shortcut costs | Move | Effect | Cost | | --- | --- | --- | | Shorten the lease before the window | clients renew sooner, table fills faster | more server load and more churn while it lasts | | Bounce access ports rack by rack | forces immediate re-lease | a brief, scheduled outage per port group | | Import bindings from the server's active leases and the asset inventory | covers hosts before they renew | the import is only as good as the source, and it goes stale | ## The half nobody says out loud Every day spent logging is a day the control is not enforcing. The host you deployed this against — the one answering for the gateway from an access port — is unaffected by a log entry. That is the trade the change record should state plainly: a bounded window of continued exposure, chosen deliberately, in exchange for not blackholing a rack full of hosts you had not yet learned. Stating it that way is also what gets the shorter window approved, because it makes the wait a cost rather than a formality.

  • How would you fill the table faster than one lease period?
    Shorten the lease ahead of the window so clients renew sooner, force re-leases by bouncing access ports rack by rack, and import bindings for known hosts from the server's active leases and the asset inventory. Each costs something: a short lease raises server load and churn, a port bounce is a small scheduled outage, and an imported binding is only as accurate as the source it came from.
  • What does a single ARP validation log entry actually prove?
    Only that a frame on an untrusted port carried a sender MAC/IP pair with no matching binding. That is what a host claiming an address it was not given looks like, and it is equally what a legitimate statically addressed appliance produces continuously. The entry proves a mismatch, not an attack, and during a rollout it is a coverage worklist rather than a detection.
  • The residue of logged mismatches stops shrinking after a week. What is it telling you?
    That the DHCP-using population is now learned and what remains never leases: static appliances, out-of-band management, anything addressed by hand. Waiting longer will not clear it. Those hosts need static bindings from the inventory, or their ports need an explicit exemption, before dropping is switched on.

saying these in an interview costs you the question

  • Thinks the binding table is populated from the ARP cache
  • Assumes every host appears the moment snooping is enabled
  • Treats every validation log entry as an attacker
  • Believes log-only mode blocks the claim it records
  • Forgets clients renew at half the lease, not at expiry

context