internal server error on updating no-gateway on the dhcpv6 subnet

Bug #1882873 reported by Bharath bhushan Patel on 2020-06-10
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
neutron
Undecided
Unassigned

Bug Description

nicira@bionic-template:~/devstack$ neutron net-create netbug
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Created a new network:
+-------------------------+--------------------------------------+
| Field | Value |
+-------------------------+--------------------------------------+
| admin_state_up | True |
| availability_zone_hints | |
| availability_zones | defaultp |
| created_at | 2020-05-27T09:52:16Z |
| description | |
| dns_domain | |
| id | ef1b20da-443c-4032-b148-c594ff7ef5b5 |
| ipv4_address_scope | |
| ipv6_address_scope | |
| name | netbug |
| port_security_enabled | True |
| project_id | 77a3f40660c24d20baf65780d5910efc |
| qos_policy_id | |
| revision_number | 2 |
| router:external | False |
| shared | False |
| status | ACTIVE |
| subnets | |
| tags | |
| tenant_id | 77a3f40660c24d20baf65780d5910efc |
| updated_at | 2020-05-27T09:52:16Z |
+-------------------------+--------------------------------------+
nicira@bionic-template:~/devstack$ neutron subnet-create netbug 29::0/64 --name subnetbug --ip-version 6
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Created a new subnet:
+-------------------+------------------------------------------------------+
| Field | Value |
+-------------------+------------------------------------------------------+
| allocation_pools | {"start": "29::2", "end": "29::ffff:ffff:ffff:ffff"} |
| cidr | 29::/64 |
| created_at | 2020-05-27T09:52:52Z |
| description | |
| dns_nameservers | |
| enable_dhcp | True |
| gateway_ip | 29::1 |
| host_routes | |
| id | f37571f1-d142-4281-a60c-404b263dd95d |
| ip_version | 6 |
| ipv6_address_mode | |
| ipv6_ra_mode | |
| name | subnetbug |
| network_id | ef1b20da-443c-4032-b148-c594ff7ef5b5 |
| project_id | 77a3f40660c24d20baf65780d5910efc |
| revision_number | 0 |
| subnetpool_id | |
| tags | |
| tenant_id | 77a3f40660c24d20baf65780d5910efc |
| updated_at | 2020-05-27T09:52:52Z |
+-------------------+------------------------------------------------------+
nicira@bionic-template:~/devstack$ neutron router-create rtrbug
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Created a new router:
+-------------------------+--------------------------------------+
| Field | Value |
+-------------------------+--------------------------------------+
| admin_state_up | True |
| availability_zone_hints | |
| availability_zones | defaultp |
| created_at | 2020-05-27T09:53:48Z |
| description | |
| external_gateway_info | |
| id | 231c2c3d-ac87-49ca-9034-14379982fb6b |
| name | rtrbug |
| project_id | 77a3f40660c24d20baf65780d5910efc |
| revision_number | 2 |
| routes | |
| status | ACTIVE |
| tags | |
| tenant_id | 77a3f40660c24d20baf65780d5910efc |
| updated_at | 2020-05-27T09:53:48Z |
+-------------------------+--------------------------------------+
nicira@bionic-template:~/devstack$ neutron router-gateway-set rtrbug public
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Set gateway for router rtrbug

I tried to update the subnet with no-gateway, which throws internal server error saying backend has no gateway ip
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Request Failed: internal server error while processing your request.
Neutron server returns request_ids: ['req-cec527fb-9091-4e05-9d50-40c5ee40757d']

Jakub Libosvar (libosvar) wrote :
Download full text (5.4 KiB)

I tried this with ml2/OVN on master and it seems to be working:

vagrant@devstack:~
$ openstack subnet set --gateway none subnetbug
[14:30:28]
vagrant@devstack:~
$ openstack subnet show subnetbug
+----------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field | Value |
+----------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
| allocation_pools | 29::1-29::ffff:ffff:ffff:ffff |
| cidr | 29::/64 |
| created_at | 2020-06-10T14:29:06Z |
| description | |
| dns_nameservers | |
| dns_publish_fixed_ip | False |
| enable_dhcp | True |
| gateway_ip | None |
| host_routes | |
| id | 330cc9ce-7bdd-4b3c-8508-27c376dae666 |
| ip_version | 6 |
| ipv6_address_mode | None |
| ipv6_ra_mode | None |
| location ...

Read more...

Changed in neutron:
status: New → Incomplete
Slawek Kaplonski (slaweq) wrote :

Hi,

Can You attach logs from the neutron-server when You have this error? It would be useful to check what error/traceback is there to narrow down where issue can be.

tags: added: api l3-dvr-backlog
Bernard Cafarelli (bcafarel) wrote :

I tried similar steps locally and they passed fine too, ML2/OVS and neutron CLI:
$ neutron subnet-update --no-gateway subnetbug
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Updated subnet: subnetbug

Adit Sarfaty (asarfaty) wrote :

The actual problem is this:
Neutron prevents adding a subnet (IPv4 or IPv6) as a router interface if it has no GW, but it does not prevent if from being changed afterwards.

So if you create a subnet without a gateway, it will fail to add it as a router interface.
But if you create a subnet with a gw, attach it to a router, and now remove the gw from the subnet - neutron will not prevent it, although it should (at least for being consistent.

Launchpad Janitor (janitor) wrote :

[Expired for neutron because there has been no activity for 60 days.]

Changed in neutron:
status: Incomplete → Expired
Adit Sarfaty (asarfaty) on 2020-10-07
Changed in neutron:
status: Expired → New
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers