DHCPNAK after neutron-dhcp-agent restart
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
grenade |
Invalid
|
Undecided
|
Han Zhou | ||
neutron |
Fix Released
|
High
|
Alexey I. Froloff | ||
Icehouse |
Fix Released
|
High
|
Kevin Bringard | ||
Juno |
Fix Released
|
High
|
Ihar Hrachyshka |
Bug Description
After rolling out a configuration change, we restarted neutron-dhcp-agent service, and then dnsmasq logs start flooding: DHCPNAK ... lease not found.
DHCPNAK is replied by dnsmasq for all DHCPREQUEST renews from all VMs. However the MAC and IP pairs exist in host files.
The log flooding increases when more and more VMs start renewing and they keep retrying until IP expire and send DHCPDISCOVER and reinit the IP.
The log flooding gradually disappears when the VMs IP expire and send DHCPDISCOVER, to which dnsmasq respond DHCPOFFER properly.
Analysis:
I noticed that option --leasefile-ro is used in dnsmasq command when started by neutron dhcp-agent. According to dnsmasq manual, this option should be used together with --dhcp-script to customize the lease database. However, the option --dhcp-script was removed when fixing bug 1202392.
Because of this, dnsmasq will not save lease information in persistent storage, and when it is restarted, lease information is lost.
Solution:
Simply replace --leasefile-ro by --dhcp-
tags: | added: low-hanging-fruit |
tags: | removed: low-hanging-fruit |
Changed in neutron: | |
importance: | Undecided → High |
Changed in neutron: | |
importance: | High → Low |
Changed in neutron: | |
importance: | Low → High |
Changed in grenade: | |
assignee: | Han Zhou (zhouhan) → Armando Migliaccio (armando-migliaccio) |
status: | Confirmed → In Progress |
Changed in grenade: | |
assignee: | Armando Migliaccio (armando-migliaccio) → Han Zhou (zhouhan) |
Changed in neutron: | |
assignee: | Han Zhou (zhouhan) → Carl Baldwin (carl-baldwin) |
Changed in neutron: | |
assignee: | Carl Baldwin (carl-baldwin) → Alexey I. Froloff (raorn) |
Changed in neutron: | |
milestone: | none → kilo-2 |
status: | Fix Committed → Fix Released |
tags: | removed: in-stable-icehouse in-stable-juno |
Changed in neutron: | |
milestone: | kilo-2 → 2015.1.0 |
tags: | added: customer-found support |
Fix proposed to branch: master /review. openstack. org/108272
Review: https:/