0:00–0:30
Lecture
0:30–1:50
Lab 3A
1:50–2:00
Debrief
0:00 – 0:30 Lecture · 30 min

The DORA process, DHCP lease lifecycle, and dhcpd.conf structure

Part 1 — Why DHCP? (5 min)

Part 2 — The DORA process (12 min)

Part 3 — dhcpd.conf structure (10 min)

Part 4 — DHCP logging (3 min)

0:30 – 1:50 Lab 3A · 80 min

Lab 3A — Install and configure isc-dhcp-server, DHCP logging, verify S2 lease

Part 1 — Install isc-dhcp-server (15 min)

Part 2 — Configure the listening interface (10 min)

Part 3 — Configure dhcpd.conf (25 min)

Part 4 — Configure DHCP-specific logging (15 min)

Part 5 — Verify S2 lease (15 min)

Lab 3A complete when: isc-dhcp-server running and enabled on S1. dhcpd.conf has a valid scope with correct range, gateway, DNS, and lease times. DHCP events appear in /var/log/dhcpd.log (not in syslog). S2 has received a DHCP lease in the 192.168.50.10–110 range. Lease entry visible in dhcpd.leases.
1:50 – 2:00 Debrief · 10 min

Learning outcomes — by end of Day 1, students can…

Explain the DORA processDescribe all four steps including source/destination addresses, broadcast vs unicast, and what each packet contains
Configure isc-dhcp-serverSet the listening interface in /etc/default/isc-dhcp-server and write a dhcpd.conf scope with range, gateway, DNS, and lease times
Route DHCP logs to a dedicated fileUse log-facility local0 in dhcpd.conf and a matching rsyslog rule to separate DHCP events from syslog
Read the DHCP lease databaseLocate /var/lib/dhcp/dhcpd.leases and interpret the fields in a lease entry

Common issues and fixes

IssueLikely causeFix
isc-dhcp-server fails to start after configuring interfaceSyntax error in dhcpd.conf — most commonly a missing semicolonCheck journal: sudo journalctl -u isc-dhcp-server -n 30. The error message includes the file name and line number. Every line in dhcpd.conf must end with a semicolon except the closing braces
S2 doesn't get a lease after switching to DHCPWrong interface name in /etc/default/isc-dhcp-server, or firewall blocking UDP 67/68Verify interface name matches exactly: ip link show. Check UFW is not blocking DHCP ports. Check tcpdump on S1 — is S2's Discover arriving?
DHCP log entries appear in syslog instead of dhcpd.loglog-facility local0 not in dhcpd.conf, or rsyslog rule not added / rsyslog not restartedVerify dhcpd.conf contains log-facility local0;. Check 50-default.conf has local0.* /var/log/dhcpd.log. Restart both services
dhcpd.leases file is emptyNo leases have been issued yetThe file exists but starts empty. It populates as leases are granted. Trigger a lease by running dhclient on S2
← Week 3 Overview Lab 3A Handout Day 2 →