@@ -90,7 +90,10 @@ Pass Example
9090 > 🛈 FIREWALL: > Chain FORWARD | Rule 0 | Match => jump
9191 > 🛈 FIREWALL: > Chain FORWARD | Sub-Chain: DOCKER-USER
9292 > 🛈 FIREWALL: > Chain DOCKER-USER | Rule 0 | Match => return
93- > 🛈 FIREWALL: > Chain FORWARD | Rule 1 | Match => jump
93+ > 🛈 FIREWALL: > Chain FORWARD | Rule 1
94+ > 🛈 FIREWALL: > Chain FORWARD | Rule 2
95+ > 🛈 FIREWALL: > Chain FORWARD | Rule 3
96+ > 🛈 FIREWALL: > Chain FORWARD | Rule 4 | Match => jump
9497 > 🛈 FIREWALL: > Chain FORWARD | Sub-Chain: DOCKER-FORWARD
9598 > 🛈 FIREWALL: > Chain DOCKER-FORWARD | Rule 0 | Match => jump
9699 > 🛈 FIREWALL: > Chain DOCKER-FORWARD | Sub-Chain: DOCKER-CT
@@ -116,36 +119,22 @@ Block Example
116119
117120.. code-block :: bash
118121
119- ftf-cli ... --src-ip 10.0.0.1 --dst-ip 172.17.10.6
122+ ftf-cli ... --src-ip 172.17.11.5 --dst-ip 2.2.2.2
120123
121- > 🛈 ROUTER: Packet inbound-interface: wan
122- > 🛈 ROUTER: Packet inbound-route: 0.0 .0.0/0, gw 10.255.255.254, metric 600, scope remote
124+ > 🛈 ROUTER: Packet inbound-interface: docker0
125+ > 🛈 ROUTER: Packet inbound-route: 172.17 .0.0/16, scope link
123126 > 🛈 FIREWALL: Processing Chain: Table nat ip4 | Chain PREROUTING ip4 nat
124127 > 🛈 FIREWALL: > Chain PREROUTING | Rule 0 | Match => jump
125128 > 🛈 FIREWALL: > Chain PREROUTING | Sub-Chain: DOCKER
126- > 🛈 FIREWALL: > Chain DOCKER | Rule 0
127- > 🛈 FIREWALL: > Chain DOCKER | Rule 1
128- > 🛈 ROUTER: Packet outbound-interface: docker0
129- > 🛈 ROUTER: Packet outbound-route: 172.17.0.0/16, scope link
129+ > 🛈 FIREWALL: > Chain DOCKER | Rule 0 | Match => return
130+ > 🛈 ROUTER: Packet outbound-interface: wan
131+ > 🛈 ROUTER: Packet outbound-route: 0.0.0.0/0, gw 10.255.255.254, metric 600, scope remote
130132 > 🛈 FIREWALL: Processing Chain: Table filter ip4 | Chain FORWARD ip4 filter
131133 > 🛈 FIREWALL: > Chain FORWARD | Rule 0 | Match => jump
132134 > 🛈 FIREWALL: > Chain FORWARD | Sub-Chain: DOCKER-USER
133135 > 🛈 FIREWALL: > Chain DOCKER-USER | Rule 0 | Match => return
134- > 🛈 FIREWALL: > Chain FORWARD | Rule 1 | Match => jump
135- > 🛈 FIREWALL: > Chain FORWARD | Sub-Chain: DOCKER-FORWARD
136- > 🛈 FIREWALL: > Chain DOCKER-FORWARD | Rule 0 | Match => jump
137- > 🛈 FIREWALL: > Chain DOCKER-FORWARD | Sub-Chain: DOCKER-CT
138- > 🛈 FIREWALL: > Chain DOCKER-CT | Rule 0 | Match => accept
139- > 🛈 FIREWALL: > Chain DOCKER-FORWARD | Rule 1 | Match => jump
140- > 🛈 FIREWALL: > Chain DOCKER-FORWARD | Sub-Chain: DOCKER-ISOLATION-STAGE-1
141- > 🛈 FIREWALL: > Chain DOCKER-ISOLATION-STAGE-1 | Rule 0
142- > 🛈 FIREWALL: > Chain DOCKER-FORWARD | Rule 2 | Match => jump
143- > 🛈 FIREWALL: > Chain DOCKER-FORWARD | Sub-Chain: DOCKER-BRIDGE
144- > 🛈 FIREWALL: > Chain DOCKER-BRIDGE | Rule 0 | Match => jump
145- > 🛈 FIREWALL: > Chain DOCKER-BRIDGE | Sub-Chain: DOCKER
146- > 🛈 FIREWALL: > Chain DOCKER | Rule 0
147- > 🛈 FIREWALL: > Chain DOCKER | Rule 1 | Match => drop
148- > ✖ FIREWALL: Packet blocked by rule: {' action' : ' drop' , ' seq' : 1, ' raw' : Rule: # 22 | Matches: [ni_in != ['docker0'], ni_out == ['docker0']]}
136+ > 🛈 FIREWALL: > Chain FORWARD | Rule 1 | Match => drop
137+ > ✖ FIREWALL: Packet blocked by rule: {' action' : ' drop' , ' seq' : 1, ' raw' : Rule: # 101 "TEST DROP" | Matches: [proto_l3 == ip4 & ip_daddr == ['2.2.2.2/32']]}
149138
150139----
151140
@@ -156,45 +145,31 @@ You can get more detailed output by increasing the verbosity:
156145
157146.. code-block :: bash
158147
159- ftf-cli ... --src-ip 10.0.0.1 --dst-ip 172.17.10.6 --verbosity 2
148+ ftf-cli ... --src-ip 172.17.11.5 --dst-ip 2.2.2.2 --verbosity 2
160149
161- > 🛈 ROUTER: Packet inbound-interface: wan
162- > 🛈 ROUTER: Packet inbound-route: 0.0 .0.0/0, gw 10.255.255.254, metric 600, scope remote
150+ > 🛈 ROUTER: Packet inbound-interface: docker0
151+ > 🛈 ROUTER: Packet inbound-route: 172.17 .0.0/16, scope link
163152 > 🛈 FIREWALL: Processing Chain: Table nat ip4 | Chain PREROUTING ip4 nat
164153 > 🛈 FIREWALL: > Chain PREROUTING | Rule 0 | Match => jump | {' action' : ' jump' , ' seq' : 0, ' raw' : Rule: # 3 | Matches: []}
165154 > 🛈 FIREWALL: > Chain PREROUTING | Sub-Chain: DOCKER
166- > 🛈 FIREWALL: > Chain DOCKER | Rule 0 | {' action' : ' return' , ' seq' : 0, ' raw' : Rule: # 10 | Matches: [ni_in == ['docker0']]}
167- > 🛈 FIREWALL: > Chain DOCKER | Rule 1 | {' action' : ' drop' , ' seq' : 1, ' raw' : Rule: # 22 | Matches: [ni_in != ['docker0'], ni_out == ['docker0']]}
155+ > 🛈 FIREWALL: > Chain DOCKER | Rule 0 | Match => return | {' action' : ' return' , ' seq' : 0, ' raw' : Rule: # 10 | Matches: [ni_in == ['docker0']]}
168156 > 🛈 FIREWALL: Flow-type: forward
169- > 🛈 ROUTER: Packet outbound-interface: docker0
170- > 🛈 ROUTER: Packet outbound-route: 172.17 .0.0/16, scope link
157+ > 🛈 ROUTER: Packet outbound-interface: wan
158+ > 🛈 ROUTER: Packet outbound-route: 0.0 .0.0/0, gw 10.255.255.254, metric 600, scope remote
171159 > 🛈 FIREWALL: Processing Chain: Table filter ip4 | Chain FORWARD ip4 filter
172160 > 🛈 FIREWALL: > Chain FORWARD | Rule 0 | Match => jump | {' action' : ' jump' , ' seq' : 0, ' raw' : Rule: # 20 | Matches: []}
173161 > 🛈 FIREWALL: > Chain FORWARD | Sub-Chain: DOCKER-USER
174162 > 🛈 FIREWALL: > Chain DOCKER-USER | Rule 0 | Match => return | {' action' : ' return' , ' seq' : 0, ' raw' : Rule: # 19 | Matches: []}
175- > 🛈 FIREWALL: > Chain FORWARD | Rule 1 | Match => jump | {' action' : ' jump' , ' seq' : 1, ' raw' : Rule: # 8 | Matches: []}
176- > 🛈 FIREWALL: > Chain FORWARD | Sub-Chain: DOCKER-FORWARD
177- > 🛈 FIREWALL: > Chain DOCKER-FORWARD | Rule 0 | Match => jump | {' action' : ' jump' , ' seq' : 0, ' raw' : Rule: # 11 | Matches: []}
178- > 🛈 FIREWALL: > Chain DOCKER-FORWARD | Sub-Chain: DOCKER-CT
179- > 🛈 FIREWALL: > Chain DOCKER-CT | Rule 0 | Match => accept | {' action' : ' accept' , ' seq' : 0, ' raw' : Rule: # 23 | Matches: [ni_out == ['docker0']]}
180- > 🛈 FIREWALL: > Chain DOCKER-FORWARD | Rule 1 | Match => jump | {' action' : ' jump' , ' seq' : 1, ' raw' : Rule: # 10 | Matches: []}
181- > 🛈 FIREWALL: > Chain DOCKER-FORWARD | Sub-Chain: DOCKER-ISOLATION-STAGE-1
182- > 🛈 FIREWALL: > Chain DOCKER-ISOLATION-STAGE-1 | Rule 0 | {' action' : ' jump' , ' seq' : 0, ' raw' : Rule: # 25 | Matches: [ni_in == ['docker0'], ni_out != ['docker0']]}
183- > 🛈 FIREWALL: > Chain DOCKER-FORWARD | Rule 2 | Match => jump | {' action' : ' jump' , ' seq' : 2, ' raw' : Rule: # 9 | Matches: []}
184- > 🛈 FIREWALL: > Chain DOCKER-FORWARD | Sub-Chain: DOCKER-BRIDGE
185- > 🛈 FIREWALL: > Chain DOCKER-BRIDGE | Rule 0 | Match => jump | {' action' : ' jump' , ' seq' : 0, ' raw' : Rule: # 24 | Matches: [ni_out == ['docker0']]}
186- > 🛈 FIREWALL: > Chain DOCKER-BRIDGE | Sub-Chain: DOCKER
187- > 🛈 FIREWALL: > Chain DOCKER | Rule 0 | {' action' : ' return' , ' seq' : 0, ' raw' : Rule: # 10 | Matches: [ni_in == ['docker0']]}
188- > 🛈 FIREWALL: > Chain DOCKER | Rule 1 | Match => drop | {' action' : ' drop' , ' seq' : 1, ' raw' : Rule: # 22 | Matches: [ni_in != ['docker0'], ni_out == ['docker0']]}
189- > ✖ FIREWALL: Packet blocked by rule: {' action' : ' drop' , ' seq' : 1, ' raw' : Rule: # 22 | Matches: [ni_in != ['docker0'], ni_out == ['docker0']]}
163+ > 🛈 FIREWALL: > Chain FORWARD | Rule 1 | Match => drop | {' action' : ' drop' , ' seq' : 1, ' raw' : Rule: # 101 "TEST IP4-DADDR DROP" | Matches: [proto_l3 == ip4 & ip_daddr == ['2.2.2.2/32']]}
164+ > ✖ FIREWALL: Packet blocked by rule: {' action' : ' drop' , ' seq' : 1, ' raw' : Rule: # 101 "TEST IP4-DADDR DROP" | Matches: [proto_l3 == ip4 & ip_daddr == ['2.2.2.2/32']]}
190165
191166 Or run use the silent-mode:
192167
193168.. code-block :: bash
194169
195- ftf-cli ... --src-ip 10.0.0.1 --dst-ip 172.17.10.6 --verbosity silent
170+ ftf-cli ... --src-ip 172.17.11.5 --dst-ip 2.2.2.2 --verbosity silent
196171
197- > ✖ FIREWALL: Packet blocked by rule: {' action' : ' drop' , ' seq' : 1, ' raw' : Rule: # 22 | Matches: [ni_in != ['docker0'], ni_out == ['docker0 ']]}
172+ > ✖ FIREWALL: Packet blocked by rule: {' action' : ' drop' , ' seq' : 1, ' raw' : Rule: # 101 "TEST IP4-DADDR DROP" | Matches: [proto_l3 == ip4 & ip_daddr == ['2.2.2.2/32 ']]}
198173
199174----
200175
0 commit comments