summaryrefslogtreecommitdiff
path: root/vpn_reset_ping_loop.sh
blob: 7410c4bb3e56ddd50f69ecaf9a0eeb9bb379ce15 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/bash

ping_host="vpn-1.us-east-2.crute.me"
fallback_ip="172.16.35.10"

ping_ip=$(host $ping_host)
if [ $? != 0 ]; then
    >&2 echo "Host lookup failed, using fallback IP"
    ping_ip="$fallback_ip"
else
    ping_ip=$(echo $ping_ip | awk '{ print $4 }')
fi

while true; do
    echo "Loop"
    if ! ping -n -W 5 -c 1 $ping_ip >/dev/null; then
        echo "/usr/sbin/ipsec restart"

        for conn in $(awk '/^conn [^%]/ { print $2 }' /etc/ipsec.conf); do
            echo "/usr/sbin/ipsec up $conn"
        done
    fi
    sleep 1
done