Bon tuyaux Linux / *BSD -
Samedi 12 Mars 2005
<Précédent
Suivant>
Si vous avez lu, l'article sur PPPoE kernel pour OpenBSD , peut être (ou même surement) avez vous rencontré des problèmes de déconnexion ?
Et du coup, vous vous dites, "zut, j'aurai bien besoin de gérer l'auto reconnect".
Et bien, c'est tout à fait possible, et la réponse est "ifstated".
Comme son nom l'indique, il s'agit d'un daemon permettant de surveiller des interfaces réseaux.
Il vous suffit d'avoir /usr/sbin/ifstated et un /etc/ifstated.conf
Pour obtenir /usr/sbin/ifstated, à l'heure où je vous écris cette article, il vous faut récupérer les sources d'OpenBSD avec cvsup.
Ensuite un simple :
# cd /usr/src/usr.sbin/ifstated
# make
suffit, en supposant que vos sources sont dans /usr/src
Ensuite, voici un fichier ifstated.conf que j'ai du spécialement concocter pour pppoe0 :
initial = '( "`ifconfig pppoe0 | grep initial > /dev/null`" every 10 )'
session = '( "`ifconfig pppoe0 | grep session > /dev/null`" every 10 )'
state auto {
init {
run "/etc/pppoe.sh"
run "/sbin/pfctl -e -f /etc/pf.conf"
}
if $initial {
set-state connect
}
}
state connect {
init {
run "/sbin/route delete default 0.0.0.1"
run "sleep 5"
run "/sbin/ifconfig pppoe0 inet 0.0.0.0 0.0.0.1 netmask 255.255.255.255 up"
}
if $session {
set-state route
}
}
state route {
init {
run "/sbin/route add default 0.0.0.1"
}
if $initial {
set-state connect
}
}
A noter que dans cet exemple,
/etc/pppoe.sh correspond à mon script me permettant de créer l'interface pppoe0
<Précédent
Suivant>