← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1846494] Re: neutron-openvswitch-agent and IPv6

 

Reviewed:  https://review.opendev.org/688304
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=4d52b903eb0745296c4e71eebd3db13d17aeede7
Submitter: Zuul
Branch:    master

commit 4d52b903eb0745296c4e71eebd3db13d17aeede7
Author: SapanaJadhav <sapanajadhav555@xxxxxxxxx>
Date:   Sun Oct 13 20:46:57 2019 +0530

    Adding check for IPv6 address in setup_controllers
    
    If it is IPv6 then adding [] to it before
    creating the connection string.
    
    Change-Id: Idd108cbef944cdd89808bb1ad5c8ab1db202d31a
    Closes-Bug: #1846494


** 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/1846494

Title:
  neutron-openvswitch-agent and IPv6

Status in neutron:
  Fix Released

Bug description:
  I got two problems connected to IPv6 and neutron-openvswitch-agent
  (Queens version of Openstack, Ubuntu 18.04):

  The first problem:

  The default value of "of_listen_address" (setting in [ovs] section in
  file /etc/neutron/plugins/ml2/openvswitch_agent.ini) is 127.0.0.1.

  When I set it to its IPv6 equivalent "::1", it tries to pass that to
  ovs-vswitchd as "tcp:::1:6633", which is not valid URL according IPv6.
  As result ovs-vswitchd complains about that.

  When I set value to "[::1]" with idea the result to be valid URL
  "tcp:[::1]:6633", I got following exception:

    File "/usr/lib/python2.7/dist-packages/oslo_config/cfg.py", line 3378, in __getattr__
      return self._conf._get(name, self._group)
    File "/usr/lib/python2.7/dist-packages/oslo_config/cfg.py", line 2940, in _get
      value = self._do_get(name, group, namespace)
    File "/usr/lib/python2.7/dist-packages/oslo_config/cfg.py", line 2983, in _do_get
      % (opt.name, str(ve)))
  oslo_config.cfg.ConfigFileValueError: Value for option of_listen_address is not valid: [::1] is not IPv4 or IPv6 address

  So the composing of URL with "of_listen_address" and "of_listen_port"
  for version IPv6 is not done correctly.

  The second problem:

  When I try to set "ovsdb_connection = tcp:[::1]:6640", again in
  "openvswitch_agent.ini", in logs I see neutron try to set manager as
  "ovs-vsctl set-manager ptcp::1]:6640:[". But I do not keep exact steps
  for reproduction.

  Also (just in case) I tried to set "ovsctl set-manager
  ptcp:6640:[::1]" , again in "openvswitch_agent.ini", but as expected I
  got follow error:

  ovs-vsctl[1957]: ovs|00001|vsctl|INFO|Called as /usr/bin/ovs-vsctl set-manager ptcp:6640:[::1]
  ovs-config.py[1962]: configobj.ParseError: Invalid line ('ovs-vsctl set-manager ptcp:6640:[::1]') (matched as neither section nor keyword) at line 58.

  So obviously it is for starting of server, not value for the ini file.

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


References