Search Exchange

Search All Sites

Nagios Live Webinars

Let our experts show you how Nagios can help your organization.

Contact Us

Phone: 1-888-NAGIOS-1
Email: sales@nagios.com

Login

Remember Me

Directory Tree

Check Speedport

Rating
2 votes
Favoured:
0
Current Version
0.3
Last Release Date
2010-11-17
Compatible With
  • Nagios 2.x
  • Nagios 3.x
License
GPL
Hits
99764
Network Monitoring Software - Download Nagios XI
Log Management Software - Nagios Log Server - Download
Netflow Analysis Software - Nagios Network Analyzer - Download
This Bash-Script is able to check the (V)DSL-Connection of a Speedport Router. It's tested with a Speedport W722V but it should work with any Speedport Router that owns the "Online Control" interface.
IMHO is there no Speedport that Supports UPnP. So it's only possible to check the Connection-State by using the old "Online-Control" interface. I'm not sure, but I think all modern Speedport are supporting this old interface.

So I wrote this little Script to check the State by using the OC-Interface. Maybe it's a littlebit helpful for someone.

If somebody has tested this Script with other Speedport Models, please let me know the result.


Tested with:
- Speedport W722V
- Speedport W700V (Thanks to awestpha - 2013-02-23)
- Speedport W503V Typ C (Thanks to Jan! - 2012-01-07)
Reviews (2)
byawestpha, February 23, 2013
1 of 1 people found this review helpful
works also with speedport w700v
Owner's reply

Thank you!

bycavallo71, December 25, 2011
Hallo
Ich hab das Skript unter Ubuntu 11.10 mit dem Speedport W 721 V getestet, jedoch steigt das Skript bei mir schon mal an 2 Stellen aus.

user@pc:~/Arbeitsfläche/Skripte$ bash check_speedport.sh 192.168.0.1
check_speedport.sh: Zeile 13: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 14: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 18: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 20: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 21: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 28: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 38: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 39: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 43: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 44: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 46: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 47: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 48: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 50: Syntaxfehler beim unerwarteten Wort `$'in\r''
'heck_speedport-orginal.sh: Zeile 50: `case ${?} in

entferne ich den folgenden Block im Skript

# Prüft ob curl sauber gearbeitet hat.
case ${?} in
2) # Failed to initialize.
${Echo} "Failed to initialize";
exit 2;
;;

6) # Couldn't resolve host. The given remote host was not resolved.
${Echo} "Couldn't resolve host. The given remote host was not resolved";
exit 3;
;;

7) # Failed to connect to host.
${Echo} "Failed to connect to host";
exit 2;
;;

35) # SSL connect error. The SSL handshaking failed.
${Echo} "SSL connect error. The SSL handshaking failed";
exit 3;
;;

43) # Internal error. A function was called with a bad parameter.
${Echo} "Internal error. A function was called with a bad parameter";
exit 3;
;;
esac

Dann bekomme ich folgende Fehlermeldung

user@pc:~/Arbeitsfläche/Skripte$ sudo bash check_speedport.sh 192.168.0.1
check_speedport.sh: Zeile 13: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 14: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 18: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 20: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 21: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 28: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 38: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 39: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 43: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 44: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 46: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 47: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 48: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 49: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 50: $'\r': Kommando nicht gefunden.
check_speedport.sh: Zeile 51: Syntaxfehler beim unerwarteten Wort `$'do\r''
'heck_speedport-orginal.sh: Zeile 51: `for Var in ${OcStat}; do

Wenn ich diesen Befehl in der Konsole absetze erhalte ich folgendes Ergebnis

user@pc:~$ curl -k -q http://192.168.0.1/hcti_status_ocontrol.htm


HTML-Konfiguration





Diese Seite ist f?r das Zusatzprogramm OnlineControl notwendig!




Bin leider noch kein Programmierer, aber hab etwas Grundkenntnise im Verständnis.

Vielleicht bekomm ich hier von jemand Hilfe
Owner's reply

Hi,

starte das Script mal bitte nicht mit "bash check_speedport.sh 192.168.0.1" sondern wechsel in das Verzeichnis des Scriptes und führe es folgend aus. "./check_speedport.sh 192.168.0.1" (ohne die "" versteht sich...)

Ich bin mir nicht sicher was bei dem aufruf mit bash genau passiert aber das System scheint Probleme mit dem case und der Schleife zu haben. Das ist jedoch fester bestandteil der Bash weshalb ich das Problem derzeit nicht nachvollziehen kann.

Ansonsten prüfe mal bitte noch ob die Pfade zu den Tools stimmen.


MfG Matthias aka MaverrickTM