[Bug 2123914] Re: dynamic-routing-port-name option has no effect

Frode Nordahl 2123914 at bugs.launchpad.net
Wed Oct 15 06:57:59 UTC 2025


** Description changed:

- The dynamic-routing-port-name option was added to the
- Logical_Router_Port table [0] as means of selecting which LRPs should
- learn routes.  When used together with Open_vSwitch
- external_ids:dynamic-routing-port-mapping, an LRP can also be mapped to
- a system interface as found in the system routing tables.
+ [ Impact ]
+ When using the native OVN dynamic routing feature for learning routes, mapping from which interface a route is learned to a specific LRP is required. Failing to do this will create invalid routes in the system.
+ 
+ The dynamic-routing-port-name option was provided as means to do this,
+ however a bug prevents this feature from working as intended.
+ 
+ Consequently using dynamic routing to learn routes does not work without
+ this patch.
+ 
+ [ Test Plan ]
+ The main branch of MicroOVN makes use of this feature [2], and has thorough test suites validating operation.  As a form of verification we will build a version of MicroOVN with the -proposed package and provide test results.
+ 
+ [ Where problems could occur ]
+ OVN 25.03 was the first version with native support for dynamic routing through the use of routing protocol suites such as BIRD or FRR.
+ 
+ As detailed above the route learning feautre is currently not usable,
+ and the fix has been merged to main and backported to 25.09 and 25.03
+ branches.
+ 
+ Due to the feature currently being broken, the regression potential is
+ minimal or non-existent.
+ 
+ [ Other Info ]
+ The dynamic-routing-port-name option was added to the Logical_Router_Port table [0] as means of selecting which LRPs should learn routes.  When used together with Open_vSwitch external_ids:dynamic-routing-port-mapping, an LRP can also be mapped to a system interface as found in the system routing tables.
  
  The description of the option states: "Only learn routes associated with
  the interface locally bound to the LSP or LRP  specified  here".
  
  However, when an LR has LRPs with this option, learned routes are still
  associated with all LRPs of an LR [1].
  
  In order for the option to work as documented there would have to be a
  check for whether any LRPs of an LR has this option, and if that is the
  case, only consider those LRPs.
  
  0: https://manpages.ubuntu.com/manpages/questing/man5/ovn-nb.5.html#logical_router_port%20table
  1: https://github.com/ovn-org/ovn/blob/db748328f36592f76c1ea991f0ea1b1ac79902b5/controller/route.c#L208
+ 2: https://github.com/canonical/microovn/blob/624123ca227a136343b5e71c68d47f862654d3db/microovn/bgp/redirect.go#L293

** Also affects: ovn (Ubuntu Questing)
   Importance: Undecided
       Status: New

** Also affects: ovn (Ubuntu Plucky)
   Importance: Undecided
       Status: New

-- 
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to ovn in Ubuntu.
https://bugs.launchpad.net/bugs/2123914

Title:
  dynamic-routing-port-name option has no effect

Status in ovn package in Ubuntu:
  Fix Committed
Status in ovn source package in Plucky:
  New
Status in ovn source package in Questing:
  New

Bug description:
  [ Impact ]
  When using the native OVN dynamic routing feature for learning routes, mapping from which interface a route is learned to a specific LRP is required. Failing to do this will create invalid routes in the system.

  The dynamic-routing-port-name option was provided as means to do this,
  however a bug prevents this feature from working as intended.

  Consequently using dynamic routing to learn routes does not work
  without this patch.

  [ Test Plan ]
  The main branch of MicroOVN makes use of this feature [2], and has thorough test suites validating operation.  As a form of verification we will build a version of MicroOVN with the -proposed package and provide test results.

  [ Where problems could occur ]
  OVN 25.03 was the first version with native support for dynamic routing through the use of routing protocol suites such as BIRD or FRR.

  As detailed above the route learning feautre is currently not usable,
  and the fix has been merged to main and backported to 25.09 and 25.03
  branches.

  Due to the feature currently being broken, the regression potential is
  minimal or non-existent.

  [ Other Info ]
  The dynamic-routing-port-name option was added to the Logical_Router_Port table [0] as means of selecting which LRPs should learn routes.  When used together with Open_vSwitch external_ids:dynamic-routing-port-mapping, an LRP can also be mapped to a system interface as found in the system routing tables.

  The description of the option states: "Only learn routes associated
  with the interface locally bound to the LSP or LRP  specified  here".

  However, when an LR has LRPs with this option, learned routes are
  still associated with all LRPs of an LR [1].

  In order for the option to work as documented there would have to be a
  check for whether any LRPs of an LR has this option, and if that is
  the case, only consider those LRPs.

  0: https://manpages.ubuntu.com/manpages/questing/man5/ovn-nb.5.html#logical_router_port%20table
  1: https://github.com/ovn-org/ovn/blob/db748328f36592f76c1ea991f0ea1b1ac79902b5/controller/route.c#L208
  2: https://github.com/canonical/microovn/blob/624123ca227a136343b5e71c68d47f862654d3db/microovn/bgp/redirect.go#L293

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ovn/+bug/2123914/+subscriptions




More information about the Ubuntu-openstack-bugs mailing list