Does Mac OS X Snow Leopard store complete information on the client DHCP leases it holds on Snow Leopard Server? It is apparently not recorded in /var/log/system.log — although this information is logged here on Tiger.

I can get the DHCP leases granted from sudo serveradmin fullstatus dhcp; this is the other end to what I want.

The issue arose when I managed to cripple the machine so that, while it was quite capable of accessing the local network, it couldn't play its part in receiving a fresh DHCP lease, and so the router wouldn't talk to it on any channel other than 80, isolating from anything outside the local network. I fixed the issue by rolling back the state with Time Machine, but I'd like to know how to troubleshoot this issue in future.


Which it did, and being able to verify that no leases had been generated in the past week (by looking at the date of the leases directory in the output of ls -l /var/db/dhcpclient) was useful in debugging the situation, so kudos to Harv. You can get more information on the individual leases by looking at ipconfig getpacket $INTERFACE, but not the date of when the last lease was issued/deleted.

What happens is that the ipfw firewall was blocking the ports used by DHCP. Switching off the firewall allows DHCP leases to be granted. Now, why these ports were blocked is still a mystery to me.

  • I think better ask this question on serverfault.com – Am1rr3zA Dec 27 '10 at 16:57
  • @Am1rr3zA - You're welcome to, but I won't, because it's a client-end debugging question. – Charles Stewart Dec 27 '10 at 18:32

I don't think you can find lease information from the client end, I believe it's stored on the server end. I don't quite understand, though, your predicament. You managed to cripple your network connectivity somehow?

Try /private/var/db/dhcpclient/leases.

| improve this answer | |
  • On Linux, usually the client will have the leases stored under /var/db/dhclient.leases.$ifN, where $ifN is the interface, say en0. The predicament is past; I'm after a key piece of information for future debugging attempts. – Charles Stewart Dec 27 '10 at 21:55
  • 2
    @Charles Stewart: try /private/var/db/dhcpclient/leases. – Harv Dec 27 '10 at 23:20
  • Bingo! Funny, I could swear I ran sudo find /private -iname "*dhcp*" -print without this turning up in the results. – Charles Stewart Dec 27 '10 at 23:27
  • 1
    Could you move your answer up into the answer? Perhaps preserve the current text also, for sanity. But an answer as an answer is highly preferred over discussion :). – Jason Salaz Dec 28 '10 at 0:01
  • @Harv: It happened again - a misconfigured firewall. I've summarised it in a postscript to my qn. Thank you for tracking down the leases directory: this has saved me much time. – Charles Stewart Jan 13 '11 at 9:32

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .