Debugging lease problems with Sun DHCP Servers


While debugging some PXE boot problems a few weeks back, I needed to see who DHCP leases were being issued to. Since the box was running Solaris 9, I was able to take advantage of the Sun DHCP server’s “-d” (debug) and “-v” (verbose) options:

$ /usr/lib/inet/in.dhcpd -d -v -i ge0 -b manual

42a07602: Daemon Version: 3.5
42a07602: Maximum relay hops: 4
42a07602: Run mode is: DHCP Server Mode.
42a07602: Datastore resource: SUNWfiles
42a07602: Location: /var/dhcp
42a07602: DHCP offer TTL: 10
42a07602: BOOTP compatibility enabled.
42a07602: ICMP validation timeout: 1000 milliseconds, Attempts: 1.
42a07602: Maximum concurrent clients: 1024
42a07602: Maximum threads: 256
42a07602: Read 4 entries from DHCP macro database on Fri Jun 3 11:23:46 2005
42a07602: Monitor (0003/ge0) started...
42a07602: Thread Id: 0003 - Monitoring Interface: ge0 
42a07602: MTU: 1500 Type: SOCKET
42a07602: Broadcast: 10.10.10.255
42a07602: Netmask: 255.255.255.0
42a07602: Address: 10.10.10.122
42a07632: Datagram received on network device: ge0(limited broadcast)
42a07632: (Error 0) No more IP addresses on 10.10.10.0 network
42a07637: Datagram received on network device: ge0(limited broadcast)
42a07637: (Error 0) No more IP addresses on 10.10.10.0 network
42a0763f: Datagram received on network device: ge0(limited broadcast)
42a0763f: (Error 0) No more IP addresses on 10.10.10.0 network
42a0764f: Datagram received on network device: ge0(limited broadcast)
42a0764f: (Error 0) No more IP addresses on 10.10.10.0 network
42a07663: Datagram received on network device: ge0(limited broadcast)
42a07664: Sending datagram to broadcast address.
42a07664: (Added offer: 10.10.10.112
42a0766b: Datagram received on network device: ge0(limited broadcast)
42a0766b: Client: 01000D609C8889 maps to IP: 10.10.10.112
42a0766b: Sending datagram to broadcast address.
42a0766e: Datagram received on network device: ge0(limited broadcast)
42a0766e: Unicasting datagram to 10.10.10.112 address.
42a0766e: Adding ARP entry: 10.10.10.112 == 000D609C8889
42a0766e: Updated offer: 10.10.10.112
42a0766e: Datagram received on network device: ge0(limited broadcast)
42a0766e: Reserved offer: 10.10.10.112
42a0766e: Database write unnecessary for DHCP client: 01000D609C8889, 10.10.10.112
42a0766e: Client: 01000D609C8889 maps to IP: 10.10.10.112
42a0766e: Unicasting datagram to 10.10.10.112 address.
42a0766e: Adding ARP entry: 10.10.10.112 == 000D609C8889

The debug option will place the DHCP server into the foreground, causing the server to print a slew of information to the terminal screen. The debug options helped me solve my problem, and assisted with identifying several devices that shouldn’t be using DHCP.

This article was posted by Matty on 2005-09-29 02:33:00 -0400 EDT