par Michael Driscoll fenris@lightspeed.net
Tout d'abord lisez les notes à propos de ce hack dans le chapitre 2.
Pas grand chose. Une configuration PPP qui marche. Un cron
qui
marche.
keepalive.sh
crontab
(note : Cette section sera probablement mieux avec diald
,
voir la section suivante)
cron
est un daemon qui lance des programmes à intervalles
réguliers. Vous pouvez regarder votre crontab en exécutant
"crontab -e"
. Nous utiliserons crontab pour lancer le programme
shell qui gardera la connection PPP.
Lancez "crontab -e"
en tant que root et ajoutez la ligne
suivante :
*/2 * * * * /etc/ppp/keepalive.sh
Ce que cela fait est de lancer le script /etc/ppp/keepalive.sh
toutes les deux minutes. (Le # met l'entrée en commentaire pour
qu'elle ne soit pas exécutée tant que le script n'est pas prêt).
Puis mettez le script suivant appelé keepalive.sh
dans le
répertoire /etc/ppp
:
#!/bin/sh if [ -f /var/run/ppp0.pid ] ; then ping -c8 -l3 <your nameserver> 2>&1 | grep "0 packets" > /dev/null && \ { /usr/sbin/ppp-off > /dev/null 2>&1 ; sleep 2 ; /usr/sbin/pppd } else /usr/sbin/pppd fi
Maintenant tapez chmod 700 /etc/ppp/keepalive.sh
en tant que
root pour qu'il soit exécutable.
Vérifiez les chemins ! Pour pppd
et
ppp-off
insérez ce que vous utilisez pour lancer et arrêter les
connections.
Utilisez le serveur de DNS de votre FAI car s'il est en panne, votre connection à Internet est hors service de toute façon :-)
Utilisez l'adresse IP numérique de votre serveur de
DNS, sinon, ping
renvoie un message diffèrent et le grep
ne marchera pas.
Maintenant, quand vous voulez rester connecté, vous avez juste à
lancer crontab -e
et enlever le "#" pour décommenter
l'entrée... et quand vous voulez rester déconnecter, relancez
crontab -e
et remettez le "#", puis arrêtez votre
connection avec ppp-off
ou ce que vous utilisez.
diald
à la place du cronpar Divya Mahajan vmahajan@giasdl01.vsnl.net.in
L'entrée crontab que nous venons de faire peut aussi être faite (et
probablement plus élégamment) par d'autres programmes, tel
diald
. Cette section explique comment utiliser diald
pour
cette utilisation, vous devriez peut être décider d'utiliser cette
manière. J'ai laissé la section avec le crontab pour référence et
parce qu'il ne nécessite aucun package, mais vous voudrez peut-être
utiliser diald à la place.
diald
sur un site de la Slackware)
diald
, vous aurez à modifier
/etc/diald.conf
, ajoutez les lignes suivantes à la fin du
fichier :
> restrict 06:00 19:00 * * * > up (Ceci forcera à rester connecté entre 6 heures et 19 heures tous les jours. Si vous voulez rester 24h/24 et 7j/7, supprimez le restrict.) > device /dev/modem (utilisez le bon périphérique...) > dynamic > reroute > connect-timeout 120 (Modifiez cela si votre composeur prends plus ou moins de temps pour se connecter à votre FAI.) > redial-timeout 10 (Intervalle entre 2 recomposition du numéro) > defaultroute > accounting-log /var/adm/diald.log (Garde une trace de la durée de vos connections) >connect /path_to_myscript (Quand vous utilisez un script pour vous connecter mettez le sur la ligne ci dessus. Quand diald appelle ce script, les entrées et sorties standard sont redirigées vers le périphérique (le modem) donc, vérifiez que le script n'imprime pas de bêtises. J'utilise personnellement "/usr/sbin/dip mydipfile.dip >> /var/adm/dip.log 2> /var/adm/dip.err" qui enregistre les tentatives de connections. Au départ, vous exécuterez peut-être dip avec l'option "-v" pour mettre au point le fichier dip, par exemple : #dip -v mydipfile.dip. N'oubliez pas de mettre la ligne "mode ppp" après que vous soyez connectés et que vous ayez lancé les services PPP de votre FAI (utilisez dip-3.3.7n-uri). D'autre part, enregistrez tous les paramètres PPP dans /etc/ppp/options plutôt que de faire confiance à la ligne de commande. Dès que votre fichier dip est au point est prêt, il est temps de l'utiliser. Lancez diald /usr/sbin/diald, si tout s'est bien passé, il devrait commencer à se connecter à votre FAI. Quand la liaison PPP est close à cause d'un problème de modem, diald réessayera automatiquement. Dès que vous pensez que c'est au point, ajoutez /usr/sbin/diald dans votre /etc/rc.d/rc.local)
Ça y est, vous avez une connection permanente.
diald
est aussi très bon pour bien d'autres choses, allez jeter
un coup d'oeil sur la page de diald
www.dna.lth.se/~erics/diald.html pour quelques exemples.