← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1627902] Re: DHCP agent conflicting with dynamic IPv6 addresses

 

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

commit 21bb77667007b0b140c17d9104204943c4a0f4cc
Author: Brian Haley <brian.haley@xxxxxxx>
Date:   Fri Dec 2 23:07:29 2016 -0500

    Correctly configure IPv6 addresses on upgrades
    
    When starting the dhcp-agent after an upgrade, there could
    be stale IPv6 addresses in the namespace that had been
    configured via SLAAC.  These need to be removed, and the
    same address added back statically, in order for the
    agent to start up correctly.
    
    To avoid the race condition where an IPv6 RA could arrive
    while we are making this change, we must move the call
    to disable RAs in the namespace from plug(), since devices
    may already exist that are receiving packets.
    
    Uncovered by the grenade tests.
    
    Change-Id: I7e1e5d6c1fa938918aac3fb63888d20ff4088ba7
    Closes-bug: #1627902


** Changed in: neutron
       Status: In Progress => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1627902

Title:
  DHCP agent conflicting with dynamic IPv6 addresses

Status in neutron:
  Fix Released

Bug description:
  Below in gate logs. Completely breaks the DHCP for that network
  because it's trying to add an address that conflicts with one given to
  it via RA. Cause is the merge of
  d86f1b87f01c53c3e0b085086133b311e5bf3ab5 which allowed the agent to be
  configured with stateless v6 addresses to serve metadata correctly.

  http://logs.openstack.org/12/343312/5/gate/gate-tempest-dsvm-neutron-
  full-ubuntu-
  xenial/c11b933/logs/screen-q-dhcp.txt.gz?level=TRACE#_2016-09-26_21_45_40_604

  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.linux.utils [-] Exit
  code: 2; Stdin: ; Stdout: ; Stderr: RTNETLINK answers: File exists

  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent [-] Unable to enable dhcp for 81d252a2-8207-4e8c-a286-07fb3494a3ec.
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent Traceback (most recent call last):
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent   File "/opt/stack/new/neutron/neutron/agent/dhcp/agent.py", line 114, in call_driver
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent     getattr(driver, action)(**action_kwargs)
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent   File "/opt/stack/new/neutron/neutron/agent/linux/dhcp.py", line 212, in enable
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent     interface_name = self.device_manager.setup(self.network)
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent   File "/opt/stack/new/neutron/neutron/agent/linux/dhcp.py", line 1396, in setup
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent     namespace=network.namespace)
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent   File "/opt/stack/new/neutron/neutron/agent/linux/interface.py", line 129, in init_l3
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent     device.addr.add(ip_cidr)
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent   File "/opt/stack/new/neutron/neutron/agent/linux/ip_lib.py", line 577, in add
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent     self._as_root([net.version], tuple(args))
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent   File "/opt/stack/new/neutron/neutron/agent/linux/ip_lib.py", line 364, in _as_root
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent     use_root_namespace=use_root_namespace)
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent   File "/opt/stack/new/neutron/neutron/agent/linux/ip_lib.py", line 95, in _as_root
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent     log_fail_as_error=self.log_fail_as_error)
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent   File "/opt/stack/new/neutron/neutron/agent/linux/ip_lib.py", line 104, in _execute
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent     log_fail_as_error=log_fail_as_error)
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent   File "/opt/stack/new/neutron/neutron/agent/linux/utils.py", line 138, in execute
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent     raise RuntimeError(msg)
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent RuntimeError: Exit code: 2; Stdin: ; Stdout: ; Stderr: RTNETLINK answers: File exists
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent 
  2016-09-26 21:45:40.604 13605 ERROR neutron.agent.dhcp.agent

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1627902/+subscriptions


References