Переглянути джерело

mwan3: update to version 2.0-2

Fix iptables issue where a needed ipset was not created if first wan that came online was not a member of policy.

Signed-off-by: Jeroen Louwes <jeroen.louwes@gmail.com>
Jeroen Louwes 9 роки тому
джерело
коміт
05eaec986b
2 змінених файлів з 12 додано та 12 видалено
  1. 1
    1
      net/mwan3/Makefile
  2. 11
    11
      net/mwan3/files/lib/mwan3/mwan3.sh

+ 1
- 1
net/mwan3/Makefile Переглянути файл

@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
9 9
 
10 10
 PKG_NAME:=mwan3
11 11
 PKG_VERSION:=2.0
12
-PKG_RELEASE:=1
12
+PKG_RELEASE:=2
13 13
 PKG_MAINTAINER:=Jeroen Louwes <jeroen.louwes@gmail.com>
14 14
 PKG_LICENSE:=GPLv2
15 15
 

+ 11
- 11
net/mwan3/files/lib/mwan3/mwan3.sh Переглянути файл

@@ -85,16 +85,16 @@ mwan3_set_general_iptables()
85 85
 			$IPT -N mwan3_ifaces_in
86 86
 		fi
87 87
 
88
-		if ! $IPT -S mwan3_ifaces_out &> /dev/null; then
89
-			$IPT -N mwan3_ifaces_out
90
-		fi
91
-
92 88
 		if ! $IPT -S mwan3_connected &> /dev/null; then
93 89
 			$IPT -N mwan3_connected
94 90
 			$IPS -! create mwan3_connected list:set
95 91
 			$IPT -A mwan3_connected -m set --match-set mwan3_connected dst -j MARK --set-xmark 0xff00/0xff00
96 92
 		fi
97 93
 
94
+		if ! $IPT -S mwan3_ifaces_out &> /dev/null; then
95
+			$IPT -N mwan3_ifaces_out
96
+		fi
97
+
98 98
 		if ! $IPT -S mwan3_rules &> /dev/null; then
99 99
 			$IPT -N mwan3_rules
100 100
 		fi
@@ -103,8 +103,8 @@ mwan3_set_general_iptables()
103 103
 			$IPT -N mwan3_hook
104 104
 			$IPT -A mwan3_hook -j CONNMARK --restore-mark --nfmask 0xff00 --ctmask 0xff00
105 105
 			$IPT -A mwan3_hook -m mark --mark 0x0/0xff00 -j mwan3_ifaces_in
106
-			$IPT -A mwan3_hook -m mark --mark 0x0/0xff00 -j mwan3_ifaces_out
107 106
 			$IPT -A mwan3_hook -m mark --mark 0x0/0xff00 -j mwan3_connected
107
+			$IPT -A mwan3_hook -m mark --mark 0x0/0xff00 -j mwan3_ifaces_out
108 108
 			$IPT -A mwan3_hook -m mark --mark 0x0/0xff00 -j mwan3_rules
109 109
 			$IPT -A mwan3_hook -j CONNMARK --save-mark --nfmask 0xff00 --ctmask 0xff00
110 110
 			$IPT -A mwan3_hook -m mark ! --mark 0xff00/0xff00 -j mwan3_connected
@@ -529,12 +529,6 @@ mwan3_set_sticky_iptables()
529 529
 
530 530
 			[ -n "$id" ] || return 0
531 531
 
532
-			$IPS -! create mwan3_sticky_v4_$rule hash:ip,mark markmask 0xff00 timeout $timeout
533
-			$IPS -! create mwan3_sticky_v6_$rule hash:ip,mark markmask 0xff00 timeout $timeout family inet6
534
-			$IPS -! create mwan3_sticky_$rule list:set
535
-			$IPS -! add mwan3_sticky_$rule mwan3_sticky_v4_$rule
536
-			$IPS -! add mwan3_sticky_$rule mwan3_sticky_v6_$rule
537
-
538 532
 			for IPT in "$IPT4" "$IPT6"; do
539 533
 				if [ -n "$($IPT -S mwan3_iface_in_$1 2> /dev/null)" -a -n "$($IPT -S mwan3_iface_out_$1 2> /dev/null)" ]; then
540 534
 					$IPT -I mwan3_rule_$rule -m mark --mark $(($id*256))/0xff00 -m set ! --match-set mwan3_sticky_$rule src,src -j MARK --set-xmark 0x0/0xff00
@@ -594,6 +588,12 @@ mwan3_set_user_iptables_rule()
594 588
 					$IPT -F mwan3_rule_$1
595 589
 				done
596 590
 
591
+				$IPS -! create mwan3_sticky_v4_$rule hash:ip,mark markmask 0xff00 timeout $timeout
592
+				$IPS -! create mwan3_sticky_v6_$rule hash:ip,mark markmask 0xff00 timeout $timeout family inet6
593
+				$IPS -! create mwan3_sticky_$rule list:set
594
+				$IPS -! add mwan3_sticky_$rule mwan3_sticky_v4_$rule
595
+				$IPS -! add mwan3_sticky_$rule mwan3_sticky_v6_$rule
596
+
597 597
 				config_foreach mwan3_set_sticky_iptables interface
598 598
 
599 599
 				for IPT in "$IPT4" "$IPT6"; do