Status-Monitor über Telnet

SNMP, Telnet, Syslog, Statustools, RTools, ...

Moderatoren: TommyTC, alf, Petrus, andreastc, DSL-Hexe, nobody

Status-Monitor über Telnet

Beitragvon cito » Do 11.11.2004 - 23:35

Hier ist ein kleines Python-Programm, das ständig den Online-Status eines Vigor-Routers in einem kleinen Fenster anzeigt (getestet mit DrayTek Vigor 2600X), als Proof of Concept. Die Besonderheit gegenüber Tools wie dem VURM ist, dass der Status nicht über die Browser-Schnittstelle abgefragt wird, sondern per Telnet. Es werden also nicht jedesmal ganze HTML-Seiten über das Netzwerk geschickt, und die Abfrage ist unabhängig von dem jeweiligen Aufbau der HTML-Seiten, die von Modell zu Modell und Firmware Version unterschiedlich sein können.

Code: Alles auswählen
#
# Show Vigor Online Status
# Proof of Concept
#

router = "192.168.1.1"
passwd ="geheim"
interval = 1000

from Tkinter import *
from telnetlib import Telnet

def poll():
    tn.write("ip route status\r")
    t = tn.read_until("\r> ")
    if '\r*' in t:
        w['text'] = 'Vigor Status is Online!'
        w['fg'] = 'red'
        w['bg'] = 'yellow'
    else:
        w['text'] = 'Vigor Status is Offline'
        w['fg'] = 'green'
        w['bg'] = 'white'
    r.after(interval, poll)

r = Tk()
r.title('Vigor')
r.resizable(0,0)
r['bg'] = 'white'
w = Label(r, bg='white')
w.pack()

tn = Telnet()

tn.open(router)
tn.read_until("Password: ")
tn.write(passwd+ "\r")
tn.read_until("\r> ")

poll()

r.mainloop()

tn.write("quit\r")
tn.close()
Benutzeravatar
cito
Grünschnabel
 
Beiträge: 7
Registriert: Fr 26.03.2004 - 11:54
Wohnort: Neckargemünd

Zurück zu Tools und Fernwartung

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste

cron