pppoa reconnection lente

Forum dédié à la distribution du même nom et que vous pourrez télécharger sur http://www.contribs.org. La nouvelle version de cette distribution se nomme SME Server

Modérateur: modos Ixus

Messagepar jsg » 02 Déc 2003 01:17

Salut a tous , <BR> <BR>J'utilisais jusqu'a present SmoothWall qui est vraiment tres simple d'install et d'utilisation mais voila , j'ai du heberger le site de ma soeur . <BR> <BR>Donc j'ai installe la SME 6.0b3 , ca c'est bien passe. Le SpeedTouch USB s'est bien installe mais le probleme est que lorsque Wanadoo me deconnecte (parfois une fois , parfois 4 fois par jour) , la reconnection mets beaucoup de temps par rapport a SmoothWall (c'etait 5 secondes maxi). Et parfois , pppd mouline dans les choux car l'ancien process n'etait pas encore mort. <BR> <BR>Ma question est : Quelqu'un aurait il une astuce pour faire que la reconnection soit quasi instantanee , comme SmoothWall ? <IMG SRC="images/smiles/icon_biggrin.gif"> <BR>Je pense que ce n'est pas une histoire de cron mais quelquechose a voir avec les events ou bien la config ppp mais , ma connaissance dans le pingouin est limitée . <BR> <BR>Merci, <BR>JSG
Avatar de l’utilisateur
jsg
Quartier Maître
Quartier Maître
 
Messages: 19
Inscrit le: 27 Mai 2003 00:00
Localisation: Melesse

Messagepar MasterSleepy » 02 Déc 2003 07:21

Salut, <BR> <BR>J'ai aussi eu ce problème, pour mon cas je pensais que cela venait de mon FAI qui n'acceptais pas de reconnection trop rapide. <BR> <BR>Voilà mon /etc/init.d/pppoa : <BR>#=================BEGIN CUT==================== <BR>#!/bin/sh <BR># Description : Starts and stops an ADSL connection (PPPoA) #/etc/rc.d/init.d/pppoa <BR> <BR> <BR>LOG=/var/log/adsl <BR> <BR>getip() <BR>{ <BR> IP=`/sbin/ifconfig ppp0 | fgrep "inet ad" | cut -f2 -d":" | cut -f1 -d" "` <BR>} <BR> <BR>killallprocess() <BR>{ <BR> for i in `pidof pppoa3` <BR> do <BR> kill -9 $i <BR> done <BR> for i in `pidof pppd` <BR> do <BR> kill -9 $i <BR> done <BR> for i in `pidof modem_run` <BR> do <BR> kill -9 $i <BR> done <BR>} <BR> <BR>start() <BR>{ <BR> echo -n "Starting pppoa (version 3) :" <BR> echo $(date)" : Loading USB modules ..." >> $LOG <BR> rmmod usb-uhci <BR> modprobe usb-uhci <BR> mount -t usbdevfs none /proc/bus/usb <BR> sleep 2 <BR> echo $(date)" : Loading microcode ..." >> $LOG <BR> /usr/local/bin/modem_run -f /usr/local/bin/mgmt.o -m <BR> echo $(date)" : Microcode loaded" >> $LOG <BR> modprobe n_hdlc <BR> route del default <BR> echo $(date)" : Running pppd" >> $LOG <BR> /usr/sbin/pppd call adsl <BR> echo $(date)" : ADSL Started" >> $LOG <BR> sleep 20 <BR> # /sbin/e-smith/expand-template /etc/rc.d/init.d/masq <BR> # service masq restart <BR> /etc/vanhees.homeip.net.conf <BR> /etc/rc.d/init.d/nut restart <BR> /etc/rc.d/init.d/snortd restart <BR>} <BR> <BR>stop() <BR>{ <BR> echo -n "Shutting down pppoa (version 3) : " <BR> echo $(date)" : Killing pppd ..." >> $LOG <BR> killproc pppd <BR> echo $(date)" : ADSL Stopped" >> $LOG <BR> <BR>} <BR> <BR>restart() <BR>{ <BR> echo $(date)" : Restarting ADSL connection ..." >> $LOG <BR> echo $(date)" : Killing pppd ..." >> $LOG <BR> killproc pppd <BR> echo $(date)" : pppd killed" >> $LOG <BR> sleep 2 <BR> echo $(date)" : Starting pppd" >> $LOG <BR> route del default <BR> /usr/sbin/pppd call adsl <BR> echo $(date)" : ADSL Started" >> $LOG <BR> sleep 20 <BR> # /sbin/e-smith/expand-template /etc/rc.d/init.d/masq <BR> # service masq restart <BR> /etc/vanhees.homeip.net.conf <BR>} <BR> <BR>hardrestart() <BR>{ <BR> echo $(date)" : HARDKilling pppd ..." >> $LOG <BR> killallprocess <BR> echo $(date)" : Wait 1 min before reconnect ..." >> $LOG <BR> sleep 30 <BR> echo $(date)" : Starting normal service ..." >> $LOG <BR> start <BR>} <BR> <BR>. /etc/rc.d/init.d/functions <BR> <BR>case "$1" in <BR> start) <BR> start <BR> ;; <BR> <BR> stop) <BR> stop <BR> ;; <BR> <BR> restart) <BR> restart <BR> ;; <BR> <BR> hardrestart) <BR> hardrestart <BR> ;; <BR> *) echo "Usage: $0 { start,stop,restart,hardrestart }" <BR>exit 1 <BR>esac <BR>exit 0 <BR>#=================END CUT==================== <BR> <BR>Comme tu peux le voir, j'ai rajouté un hardrestart. <BR>OK c'est plutôt méchant comme restart mais ça marche nickel. <BR> <BR>Voici maintenant le script de reconnection dans /usr/local/bin/reco-pppoa: <BR>#==================BEGIN CUT======================== <BR>#!/bin/sh <BR># By Baz (Merci à lui!) <BR> <BR>LOCKFILE=/var/lock/subsys/pppoa <BR> <BR>#Check IPs from ifconfig <BR>getip() <BR>{ <BR> IP=`/sbin/ifconfig ppp0 | fgrep "inet ad" | cut -f2 -d":" | cut -f1 -d" "` <BR>} <BR> <BR>getstatus() <BR>{ <BR> STAT=`cat $LOCKFILE` <BR>} <BR> <BR>#Check if ppp0 is up, if not, restart the connction <BR>getip <BR>#Pas d'ip on n'est pas connecter <BR>if ! [ "$IP" ]; then <BR> #Verification du status du process <BR> getstatus <BR> if [ "$STAT" = "FIRSTRESTART" ]; then <BR> #Le premier redemarrage n'a rien donné <BR> #on essaye plus violent <BR> /etc/rc.d/init.d/pppoa hardrestart & <BR> exit <BR> else <BR> # Premier redemarrage <BR> echo "FIRSTRESTART" > $LOCKFILE <BR> /etc/rc.d/init.d/pppoa restart & <BR> exit <BR> fi <BR>else <BR> #ON est connecter <BR> #Verification du status pour savoir si il faut mettre le fichier à blanc <BR> echo > $LOCKFILE <BR> <BR>fi <BR>#=======================END CUT======================= <BR> <BR>Voilà avec deux scripts là ça devrait plus te le faire. <BR> <BR>A+
"Microsoft fera quelque chose qui ne plantera jamais quand ils commenceront à fabriquer des clous "
http://www.vanhees.cc
Avatar de l’utilisateur
MasterSleepy
Amiral
Amiral
 
Messages: 2625
Inscrit le: 24 Juil 2002 00:00
Localisation: Belgique

Messagepar jsg » 02 Déc 2003 15:43

Merci pour tes scripts , je vais essayer ce soir. <BR> <BR>Sinon , ne penses tu pas que seulement le fait de killer pppd suffit ? <BR>Lorsque je trouve mon SME bloque , il me suffit de faire un kill de pppd , suivi d'un 'pppd call adsl' et c'est reparti. <BR> <BR>Comme ca , tu econommises le reload du microcode , tu ne refais que la nego ppp. <BR> <BR>A+, <BR>JSG
Avatar de l’utilisateur
jsg
Quartier Maître
Quartier Maître
 
Messages: 19
Inscrit le: 27 Mai 2003 00:00
Localisation: Melesse


Retour vers E-Smith / SME Server

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité

cron