Discovery Is Shouting into the Dark
A DHCP client has no IP address yet. How does a message even get sent, and what does that fact do to the shape of the message itself?
Open Session 01Protocol in Code · Track
broadcast discovery, offer deadlines, and lease expiry as shared state
Sessions
A DHCP client has no IP address yet. How does a message even get sent, and what does that fact do to the shape of the message itself?
Open Session 01A server that answers a DISCOVER has set an address aside for a client that might never come back. How long does it wait, and how does it find out — without ever hearing directly from the client — that it lost?
Open Session 02A server has a whole /24 to hand out addresses from. How does it decide which address is next, and how does it avoid handing the same address to two clients at once while an offer is still pending?
Open Session 03A lease table looks nothing like a DNS cache on the wire — so why is the code that manages one identical, line for line, to the code that manages the other three expiring stores this course has already built?
Open Session 04If a lease is just a dict entry that expires, why does RFC 2131 make a client start asking for a new one long before the old one runs out — and who is it even allowed to ask, at each point in that countdown?
Open Session 05DORA is always described as four steps — Discover, Offer, Request, Ack. What does the server actually have to check, and in what order, to make those four messages come out right every time, including when two servers answer the same DISCOVER?
Open Session 06