Ich habe ein C-Plugin für den pppd Version 2.4.1 (kompilierbar auch für andere)geschrieben, das kurz vor dem idle-timout noch ein Script startet und danach auflegt sobald das Script beendet ist.

Sehr praktisch für Dyndns.com accounts womit man im Script die IP auf die Homepage umbiegen kann:
Code:
#!/bin/sh
/usr/sbin/ddclient -daemon 0 -syslog -ip 212.227.109.206
exit 0
(hier eine Konfigurationsdatei in /etc von ddclient vorausgesetzt)
Bei der nächsten automatischen Einwahl stellt man die Dyndns-IP per ip-up wieder auf die Eigene um, dadurch weiss man von ausserhalb sofort ob der Rechner online ist oder nicht und muss sich nicht immer mit Fehlermeldungsseiten oder langen Wartezeiten herumschlagen.

Durch das Script kann man aber viel mehr damit machen, z.B. VPN's deaktivieren (eigentlich der Grund warum ich es geschrieben habe) ohne im Code herumzuwurschteln.


Installation:

Man holt sich von seiner Distribution die Quellen vom pppd und kopiert die Dateien Makefile und hangup.c einfach in pppd-[version]/pppd/plugins und führt dort "make" und "make install" aus.

Falls jemand das schon kompilierte (".so") Plugin will kopiert er es nach /usr/lib/pppd/[version].

Nun muss man sich ein Script erstellen das ausgeführt werden soll, z.B.
touch /root/bin/hangup
chmod 774 /root/bin/hangup

Inhalt wie oben geschrieben oder nach Bedarf.


Weiter gehts mit der Konfigurationsdatei vom pppd:
Zu /etc/pppd/options hinzufügen:
plugin hangup.so
hangupscript /root/bin/hangup
Dort den Pfad richtigstellen für sein Script.

Nun noch den pppd neustarten und schon sollte in den Logs folgendes sichtbar werden (Zum Testen den Parameter "idle" herunterstellen):
Code:
May 18 19:47:29 Tux pppd[30158]: Plugin hangup.so loaded.
May 18 19:47:29 Tux pppd[30158]: plugin_init
May 18 19:47:29 Tux pppd[30158]: pppd 2.4.1 started by root, uid 0
May 18 19:47:29 Tux pppd[30158]: Using interface ppp0
und dann später wenn er auflegen will:
Code:
.....
May 18 20:08:08 Tux pppd[30476]: Starting /root/bin/hangup
May 18 20:08:28 Tux ddclient[30203]: SUCCESS:  updating bachmaier.homeip.net: good: IP address set to x.x.x.x
May 18 20:08:31 Tux pppd[30476]: Script exited, hanging up..
May 18 20:08:31 Tux pppd[30476]: Terminating connection due to lack of activity.
May 18 20:08:31 Tux pppd[30476]: Connection terminated.
May 18 20:08:31 Tux pppd[30476]: Connect time 2.2 minutes.
....
So nun viel Spass damit
(Bei Anhängen das .txt weg machen)