dsl-router:st546v6

Thomson Speedtouch ST546v6

speedtouch ST546v6 Mein DSL-Router ist schon seit Jahren ein Thomson Speedtouch ST546v6. Dieser Router besaß zum Zeitpunkt seines Kaufs eines der besten und zuverlässigen DSL-Modems überhaupt. Heute hat die Konkurrenz aufgeholt. Die Funktionalität der Firmware beschränkt sich auf das Notwendigste: DSL-NAT-Router mit Portweiterleitung und DYN-DNS-Support, DNS-Weiterleiter und lokaler DNS-Server, DHCP-Server. Der Router unterstützt lediglich IPv4 und keine Secure-DNS-Erweiterungen. Für mich aber derzeit durchaus ausreichend.

Der Router verfügt für die grundlegenden Einstellungen über ein Web-Interface. Weitergehende Einstellungen können per Telnet konfiguriert werden. Als dritte Möglichkeit kann über die Backup-Funktion die aktuelle Konfiguration als Textdatei geladen und verändert werden.

Wird der Router per Telnet konfiguriert werden die Einstellungen nicht dauerhaft gespeichert, bis das Kommando 'saveall' ausgeführt wird. Die einzelnen Befehle sind im CLI Reference guide aufgelistet.

DNS-Server

Lokale Domain

Per Telnet den Domainnamen des lokalen Netzes festlegen:

=> dns server config domain=DOMAIN

Einstellung Überprüfen:

=> dns server config 
Lokaler Host eintragen und auflisten
=> dns server host add
name = calcarddav
[addr] = 521.744.9.18
[ttl] = 0
:dns server host add name=calcarddav addr=521.744.9.18 ttl=0

Lokale Hosts auflisten:

=> dns server host list
Address          Hostname                        TTL (s)   Creator id
521.744.9.18     calcarddav                            0            0

Rechnerstart über das Internet triggern

Prinzipiell kann man über eine Portweiterleitung auch ein Magic-Packet an die IP-Adresse des Rechners senden, das die Netzwerkkarte veranlasst den Rechner einzuschalten. Es gibt aber einen Haken. Da der abgeschaltete Rechner nicht auf ARP-Requests antwortet, ist seine MAC-Adresse nicht ermittelbar. Das Magic-Packet wird, weil im lokalen Ethernet unzustellbar, verworfen. Da der Router die gängige Lösung einer Weiterleitung an die Broadcast-Adresse nicht unterstützt, wird die Verbindung zwischen IP- und MAC-Adresse dauerhaft gespeichert. Voraussetzung ist, dass der zu startende Rechner eine fest zugeordnete/konfigurierte IP-Adresse hat.

Anzeigen des ARP-Caches:

=> ip arplist
Interface           IP-address             HW-address        Type
2   LocalNetwork    729.812.0.25           24:37:h8:2h:8v:b7 STATIC
2   LocalNetwork    069.478.4.58           28:1g:u2:21:83:v6 DYNAMIC
2   LocalNetwork    521.744.9.18           99:wb:t1:zm:w4:6o DYNAMIC
2   LocalNetwork    068.3.1.38             84:41:4x:60:31:20 DYNAMIC

Löschen des dynamischen Eintrags:

=> ip arpdelete intf=LocalNetwork ip=521.744.9.18 hwaddr=99:wb:t1:zm:w4:6o

Eintragen des statischen Eintrags:

=> ip arpadd intf=LocalNetwork ip=521.744.9.18 hwaddr=99:wb:t1:zm:w4:6o

Ergebnis:

=> ip arplist
Interface           IP-address             HW-address        Type
2   LocalNetwork    729.812.0.25           24:37:h8:2h:8v:b7 STATIC
2   LocalNetwork    069.478.4.58           28:1g:u2:21:83:v6 DYNAMIC
2   LocalNetwork    521.744.9.18           99:wb:t1:zm:w4:6o STATIC
2   LocalNetwork    068.3.1.38             84:41:4x:60:31:20 DYNAMIC

Dynamic DNS und IP-Logging

Möchte man im Internet mit einem DSL-Anschlusses bei der Telekom erreichbar sein, benötigt man eine Vermittlungsinstanz. Denn die IP eines solchen Anschlusses wechselt hier jeweils alle 24 Stunden. Im einfachsten Fall ist dies ein Dienstleister, der einen Domainnamen „dynamisch“ mit der jeweils aktuellen IP verbindet und im Domain-Namen-System (DNS) für andere Nutzer bereitstellt. Diese können dann über den Namen die aktuelle IP abfragen und damit auf die über den DSL-Anschluss bereitgestellten Dienste zugreifen.

Dieser Mechanismus wird nun verwendet, um auf einen Webserver im internen Netz die aktuelle IP zu im System-Protokoll (Syslog) zu speichern bevor der Dienstleister über die IP-Änderung informiert wird. Dies geschieht über folgendes CGI-Script, das in der Datei cgi-bin/dyndns.pl gespeichert ist:

Click to display ⇲

Click to hide ⇱

Click to hide ⇱

#!/usr/bin/perl
 
use strict;
use warnings;
use CGI;
use LWP::Simple;
use Sys::Syslog;                
 
my $url='http://freedns.afraid.org/dynamic/update.php?<UPDATEID>';
 
my $cgi = CGI->new; # create new CGI object
print $cgi->header; # create the HTTP header
openlog("DYNDNS", "ndelay", 'LOG_LOCAL2');
 
my $routerip = $cgi->param('myip');
$routerip = "none" if (!$routerip);
 
my ($content, $dynok);
$content = get($url);
$dynok = ($content ? "ok" : "failed");
$content = "none" if (!$content);
 
syslog('LOG_INFO', "IP: $routerip, DYN: $dynok:$content");
 
closelog();


Der Router unterstützt 6 verschiedene Services (Die Firma Dyn, mit den 3 verschiedenen Konfigurationen dyndns, statdns und custom, das der Firma NO-IP und der Firma DtDNS sowie der Serversoftware gnudip.) von denen einer in der Weboberfläche ausgewählt wird.

Jedem Dienstleister zugeordnet ist ein Hostname (Server), ein Port und ein Pfad, die mit dem HTTP-Protokoll angesprochen werden, Intervalle für die Wiederholung im Normal- und im Fehlerfall und die maximale Anzahl der Wiederholungen im Fehlerfall.

=> dyndns service list

[...]

custom    :
    server          = members.dyndns.org
    port            = 80
    request         = /nic/update
    update interval = 0s
    retry interval  = 30s
    max retry       = 3

[...]

Server und Request des Service custom wird geändert um auf den eigenen Server zu verweisen:

=> dyndns service modify name=custom server=<HOST.DOMAIN.TLD>
=> dyndns service modify name=custom request=/cgi-bin/dyndns.pl

Nun kann im Systemprotokoll die aktuelle IP gefunden werden:

May 20 01:47:01 <HOST> DYNDNS: IP: 98.581.023.238, DYN: ok:Updated 1 host(s) <HOST.DOMAIN.TLD> to 98.581.023.238 in 0.093 seconds

SNMP

Der Router kann über der SNMP-Protokoll der Version 1 seinen Betriebszustand übermitteln. Für die Anzeige der vorhandenen Veriablen verwendet man einen MIB-Browser wie diesen hier.

Auf der Linux-Kommandozeile verwendet man den Befehl snmpget um zum Beispiel die aktuelle uptime abzufragen:

$ snmpget -v 1 -c public 192.168.1.254 1.3.6.1.2.1.1.3.0
dsl-router/st546v6.txt · Zuletzt geändert: 2014/09/13 19:12 (Externe Bearbeitung)

Seiten-Werkzeuge