Fli4l Router und DynDNS IP-Adresse aktualisieren...

Code-Stücke können hier veröffentlicht werden.
Antworten
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Dieses kleine Skript liest per telnet vom Fli4l-Router die aktuelle Internet-IP-Adresse aus und aktualisiert einen DynDNS Account mit dieser Adresse...

Code: Alles auswählen

import telnetlib, urllib

tn = telnetlib.Telnet("fli4l", 5000)    # Telnet Verbindung aufbauen
tn.write("ip pppoe\n")                    # Befehl schicken
txt = tn.read_until("\r\n",1).strip()  # Rückgabe lesen
tn.close()                                      # Telnet schließen

IP = txt.split(" ")
if len(IP)!=2:
    print "Telnet error:"
    print txt
    sys.exit()
if IP[0]!="OK":
    print "Telnet error:"
    print txt
    sys.exit()

IP = IP[1]

print "IP Adresse:", IP

URL = "http://%(u)s:%(p)s@members.dyndns.org/nic/update?system=dyndns&hostname=%(u)s.dyndns.org&myip=%(IP)s&wildcard=OFF"

URL = URL % {
    "u"     : "DynDNSUserName",
    "p"     : "DynDNSPasswort",
    "IP"    : IP
    }

print URL

response=urllib.urlopen(URL)
print response.read()
response.close()
Zuletzt geändert von jens am Montag 31. Januar 2005, 18:43, insgesamt 1-mal geändert.
Gast

jens hat geschrieben:Dieses kleine Skript liest per telnet vom Fli4l-Router die aktuelle Internet-IP-Adresse aus und aktualisiert einen DynDNS Account mit dieser Adresse...
Sollte das nicht besser der fil selber übernehmen?
http://www.fli4l.de/german/extern/opt/search.pl?pid=48

Gruß, Tom
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Klar, gibt's dafür OPT-Pakete... Ich wollt's aber interessehalber "selber" machen...
Außerdem kann man es so manuell abgleichen ;)
Antworten