Last active
January 30, 2023 20:55
-
-
Save johan149/4bf9f7c24ebc2f3310100904433cbb63 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
check_internet_connection() { | |
return $(ping -c 1 www.google.com > /dev/null) | |
} | |
while [ 1 ]; do | |
check_internet_connection | |
# already have internet connection | |
if [ $? -eq 0 ]; then | |
echo "$(date +%Y-%m-%d\ %H:%M:%S) "internet connection state online" | |
sleep 10 | |
else | |
echo "$(date +%Y-%m-%d\ %H:%M:%S) lost internet connection, auto reconnect..." | |
#check active network devices | |
#nmcli conn show --active | |
DID1=$(sudo nmcli conn show --active|grep ethernet|awk '{print $(NF-2)}') | |
DNAME1=$(sudo nmcli conn show --active|grep ethernet|awk '{print $(NF-0)}') | |
#nmcli con down $(nmcli conn show --active|grep ethernet|awk '{print $(NF-2)}') | |
#release ip | |
sudo dhclient -v -r $DNAME1 | |
#try to obtain a new ip | |
sudo dhclient -v $DNAME1 | |
# disables the network device | |
sudo nmcli con down $DID1 | |
sleep 5 | |
# enables the network device | |
sudo nmcli con up $DID1 | |
nmcli device reapply $DNAME1 | |
sudo nmcli conn show --active | |
sleep 3 | |
#restarts anydesk | |
sudo killall anydesk | |
sleep 1 | |
sudo systemctl start anydesk | |
sleep 1 | |
sudo anydesk --restart-service | |
sleep 2 | |
sudo anydesk --get-status && echo && sudo anydesk --get-id && echo | |
sleep 10 | |
fi | |
done |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment