[Dnsmasq-discuss] Why is dnsmasq handing out the same IP to different MACs?

richardvoigt at gmail.com richardvoigt at gmail.com
Mon Apr 12 20:47:38 BST 2010


On Mon, Apr 12, 2010 at 2:16 PM, Paul Smith <psmith at gnu.org> wrote:
> Hi guys.  I have a strange problem.  I'm running Red Hat EL 5.3 with
> dnsmasq 2.45 (Red Hat's package dnsmasq-2.45-1.el5_2.1 to be precise) on
> a server to which a lot of blades are attached: there are 96 blades with
> 2 NICs per blade, for a total of 192 different IP addresses.  I've got a
> dnsmasq config like:
>
> dhcp-lease-max=255
> dhcp-range=10.0.0.17,10.0.15.254,infinite
>
>
> There's a very odd thing happening when I stop dnsmasq, remove my leases
> file, then restart dnsmasq, then I restart all the blades at once: I'm
> seeing dnsmasq hand out the same IP address to >1 different MAC address.

It looks like
(a) dnsmasq doesn't distinguish between free addresses recently
offered up and "really" free addresses
(b) the hashing algorithm which chooses a free address to give out is
failing you miserably, causing collisions
(c) the recovery algorithm when the hash produces a used address is
deterministic (it starts a linear search from the hash-based address)
which causes further collisions



More information about the Dnsmasq-discuss mailing list