summaryrefslogtreecommitdiff
path: root/scripts/cli
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2026-09-04 22:26:37 +0200
committerChristian Breunig <christian@breunig.cc>2026-09-04 22:26:37 +0200
commit3f1e103d6774159fb7835c3562a1c1ab834cfd7a (patch)
treee6e79bebccba0921477705d8a9f21675c889f218 /scripts/cli
parent9a7d5b27cd908473b7cd9e16fc0d1bbe7e983d2e (diff)
downloadvyos-1x-3f1e103d6774159fb7835c3562a1c1ab834cfd7a.tar.gz
vyos-1x-3f1e103d6774159fb7835c3562a1c1ab834cfd7a.zip
static: T9278: honor dhcp-interface routes in dedicated routing tables
get_dhcp_route_interfaces() only walked "protocols static route <prefix> dhcp-interface", so routes configured below "protocols static table <id> route <prefix> dhcp-interface" never made it into the interface list. Both nodes share the same include/static/static-route.xml.i definition and both are rendered from the DHCP lease via the get_dhcp_router() filter in staticd.frr.j2, so they depend on the current lease in exactly the same way. As a result the affected interfaces were missing from the DHCP gateway cache used for FRR change detection. A lease event on an interface referenced only by a table based route would compare equal to the cached state and the re-render requested by the dhclient hook was skipped, leaving the stale gateway in the rendered configuration. Iterate the route sections of every table in addition to the top level ones. Only IPv4 routes are considered, as "dhcp-interface" does not exist for route6. Named VRFs have no table node, but the collection is shared and stays correct there as well.
Diffstat (limited to 'scripts/cli')
0 files changed, 0 insertions, 0 deletions