[Dnsmasq-discuss] dnsmasq.lease file question

Simon Kelley simon at thekelleys.org.uk
Tue Apr 24 18:47:21 BST 2007

Mr Gabriel wrote:
> I too have noticed this strange phenomena, and not just in DNSMasq. On
> almost every DHCP server I have ever used, when I look at the lease
> file, there is never hardware info for linux boxes. Personally, and my
> understanding of the underlying mechanics of DHCP is very limited, I
> thought that all requests for a DHCP address included the mac address,
> in order for an answer to be directed to the correct machine. Therefore,
> the DHCP server should already know the hardware address. Why it
> forgets, and it never gets listed, is beyond me. Maybe someone else
> could enlighten us :)
> On Tue, 2007-04-24 at 12:46 -0400, Philippe Faure wrote:
>> Hello,
>> I am running Dnsmasq version 2.2 on a Debian server version 3.1. The
>> Dnsmasq.lease file has the following information stored in it.
>> 1177812457 00:15:e9:a8:e5:28 debian-host *
>> 1177928854 00:15:e9:a8:e6:c5 carm 01:00:15:e9:a8:e6:c5
>> 1177849379 00:03:2f:3a:f2:e9 phil 01:00:03:2f:3a:f2:e9
>> Why is it that the two windows' boxes have the hardware ID there, while the
>> linux (Ubuntu Feisty, running dhcpcd) only has a *?
>> Is there some setup that I have done properly? if so with the client or 
>> server?
>> Do I need to worry about it?

This is a tale of two different identifiers: the MAC address and the 
client identifier. The final item on each line in the leases file is a 
client identifier.

Client identifiers are optional: if one is not provided then the DHCP 
server just uses the MAC address to track the host, but if a client-id 
is present, it trumps the MAC address. This has interesting 
applications: if a machine uses a serial number as its client-id, then 
replacement of a network interface (changing the MAC address) won't 
interfere with a DHCP lease.

In practice, unless specially configured, common clients either don't 
send a client-id, or send one derived from the MAC address, so the 
presence or absence really doesn't matter.  In this case, windows sends 
a client-id but dhclient doesn't. It's not a practical problem either 
way round, and nothing to worry about.

Interestingly, it's possible to have a client-id and no MAC address. 
Firewire does this, because firewire MAC addresses are larger than the 
MAC address field in a DHCP packet.



More information about the Dnsmasq-discuss mailing list