summaryrefslogtreecommitdiffstats
path: root/remote/modules/redsocks/data/opt/openslx/scripts
diff options
context:
space:
mode:
authorSimon Rettberg2015-10-26 10:44:11 +0100
committerSimon Rettberg2015-10-26 10:44:11 +0100
commitecbe8fddf4451615d0222422762e812d0f93d7a0 (patch)
tree290627745256aaadabb585e23f5997a3bf71903a /remote/modules/redsocks/data/opt/openslx/scripts
parent[rfs-stage32/cups] Include missing files/binaries for foomatic.rip when not u... (diff)
downloadtm-scripts-ecbe8fddf4451615d0222422762e812d0f93d7a0.tar.gz
tm-scripts-ecbe8fddf4451615d0222422762e812d0f93d7a0.tar.xz
tm-scripts-ecbe8fddf4451615d0222422762e812d0f93d7a0.zip
[redsocks] Only check if proxy if needed when mode is set to "auto"
Diffstat (limited to 'remote/modules/redsocks/data/opt/openslx/scripts')
-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