summaryrefslogtreecommitdiff
path: root/app/openvpn/contrib/openvpn-fwmarkroute-1.00/fwmarkroute.down
diff options
context:
space:
mode:
authorParménides GV <parmegv@sdf.org>2014-04-09 17:07:48 +0200
committerParménides GV <parmegv@sdf.org>2014-04-09 17:15:17 +0200
commit51ff5a18f1f074e27e97d822745551a7e8fa068d (patch)
tree402e7dd42778a218635bb29a4c2dff93ea7f6525 /app/openvpn/contrib/openvpn-fwmarkroute-1.00/fwmarkroute.down
parent910b0e1746ab3f63e63808b198ad51fec5b635e5 (diff)
parentb5ba0abc1610dd4bf573ebcabc5e8f6ab0c9528f (diff)
Merge branch 'feature/implement-gradle-build-system-#4676' into develop
Diffstat (limited to 'app/openvpn/contrib/openvpn-fwmarkroute-1.00/fwmarkroute.down')
-rwxr-xr-xapp/openvpn/contrib/openvpn-fwmarkroute-1.00/fwmarkroute.down22
1 files changed, 22 insertions, 0 deletions
diff --git a/app/openvpn/contrib/openvpn-fwmarkroute-1.00/fwmarkroute.down b/app/openvpn/contrib/openvpn-fwmarkroute-1.00/fwmarkroute.down
new file mode 100755
index 00000000..87d67d4d
--- /dev/null
+++ b/app/openvpn/contrib/openvpn-fwmarkroute-1.00/fwmarkroute.down
@@ -0,0 +1,22 @@
+#!/bin/sh
+#
+# Bring down vpn routing.
+
+# calculate the network address
+remote_network=`ipcalc -n "$remote"/"$remote_netmask_bits"`
+remote_network="${remote_network#*=}"
+
+# clear routing via VPN
+ip route del "$remote_network"/"$remote_netmask_bits" via "$5" table vpn.out
+ip route del table vpnonly.out via "$5"
+iptables -D OUTPUT -t mangle -p "$proto" \
+ -d "$remote_network"/"$remote_netmask_bits" \
+ --dport "$remote_port" -j ACCEPT
+iptables -D OUTPUT -t mangle -d "$remote" -j MARK --set-mark 2
+
+# undo the ICMP ping tunneling
+iptables -D OUTPUT -t mangle --protocol icmp --icmp-type echo-request \
+ -j MARK --set-mark 3
+
+# flush route cache
+ip route flush cache