@@ -48,6 +48,13 @@ func testEgressDual(t *testing.T) {
48
48
if ! exist {
49
49
return errors .New ("NAT rule not found for IPv4" )
50
50
}
51
+ exist , err = ipt .Exists ("filter" , "FORWARD" , "-o" , "lo" , "-m" , "state" , "--state" , "INVALID" , "-j" , "DROP" )
52
+ if err != nil {
53
+ return err
54
+ }
55
+ if ! exist {
56
+ return errors .New ("Filter rule not found for IPv4" )
57
+ }
51
58
52
59
ipt , err = iptables .NewWithProtocol (iptables .ProtocolIPv6 )
53
60
if err != nil {
@@ -61,6 +68,14 @@ func testEgressDual(t *testing.T) {
61
68
return errors .New ("NAT rule not found for IPv6" )
62
69
}
63
70
71
+ exist , err = ipt .Exists ("filter" , "FORWARD" , "-o" , "lo" , "-m" , "state" , "--state" , "INVALID" , "-j" , "DROP" )
72
+ if err != nil {
73
+ return err
74
+ }
75
+ if ! exist {
76
+ return errors .New ("Filter rule not found for IPv6" )
77
+ }
78
+
64
79
rm , err := ruleMap (netlink .FAMILY_V4 )
65
80
if err != nil {
66
81
return err
@@ -168,6 +183,14 @@ func testEgressV4(t *testing.T) {
168
183
return errors .New ("NAT rule not found for IPv4" )
169
184
}
170
185
186
+ exist , err = ipt .Exists ("filter" , "FORWARD" , "-o" , "lo" , "-m" , "state" , "--state" , "INVALID" , "-j" , "DROP" )
187
+ if err != nil {
188
+ return err
189
+ }
190
+ if ! exist {
191
+ return errors .New ("Filter rule not found for IPv4" )
192
+ }
193
+
171
194
ipt , err = iptables .NewWithProtocol (iptables .ProtocolIPv6 )
172
195
if err != nil {
173
196
return err
@@ -180,6 +203,14 @@ func testEgressV4(t *testing.T) {
180
203
return errors .New ("NAT rule found for IPv6" )
181
204
}
182
205
206
+ exist , err = ipt .Exists ("filter" , "FORWARD" , "-o" , "lo" , "-m" , "state" , "--state" , "INVALID" , "-j" , "DROP" )
207
+ if err != nil {
208
+ return err
209
+ }
210
+ if exist {
211
+ return errors .New ("Filter rule found for IPv6" )
212
+ }
213
+
183
214
rm , err := ruleMap (netlink .FAMILY_V4 )
184
215
if err != nil {
185
216
return err
@@ -256,6 +287,14 @@ func testEgressV6(t *testing.T) {
256
287
return errors .New ("NAT rule found for IPv4" )
257
288
}
258
289
290
+ exist , err = ipt .Exists ("filter" , "FORWARD" , "-o" , "lo" , "-m" , "state" , "--state" , "INVALID" , "-j" , "DROP" )
291
+ if err != nil {
292
+ return err
293
+ }
294
+ if exist {
295
+ return errors .New ("Filter rule found for IPv4" )
296
+ }
297
+
259
298
ipt , err = iptables .NewWithProtocol (iptables .ProtocolIPv6 )
260
299
if err != nil {
261
300
return err
@@ -268,6 +307,14 @@ func testEgressV6(t *testing.T) {
268
307
return errors .New ("NAT rule not found for IPv6" )
269
308
}
270
309
310
+ exist , err = ipt .Exists ("filter" , "FORWARD" , "-o" , "lo" , "-m" , "state" , "--state" , "INVALID" , "-j" , "DROP" )
311
+ if err != nil {
312
+ return err
313
+ }
314
+ if ! exist {
315
+ return errors .New ("Filter rule not found for IPv6" )
316
+ }
317
+
271
318
rm , err := ruleMap (netlink .FAMILY_V4 )
272
319
if err != nil {
273
320
return err
0 commit comments