Arnaud Fenioux wrote, 28.01.2015 17:20:
Hello the bird community,

I’ve two small questions, I've put them in the same mail even if they are not 
related :

1/ I currently use this code in my config to reject “martians”

         if ( is_martian() ) then {
                 reject "prefix rejected by is_martian";
         }

Which prints in logs : <INFO> prefix rejected by is_martian
Do you know if there is a way to add some variables in the log (like 
bgp_path.first, from or net) ?


2/ I’ve notice a “strange” behaviour when comparing communities, is this 
voluntary?

Hi,

<Ondrej Zajicek wrote to me some times ago>
--------
Match (~) is not a symmetric operator, its general syntax is
"instance ~ set/list/pattern", therefore pair ~ pair_set is OK,
also pair ~ pair_list (bgp_community) is OK. Matching pair_list against
pair_set is a generalization interpreted as
"For each pair X in pair_list try X ~ pair_set, return true if any X matches"
--------

Wbr,
Mikhail, MSK-IX



Pair set have to be compared on the right :
bird> show route where bgp_community ~ [ (51706,51706) ] count
2467 of 2467 routes for 2426 networks

bird> show route where [ (51706,51706) ] ~ bgp_community count
0 of 2467 routes for 2426 networks


Pair have to be compared on the left :
bird> show route where (51706,51706) ~ bgp_community count
2467 of 2467 routes for 2426 networks

bird> show route where bgp_community ~ (51706,51706) count
0 of 2467 routes for 2426 networks



Thanks

--
Arnaud Fenioux
Network Engineer - FranceIX



--
Best regards,
Mikhail A. Grishin <m.gris...@msk-ix.ru>

Reply via email to