BGP Route Map - Next Hop Modfication

Hi,

When creating a route map which modifies the next hop address (IPv4 or IPv6) it seems to result in all route maps disappearing from the FRR configuration. The route map is still present in the VyOS configuration.

If the device is rebooted there are no configuration errors but again all route maps are missing from FRR and still present in the VyOS configuration. If I make a modification to a route map it doesn’t make any difference.

To reproduce the issue, here is an example for IPv6:

set policy route-map Example-Nullroute-IPv6 rule 500 action 'permit'
set policy route-map Example-Nullroute-IPv6 rule 500 description 'Set the next hop to the null route IP if community for null routing is defined'
set policy route-map Example-Nullroute-IPv6 rule 500 match large-community large-community-list 'AS4212300000-Blackhole'
set policy route-map Example-Nullroute-IPv6 rule 500 set ipv6-next-hop global '100::6666'

Hi,
Probably best to share which version of Vyos you’re using - if you can produce this every time then it’d be best to log a bug ticket in the bug tracker.

Hi,

Sorry I forgot to include that; I have tested on the current rolling release and the rolling release from 2 weeks ago.

Hi,

Actually the example I gave is incorrect; the problem is actually IPv4 and not IPv6. It seems like I had left an IPv4 route map in place when testing only IPv6.

The issue is if the next hop is set to a “reserved” IP in 240.0.0.0/4, so this triggers the problem:

set policy route-map Example-Nullroute-IPv4 rule 500 action 'permit'
set policy route-map Example-Nullroute-IPv4 rule 500 description 'Set the next hop to the null route IP if community for null routing is defined'
set policy route-map Example-Nullroute-IPv4 rule 500 match large-community large-community-list 'AS4212300000-Blackhole'
set policy route-map Example-Nullroute-IPv4 rule 500 set ip-next-hop '254.0.6.66'

If I set the next hop to a non-reserved IP it seems to work fine though. I guess this should still be a bug though as VyOS fails silently.

I agree, it sounds like you’re doing something you shouldn’t do, but Vyos shouldn’t silently fail. Best to log a ticket on https://vyos.dev and it should get picked up to be looked at at some stage.