Inconsistency in dhcp-agent when filling hosts and opts files

Bug #1501451 reported by Alexey I. Froloff
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Fix Released
High
Alexey I. Froloff
Juno
Fix Released
Undecided
Unassigned

Bug Description

We have bunch of subnets created in pre-Icehouse era, that have ipv6_address_mode and ipv6_ra_mode unset. For dhcpv6 functionality we rely on enable_dhcp setting for a subnet. However, in _iter_hosts port is skipped iff ipv6_address_mode set to SLAAC, but in _generate_opts_per_subnet subnet is skipped when ipv6_address_mode id SLAAC or unset.

Since we can not update ipv6_address_mode attribute in existing subnets (allow_put is False), this breaks DHCPv6 for these VMs.

Revision history for this message
Henry Gessau (gessau) wrote :
tags: added: ipv6
summary: - Incosistency in dhcp-agent when filling hosts and opts files
+ Inconsistency in dhcp-agent when filling hosts and opts files
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (master)

Fix proposed to branch: master
Review: https://review.openstack.org/229569

Changed in neutron:
assignee: nobody → Alexey I. Froloff (raorn)
status: New → In Progress
Henry Gessau (gessau)
tags: added: juno-backport-potential kilo-backport-potential liberty-rc-potential
Changed in neutron:
importance: Undecided → High
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.openstack.org/229569
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=81c5e511f704861a08f2e3938edca97474d4c44c
Submitter: Jenkins
Branch: master

commit 81c5e511f704861a08f2e3938edca97474d4c44c
Author: Alexey I. Froloff <email address hidden>
Date: Wed Sep 30 21:38:24 2015 +0300

    Fix inconsistency in DHCPv6 hosts and options generation

    The DHCP agent is inconsistent in how it handles subnets whose
    ipv6_address_mode is not slaac. While the DHCP agent writes out both
    DHCPv6 host entries and DHCPv6 options for ports scoped by the subnet
    for dnsmasq to use, subnet specific options are not written.

    This patch addresses this inconsistency by generating subnet specific
    options when the subnet's ipv6_address_mode is not slaac.

    Closes-Bug: #1501451

    Change-Id: I372c93fa5667e955c7b81181daa2e66f47d85fdf

Changed in neutron:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (stable/liberty)

Fix proposed to branch: stable/liberty
Review: https://review.openstack.org/235862

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (stable/kilo)

Fix proposed to branch: stable/kilo
Review: https://review.openstack.org/235864

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (stable/juno)

Fix proposed to branch: stable/juno
Review: https://review.openstack.org/235867

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (stable/liberty)

Reviewed: https://review.openstack.org/235862
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=bdb006f57851882d5141af7e6844c74f4f1a5226
Submitter: Jenkins
Branch: stable/liberty

commit bdb006f57851882d5141af7e6844c74f4f1a5226
Author: Alexey I. Froloff <email address hidden>
Date: Wed Sep 30 21:38:24 2015 +0300

    Fix inconsistency in DHCPv6 hosts and options generation

    The DHCP agent is inconsistent in how it handles subnets whose
    ipv6_address_mode is not slaac. While the DHCP agent writes out both
    DHCPv6 host entries and DHCPv6 options for ports scoped by the subnet
    for dnsmasq to use, subnet specific options are not written.

    This patch addresses this inconsistency by generating subnet specific
    options when the subnet's ipv6_address_mode is not slaac.

    Closes-Bug: #1501451

    Change-Id: I372c93fa5667e955c7b81181daa2e66f47d85fdf
    (cherry picked from commit 81c5e511f704861a08f2e3938edca97474d4c44c)

tags: added: in-stable-liberty
tags: added: in-stable-juno
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (stable/juno)

Reviewed: https://review.openstack.org/235867
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=fb58b4ba5678dc694cb0937b925ed70232c4ae45
Submitter: Jenkins
Branch: stable/juno

commit fb58b4ba5678dc694cb0937b925ed70232c4ae45
Author: Alexey I. Froloff <email address hidden>
Date: Wed Sep 30 21:38:24 2015 +0300

    Fix inconsistency in DHCPv6 hosts and options generation

    The DHCP agent is inconsistent in how it handles subnets whose
    ipv6_address_mode is not slaac. While the DHCP agent writes out both
    DHCPv6 host entries and DHCPv6 options for ports scoped by the subnet
    for dnsmasq to use, subnet specific options are not written.

    This patch addresses this inconsistency by generating subnet specific
    options when the subnet's ipv6_address_mode is not slaac.

    Closes-Bug: #1501451

    Conflicts:
     neutron/tests/unit/agent/linux/test_dhcp.py

    Conflict is due to the test file changed location in Kilo. Also added
    _test_output_opts_file that was missing in Juno.

    Change-Id: I372c93fa5667e955c7b81181daa2e66f47d85fdf
    (cherry picked from commit 81c5e511f704861a08f2e3938edca97474d4c44c)

tags: added: in-stable-kilo
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (stable/kilo)

Reviewed: https://review.openstack.org/235864
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=f76a9609f00c004e12a5b0a019f9729080415771
Submitter: Jenkins
Branch: stable/kilo

commit f76a9609f00c004e12a5b0a019f9729080415771
Author: Alexey I. Froloff <email address hidden>
Date: Wed Sep 30 21:38:24 2015 +0300

    Fix inconsistency in DHCPv6 hosts and options generation

    The DHCP agent is inconsistent in how it handles subnets whose
    ipv6_address_mode is not slaac. While the DHCP agent writes out both
    DHCPv6 host entries and DHCPv6 options for ports scoped by the subnet
    for dnsmasq to use, subnet specific options are not written.

    This patch addresses this inconsistency by generating subnet specific
    options when the subnet's ipv6_address_mode is not slaac.

    Closes-Bug: #1501451

    Change-Id: I372c93fa5667e955c7b81181daa2e66f47d85fdf
    (cherry picked from commit 81c5e511f704861a08f2e3938edca97474d4c44c)

Akihiro Motoki (amotoki)
tags: removed: juno-backport-potential kilo-backport-potential liberty-rc-potential
Revision history for this message
Thierry Carrez (ttx) wrote : Fix included in openstack/neutron 8.0.0.0b1

This issue was fixed in the openstack/neutron 8.0.0.0b1 development milestone.

Changed in neutron:
status: Fix Committed → Fix Released
Revision history for this message
Doug Hellmann (doug-hellmann) wrote : Fix included in openstack/neutron 7.0.1

This issue was fixed in the openstack/neutron 7.0.1 release.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.