summaryrefslogtreecommitdiffstats
path: root/remote/modules/redsocks/data/opt/openslx/scripts/systemd-setup_proxy
diff options
context:
space:
mode:
authorJonathan Bauer2015-10-29 13:25:59 +0100
committerJonathan Bauer2015-10-29 13:25:59 +0100
commitf44812d259866c66409f3c373ba2626efae5ec95 (patch)
tree00992e6c64d7e9c9fe060a0c6dd7267e1776e76a /remote/modules/redsocks/data/opt/openslx/scripts/systemd-setup_proxy
parent[cups-freiburg] removed RZMONO2 since it's long dead (diff)
parent[rootfs-*] Disable 'demo' login, support $SLX_DEMO_PASS to set a password via... (diff)
downloadtm-scripts-f44812d259866c66409f3c373ba2626efae5ec95.tar.gz
tm-scripts-f44812d259866c66409f3c373ba2626efae5ec95.tar.xz
tm-scripts-f44812d259866c66409f3c373ba2626efae5ec95.zip
Merge branch 'master' of git.openslx.org:openslx-ng/tm-scripts
Diffstat (limited to 'remote/modules/redsocks/data/opt/openslx/scripts/systemd-setup_proxy')
-rwxr-xr-xremote/modules/redsocks/data/opt/openslx/scripts/systemd-setup_proxy17
1 files changed, 9 insertions, 8 deletions
diff --git a/remote/modules/redsocks/data/opt/openslx/scripts/systemd-setup_proxy b/remote/modules/redsocks/data/opt/openslx/scripts/systemd-setup_proxy
index 86b19e97..97ef8225 100755
--- a/remote/modules/redsocks/data/opt/openslx/scripts/systemd-setup_proxy
+++ b/remote/modules/redsocks/data/opt/openslx/scripts/systemd-setup_proxy
@@ -16,17 +16,18 @@ PROXY=off
if [ "$SLX_PROXY_MODE" == "on" ]; then
PROXY=on
elif [ "$SLX_PROXY_MODE" == "auto" -a -n "$SLX_PXE_CLIENT_IP" ]; then
- [[ "$SLX_PXE_CLIENT_IP" =~ ^10\. ]] && PROXY=on
- [[ "$SLX_PXE_CLIENT_IP" =~ ^192\.168\. ]] && PROXY=on
- [[ "$SLX_PXE_CLIENT_IP" =~ ^172\.[123][0-9]\. ]] && PROXY=on
+ # auto detection: check if it is actually needed
+ RET=$(curl -m 2 -s http://www.google.de/ | grep -o google | wc -l)
+ if [ $RET -lt 20 ]; then
+ sleep 4
+ RET=$(curl -m 5 -s http://www.google.de/ | grep -o google | wc -l)
+ fi
+ [ $RET -gt 20 ] && echo "Auto detect: Internet is reachable without proxy." && exit 0
+ PROXY=on
fi
[ "$PROXY" == "off" ] && echo "Proxy mode not required." && exit 0
-
-# wants a proxy from the config file and the client's ip, check if it is actually needed
-/opt/openslx/bin/ping -w 5 -c 3 www.google.de
-RET=$?
-[ $RET -eq 0 ] && echo "Internet is reachable without proxy." && exit 0
+echo "Setting up transparent proxying via $SLX_PROXY_IP"
sed -i "s/%%PROXY_IP%%/$SLX_PROXY_IP/g;s/%%PROXY_PORT%%/$SLX_PROXY_PORT/g;s/%%PROXY_TYPE%%/$SLX_PROXY_TYPE/g" /etc/redsocks.conf