Browse Source

port redirection cleans up before usage

Fabio Arnold 9 years ago
parent
commit
4470ff47f8
1 changed files with 6 additions and 0 deletions
  1. 6 0
      assets/payload/redirect-ports.sh

+ 6 - 0
assets/payload/redirect-ports.sh

@@ -13,6 +13,12 @@ length=${#protocol[@]} # count protocol elements
 for i in `seq 0 9` # fix for android's annoyingly limited bash
 do
 	# echo ${protocol[$i]} ${origin[$i]} ${destination[$i]} # debug
+
+	# delete previous rules to avoid duplicates
+	iptables -t nat -D PREROUTING -p ${protocol[$i]} --dport ${origin[$i]} -j REDIRECT --to-ports ${destination[$i]}
+	iptables -t nat -D OUTPUT -p ${protocol[$i]} --dport ${destination[$i]} -j REDIRECT --to-ports ${origin[$i]}
+
+	# add new rules
 	iptables -t nat -A PREROUTING -p ${protocol[$i]} --dport ${origin[$i]} -j REDIRECT --to-ports ${destination[$i]}
 	iptables -t nat -A OUTPUT -p ${protocol[$i]} --dport ${destination[$i]} -j REDIRECT --to-ports ${origin[$i]}
 done