[j-nsp] Community matching policy
Andrew Khan
good1uzi at outlook.com
Mon Mar 31 07:47:32 EDT 2014
In addition to my last question, what I don't understand is that !A OR !B <=> !(A AND B) /// how come it became AND operation rather than logical OR///
>From Juniper documentation:
You can include the names of multiple communities in the community match condition. If you do this, only one community needs to match for a match to occur (matching is effectively a logical OR operation).
Is it invert-match causing this behavior? What if I don't use invert-match, will it be a logical OR operation e.g. A OR B <=> A OR B or will it be A OR B <=> (A AND B)
Thanks
> From: good1uzi at outlook.com
> To: krasi at smartcom.bg
> Date: Mon, 31 Mar 2014 11:00:48 +0000
> CC: juniper-nsp at puck.nether.net
> Subject: Re: [j-nsp] Community matching policy
>
>
>
>
> Hello Krasi,
> Thanks for the reply, appreciated. Sorry I did not mention in my first email that I'm trying to find a workaround while using invert-match. Any idea on achieving the same results when using invert-match.
>
> Kind regards,
>
>
> Date: Mon, 31 Mar 2014 13:41:40 +0300
> Subject: Re: [j-nsp] Community matching policy
> From: krasi at smartcom.bg
> To: good1uzi at outlook.com
> CC: juniper-nsp at puck.nether.net
>
> A match 100:100B match 101:101 Your TEST1 term match on !A OR !B <=> !(A AND B), so it effectively rejects every route that has NO communities 100:100 AND 101:101 (at the same time)
> Your target is to accept A OR B, so you can first match and accept on these communities (TEST1 OR TEST2 defined without invert-match) and then reject everything else.
> Best Regards,
> Krasi
>
> On 31 March 2014 12:10, Andrew Khan <good1uzi at outlook.com> wrote:
>
> Hi -
>
>
>
> Let's say I want to reject everything except the following communities:
>
>
>
> Either 100:100
>
> OR 101:101
>
> OR both 100:100 101:100
>
>
>
> Tried to setup something:
>
>
>
> [edit policy-options]
>
> policy-statement TEST {
>
> term TEST1 {
>
> from community [ TEST1 TEST2 ]; ///////Is not it logical OR, and matching everything except what I want because of invert-match//////
>
> then reject;
>
> }
>
> term TEST2 {
>
> then accept; //// And then this should accept what I wanted /////
>
> }
>
> }
>
>
>
> [edit policy-options]
>
> community TEST1 {
>
> invert-match;
>
> members 100:100;
>
> }
>
> community TEST2 {
>
> invert-match;
>
> members 101:101;
>
> }
>
>
>
> However it is rejecting everything. Any thoughts what I'm missing here or perhaps the approach is not correct.
>
>
>
> Thanks in advance.
>
>
>
>
>
> _______________________________________________
>
> juniper-nsp mailing list juniper-nsp at puck.nether.net
>
> https://puck.nether.net/mailman/listinfo/juniper-nsp
>
>
>
>
> _______________________________________________
> juniper-nsp mailing list juniper-nsp at puck.nether.net
> https://puck.nether.net/mailman/listinfo/juniper-nsp
More information about the juniper-nsp
mailing list