Bug 1261946 - Neutron traceback when an external network without IPv6 subnet is attached to an HA Router.
Summary: Neutron traceback when an external network without IPv6 subnet is attached to...
Keywords:
Status: CLOSED DUPLICATE of bug 1262647
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-neutron
Version: 7.0 (Kilo)
Hardware: x86_64
OS: Unspecified
unspecified
high
Target Milestone: ---
: 8.0 (Liberty)
Assignee: lpeer
QA Contact: Ofer Blaut
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-09-10 13:32 UTC by Sridhar Gaddam
Modified: 2016-04-26 18:53 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-09-14 08:54:46 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Launchpad 1494336 0 None None None Never

Description Sridhar Gaddam 2015-09-10 13:32:05 UTC
Description of problem:
For an HA Router which does not have any subnets in the external network, Neutron 
sets the IPv6 proc entry[1] on the gateway interface to receive Router Advts from 
external IPv6 router and configure a default route pointing to the LLA of the external IPv6 Router.

Normally for an HA Router in the backup state, Neutron removes Link Local Address (LLA)
from the gateway interface. 

In Kernel version 3.10 (used in platforms like RHEL7/Centos7) when the last IPv6 address is removed from the interface, 
IPv6 is shutdown on the iface and the proc entries corresponding to the iface are deleted (i.e., /proc/sys/net/ipv6/conf/<interface>)
This issue is resolved in the later kernels [2], but the issue exists on platforms with Kernel version 3.10
When IPv6 proc entries are missing and Neutron tries to configure the proc entry we see the following traceback in Neutron. 

[1] /proc/sys/net/ipv6/conf/qg-1fc4061d-3c/accept_ra
[2] http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=876fd05ddbae03166e7037fca957b55bb3be6594
[3] Trace:
    Command: ['ip', 'netns', 'exec', 'qrouter-e66b99aa-e840-4a13-9311-6242710a5452', 'sysctl', '-w', 'net.ipv6.conf.qg-1fc4061d-3c.accept_ra=2']
    Exit code: 255
    Stdin:
    Stdout:
    Stderr: sysctl: cannot stat /proc/sys/net/ipv6/conf/qg-1fc4061d-3c/accept_ra: No such file or directory

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


How reproducible:
Always

Steps to Reproduce:
1. Create an HA Router
2. Create an internal network, subnet and associate the internal subnet to HA router.
3. Create an external network without any subnet.
4. Associate the external network with the HA Router. 
5. Do not configure "ipv6_gateway" in neutron l3_agent.ini configuration.

Actual results:
Traceback seen in Neutron l3-agent logs.

Expected results:
Neutron should not trace out. 

Additional info:

Comment 3 Ihar Hrachyshka 2015-09-10 13:45:58 UTC
The patch got into 2015.1.1 thru rebase. It's not a regression though since HA routers never worked with IPv6 external networks with no subnets before.

It affects functional test CI for OSP, so we may need to revert the patch before proper fix emerges.

Comment 4 Sridhar Gaddam 2015-09-14 08:54:46 UTC

*** This bug has been marked as a duplicate of bug 1262647 ***


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