[Linux-bruxelles] Script pour ADSL

blenderman blenderman at wanadoo.be
Dim 8 Avr 10:05:57 CEST 2001


Bonjour tlm !

J'ai ecris un petit script en bash pour ceux qui ont l'adsl.
Il met a jour les services chez DYNDNS.org et vous envoie l'ip de votre PC
sur votre portable.

Biensur, ce n'est rien grand chose mais pour mon PC, cela est tres utile.

J'attend les critiques, ameliorations...etc....

-pol- (qui n'a tjs pas trouve la personne qui lui a chourave ses CD de
Debian)
-------------- section suivante --------------
#!/bin/bash

#Ce script a ete cree pour que la connection ADSL soit toujours operationnelle
#ainsi que tous les petits services qui vont avec.
#Soyez indulgent, c'est mon premier script :)
#N'hesitez pas a m'ecrire et a me donner des idees pour l'ameliorer.

#INSTALL

#Pour que le script soit parfait, il faudrait qu'il soit lance toutes
#les minutes mais je pense que toutes les 5 minutes est un bon compromis.
#Je ne decrirais pas la methode pour modifier les parametres de cron car
#ces parametres sont presques differents pour chaque distribution.



#-pol-
#blenderman at wanadoo.be



#Enregistre le pid du processus pppd dans la variable $pppd
pppd=`pidof pppd`

#Si $pppd est different de 0
if [ '$pppd' != '' ]
#alors
then
#Mettre a jour l'heure sur son systeme
echo "Connection etablie. Mise a jour de l'heure systeme..."
/usr/local/bin/ntpdate -s ntp.belnet.be > /dev/null
#sinon
else
#lancement de la connection ADSL grace au programme rp-pppoe
echo "Connection non-etablie, connection en cours..."
adsl-start
fi

#Mise en memoire de l'ip de la machine, variable $newppp0
newppp0=`/sbin/ifconfig ppp0 | grep 'inet addr' | awk '{print $2}' | sed -e 's/.*://'`
#Mise lecture du fichier ipppp0.ip, variable $oldppp0
oldppp0=`cat ipppp0.ip`

#Si la valeur de la variable $newppp0 est differente de la variable $oldppp0
if [ $newppp0 != $oldppp0 ]
#alors
then
#Envoi de l'ip sur mon GSM (grace a www.mtnsms.com).
echo "Envoi d'un sms"
/usr/local/bin/smssend mtnsms.sms mon_Email mon_Password mon_Numero "$newppp0" &
#Mise a jour des services dyndns.
echo "Mise a jour chez dyndns"
python1.5 ipcheck.py -d /root/ipcheck login pass xxx.homeip.net &
python1.5 ipcheck.py -d /root/ipcheck login pass xxx.homeip.net &
python1.5 ipcheck.py -d /root/ipcheck login pass xxx.homeip.net &
python1.5 ipcheck.py -d /root/ipcheck login pass xxx.homeip.net &
#Ecriture dans le fichier ipppp0.ip de l'ip.
echo "Ecriture dans le fichier"
/sbin/ifconfig ppp0 | grep 'inet addr' | awk '{print $2}' | sed -e 's/.*://' > ipppp0.ip &
else
echo "Tout est ok"
fi


Plus d'informations sur la liste de diffusion Linux-bruxelles