sgw: adjust policy routing script a bit
authorFerry Huberts <ferry.huberts@pelagic.nl>
Thu, 13 Feb 2014 10:47:53 +0000 (11:47 +0100)
committerFerry Huberts <ferry.huberts@pelagic.nl>
Thu, 13 Feb 2014 13:05:16 +0000 (14:05 +0100)
To always (on all interfaces) restore connection markings

Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
files/sgw_policy_routing_setup.sh

index 7648fe1..e872997 100755 (executable)
@@ -63,15 +63,16 @@ function error() {
 ###############################################################################
 
 function generic() {
-  "${IPTABLES}" ${IPTABLES_ARGS} -t mangle "${ADDMODE_IPTABLES}" OUTPUT -j CONNMARK --restore-mark
+  "${IPTABLES}" ${IPTABLES_ARGS} -t mangle "${ADDMODE_IPTABLES}" PREROUTING  -m conntrack ! --ctstate NEW -j CONNMARK --restore-mark
+  "${IPTABLES}" ${IPTABLES_ARGS} -t mangle "${ADDMODE_IPTABLES}" OUTPUT      -m conntrack ! --ctstate NEW -j CONNMARK --restore-mark
 }
 
 function olsrif() {
-  "${IPTABLES}" ${IPTABLES_ARGS} -t mangle "${ADDMODE_IPTABLES}" PREROUTING -i "${1}" -j CONNMARK --restore-mark
+  # do nothing
 }
 
 function sgwsrvtun() {
-  "${IPTABLES}" ${IPTABLES_ARGS} -t mangle "${ADDMODE_IPTABLES}" PREROUTING -i "${1}" -j CONNMARK --restore-mark
+  # do nothing
 }
 
 function egressif() {