Shell Script Mendeteksi Koneksi Internet Mati
Posted by adminJun 25
Baru saja membuka milis tanya-jawab@linux.or.id ada yang bertanya mengenai bagaimana cara mendeteksi ketika koneksi internet server mati, dan segera mengirimkan email kepada kita. Dalam kasus ini, bukan service yang down, hanya koneksi internet saja. ada jawaban berupa Shell Script buatan mas Avudz dan Mas Arief Yudhawarman di milis tersebut. beikut ini saya tuliskan saja script nya di bawah ini, jika sewaktu-waktu saya butuh
Shell Script ala Mas Avudz :
#!/bin/bash
# tambahkan ip / hostname dengan spasi jika ipnya/host nya byk
# HOSTS=”www.google.co.id www.detik.com”
HOSTS=”masukkan.nama.host”
COUNT=1
TIMEOUT=3
# email
SUBJECT=”Ping failed”
EMAILID=”avudz@mydomain.com”
for myHost in $HOSTS
do
count=$(ping -W$TIMEOUT -c$COUNT $myHost | grep ‘received’ | awk
-F’,’ ‘{ print $2 }’ | awk ‘{ print $1 }’
if [ $count -eq 0 ]; then
# 100% failed
echo “Host : $myHost is down (ping failed) at $(date)” | mail -s
“$SUBJECT” $EMAILID
fi
done
tinggal masukin ke crontab
*/10 * * * /path/to/script
Script ala Mas Arief Yudhawarman :
////////// Start of script //////////
#!/bin/bash
TIMEOUT=1
# berapa banyak request ping sampai dapat respon
ATTEMPT=5
RETRY=0
IP_WEB_SERVER=1.2.3.4
PingGW() {
# $1 : ip web server
# Use : PingGW var1
# Parameter
i=1
while [ $i -le $ATTEMPT ]
do
if (ping -s 16 -W $TIMEOUT -c 1 $1 > /dev/null 2>&1)
then
break 1
fi
i=$((i+1))
sleep 1
done
RETRY=$i
}
PingGW IP_WEB_SERVER
if [ $RETI -gt $ATTEMPT ]
then
# kirim email
echo -e “Subject: Web Server down\n\nWeb Server Down\n” | sendmail -f notifier@yahoo.com adminweb@server.com
fi
////////// End of Script ////////////
Masukin deh ke cron tab
Selamat Mencoba, semoga bermanfaat

2 comments
Comment by kampus blog
on July 31, 2010 at 4:00 pm
walahh.. tau gitu ini kemaren buat bahan ujian pemrograman shell saya mas
web ini khusus membahas shell linux kah?
kampus blog(Quote)
[Reply]
Comment by admin
on August 2, 2010 at 9:07 am
@kampus blog, Hihihihi.. cuma sdikit shaare aja mas.
gak spesifik shell linux aja mas, all about open source
dikit2 nyenggol yang lain juga sih. Heheheh
admin(Quote)
[Reply]