[Dnsmasq-discuss] dhcp clients not recieving acks

Simon Kelley simon at thekelleys.org.uk
Tue May 8 16:17:55 BST 2007


Wesley Connor wrote:
> howdy folks
> 
> i have what i believe is a common problem, but im damned if i can figure
> out how to fix it
> 
> i have a 2 day old install of openbsd 4.1 running the latest pkg version
> of dnsmasq which is 2.31
> 
> i have dnsmasq setup doing dns and dhcp on my server and the dns is
> working fine
> 
> but when clients request a dhcp lease, on the server i get
> 
> dnsmasq[30314]: DHCPDISCOVER(fxp0) 192.168.101.15 00:0c:6e:66:##:##
> dnsmasq[30314]: DHCPOFFER(fxp0) 192.168.101.15 00:0c:6e:66:##:##
> dnsmasq[30314]: DHCPDISCOVER(fxp0) 192.168.101.15 00:0c:6e:66:##:##
> dnsmasq[30314]: DHCPOFFER(fxp0) 192.168.101.15 00:0c:6e:66:##:##
> dnsmasq[30314]: DHCPDISCOVER(fxp0) 192.168.101.15 00:0c:6e:66:##:##
> dnsmasq[30314]: DHCPOFFER(fxp0) 192.168.101.15 00:0c:6e:66:##:##
> 
> repeated about a dozen times
> 
> but no DHCPDACK's and the client eventually times out
> 
> now as i understand this is a broadcast/firewall filtering issue
> 
> my pf is setup to allow all in and all out and ive tried it with pf
> disabled
> 
> the if im listening on is setup as
> 
> inet 192.168.101.100 255.255.255.0 NONE
> 
> which gives it an ifconfig response of
> 
> fxp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
>         lladdr 00:90:27:2e:##:##
>         groups: egress
>         media: Ethernet autoselect (100baseTX full-duplex)
>         status: active
>         inet6 fe80::290:27ff:fe2e:7fd6%fxp0 prefixlen 64 scopeid 0x1
>         inet 192.168.101.100 netmask 0xffffff00 broadcast 192.168.101.255
> 
> 
> my dnsmasq.conf contains
> ####
> domain-needed
> bogus-priv
> 
> filterwin2k
> 
> interface=fxp0
> 
> expand-hosts
> 
> domain=foo.org
> 
> dhcp-range=192.168.101.2,192.168.101.200,12h
> 
> dhcp-option=3,192.168.101.1    #mygateway
> 
> dhcp-authoritative
> 
> log-queries
> ###
> 
> am i missing something obvious?

No, your config looks fine.
> 
> as i said the dns is working fine
> 
> and the dhcp requests seem to be getting in and dnsmasq is offering an ip
> the leases just arent 'getting out' or being picked up
> 
> and as in the other cases i have read, the standard dhcpd works fine but
> i understand that it works differently

That's probably no relevant: under Linux dnsmasq does DHCP differently
to dhcpd, but on *BSD, pretty much the same constraints apply, I think.

There's a history of bugs on OpenBSD 4.x which might be relevant: 2.31
will not work at all under OpenBSD 4.0 because of a kernel bug: a
work-around went into versions 2.35 and up, but that should only be
active under 4.0. The kernel bug was fixed in a test kernel I have,
which was supposed to go into 4.1, but I've not verified that it did.
The symptoms of that bug were different to what you see (no logging at
all, all DHCP packets ignored.)

Please could you try the latest release of dnsmasq, (2.39) and if that
doesn't work, try and grab the packets using tcpdump, and trace the
execution of the program using truss. Mail me the complete raw packet
dump file. (Mail me off list if you need more explicit instructions on
doing that.)


Cheers,

Simon.






More information about the Dnsmasq-discuss mailing list