Script to check connection (and restart network if down)
Linux - NetworkingThis forum is for any issue related to networks or networking.
Routing, network cards, OSI, etc. Anything is fair game.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Introduction to Linux - A Hands on Guide
This guide was created as an overview of the Linux Operating System, geared toward new users as an exploration tour and getting started guide, with exercises at the end of each chapter.
For more advanced trainees it can be a desktop reference, and a collection of the base knowledge needed to proceed with system and network administration. This book contains many real life examples derived from the author's experience as a Linux system and network administrator, trainer and consultant. They hope these examples will help you to get a better understanding of the Linux system and that you feel encouraged to try out things on your own.
Click Here to receive this Complete Guide absolutely free.
the network will get restarted even if it's up. Removing the "!" seems to have the desired effect, but it just looks incorrect. What is going on here? Possibly our versions of the "ping" program have different implementations?
Last edited by VibeOfOurTribe; 12-09-2004 at 01:57 PM.
Yes, it seems there is something slightly wrong with the script.
My network connection usually dies about once every three weeks. I've been running this script nonstop for about five days, and it has restarted my network at least 15 times. So it is giving some false positives for the network being down.
Hande: If it's not too late, here's something I just wrote for my own use. It should be simple to modify such that it tests packet loss for multiple IP's and acts based on the average. Run using the crontab examples posted previously.
# Script to monitor and restart wireless access point when needed
maxPloss=10 #Maximum percent packet loss before a restart
# Add any commands need to get network back up and running
#only needed if your running a wireless ap
# First make sure we can resolve google, otherwise 'ping -w' would hang
if ! $(host -W5 www.google.com > /dev/null 2>&1); then
#Make a note in syslog
logger "wap_check: Network connection is down, restarting network ..."
# Initialize to a value that would force a restart
# (just in case ping gives an error and ploss doesn't get set)
# now ping google for 10 seconds and count packet loss
ploss=$(ping -q -w10 www.google.com | grep -o "[0-9]*%" | tr -d %) > /dev/null 2>&1
if [ "$ploss" -gt "$maxPloss" ]; then
logger "Packet loss ($ploss%) exceeded $maxPloss, restarting network ..."
the simplest way to do what you want would be to install
wicd and set it to aoutmaticly reconnect BUT you need to go back to the out of the box net work settings for the network
interface you use to connect to the inter net
it will work for eather net connections
I use it for wifi it's so fast at reconneccting that videos
on youtube don't even buffer befor the connection is back up