SLaaC or DHCPv6 stateless doesn't work on isolated Neutron networks
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
neutron |
Invalid
|
Undecided
|
Unassigned |
Bug Description
On an isolated IPv6 network no router advertisements are sent, so the instances are unable to discover what prefix to use. To enabled instances to discover which prefixes are on-link router advertisements with a router lifetime of zero should be sent (from the DHCP namespace) https:/
--ra-param=
Set non-default values for router advertisements sent via an interface. The priority field for the router may be altered from the default of medium with eg --ra-param=
Alternatively radvd could be used within the DHCP namespace.
Steps to reproduce:
$ openstack network create isolated-ipv6
+------
| Field | Value |
+------
| admin_state_up | UP |
| availability_
| availability_zones | |
| created_at | 2016-10-
| description | |
| headers | |
| id | 7044aa9b-
| ipv4_address_scope | None |
| ipv6_address_scope | None |
| mtu | 1450 |
| name | isolated-ipv6 |
| port_security_
| project_id | 6d80770322b64b8
| project_id | 6d80770322b64b8
| provider:
| provider:
| provider:
| revision_number | 3 |
| router:external | Internal |
| shared | False |
| status | ACTIVE |
| subnets | |
| tags | [] |
| updated_at | 2016-10-
+------
$ openstack subnet create --ip-version 6 --ipv6-ra-mode slaac --ipv6-address-mode slaac --network 7044aa9b-
+------
| Field | Value |
+------
| allocation_pools | fddd:fd72:
| cidr | fddd:fd72:8298::/64 |
| created_at | 2016-10-
| description | |
| dns_nameservers | |
| enable_dhcp | True |
| gateway_ip | fddd:fd72:8298::1 |
| headers | |
| host_routes | |
| id | 96bf9b9f-
| ip_version | 6 |
| ipv6_address_mode | slaac |
| ipv6_ra_mode | slaac |
| name | isolated-
| network_id | 7044aa9b-
| project_id | 6d80770322b64b8
| project_id | 6d80770322b64b8
| revision_number | 2 |
| service_types | |
| subnetpool_id | None |
| updated_at | 2016-10-
+------
$ openstack server create --image cirros-
+------
| Field | Value |
+------
| OS-DCF:diskConfig | MANUAL |
| OS-EXT-
| OS-EXT-
| OS-EXT-
| OS-EXT-
| OS-EXT-
| OS-EXT-
| OS-EXT-STS:vm_state | building |
| OS-SRV-
| OS-SRV-
| accessIPv4 | |
| accessIPv6 | |
| addresses | |
| adminPass | iTkyyFge6Z5C |
| config_drive | |
| created | 2016-10-
| flavor | m1.tiny (1) |
| hostId | |
| id | f494a313-
| image | cirros-
| key_name | None |
| name | test-server |
| os-extended-
| progress | 0 |
| project_id | 6d80770322b64b8
| properties | |
| security_groups | [{u'name': u'default'}] |
| status | BUILD |
| updated | 2016-10-
| user_id | 8666967e103a43b
+------
Connect to the instance console and verify no IPv6 address aside from a link-local address is assigned.
tags: | added: ipv6 |
To get router advertisements, create a neutron router and add an interface to your subnet.