diff --git a/.scripts/network_utilities.sh b/.scripts/network_utilities.sh index e976ecd..279a201 100644 --- a/.scripts/network_utilities.sh +++ b/.scripts/network_utilities.sh @@ -1,8 +1,7 @@ # network utility functions # get the ip address of the host -function get_local_ip() { - echo -e "The interfaces and IPs are:\n$(ip -o -4 addr show | awk '/inet 192.168|inet 10.|inet 172.16/ {split($4, a, "/"); print $2 ": " a[1] "\n"}')" +function get_local_ip() { echo -e "The interfaces and IPs are:\n$(ip -o -4 addr show | awk '/inet 192.168|inet 10.|inet 172.16/ {split($4, a, "/"); print $2 ": " a[1] "\n"}')" } function get_public_ip() { @@ -11,7 +10,7 @@ function get_public_ip() { } function is_dns_working() { - dns_working=$(ping -c 1 google.com | grep "1 received" | wc -l) + dns_working=$(ping -4 -c 1 google.com | grep "1 received" | wc -l) if [ $dns_working -eq 1 ]; then return 0 else @@ -26,8 +25,32 @@ function reconnect_vpn_on_dns_failure() { if ! is_dns_working; then echo "DNS is not working, reconnecting VPN" mullvad reconnect + echo $(mullvad status) + else echo "DNS is working, no need to reconnect VPN" fi } +function check_internet_speed() { + # check if user has permissions to /var/log + if [ ! -w /var/log ]; then + echo "Permissions to /var/log are not available" + echo "Resorting to home directory for log file" + logfile=~/speedtest.log + else + echo "Permissions to /var/log are available" + logfile=/var/log/speedtest.log + fi + + # make sure dns is working properly + reconnect_vpn_on_dns_failure + + # add time and date to logfile + echo -e "\n\n$(date)" >> $logfile + + echo "Running speedtest" + SpeedTest | tee -a $logfile + echo "Speedtest complete" +} + diff --git a/.zshrc b/.zshrc index 3388aaf..d9f2c24 100644 --- a/.zshrc +++ b/.zshrc @@ -147,7 +147,7 @@ bindkey '5D' backward-word bindkey '5C' forward-word bindkey '^[[3~' delete-char -powerline-config tmux setup +#powerline-config tmux setup alias vim=nvim alias sudo='sudo '