Da sich mein Pirelli PRGAV4202N von der Telekom Austria gelegentlich weigert, nach einem Disconnect die Verbindung neu aufzubauen und auch ein manueller Reconnect nicht mehr möglich ist habe ich mir ein kleines Bash Script geschrieben, dass den Router automatisch per Telnet neustartet.
Das Script wird bei mir per Cronjob alle 5 Minuten ausgeführt und überprüft den Status der Einwählverbindung (ppp0) – wenn die Verbindung beim 2. Aufruf noch offline ist wird das Gerät neu gestartet.
Wichtig: Der angegebene User benötigt Administrator Rechte (s. hier oder bei neuerer Firmware hier)!
#!/bin/bash SLEEP=1 PIRELLI_STATUS=/tmp/pirelli PIRELLI_LOG=/root/pirelli.log PIRELLI_IP=192.168.0.3 PIRELLI_USER=admin PIRELLI_PASS= if [ ! -f $PIRELLI_STATUS ]; then echo "1" > $PIRELLI_STATUS fi pirelli_telnet() { ( sleep $(( 2 * $SLEEP )) echo $PIRELLI_USER sleep $SLEEP echo $PIRELLI_PASS sleep $SLEEP echo "$1" sleep $SLEEP echo "quit" ) | telnet $PIRELLI_IP 2> /dev/null } ONLINE=`pirelli_telnet "net ifconfig ppp0" | grep "state=running" | wc -l` ONLINE_BEFORE=`cat $PIRELLI_STATUS` if [ $ONLINE -eq 0 ] && [ $ONLINE_BEFORE -eq 0 ]; then NOW=`date +"%Y/%m/%d %H:%M:%S"` echo "$NOW - Rebooting..." >> $PIRELLI_LOG pirelli_telnet "system reboot" fi echo "$ONLINE" > $PIRELLI_STATUS
Interessant wäre ja das Script direkt am Pirelli Modem lauffähig zu bekommen. Habs derzeit auch auf einem internen Server. Gibts hier eine Möglichkeit das Script auf dem Pirelli zu installieren? Wo finde ich die cronjobs?
Danke,
Daran habe ich anfangs auch gedacht, ich konnte aber im OpenRG Manual nichts über Cron Jobs finden, somit hab ichs mal so belassen.
Link zu den Handbüchern: http://tpirelli.blogspot.com/2010/08/openrg-dokumentationhandbucher.html