Hello,

I would like announce routes differently via bgp (longer AS-Path) depending on, if carp(4) status is "master" or "backup". If the carp status is „Master“ Status the shows up as a kernel route to the carp(4) address. If carp is in "Backup“ status the route is removed.

**Master Status for carp IP 10.8.15.254**

bird> show route 10.8.15.254/32 all
10.8.15.254/32     dev lo0 [kernel1 00:06:42] * (10)
Type: inherit unicast univ
Kernel.source: 1
Kernel.metric: 0
bird>

**Backup Status for carp IP 10.8.15.254**

bird> show route 10.8.15.254/32 all
Network not in table
bird>


If possible I would like to check in my bgp export filter if I have a kernel route to my carp address (10.8.15.254) and if possible if this route is via the loopback dev lo0

Is there any function to lookup a route in bird that could be used in the following scenario?

filter bgp_export {
  if ( [ check_if_10.8.15.254/32 is via lo0] ) {
       bgp_local_pref = 120;
       accept;
  } else {
       bgp_path.prepend(65534);
       accept;
  }
}


Kind regards,
Manon


Reply via email to