This repo is obsolete, please see git://git.code.sf.net/p/dummynet/code@master
[ipfw.git] / ipfw / rule_test.sh
1 #/bin/bash
2
3 COMMAND=ipfw
4
5
6 echo .########## Set $COMMAND mode .##########
7 $COMMAND add allow ip from any to any
8 $COMMAND -q flush
9
10 echo .########## empty rules .##########
11 $COMMAND list
12 $COMMAND add allow ip from any to any
13 $COMMAND add allow ip from any to { 1.2.3.4 or 2.3.4.5 }
14 $COMMAND add allow { dst-ip 1.2.3.4 or dst-ip 2.3.4.5 }
15
16 echo .########## listing 3 rules .##########
17 $COMMAND list
18
19 $COMMAND delete 200
20 echo .########## listing 2 rules .##########
21 $COMMAND list
22
23 $COMMAND table 10 add 1.2.3.4
24 $COMMAND table 10 add 1.2.3.5
25 $COMMAND table 10 add 1.2.3.6
26 $COMMAND table 10 add 1.2.3.7/13
27 $COMMAND table 10 add 1.2.3.7/20
28 $COMMAND table 10 add 1.2.3.7/28
29
30 echo .########## listing table 10 with 6 elements .##########
31 $COMMAND table 10 list
32 $COMMAND table 10 delete 1.2.3.6
33
34 echo .########## listing table 10 with 5 elements .##########
35 $COMMAND table 10 list
36 $COMMAND table 10 flush
37
38 echo .########## table 10 empty .##########
39 $COMMAND table 10 list
40
41 echo .########## move rule 100 to set 1 300 to 3 .##########
42 $COMMAND set move rule 100 to 1
43 $COMMAND set move rule 300 to 3
44 $COMMAND -S show
45
46 echo .########## move rule 200 to 2 but 200 do not exist .######
47 $COMMAND set move rule 200 to 2
48
49 echo .########## add some rules .##########
50 $COMMAND add 200 queue 2 proto ip
51 $COMMAND add 300 queue 5 proto ip
52 $COMMAND add 400 queue 40 proto ip
53 $COMMAND add 400 queue 50 proto ip
54
55 echo .########## move rule 200 to 2 .######
56 $COMMAND set move rule 200 to 2
57
58 echo .########## move rule 400 to 5 .######
59 $COMMAND set move rule 400 to 5
60
61 echo .########## set 5 show 2 rules .######
62 $COMMAND set 5 show
63
64 echo .########## flush set 5 .######
65 $COMMAND -q set 5 flush
66
67 echo .########## set 5 show 0 rule .######
68 $COMMAND set 5 show
69
70 echo .########## disable set 1 .######
71 $COMMAND set disable 1
72
73 echo .########## show all rules except set 1 .######
74 $COMMAND -S show
75
76 echo .########## enable set 1 .######
77 $COMMAND set enable 1
78
79 echo .########## show all rules .######
80 $COMMAND -S show
81
82
83