dn42/scripts/netcheck_dn42.sh

140 lines
3.5 KiB
Bash
Raw Normal View History

2020-04-04 13:57:04 +02:00
#!/bin/bash
export RED='\033[0;31m'
export GREEN='\033[0;32m'
export GREY='\033[0;37m'
export NC='\033[0m' # No Color
fullpingtest(){
host=" ($(dig +short -x $1 | grep -Po '.*(?=\.)'))"
if [[ $? -ne 0 ]]; then
host=""
fi
timeout 1 ping -c 1 $1 &>/dev/null
if [[ $? -eq 0 ]]; then
echo -e "[${GREEN}PASS${NC}]${GREY} Host ${NC}$1$host${GREY} is ${GREEN}up${NC}"
else
echo -e "[${RED}FAIL${NC}]${GREY} Host ${NC}$1$host)${GREY} is ${RED}down${NC}"
fi
host=" ($(dig +short -x $2 | grep -Po '.*(?=\.)'))"
if [[ $? -ne 0 ]]; then
host=""
fi
timeout 1 ping -6 -c 1 $2 &>/dev/null
if [[ $? -eq 0 ]]; then
echo -e "[${GREEN}PASS${NC}]${GREY} Host ${NC}$2$host${GREY} is ${GREEN}up${NC}"
else
echo -e "[${RED}FAIL${NC}]${GREY} Host ${NC}$2$host${GREY} is ${RED}down${NC}"
fi
host=" (v4)"
timeout 1 ping -c 1 $3 &>/dev/null
if [[ $? -eq 0 ]]; then
echo -e "[${GREEN}PASS${NC}]${GREY} Host ${NC}$3$host${GREY} is ${GREEN}up${NC}"
else
echo -e "[${RED}FAIL${NC}]${GREY} Host ${NC}$3$host${GREY} is ${RED}down${NC}"
fi
host=" (v6)"
timeout 1 ping -6 -c 1 $3 &>/dev/null
if [[ $? -eq 0 ]]; then
echo -e "[${GREEN}PASS${NC}]${GREY} Host ${NC}$3$host${GREY} is ${GREEN}up${NC}"
else
echo -e "[${RED}FAIL${NC}]${GREY} Host ${NC}$3$host${GREY} is ${RED}down${NC}"
fi
}
pingtest(){
host=" ($(dig +short -x $1 | grep -Po '.*(?=\.)'))"
if [[ $? -ne 0 ]]; then
host=""
fi
timeout 1 ping -c 1 $1 &>/dev/null
if [[ $? -eq 0 ]]; then
echo -e "[${GREEN}PASS${NC}]${GREY} Host ${NC}$1$host${GREY} is ${GREEN}up${NC}"
else
echo -e "[${RED}FAIL${NC}]${GREY} Host ${NC}$1$host)${GREY} is ${RED}down${NC}"
fi
host=" ($(dig +short -x $2 | grep -Po '.*(?=\.)'))"
if [[ $? -ne 0 ]]; then
host=""
fi
timeout 1 ping -6 -c 1 $2 &>/dev/null
if [[ $? -eq 0 ]]; then
echo -e "[${GREEN}PASS${NC}]${GREY} Host ${NC}$2$host${GREY} is ${GREEN}up${NC}"
else
echo -e "[${RED}FAIL${NC}]${GREY} Host ${NC}$2$host${GREY} is ${RED}down${NC}"
fi
}
dnspingtest(){
host=" (v4)"
timeout 1 ping -c 1 $1 &>/dev/null
if [[ $? -eq 0 ]]; then
echo -e "[${GREEN}PASS${NC}]${GREY} Host ${NC}$1$host${GREY} is ${GREEN}up${NC}"
else
echo -e "[${RED}FAIL${NC}]${GREY} Host ${NC}$1$host${GREY} is ${RED}down${NC}"
fi
host=" (v6)"
timeout 1 ping -6 -c 1 $1 &>/dev/null
if [[ $? -eq 0 ]]; then
echo -e "[${GREEN}PASS${NC}]${GREY} Host ${NC}$1$host${GREY} is ${GREEN}up${NC}"
else
echo -e "[${RED}FAIL${NC}]${GREY} Host ${NC}$1$host${GREY} is ${RED}down${NC}"
fi
}
webtest(){
dnspingtest $1
ip4=$(curl -s -4 --connect-timeout 1 $1)
if [[ $? -eq 0 ]]; then
echo -e "[${GREEN}INFO${NC}]${GREY} Your Source IPv4 to ${NC}$1${GREY} is ${GREEN}$ip4${NC}"
else
echo -e "[${GREEN}INFO${NC}]${GREY} Your Source IPv4 to ${NC}$1${GREY} is ${RED}unknown${NC}"
fi
ip6=$(curl -s -6 --connect-timeout 1 $1)
if [[ $? -eq 0 ]]; then
echo -e "[${GREEN}INFO${NC}]${GREY} Your Source IPv6 to ${NC}$1${GREY} is ${GREEN}$ip6${NC}"
else
echo -e "[${GREEN}INFO${NC}]${GREY} Your Source IPv6 to ${NC}$1${GREY} is ${RED}unknown${NC}"
fi
}
echo -e "[${GREEN}INFO${NC}]${GREY} Scan started on $(date "+%Y-%m-%d %H:%M:%S")${NC}"
pingtest "172.20.170.192" "fe80::42:1000%dn42p1"
pingtest "172.23.235.1" "fe80::1299:e%dn42p2"
pingtest "172.20.177.34" "fe80::3%dn42i1"
pingtest "172.20.177.35" "fe80::4%dn42i2"
echo
fullpingtest "78.46.129.93" "2a01:4f8:c0c:51e::1" "mail.zotan.network"
fullpingtest "172.20.129.5" "fd42:4242:2601:ac05::1" "pingable.burble.dn42"
echo
webtest nbg1.dn42.zotan.network
webtest hel1.dn42.zotan.network
echo
webtest nbg1.zotan.dn42
webtest hel1.zotan.dn42