[Dnsmasq-discuss] ethers should have precedence over client dhcp request

Simon Kelley simon at thekelleys.org.uk
Mon Jul 6 17:14:12 BST 2009


Michael Rack wrote:
> Hi Richard,
> 
> i am an advanced user :-D You don't have to tell me, that i have to
> restart dnsmasq in order to reload the configuration-data ;-)
> 
> Of course, dnsmasq was restarted after changing the configuration, but
> no ip-change on the client was affected.
> 
> Michael.
> 
> 
>>> Hi Simon,
>>>
>>> i have the same probleme here. I just plugged in the network-cable to my
>>> VoIP-Phone (snom 360). Snom discovered for an ip-address and dnsmasq
>>> gave it
>>> a free address in the dhcp-pool. After that, i added the mac-address
>>> to the
>>> dhcp-host-addresses and set the ip-address to a different one. Snom 360
>>> allways got DHCPACK for requesting the old ip-address. I had to
>>> delete the
>>> dhcp-lease-file-entry and restart dnsmasq.
>>
>> I don't think you had to delete the lease entry, you definitely needed
>> to restart dnsmasq because the configuration is cached at startup.
>> There's a signal for re-reading some files but not the main
>> configuration.
> 

Well I just tried it here Client (Freebsd running under Qemu, dhclient)
rebooted and picked up existing address-pool lease:

Jul  6 16:53:27 thekelleys dnsmasq-dhcp[5110]: DHCPDISCOVER(eth2)
192.168.3.148 52:54:00:12:34:56
Jul  6 16:53:27 thekelleys dnsmasq-dhcp[5110]: DHCPOFFER(eth2)
192.168.3.148 52:54:00:12:34:56
Jul  6 16:53:30 thekelleys dnsmasq-dhcp[5110]: DHCPREQUEST(eth2)
192.168.3.148 52:54:00:12:34:56
Jul  6 16:53:30 thekelleys dnsmasq-dhcp[5110]: DHCPACK(eth2)
192.168.3.148 52:54:00:12:34:56 freebsd

Then I added

dhcp-host=52:54:00:12:34:56,192.168.3.130

to /etc/dnsmasq and restarted dnsmasq, killed dhclient and re-ran it.

Jul  6 16:57:10 thekelleys dnsmasq-dhcp[6046]: DHCPREQUEST(eth2)
192.168.3.148 52:54:00:12:34:56
Jul  6 16:57:10 thekelleys dnsmasq-dhcp[6046]: DHCPNAK(eth2)
192.168.3.148 52:54:00:12:34:56 static lease available
Jul  6 16:57:10 thekelleys dnsmasq-dhcp[6046]: DHCPDISCOVER(eth2)
52:54:00:12:34:56
Jul  6 16:57:10 thekelleys dnsmasq-dhcp[6046]: DHCPOFFER(eth2)
192.168.3.130 52:54:00:12:34:56
Jul  6 16:57:13 thekelleys dnsmasq-dhcp[6046]: DHCPREQUEST(eth2)
192.168.3.130 52:54:00:12:34:56
Jul  6 16:57:13 thekelleys dnsmasq-dhcp[6046]: DHCPACK(eth2)
192.168.3.130 52:54:00:12:34:56 freebsd

Finally I removed dhcp-host and added read-ethers, and put

52:54:00:12:34:56 192.168.3.119

in /etc/ethers

and restarted dhclient again
Jul  6 17:00:20 thekelleys dnsmasq-dhcp[6449]: DHCPREQUEST(eth2)
192.168.3.130 52:54:00:12:34:56
Jul  6 17:00:20 thekelleys dnsmasq-dhcp[6449]: DHCPNAK(eth2)
192.168.3.130 52:54:00:12:34:56 static lease available
Jul  6 17:00:20 thekelleys dnsmasq-dhcp[6449]: DHCPDISCOVER(eth2)
52:54:00:12:34:56
Jul  6 17:00:20 thekelleys dnsmasq-dhcp[6449]: DHCPOFFER(eth2)
192.168.3.119 52:54:00:12:34:56
Jul  6 17:00:23 thekelleys dnsmasq-dhcp[6449]: DHCPREQUEST(eth2)
192.168.3.119 52:54:00:12:34:56
Jul  6 17:00:23 thekelleys dnsmasq-dhcp[6449]: DHCPACK(eth2)
192.168.3.119 52:54:00:12:34:56 freebsd


Can Michael or Felix repeat the same test with their clients, and if it
fails, get some packet captures of the DHCP packets

Cheers,

Simon






More information about the Dnsmasq-discuss mailing list