No, your example with the existing variable is perfect. Thanks! Kind regards,
Job On 18 Feb 2017, 17:34 +0100, Lennert Buytenhek <buyt...@wantstofly.org>, wrote: > On Sat, Feb 18, 2017 at 05:20:15PM +0100, Job Snijders wrote: > > > Hi, > > Goedemiddag! > > > > Can you make the LOCAL_PREF something that can be matched on? Example: > > > > if ! bgp_path.local_pref = 80 then { > > bgp_local_pref = 100; > > } > > > > This way one can limit the influence of the adjacent neighbor to either > > 80 or 100 (default). > > You can match against the existing variable and change it: > > protocol bgp peer_a { > ebgp localpref rx; > import filter { > if bgp_local_pref = 12349 then { > print "changing it"; > bgp_local_pref = 54321; > } > accept; > }; > [...] > } > > === > 2017-02-18 18:28:35 <TRACE> a: Got UPDATE > 2017-02-18 18:28:35 <INFO> changing it > > > bird> show route all > 0.0.0.0/0 via 172.17.76.1 on eth0 [a 18:28:35] * (100) [AS1i] > Type: BGP unicast univ > BGP.origin: IGP > BGP.as_path: 1 > BGP.next_hop: 172.17.76.1 > BGP.local_pref: 54321 > === > > Are you asking for a variable that records the received LOCAL_PREF that > is separate from bgp_local_pref? > > > Cheers, > Lennert