Do Suns tests first. PCs second.
Add to local-node portion
local-info {
route-server no;
prohibit-dist { rdi-1 rdi-2 rdi-3 }
}
ext-info {
route-server yes;
prohibit-dist {rdi-4 rdi-5 rdi-6}
}
Test 1: no routes
Test 2: route set 1 - local
route set 2 - ext info set
Test 3: route set 2 deleted
route set 3 (routes in route set 1 with
exterior flag)
Test 4: route set 2 added
Test 5: route set 2 & 3 delete
Run with deltas & rib refresh on internal, external peers.
External peers have rdi rdi-1, rdi-2, rdi-3, rdi-4, rdi-5, rdi-6.
Test Group 1: Dist _list exact remote side sets it in peer, will send to rdi-4, rdi-5, rdi-6Test Group 3: list of rdis is not but contains a subsetimport proto idrp rdi rdi1 idrp_ps_policy_atts { dist_list_excl {rdi-1 rdi-2 rdi-3} ; } { policy; }
For Test Group 1 use the following setting for the remote side tests: Test 1: no routes with set Test 2: route set 1 - local route set 2 - ext info set Test 3: route set 2 deleted route set 3 (routes in route set 1 with exterior flag) Test 4: route set 2 added Test 5: route set 2 & 3 delete Test Group 2: list of rdis is not exact remote side doesn't sets it in peer Test 1: route 1 onlyimport proto idrp rdi rdi1 idrp_ps_policy_atts { dist_list_excl {rdi-7} } { policy; }
Test 1: route 1 only
route should not come in
import proto idrp rdi rdi1
idrp_ps_policy_atts {
dist_list_excl {rdi-1 rdi-2 }
}
{
policy;
}
These test are run on 6 peers, with internal, external meshes in
the Rib-Refresh and Deltas.
These test are run on 6 peers, with internal, external meshes in the Rib-Refresh and Deltas.
Insert the above two groups of tests into the source of the export clause
export proto idrp rdi rdi-1
{
proto idrp rdi rdi-2
idrp_ps_policy_atts {
dist-list-excl { rdi-1 rdi-2 rdi-3 }
}
{
policy;
};
proto idrp rdi rdi-3
idrp_ps_policy_atts {
dist-list-excl {rdi-7}
};
{
policy;
};
};
Policy should vary with:
Run tests Export Source with the following additional code:
export proto idrp rdi rdi-1
idrp-ps-att {
dist-list-excl {rdi-1}
}
{
# should leave this the same
proto idrp rdi rdi-2
idrp_ps_policy_atts {
dist-list-excl {rdi-1 rdi-2 rdi-3}
}
{
policy;
};
# should add rdi-1 to rdi-2, rdi-3
proto idrp rdi rdi-3
idrp_ps_policy_atts {
dist-list-excl {rdi-2 rdi-3}
}
{
policy;
};
# no dist_list exists for this node
# should add the dist-list
proto idrp rdi rdi-3
{
policy;
};
};