Default Route not added for IPv6 subnets in HA Router

Bug #1414937 reported by Sridhar Gaddam
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Fix Released
Undecided
Sridhar Gaddam
Juno
Fix Released
Undecided
Sridhar Gaddam

Bug Description

In an HA setup, keepalived would configure the default gateway (in the master HA router) by parsing the "virtual_routes" section of keepalived.conf file. In the current Neutron code, virtual_routes section is constructed keeping in view of IPv4 subnets.
This has to be suitably enhanced to support IPv6 subnets.

Changed in neutron:
assignee: nobody → Sridhar Gaddam (sridhargaddam)
Revision history for this message
Assaf Muller (amuller) wrote :

Is this the problematic code?
https://github.com/openstack/neutron/blob/master/neutron/agent/linux/keepalived.py#L103

Could you please expand on the issue?

Revision history for this message
Sridhar Gaddam (sridhargaddam) wrote :

@Assaf, changes are required in the following section of code... https://github.com/openstack/neutron/blob/master/neutron/agent/l3/ha.py#L168

For IPv4, as you know, we are constructing the virtual_routes section as follows.
    virtual_routes {
        0.0.0.0/0 via 20.1.1.1 dev qg-8a657f2e-46
    }

When the same is applied for an IPv6 subnet, it is added as shown below.
This needs some minor change (i.e., 0::/0) for IPv6 subnets.

However, for an IPv6 subnet the same is constructed as follows.
    virtual_routes {
        0.0.0.0/0 via 2014::1 dev qg-8a657f2e-46
    }

Along with this change, we also need keepalived 1.2.8 (or above) for the default route to be added.
I'll propose a separate patch for Keepalived requirement.

Changed in neutron:
status: New → In Progress
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/150787

Assaf Muller (amuller)
tags: added: juno-backport-potential l3-ha
tags: added: ipv6
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

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

commit a1318ae187f1695e2e49bbde32eb75230e96aefe
Author: sridhargaddam <email address hidden>
Date: Wed Jan 28 14:18:00 2015 +0000

    Default route missing for IPv6 subnets in HA Router

    In an HA setup, keepalived would configure the default gateway (in the master
    HA router) by parsing the "virtual_routes" section of keepalived.conf file.
    The "virtual_routes" section is properly constructed for an IPv4 subnet, but
    requires a minor change for IPv6 subnets.

    Closes-Bug: #1414937
    Change-Id: I54070e048577292d98d86fcc9ca8b9d3e72b4ebe

Changed in neutron:
status: In Progress → Fix Committed
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/159000

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

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

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on neutron (stable/juno)

Change abandoned by Sridhar Gaddam (<email address hidden>) on branch: stable/juno
Review: https://review.openstack.org/159000
Reason: Abandoned in favor of following patch - https://review.openstack.org/#/c/161325/

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

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

commit 5cb7a20804e4259e4c06716a1743ba7fbaf68740
Author: sridhargaddam <email address hidden>
Date: Wed Feb 25 05:42:47 2015 +0000

    Default route missing for IPv6 subnets in HA Router

    In an HA setup, keepalived would configure the default gateway (in the master
    HA router) by parsing the "virtual_routes" section of keepalived.conf file.
    The "virtual_routes" section is properly constructed for an IPv4 subnet, but
    requires a minor change for IPv6 subnets.

    Conflicts:
        neutron/agent/l3_ha_agent.py
        neutron/tests/functional/agent/test_l3_agent.py

    Closes-Bug: #1414937
    Change-Id: I54070e048577292d98d86fcc9ca8b9d3e72b4ebe
    (cherry picked from commit a1318ae187f1695e2e49bbde32eb75230e96aefe)

tags: added: in-stable-juno
Thierry Carrez (ttx)
Changed in neutron:
milestone: none → kilo-3
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in neutron:
milestone: kilo-3 → 2015.1.0
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.