yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #20335
[Bug 1365756] [NEW] DHCPv6 stateful doesn't assign IP to ports created before it
Public bug reported:
When we create port in network without subnets(*) and then create IPv4
subnet with DHCP enabled, the port gets IP automatically. Unlike so with
IPv6 subnets. When we create subnet with DHCPv6 stateful the port
doesn't get anything from DHCP server automatically, only after explicit
port-update. It's inconsistence.
With IPv4:
$ neutron net-create netto
$ neutron port-create netto
$ neutron subnet-create --ip-version=4 netto "192.168.111.0/24"
$ neutron port-list | grep 9856ecc4-9fc0-495c-81d1-686502a3ec83 # Port ID
| cb1f0dad-d393-49fc-a3ed-098a7e1d3692 | | fa:16:3e:79:04:d6 |
{"subnet_id": "9856ecc4-9fc0-495c-81d1-686502a3ec83", "ip_address":
"192.168.111.2"} |
With IPv6:
$ neutron net-create netto6
Created a new network:
+---------------------------+--------------------------------------+
| Field | Value |
+---------------------------+--------------------------------------+
| admin_state_up | True |
| id | b3858d5e-4665-422a-8511-6dd79f54437f |
| name | netto6 |
| provider:network_type | vxlan |
| provider:physical_network | |
| provider:segmentation_id | 1005 |
| router:external | False |
| shared | False |
| status | ACTIVE |
| subnets | |
| tenant_id | b1be3cf4e956459cad6b3f6541bbbad8 |
+---------------------------+--------------------------------------+
$ neutron port-create netto6
Created a new port:
+-----------------------+--------------------------------------+
| Field | Value |
+-----------------------+--------------------------------------+
| admin_state_up | True |
| allowed_address_pairs | |
| binding:host_id | |
| binding:profile | {} |
| binding:vif_details | {} |
| binding:vif_type | unbound |
| binding:vnic_type | normal |
| device_id | |
| device_owner | |
| fixed_ips | |
| id | bd12d32c-66fc-4947-b266-c4d565454174 |
| mac_address | fa:16:3e:a2:d8:14 |
| name | |
| network_id | b3858d5e-4665-422a-8511-6dd79f54437f |
| security_groups | b2fdab5e-1aa1-49bd-9717-72b41b8d109e |
| status | DOWN |
| tenant_id | b1be3cf4e956459cad6b3f6541bbbad8 |
+-----------------------+--------------------------------------+
$ neutron subnet-create --ipv6-ra-mode=dhcpv6-stateful --ipv6-address-mode=dhcpv6-stateful --ip-version=6 netto6 "2002::/64"
Created a new subnet:
+-------------------+----------------------------------------------------------+
| Field | Value |
+-------------------+----------------------------------------------------------+
| allocation_pools | {"start": "2002::2", "end": "2002::ffff:ffff:ffff:fffe"} |
| cidr | 2002::/64 |
| dns_nameservers | |
| enable_dhcp | True |
| gateway_ip | 2002::1 |
| host_routes | |
| id | 66e3e3c6-d561-494a-aec7-4fee272cf71d |
| ip_version | 6 |
| ipv6_address_mode | dhcpv6-stateful |
| ipv6_ra_mode | dhcpv6-stateful |
| name | |
| network_id | b3858d5e-4665-422a-8511-6dd79f54437f |
| tenant_id | b1be3cf4e956459cad6b3f6541bbbad8 |
+-------------------+----------------------------------------------------------+
$ neutron port-list | grep bd12d32c-66fc-4947-b266-c4d565454174 # Port
ID
| bd12d32c-66fc-4947-b266-c4d565454174 | | fa:16:3e:a2:d8:14 |
The same thing also with :
1) --ipv6-ra-mode=dhcpv6-stateless --ipv6-address-mode=dhcpv6-stateless
2) --ipv6-address-mode=dhcpv6-stateful only
3) --ipv6-address-mode=dhcpv6-stateless only
-------
(*) why to do it? is it real user story?
** Affects: neutron
Importance: Undecided
Status: New
** Tags: ipv6
** Description changed:
When we create port in network without subnets(*) and then create IPv4
subnet with DHCP enabled, the port gets IP automatically. Unlike so with
IPv6 subnets. When we create subnet with DHCPv6 stateful the port
doesn't get anything from DHCP server automatically, only after explicit
port-update. It's inconsistence.
With IPv4:
- $ neutron net-create netto
+ $ neutron net-create netto
+ $ neutron port-create netto
+ $ neutron subnet-create --ip-version=4 netto "192.168.111.0/24"
+ $ neutron port-list | grep 9856ecc4-9fc0-495c-81d1-686502a3ec83 # Port ID
+
+ | cb1f0dad-d393-49fc-a3ed-098a7e1d3692 | | fa:16:3e:79:04:d6 |
+ {"subnet_id": "9856ecc4-9fc0-495c-81d1-686502a3ec83", "ip_address":
+ "192.168.111.2"} |
+
+ With IPv6:
+
+ $ neutron net-create netto6
Created a new network:
+---------------------------+--------------------------------------+
| Field | Value |
+---------------------------+--------------------------------------+
| admin_state_up | True |
| id | b3858d5e-4665-422a-8511-6dd79f54437f |
| name | netto6 |
| provider:network_type | vxlan |
| provider:physical_network | |
| provider:segmentation_id | 1005 |
| router:external | False |
| shared | False |
| status | ACTIVE |
| subnets | |
| tenant_id | b1be3cf4e956459cad6b3f6541bbbad8 |
+---------------------------+--------------------------------------+
-
- $ neutron port-create netto
+ $ neutron port-create netto6
Created a new port:
+-----------------------+--------------------------------------+
| Field | Value |
+-----------------------+--------------------------------------+
| admin_state_up | True |
| allowed_address_pairs | |
| binding:host_id | |
| binding:profile | {} |
| binding:vif_details | {} |
| binding:vif_type | unbound |
| binding:vnic_type | normal |
| device_id | |
| device_owner | |
| fixed_ips | |
| id | bd12d32c-66fc-4947-b266-c4d565454174 |
| mac_address | fa:16:3e:a2:d8:14 |
| name | |
| network_id | b3858d5e-4665-422a-8511-6dd79f54437f |
| security_groups | b2fdab5e-1aa1-49bd-9717-72b41b8d109e |
| status | DOWN |
| tenant_id | b1be3cf4e956459cad6b3f6541bbbad8 |
+-----------------------+--------------------------------------+
- $ neutron subnet-create --ip-version=4 netto "192.168.111.0/24"
+ $ neutron subnet-create --ipv6-ra-mode=dhcpv6-stateful --ipv6-address-mode=dhcpv6-stateful --ip-version=6 netto6 "2002::/64"
Created a new subnet:
+-------------------+----------------------------------------------------------+
| Field | Value |
+-------------------+----------------------------------------------------------+
| allocation_pools | {"start": "2002::2", "end": "2002::ffff:ffff:ffff:fffe"} |
| cidr | 2002::/64 |
| dns_nameservers | |
| enable_dhcp | True |
| gateway_ip | 2002::1 |
| host_routes | |
| id | 66e3e3c6-d561-494a-aec7-4fee272cf71d |
| ip_version | 6 |
| ipv6_address_mode | dhcpv6-stateful |
| ipv6_ra_mode | dhcpv6-stateful |
| name | |
| network_id | b3858d5e-4665-422a-8511-6dd79f54437f |
| tenant_id | b1be3cf4e956459cad6b3f6541bbbad8 |
+-------------------+----------------------------------------------------------+
- $ neutron port-list | grep 9856ecc4-9fc0-495c-81d1-686502a3ec83 # Port
- ID
- | cb1f0dad-d393-49fc-a3ed-098a7e1d3692 | | fa:16:3e:79:04:d6 |
- {"subnet_id": "9856ecc4-9fc0-495c-81d1-686502a3ec83", "ip_address":
- "192.168.111.2"} |
-
- With IPv6:
- $ neutron net-create netto6
- $ neutron port-create netto6
- $ neutron subnet-create --ipv6-ra-mode=dhcpv6-stateful --ipv6-address-mode=dhcpv6-stateful --ip-version=6 netto6 "2002::/64"
$ neutron port-list | grep bd12d32c-66fc-4947-b266-c4d565454174 # Port ID
| bd12d32c-66fc-4947-b266-c4d565454174 | | fa:16:3e:a2:d8:14 |
The same thing also with :
1) --ipv6-ra-mode=dhcpv6-stateless --ipv6-address-mode=dhcpv6-stateless
2) --ipv6-address-mode=dhcpv6-stateful only
3) --ipv6-address-mode=dhcpv6-stateless only
** Description changed:
When we create port in network without subnets(*) and then create IPv4
subnet with DHCP enabled, the port gets IP automatically. Unlike so with
IPv6 subnets. When we create subnet with DHCPv6 stateful the port
doesn't get anything from DHCP server automatically, only after explicit
port-update. It's inconsistence.
With IPv4:
$ neutron net-create netto
$ neutron port-create netto
$ neutron subnet-create --ip-version=4 netto "192.168.111.0/24"
$ neutron port-list | grep 9856ecc4-9fc0-495c-81d1-686502a3ec83 # Port ID
| cb1f0dad-d393-49fc-a3ed-098a7e1d3692 | | fa:16:3e:79:04:d6 |
{"subnet_id": "9856ecc4-9fc0-495c-81d1-686502a3ec83", "ip_address":
"192.168.111.2"} |
With IPv6:
$ neutron net-create netto6
Created a new network:
+---------------------------+--------------------------------------+
| Field | Value |
+---------------------------+--------------------------------------+
| admin_state_up | True |
| id | b3858d5e-4665-422a-8511-6dd79f54437f |
| name | netto6 |
| provider:network_type | vxlan |
| provider:physical_network | |
| provider:segmentation_id | 1005 |
| router:external | False |
| shared | False |
| status | ACTIVE |
| subnets | |
| tenant_id | b1be3cf4e956459cad6b3f6541bbbad8 |
+---------------------------+--------------------------------------+
$ neutron port-create netto6
Created a new port:
+-----------------------+--------------------------------------+
| Field | Value |
+-----------------------+--------------------------------------+
| admin_state_up | True |
| allowed_address_pairs | |
| binding:host_id | |
| binding:profile | {} |
| binding:vif_details | {} |
| binding:vif_type | unbound |
| binding:vnic_type | normal |
| device_id | |
| device_owner | |
| fixed_ips | |
| id | bd12d32c-66fc-4947-b266-c4d565454174 |
| mac_address | fa:16:3e:a2:d8:14 |
| name | |
| network_id | b3858d5e-4665-422a-8511-6dd79f54437f |
| security_groups | b2fdab5e-1aa1-49bd-9717-72b41b8d109e |
| status | DOWN |
| tenant_id | b1be3cf4e956459cad6b3f6541bbbad8 |
+-----------------------+--------------------------------------+
$ neutron subnet-create --ipv6-ra-mode=dhcpv6-stateful --ipv6-address-mode=dhcpv6-stateful --ip-version=6 netto6 "2002::/64"
Created a new subnet:
+-------------------+----------------------------------------------------------+
| Field | Value |
+-------------------+----------------------------------------------------------+
| allocation_pools | {"start": "2002::2", "end": "2002::ffff:ffff:ffff:fffe"} |
| cidr | 2002::/64 |
| dns_nameservers | |
| enable_dhcp | True |
| gateway_ip | 2002::1 |
| host_routes | |
| id | 66e3e3c6-d561-494a-aec7-4fee272cf71d |
| ip_version | 6 |
| ipv6_address_mode | dhcpv6-stateful |
| ipv6_ra_mode | dhcpv6-stateful |
| name | |
| network_id | b3858d5e-4665-422a-8511-6dd79f54437f |
| tenant_id | b1be3cf4e956459cad6b3f6541bbbad8 |
+-------------------+----------------------------------------------------------+
-
- $ neutron port-list | grep bd12d32c-66fc-4947-b266-c4d565454174 # Port ID
+ $ neutron port-list | grep bd12d32c-66fc-4947-b266-c4d565454174 # Port
+ ID
| bd12d32c-66fc-4947-b266-c4d565454174 | | fa:16:3e:a2:d8:14 |
The same thing also with :
1) --ipv6-ra-mode=dhcpv6-stateless --ipv6-address-mode=dhcpv6-stateless
2) --ipv6-address-mode=dhcpv6-stateful only
3) --ipv6-address-mode=dhcpv6-stateless only
+
+ -------
+ (*) why to do it? is it real user story?
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1365756
Title:
DHCPv6 stateful doesn't assign IP to ports created before it
Status in OpenStack Neutron (virtual network service):
New
Bug description:
When we create port in network without subnets(*) and then create IPv4
subnet with DHCP enabled, the port gets IP automatically. Unlike so
with IPv6 subnets. When we create subnet with DHCPv6 stateful the port
doesn't get anything from DHCP server automatically, only after
explicit port-update. It's inconsistence.
With IPv4:
$ neutron net-create netto
$ neutron port-create netto
$ neutron subnet-create --ip-version=4 netto "192.168.111.0/24"
$ neutron port-list | grep 9856ecc4-9fc0-495c-81d1-686502a3ec83 # Port ID
| cb1f0dad-d393-49fc-a3ed-098a7e1d3692 | | fa:16:3e:79:04:d6 |
{"subnet_id": "9856ecc4-9fc0-495c-81d1-686502a3ec83", "ip_address":
"192.168.111.2"} |
With IPv6:
$ neutron net-create netto6
Created a new network:
+---------------------------+--------------------------------------+
| Field | Value |
+---------------------------+--------------------------------------+
| admin_state_up | True |
| id | b3858d5e-4665-422a-8511-6dd79f54437f |
| name | netto6 |
| provider:network_type | vxlan |
| provider:physical_network | |
| provider:segmentation_id | 1005 |
| router:external | False |
| shared | False |
| status | ACTIVE |
| subnets | |
| tenant_id | b1be3cf4e956459cad6b3f6541bbbad8 |
+---------------------------+--------------------------------------+
$ neutron port-create netto6
Created a new port:
+-----------------------+--------------------------------------+
| Field | Value |
+-----------------------+--------------------------------------+
| admin_state_up | True |
| allowed_address_pairs | |
| binding:host_id | |
| binding:profile | {} |
| binding:vif_details | {} |
| binding:vif_type | unbound |
| binding:vnic_type | normal |
| device_id | |
| device_owner | |
| fixed_ips | |
| id | bd12d32c-66fc-4947-b266-c4d565454174 |
| mac_address | fa:16:3e:a2:d8:14 |
| name | |
| network_id | b3858d5e-4665-422a-8511-6dd79f54437f |
| security_groups | b2fdab5e-1aa1-49bd-9717-72b41b8d109e |
| status | DOWN |
| tenant_id | b1be3cf4e956459cad6b3f6541bbbad8 |
+-----------------------+--------------------------------------+
$ neutron subnet-create --ipv6-ra-mode=dhcpv6-stateful --ipv6-address-mode=dhcpv6-stateful --ip-version=6 netto6 "2002::/64"
Created a new subnet:
+-------------------+----------------------------------------------------------+
| Field | Value |
+-------------------+----------------------------------------------------------+
| allocation_pools | {"start": "2002::2", "end": "2002::ffff:ffff:ffff:fffe"} |
| cidr | 2002::/64 |
| dns_nameservers | |
| enable_dhcp | True |
| gateway_ip | 2002::1 |
| host_routes | |
| id | 66e3e3c6-d561-494a-aec7-4fee272cf71d |
| ip_version | 6 |
| ipv6_address_mode | dhcpv6-stateful |
| ipv6_ra_mode | dhcpv6-stateful |
| name | |
| network_id | b3858d5e-4665-422a-8511-6dd79f54437f |
| tenant_id | b1be3cf4e956459cad6b3f6541bbbad8 |
+-------------------+----------------------------------------------------------+
$ neutron port-list | grep bd12d32c-66fc-4947-b266-c4d565454174 # Port
ID
| bd12d32c-66fc-4947-b266-c4d565454174 | | fa:16:3e:a2:d8:14 |
The same thing also with :
1) --ipv6-ra-mode=dhcpv6-stateless --ipv6-address-mode=dhcpv6-stateless
2) --ipv6-address-mode=dhcpv6-stateful only
3) --ipv6-address-mode=dhcpv6-stateless only
-------
(*) why to do it? is it real user story?
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1365756/+subscriptions
Follow ups
References