Voici un petit script trivial en bash qui, couplé à cron, me permet de maintenir ma connexion internet 56kbps fournie par Free.fr (en attendant l’arrivée du modem ADSL):

 1 #!/bin/bash
 2 # Script de reconnection automatique
 3 
 4 testconnect() {
 5   CONNECT=`ping -c 3 google.com | grep packets | cut -d' ' -f4`
 6 }
 7 
 8 doconnect() {
 9   logger -t reconnect Essai reconnection.
10   /etc/init.d/internet restart
11 }
12 
13 displayip() {
14   IP=`/sbin/ifconfig | grep -A 1 ppp0 | grep inet | cut -d' ' -f12 | cut -d':' -f2`
15   logger -t reconnect Adresse IP : "$IP"
16 }
17 
18 logger -t reconnect Test connection.
19 testconnect
20 if [ "$CONNECT" = "0" ];
21   then
22     logger -t reconnect Connection perdue.
23     doconnect
24     testconnect
25     if [ "$CONNECT" != "0" ];
26       then
27         logger -t reconnect Reconnection OK.
28         displayip
29       else
30         logger -t reconnect Reconnection manquee.
31     fi
32   else
33     logger -t reconnect Connection OK.
34     displayip
35 fi
36 
37 exit 0
38 # FIN