<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Option 4, turn off authoritative if we don’t want NAK’s?<div class=""><br class=""></div><div class="">doug</div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On May 25, 2015, at 7:35 PM, Kevin Benton <<a href="mailto:blak111@gmail.com" class="">blak111@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">Hi,<div class=""><br class=""></div><div class="">A recent change[1] to pass '--dhcp-authoritative' to dnsmasq has caused DHCPNAK messages when multiple agents are scheduled to a network [2].</div><div class=""><div class=""><br class=""></div><div class="">This was back-ported to Icehouse and Juno so we need a fix that is compatible with both of them.</div><div class=""><br class=""></div><div class="">I have two fixes for this so far and a third alternative if we don't like those.</div><div class=""><br class=""></div><div class="">The first is hacky, but it's only a few-line change.[3] It adds an iptables rule that just stops the DHCPNAKs from making it to the client. This is clean to back-port but it doesn't protect clients that have filtering disabled (e.g. bare metal).</div><div class=""><br class=""></div><div class="">The second persists the DHCP leases to a database.[4] The downside to this was always that being rescheduled to another agent would mean no entries in the lease file. This approach adds a work-around to generate an initial fake lease file based on all of the ports in the network.</div><div class=""><br class=""></div><div class="">A third approach that I don't have a patch pushed for yet is very similar to the second. When dnsmasq is in the leasefile-ro mode, it will call the script passed to --dhcp-script to get a list of leases to start with. This script would be built with the same logic as the second one. The only difference between the second approach is that dnsmasq wouldn't persist leases to a database.</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">I'm looking for feedback on how we want to go forward with this in a back-port friendly manner.</div><div class=""><br class=""></div><div class="">Cheers,</div><div class="">Kevin Benton</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">1. <a href="https://review.openstack.org/#/q/Ieff0236670c1403b5d79ad8e50d7574c1b694e34,n,z" class="">https://review.openstack.org/#/q/Ieff0236670c1403b5d79ad8e50d7574c1b694e34,n,z</a></div><div class="">2. <a href="https://bugs.launchpad.net/neutron/+bug/1457900" class="">https://bugs.launchpad.net/neutron/+bug/1457900</a></div><div class="">3. <a href="https://review.openstack.org/#/c/185332/" class="">https://review.openstack.org/#/c/185332/</a></div><div class="">4. <a href="https://review.openstack.org/#/c/185486/" class="">https://review.openstack.org/#/c/185486/</a></div><div class=""><br class=""></div>-- <br class=""><div class="gmail_signature"><div class="">Kevin Benton</div></div>
</div></div>
__________________________________________________________________________<br class="">OpenStack Development Mailing List (not for usage questions)<br class="">Unsubscribe: <a href="mailto:OpenStack-dev-request@lists.openstack.org" class="">OpenStack-dev-request@lists.openstack.org</a>?subject:unsubscribe<br class=""><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" class="">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br class=""></div></blockquote></div><br class=""></div></body></html>