← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1357084] Re: IPv6 slaac is broken when subnet is less than /64

 

Reviewed:  https://review.openstack.org/126905
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=a56a35572d7b7d4b534825fe7b4f681028121a74
Submitter: Jenkins
Branch:    proposed/juno

commit a56a35572d7b7d4b534825fe7b4f681028121a74
Author: Eugene Nikanorov <enikanorov@xxxxxxxxxxxx>
Date:   Mon Aug 25 00:59:02 2014 +0400

    Raise exception if ipv6 prefix is inappropriate for address mode
    
    Address prefix to use with slaac and stateless ipv6 address modes
    should be equal to 64 in order to work properly.
    The patch adds corresponding validation and fixes unit tests
    accordingly.
    
    Change-Id: I6c344b21a69f85f2885a72377171f70309b26775
    Closes-Bug: #1357084
    (cherry picked from commit 0d8911115e1b722da2f1e92f444e53b22223ee32)


** Changed in: neutron
       Status: Fix Committed => 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/1357084

Title:
  IPv6 slaac is broken when subnet is less than /64

Status in OpenStack Neutron (virtual network service):
  Fix Released

Bug description:
  SLAAC and DHCPv6 stateless work only with subnets with mask /64 and more (/63, /62) because EUI-64 calculated IP takes 8 octets.
  If subnet mask is /65, /66, .., /128 SLAAC/DHCP stateless should be disabled. 
  API call for creating subnet with SLAAC/DHCP stateless and mask more than /64 should fail.

  Example:
  let's create net and subnet with mask /96:

  $ neutron net-create 14
  $ neutron subnet-create 14 --ipv6-ra-mode=slaac --ipv6-address-mode=slaac --ip-version=6 2003::/96 
  Created a new subnet:
  ...
  | allocation_pools  | {"start": "2003::2", "end": "2003::ffff:fffe"} |
  | cidr              | 2003::/96                                      |
  ....                                   |
  | gateway_ip        | 2003::1                                        |
  ...
  | ipv6_address_mode | slaac                                          |
  | ipv6_ra_mode      | slaac                                          |
  ...

  Let's create port in this network:

  $  neutron port-create 14 --mac-address=11:22:33:44:55:66
  Created a new port:
  ...
  | fixed_ips             | {"subnet_id": "1bfe4522-3b71-4e74-bb80-44c853ff868d", "ip_address": "2003::1322:33ff:fe44:5566"} |
  ...
  | mac_address           | 11:22:33:44:55:66                                                                                |
  ...

  As you see port gets IP 2003::1322:33ff:fe44:5566 which is not from
  original network 2003::/96.

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


References