o/ (FEB13/19:12)

Pirelli PRGAV4202N Reboot Script


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

2 Comments


Schreibe einen Kommentar


  1. « Word: Dokument automatisiert ausdrucken und beenden
  2. Addon Updates 4.2 »

OCT1/20:46 - iTunes plays:
The Prodigy - Wild Frontier

Kontakt Impressum Martin Karer 2008-2024