neutron/neutron/extensions
Rodolfo Alonso Hernandez f450886ff9 Allow the use of legacy routers within RPN segments
This patch adds to legacy routers (no HA nor DVR) to be connected
to a router provider network segment through the gateway interface.
The router will be connected to one single segment of the RPN; that
means the router will have L2 connectivity to one single subnet.
The gateway router port will have an IP address on the subnet CIDR;
that will provide connectivity to the broadcast domain of this CIDR
(as usual, that doesn't change).

The router, in other scenarios, adds the other subnet CIDRs to the
router namespace routing table. That allows to SNAT any packet to
those CIDRs through the gateway port.

In the RPN case those routes are not added because there is no
broadcast connectivity with the other subnets. Any packet that needs
to reach these other subents, should go through the local segment
gateway IP address. This default route is added always into the
router namespace.

Closes-Bug: #1923592

Change-Id: Ib66b1d7b60eb0ac0a9e3dfd08aae29cb03abde34
2021-06-03 15:58:26 +00:00
..
__init__.py Removing vim header lines 2014-04-01 10:38:31 -04:00
_standard_attr_segment_lib.py Replace git.openstack.org URLs with opendev.org URLs 2019-04-23 10:00:45 +08:00
address_group.py Support Address Group CRUD as extensions 2020-08-12 13:59:31 -05:00
address_scope.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
admin_state_down_before_update.py Remove left over code for admin_state_down_before_update 2020-11-09 12:48:53 +00:00
agent.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
agent_resources_synced.py New agent attribute: resources_synced 2019-02-21 13:45:15 +01:00
allowedaddresspairs.py use addr pairs api def from lib 2017-11-13 11:56:32 -07:00
auto_allocated_topology.py use neutron-lib auto allocated topology apidef 2017-07-28 08:38:45 -06:00
availability_zone.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
availability_zone_filter.py Remove left over code for availability_zone_filter 2020-11-18 19:27:24 +01:00
data_plane_status.py use APIExtensionDescriptor for plugins with defs in lib 2017-07-20 20:42:56 +00:00
default_subnetpools.py use default subnetpool api def from lib 2017-10-20 14:44:10 -06:00
dhcpagentscheduler.py Config option to disable the DHCP functions 2021-03-05 14:35:29 +08:00
dns.py use dns api def from neutron-lib 2017-10-20 16:38:33 -06:00
dns_domain_ports.py use dns domain ports api def from neutron-lib 2017-11-16 12:02:04 +00:00
dvr.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
empty_string_filtering.py Use extension 'empty-string-filtering' from neutron-lib 2018-09-25 15:16:14 +00:00
expose_l3_conntrack_helper.py Conntrack Helper - Plugin 2019-08-29 10:41:04 +02:00
expose_port_forwarding_in_fip.py [server side] Expose port forwardings in FIP API 2018-07-27 17:25:10 +08:00
external_net.py use external net api def from lib 2017-10-30 11:16:33 -06:00
extra_dhcp_opt.py use extra_dhcp_opt api-def from neutron-lib 2017-05-31 15:06:35 +00:00
extraroute.py use extra route api def from lib 2017-11-02 13:11:25 -06:00
extraroute_atomic.py New extension: extraroute-atomic 2019-08-09 13:24:44 +02:00
filter_validation.py Remove left over code for filter_validation 2020-11-26 16:38:02 +01:00
fip_pf_description.py Add fip_pf_description extension to be supported by service plugin 2020-03-11 14:10:13 +00:00
fip_port_details.py Use extension fip-port-details from neutron-lib 2018-05-07 15:01:58 +00:00
flavors.py use flavors api def from neutron-lib 2017-11-17 10:21:28 -07:00
floating_ip_port_forwarding.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
floatingip_pools.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
ip_allocation.py use ip allocation api def from neutron-lib 2017-11-09 13:02:01 -07:00
ip_substring_port_filtering.py Use ip_substring_port_filtering from neutron-lib 2018-02-13 22:47:15 +00:00
l2_adjacency.py use l2 adjacency api def from neutron-lib 2017-11-03 13:10:48 -06:00
l3.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
l3_conntrack_helper.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
l3_ext_gw_mode.py use l3 ext gw mode api def from neutron-lib 2017-11-17 07:02:45 -07:00
l3_ext_ha_mode.py use l3 ext ha mode api def from neutron-lib 2017-11-09 15:34:43 -07:00
l3_flavors.py use l3 flavors api def from neutron-lib 2017-11-13 11:15:08 -07:00
l3_port_ip_change_not_allowed.py Prevent some L3 ports change IP address 2018-12-13 14:24:23 +00:00
l3agentscheduler.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
logging.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
metering.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
metering_source_and_destination_fields.py Add source_ip_prefix and destination_ip_prefix to metering label rules 2020-09-29 09:06:03 -03:00
multiprovidernet.py use multiprovidernet api definition from neutron-lib 2018-03-28 07:07:58 -06:00
netmtu.py use net mtu api def from neutron-lib 2017-11-14 14:47:47 -07:00
netmtu_writable.py use net mtu api writable def from neutron-lib 2017-11-14 15:28:28 -07:00
network_availability_zone.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
network_ip_availability.py Remove population of is_filter keyword 2018-10-02 20:45:19 +00:00
network_segment_range.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
pagination.py use pagination api def from neutron-lib 2017-11-06 14:43:13 -07:00
port_device_profile.py Add port device profile extension 2021-01-22 16:17:30 +00:00
port_mac_address_regenerate.py Remove local port regenerate mac address apidef 2019-03-26 15:28:14 +00:00
port_numa_affinity_policy.py Add port NUMA affinity policy 2020-11-13 15:49:34 +00:00
port_resource_request.py Introduce Port resource request extension 2018-10-17 07:34:36 +00:00
portbindings.py use neutron_lib's portbindings api-def 2017-03-31 09:16:22 -06:00
portbindings_extended.py Remove population of is_filter keyword 2018-10-02 20:45:19 +00:00
portsecurity.py use neutron-lib port security api-def 2017-05-01 11:45:42 -06:00
project_id.py use project id api def from neutron-lib 2017-11-08 12:04:24 -07:00
providernet.py Change provider network segmentation ID 2019-04-01 12:55:50 +00:00
qos.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
qos_bw_limit_direction.py Support that an extension extends a sub-resource 2017-11-15 08:59:45 +01:00
qos_bw_minimum_ingress.py Ingress direction for min bandwidth rule 2018-10-09 08:08:05 +00:00
qos_default.py use qos default api def from neutron-lib 2018-02-12 11:13:04 -07:00
qos_fip.py [OVN] Implement floating IP QoS in OVN backend 2020-09-01 07:27:48 +00:00
qos_gateway_ip.py [L3][QoS] Neutron server side router gateway IP QoS 2018-12-01 17:45:46 +08:00
qos_port_network_policy.py Add "qos_network_policy_id" to port definition 2020-01-17 17:57:11 +00:00
qos_rule_type_details.py use qos rule type details api def from neutron-lib 2018-02-22 11:41:13 -07:00
qos_rules_alias.py Define qos-rules-alias extension 2019-03-21 15:06:10 +00:00
quotasv2.py Log exception generated in Controller.prepare_request_body 2020-08-18 16:18:34 -03:00
quotasv2_detail.py Bump pylint version to one that supports python3.7 2019-02-21 13:22:26 +00:00
rbac.py Allow sharing of subnet pools via RBAC mechanism 2020-04-09 19:02:47 +03:00
rbac_address_group.py Allow sharing of address groups via RBAC mechanism 2021-03-01 18:28:31 -06:00
rbac_address_scope.py Allow sharing of address scopes via RBAC mechanism 2020-03-19 16:51:39 +02:00
rbac_security_groups.py Allow sharing of security groups via RBAC mechanism 2019-03-09 17:30:14 -06:00
rbac_subnetpool.py Allow sharing of subnet pools via RBAC mechanism 2020-04-09 19:02:47 +03:00
revisionifmatch.py use revision if match api def from neutron-lib 2018-03-01 09:20:22 -07:00
revisions.py Allow sub-resources to have standard attributes 2018-07-04 20:52:37 +00:00
router_availability_zone.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
routerservicetype.py use router service type api def from neutron-lib 2018-02-22 10:57:39 -07:00
security_groups_normalized_cidr.py Add normalized_cidr column to SG rules 2021-01-07 12:23:59 +01:00
security_groups_port_filtering.py use security_groups_port_filtering from neutron-lib 2018-08-30 08:49:40 -06:00
security_groups_remote_address_group.py Support remote address group in SG rules 2020-11-25 10:34:02 -06:00
securitygroup.py Support remote address group in SG rules 2020-11-25 10:34:02 -06:00
segment.py Allow the use of legacy routers within RPN segments 2021-06-03 15:58:26 +00:00
segments_peer_subnet_host_routes.py Remove local segment-peer-subnet host-route apidef 2019-03-19 00:40:29 +01:00
servicetype.py use neutron-lib servicetype api def 2018-03-27 14:32:44 -06:00
sorting.py use sorting api def from neutron-lib 2018-02-20 14:35:07 -07:00
standard_attr_segment.py Add a shim extension standard-attr-segment 2018-04-18 19:25:57 +00:00
standardattrdescription.py Allow sub-resources to have standard attributes 2018-07-04 20:52:37 +00:00
stateful_security_group.py Support for stateless security groups 2020-03-03 16:53:42 +01:00
stdattrs_common.py Allow sub-resources to have standard attributes 2018-07-04 20:52:37 +00:00
subnet_dns_publish_fixed_ip.py Allow to select subnets to publish DNS records 2019-12-14 13:36:09 +00:00
subnet_onboard.py Enable adoption of subnets into a subnet pool 2019-02-26 11:13:09 -06:00
subnet_segmentid_writable.py Allow setting network-segment on subnet update 2018-05-24 01:09:02 +02:00
subnet_service_types.py use subnet_service_types extension from neutron-lib 2019-06-18 11:24:18 -06:00
subnetallocation.py Use ExtensionDescriptor from neutron-lib 2016-12-02 14:16:06 -05:00
subnetpool_prefix_ops.py Implement subnetpool prefix operations 2019-07-01 14:22:51 +00:00
tag_ports_during_bulk_creation.py Implement tagging during bulk port creation 2020-01-28 18:23:37 -06:00
tagging.py Allow 255 character strings in tags 2021-03-30 10:44:39 +02:00
timestamp.py Allow sub-resources to have standard attributes 2018-07-04 20:52:37 +00:00
trunk.py use APIExtensionDescriptor for plugins with defs in lib 2017-07-20 20:42:56 +00:00
trunk_details.py use APIExtensionDescriptor for plugins with defs in lib 2017-07-20 20:42:56 +00:00
uplink_status_propagation.py Add propagate_uplink_status to port 2018-11-29 19:33:16 +00:00
vlantransparent.py use vlantransparent api def from neutron-lib 2018-02-20 07:43:03 +00:00