This commit is contained in:
Eduard Tolosa 2019-04-07 11:29:21 -05:00
parent f861b7da1a
commit 73c0b80493
2 changed files with 40 additions and 21 deletions

View file

@ -6,28 +6,47 @@
# Autor: Eduard Toloza
# Define variables
services='systemd-networkd iwd systemd-resolved randomvpn'
services='systemd-networkd systemd-resolved randomvpn' # iwd
bond_active=$(ip -o link show type bond | awk -F': ' '{print $2}')
if [ "$1" == "f" ]; then
sudo systemctl restart $services
restart_network() {
#Check if ping command is available
if command -v ping > /dev/null; then
# Check internet connection and if not OK then restart all networking services
echo "Testing your connection..."
if ! ping -q -c 1 -W 1 9.9.9.9 > /dev/null; then
echo "Your connection is not working, restarting your network services: $services"
# Delete bond interfaces if they exists
if [ ! -z "$bond_active" ] ; then
for bond_iface in "$bond_active"; do
ip link delete $bond_iface
done
fi
# Restart services
systemctl restart $services
if [ $? -eq 0 ]; then
echo "Services restarted sucessfully, leaving."
else
echo "An error has occurred, make sure that service names are correct."
fi
else
echo "Your connection is OK"
fi
else
echo "ping command is not available, aborting."
fi
}
if [ "$UID" != 0 ]; then
echo "You don't have root permisions."
exit
fi
#Check if ping command is available
if command -v ping > /dev/null; then
# Check internet connection and if not OK then restart all networking services
echo "Testing your connection..."
if ! ping -q -c 1 -W 1 9.9.9.9 > /dev/null; then
echo "Your connection is not working, restarting your network services: $services"
sudo systemctl restart $services
if [ $? -eq 0 ]; then
echo "Services restarted sucessfully, leaving."
else
echo "An error has occurred, make sure that service names are correct."
fi
else
echo "Your connection is OK"
fi
else
echo "ping command is not available, aborting."
# Check if the f options was passed to force restart of services
if [ "$1" == "f" ]; then
systemctl restart $services
exit
fi
restart_network