2 Documentation Test suite to verify Outbound filtering functionality using manual policy
4 Library RequestsLibrary
6 Library ../../../libraries/Sxp.py
7 Library ../../../libraries/Common.py
8 Resource ../../../libraries/SxpLib.robot
9 Resource ../../../libraries/WaitForFailure.robot
10 Resource ../../../libraries/SXP/FilteringResources.robot
12 Suite Setup Setup SXP Environment 5
13 Suite Teardown Clean SXP Environment 5
14 Test Teardown Clean Nodes
19 [Documentation] Test ACL filter behaviour during filter update
21 ${peers} Add Peers 127.0.0.4 127.0.0.5
22 Add PeerGroup GROUP ${peers}
23 ${entry1} Get Filter Entry 10 permit acl=10.10.10.0,0.0.0.255
24 ${entry2} Get Filter Entry 20 deny acl=10.10.0.0,0.0.255.0
25 ${entry3} Get Filter Entry 30 permit acl=10.0.0.0,0.255.255.0
26 ${entries} Combine Strings ${entry1} ${entry2} ${entry3}
27 Add Filter GROUP outbound ${entries} policy=manual-update
29 Wait Until Keyword Succeeds 4 2 Check One Group 4-5
30 Delete Filter GROUP outbound
31 Verify Keyword Does Not Fail Within Timeout 4 1 Check One Group 4-5
33 ${entry1} Get Filter Entry 10 permit acl=10.20.0.0,0.0.255.255
34 ${entry2} Get Filter Entry 20 permit acl=10.10.0.0,0.0.255.0
35 ${entries} Combine Strings ${entry1} ${entry2}
36 Add Filter GROUP outbound ${entries} policy=manual-update
38 Wait Until Keyword Succeeds 4 2 Check Two Group 4-5
40 Access List Sgt Filtering
41 [Documentation] Test ACL and SGT filter behaviour during filter update
43 ${peers} Add Peers 127.0.0.2 127.0.0.5
44 Add PeerGroup GROUP ${peers}
45 ${entry1} Get Filter Entry 10 deny acl=10.10.20.0,0.0.0.255
46 ${entry2} Get Filter Entry 20 permit acl=10.10.0.0,0.0.255.0
47 ${entry3} Get Filter Entry 30 permit sgt=30 acl=10.10.10.0,0.0.0.255
48 ${entries} Combine Strings ${entry1} ${entry2} ${entry3}
49 Add Filter GROUP outbound ${entries} policy=manual-update
51 Wait Until Keyword Succeeds 4 2 Check One Group 2-5
52 Delete Filter GROUP outbound
53 Verify Keyword Does Not Fail Within Timeout 4 1 Check One Group 2-5
55 ${entries} Get Filter Entry 10 permit esgt=20,40 acl=10.10.0.0,0.0.255.255
56 Add Filter GROUP outbound ${entries} policy=manual-update
58 Wait Until Keyword Succeeds 4 2 Check Two Group 2-5
61 [Documentation] Test Prefix List filter behaviour during filter update
63 ${peers} Add Peers 127.0.0.4 127.0.0.5
64 Add PeerGroup GROUP ${peers}
65 ${entry1} Get Filter Entry 10 permit pl=10.10.10.0/24
66 ${entry2} Get Filter Entry 20 deny epl=10.10.0.0/16,le,24
67 ${entry3} Get Filter Entry 30 permit epl=10.0.0.0/8,le,24
68 ${entries} Combine Strings ${entry1} ${entry2} ${entry3}
69 Add Filter GROUP outbound ${entries} policy=manual-update
71 Wait Until Keyword Succeeds 4 2 Check One Group 4-5
72 Delete Filter GROUP outbound
73 Verify Keyword Does Not Fail Within Timeout 4 1 Check One Group 4-5
75 ${entry1} Get Filter Entry 10 permit pl=10.20.0.0/16
76 ${entry2} Get Filter Entry 20 permit epl=10.10.0.0/16,le,24
77 ${entries} Combine Strings ${entry1} ${entry2}
78 Add Filter GROUP outbound ${entries} policy=manual-update
80 Wait Until Keyword Succeeds 4 2 Check Two Group 4-5
82 Prefix List Sgt Filtering
83 [Documentation] Test Prefix List and SGT filter behaviour during filter update
85 ${peers} Add Peers 127.0.0.2 127.0.0.5
86 Add PeerGroup GROUP ${peers}
87 ${entry1} Get Filter Entry 10 deny pl=10.10.20.0/24
88 ${entry2} Get Filter Entry 20 permit epl=10.10.0.0/16,le,24
89 ${entry3} Get Filter Entry 30 permit sgt=30 pl=10.10.10.0/24
90 ${entries} Combine Strings ${entry1} ${entry2} ${entry3}
91 Add Filter GROUP outbound ${entries} policy=manual-update
93 Wait Until Keyword Succeeds 4 2 Check One Group 2-5
94 Delete Filter GROUP outbound
95 Verify Keyword Does Not Fail Within Timeout 4 1 Check One Group 2-5
97 ${entries} Get Filter Entry 10 permit esgt=20,40 pl=10.10.0.0/16
98 Add Filter GROUP outbound ${entries} policy=manual-update
100 Wait Until Keyword Succeeds 4 2 Check Two Group 2-5
105 [Documentation] Reconnect all peers connected to node containing filters
106 [Arguments] ${version}=version4 ${password}=none
107 Clean Connections 127.0.0.1
108 Add Connection ${version} both 127.0.0.2 64999 127.0.0.1 ${password}
109 Add Connection ${version} listener 127.0.0.3 64999 127.0.0.1 ${password}
110 Add Connection ${version} both 127.0.0.4 64999 127.0.0.1 ${password}
111 Add Connection ${version} speaker 127.0.0.5 64999 127.0.0.1 ${password}
112 Wait Until Keyword Succeeds 15 1 Verify Connection ${version} both 127.0.0.2
113 Wait Until Keyword Succeeds 15 1 Verify Connection ${version} listener 127.0.0.3
114 Wait Until Keyword Succeeds 15 1 Verify Connection ${version} both 127.0.0.4
115 Wait Until Keyword Succeeds 15 1 Verify Connection ${version} speaker 127.0.0.5