@@ -65,8 +65,9 @@ ex) loxicmd create firewall --firewallRule="sourceIP:1.2.3.2/32,destinationIP:2.
65
65
loxicmd create firewall --firewallRule="sourceIP:1.2.3.2/32,destinationIP:2.3.1.2/32,preference:200" --allow --record
66
66
loxicmd create firewall --firewallRule="sourceIP:1.2.3.2/32,destinationIP:2.3.1.2/32,preference:200" --allow --setmark=10
67
67
loxicmd create firewall --firewallRule="sourceIP:1.2.3.2/32,destinationIP:2.3.1.2/32,preference:200" --drop
68
+ loxicmd create firewall --firewallRule="sourceIP:3ffe::1/128" --drop
68
69
loxicmd create firewall --firewallRule="sourceIP:1.2.3.2/32,destinationIP:2.3.1.2/32,preference:200" --trap
69
- loxicmd create firewall --firewallRule="sourceIP:1.2.3.2/32,destinationIP:2.3.1.2/32,preference:200" --redirect=hs1
70
+ loxicmd create firewall --firewallRule="sourceIP:1.2.3.2/32,destinationIP:2.3.1.2/32,preference:200" --redirect=eth1
70
71
loxicmd create firewall --firewallRule="sourceIP:1.2.3.2/32,destinationIP:2.3.1.2/32,preference:200" --snat=10.10.10.1,3030
71
72
loxicmd create firewall --firewallRule="sourceIP:1.2.3.2/32,destinationIP:2.3.1.2/32,preference:200" --snat=10.10.10.1 (Do not change sourceport)
72
73
loxicmd create firewall --firewallRule="sourceIP:1.2.3.2/32,destinationIP:2.3.1.2/32,preference:200" --snat=10.10.10.1,3030 --egress (Egress rules match for non-k8s traffic)
@@ -122,7 +123,7 @@ ex) loxicmd create firewall --firewallRule="sourceIP:1.2.3.2/32,destinationIP:2.
122
123
func GetFirewallRulePairList (o * api.FwRuleMod , FWrule []string ) error {
123
124
for _ , FirewallArg := range FWrule {
124
125
FirewallArgsPair := strings .Split (FirewallArg , ":" )
125
- if len (FirewallArgsPair ) != 2 {
126
+ if len (FirewallArgsPair ) < 2 {
126
127
return fmt .Errorf ("FirewallArgs '%s' is invalid format" , FWrule )
127
128
} else if FirewallArgsPair [0 ] == "protocol" {
128
129
protocol , err := strconv .Atoi (FirewallArgsPair [1 ])
@@ -131,9 +132,17 @@ func GetFirewallRulePairList(o *api.FwRuleMod, FWrule []string) error {
131
132
}
132
133
o .Rule .Proto = uint8 (protocol )
133
134
} else if FirewallArgsPair [0 ] == "sourceIP" {
134
- o .Rule .SrcIP = FirewallArgsPair [1 ]
135
+ if len (FirewallArgsPair ) > 2 {
136
+ o .Rule .SrcIP = strings .Join (FirewallArgsPair [1 :], ":" )
137
+ } else {
138
+ o .Rule .SrcIP = FirewallArgsPair [1 ]
139
+ }
135
140
} else if FirewallArgsPair [0 ] == "destinationIP" {
136
- o .Rule .DstIP = FirewallArgsPair [1 ]
141
+ if len (FirewallArgsPair ) > 2 {
142
+ o .Rule .DstIP = strings .Join (FirewallArgsPair [1 :], ":" )
143
+ } else {
144
+ o .Rule .DstIP = FirewallArgsPair [1 ]
145
+ }
137
146
} else if FirewallArgsPair [0 ] == "portName" {
138
147
o .Rule .InPort = FirewallArgsPair [1 ]
139
148
} else if FirewallArgsPair [0 ] == "minSourcePort" {
0 commit comments