Bug 597353 - DNSMASQ off by one error when issuing leases - NAKs iussed lease
DNSMASQ off by one error when issuing leases - NAKs iussed lease
Status: CLOSED WONTFIX
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: libvirt (Show other bugs)
5.5
All Linux
low Severity medium
: rc
: ---
Assigned To: Laine Stump
Virtualization Bugs
:
Depends On:
Blocks: 1049888
  Show dependency treegraph
 
Reported: 2010-05-28 13:48 EDT by Neil Wilson
Modified: 2015-09-07 07:09 EDT (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-12-04 10:39:48 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
neil: needinfo-


Attachments (Terms of Use)

  None (edit)
Description Neil Wilson 2010-05-28 13:48:58 EDT
Description of problem:

I have a system using libvirt with several bridges all with /30 address ranges. That means that dnsmasq is effectively issuing a single address.


Version-Release number of selected component (if applicable):

Dnsmasq version 2.45  Copyright (C) 2000-2008 Simon Kelley
Compile time options IPv6 GNU-getopt no-ISC-leasefile no-DBus no-I18N TFTP


How reproducible:

Use network in libvirt:

<network>
  <name>br48b45a</name>
  <bridge name="br48b45a" forwardDelay="0" stp="off"/>
  <forward dev="bond0" mode="route"/>
  <ip address="10.72.180.89" netmask="255.255.255.252">
    <dhcp>
      <range end="10.72.180.90" start="10.72.180.90"/>
    </dhcp>
  </ip>
</network>

Attach a machine with DHCP to the bridge. 
...
   <interface type='bridge'>
      <mac address='00:16:3e:bb:6f:d2'/>
      <source bridge='brbb6fd2'/>
    </interface>
...




  
Actual results:

May 28 18:42:01 cloudtest1 dnsmasq[8130]: DHCPDISCOVER(brbb6fd2) 00:16:3e:bb:6f:d2 
May 28 18:42:01 cloudtest1 dnsmasq[8130]: DHCPOFFER(brbb6fd2) 10.187.111.210 00:16:3e:bb:6f:d2 
May 28 18:42:01 cloudtest1 dnsmasq[8130]: DHCPREQUEST(brbb6fd2) 10.187.111.210 00:16:3e:bb:6f:d2 
May 28 18:42:01 cloudtest1 dnsmasq[8130]: DHCPNAK(brbb6fd2) 10.187.111.210 00:16:3e:bb:6f:d2 no leases left

Expected results:

Here's a similar result on an Ubuntu 10.04 KVM machine with dnsmasq 

Dnsmasq version 2.52  Copyright (c) 2000-2010 Simon Kelley
Compile time options IPv6 GNU-getopt DBus I18N DHCP TFTP


May 28 18:31:47 acer-aspire-5536 dnsmasq-dhcp[4726]: DHCPDISCOVER(brec2996) 10.236.41.150 52:54:00:ec:29:96
May 28 18:31:47 acer-aspire-5536 dnsmasq-dhcp[4726]: DHCPOFFER(brec2996) 10.236.41.150 52:54:00:ec:29:96
May 28 18:31:47 acer-aspire-5536 dnsmasq-dhcp[4726]: DHCPREQUEST(brec2996) 10.236.41.150 52:54:00:ec:29:96
May 28 18:31:47 acer-aspire-5536 dnsmasq-dhcp[4726]: DHCPACK(brec2996) 10.236.41.150 52:54:00:ec:29:96 kvmrawdeboot


Additional info:
Comment 1 Tomáš Hozza 2013-01-14 14:02:44 EST
I'm not able to reproduce your issue with dnsmasq-2.45:

$ ./dnsmasq -d --strict-order --local=// --domain-needed --pid-file=/var/run/libvirt/network/test_net.pid --conf-file= --except-interface lo --bind-interfaces --interface virbr4 --dhcp-range 192.168.111.2,192.168.111.2 --dhcp-leasefile=/var/lib/libvirt/dnsmasq/test_net.leases --dhcp-lease-max=1 --dhcp-no-override
dnsmasq: started, version 2.45 cachesize 150
dnsmasq: compile time options: IPv6 GNU-getopt no-ISC-leasefile no-DBus no-I18N TFTP
dnsmasq: DHCP, IP range 192.168.111.2 -- 192.168.111.2, lease time 1h
dnsmasq: using local addresses only for unqualified names
dnsmasq: reading /etc/resolv.conf
dnsmasq: using nameserver 8.8.8.8#53
dnsmasq: using nameserver 213.46.172.37#53
dnsmasq: using nameserver 213.46.172.36#53
dnsmasq: using nameserver 10.33.63.7#53
dnsmasq: using nameserver 10.38.5.11#53
dnsmasq: using local addresses only for unqualified names
dnsmasq: read /etc/hosts - 2 addresses
dnsmasq: DHCPDISCOVER(virbr4) 52:54:00:20:94:cc 
dnsmasq: DHCPOFFER(virbr4) 192.168.111.2 52:54:00:20:94:cc 
dnsmasq: DHCPREQUEST(virbr4) 192.168.111.2 52:54:00:20:94:cc 
dnsmasq: DHCPACK(virbr4) 192.168.111.2 52:54:00:20:94:cc

Do you still have this issue? What arguments are passed to the dnsmasq when run by libvirt (you can use 'ps aux | grep dnsmasq' to find out)?

Thanks!
Comment 2 Neil Wilson 2013-01-14 16:08:39 EST
It was a libvirt failure, rather than a dnsmasq one.

Certainly it is no longer an issue on libvirt in RHEL 6.3.
Comment 3 Tomáš Hozza 2013-01-15 02:21:17 EST
Changing component to libvirt, since dnsmasq works properly.
Comment 4 Dave Allan 2013-01-15 11:34:33 EST
(In reply to comment #2)
> It was a libvirt failure, rather than a dnsmasq one.

Can you give us more detail about what you saw?
Comment 5 RHEL Product and Program Management 2013-05-01 02:43:05 EDT
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated
in the current release, Red Hat is unable to address this
request at this time.

Red Hat invites you to ask your support representative to
propose this request, if appropriate, in the next release of
Red Hat Enterprise Linux.
Comment 6 Jiri Denemark 2013-12-04 10:39:48 EST
This bugzilla has been reviewed by Red Hat and is not planned
on being addressed in Red Hat Enterprise Linux 5 because it
does not meet the criteria for Production 3 phase
(https://access.redhat.com/site/support/policy/updates/errata/).
Therefore this bugzilla will be closed. If this bug is critical
to production systems, please contact your Red Hat support
representative and provide sufficient business justification.

Note You need to log in before you can comment on or make changes to this bug.