Es gibt natürlich sehr viele verschiedene Router, die unterschiedliche Bezeichnungen für die Funktionen haben und deren Konfigurations-Interfaces unterschiedlich aussehen. Daher können die folgenden Screenshots nur als Orientierung dienen. Die Anleitung bezieht sich in erster Linie auf DSL bei IN-Berlin (Merkmale und Tarife hier), vieles gilt aber für Router am DSL-Anschluss generell.
Ich habe zum Spaß mehrere Router ausprobiert. Eigentlich müsste man sie als elektrisch versorgte Bug-Sammlungen bezeichnen. Jeder hat andere Macken, fehlerfrei war gar keiner. Der eine erzeugt selbst irgendwelchen Traffic, der andere verklemmt sich, wenn man ihn zusammen mit dem DSL-Modem an einen Hub hängt, und die Web-Interfaces sind grausam. Rechtschreibfehler sind da noch das harmloseste. Beliebt sind mit Java oder Javascript gesteuerte Seiten, die je nach Verbindungstyp (PPtP, PPPoE, DHCP) andere Optionen einblenden - das ist nett gedacht, nur funktioniert es nie mit allen Browsern. Ich habe Router erlebt, die gehen mit IE5 und Konqueror, aber nicht mit Netscape 4, andere mit IE5 und Netscape4, aber nicht mit Mozilla, und auch einen, der geht mit Netscape, aber nicht mit IE. Das äußert sich dann so, dass nicht die passenen Optionen erscheinen oder dass angeklickte Funktionen ignoriert werden oder dass beim Versuch, Einstellungen zu bestätigen Fehlermeldungen kommen. Auch unvollständig implementiertes PPPoE ist dabei, d.h. die Verbindung kann sich auch mal für 20 Minuten verklemmen. Bei den Teilen muss leider jeder selbst sehen, wie er mit den Bugs klarkommt, es gibt zu viele, als dass hier eine Anleitung für jeden stehen könnte.
Die Verkabelung ist in der Regel ganz einfach, die Router sind entsprechend beschriftet.
Splitter DSL-Modem PC PC PC Switch TAE ,-----------. ,-------. | | | | ,---. | TAE RJ | | | * * `-. | | # | | # # # ~ | | BBAEo--. | `----. * * | # | | # # # ~ | | | | `-------. | | | `-+-´ | | | | | 10BTo--+--*----. | | | | | `---+-o---+-´ | | | ,--o-----o---o---o------o--. | | | | `-------´ | | WAN LAN LAN LAN LAN UL | `----$---------+-´ `--@------------´ | | | | | $ `--------------------------´ | Router ISDN-NTBA oder analoges Telefon * - 1:1-Netzwerk-Kabel, Cat3 oder Cat5 $ - Telefon-Kabel mit TAE-Stecker oder zum Selbst-Anklemmen @ - 1:1-Netzwerk-Kabel oder Telefonkabel zum Selbst-Anklemmen o - Anschluss + - Kreuzung ohne Verbindung Bei einer Modem-Router-Kombination geht es direkt vom Splitter in den Router.
Dem Splitter (BBAE) liegt ein Telefon-Kabel mit TAE-Stecker an dem einen und einem RJ-11-Stecker mit versetzter Feder am anderen Ende bei. Man kann den Splitter aber auch direkt anstelle der TAE anschließen, er hat Klemmen unter der kleinen Klappe, ggf. muss man den Schalter „PPA“ (ebenfalls unter der Klappe) aktivieren, wenn man ihn anstelle der 1. TAE-Dose (diese enthält sonst den PPA, ein kleines schwarzes Plastik-Teil mit 3 Anschlüssen) anbaut. Unter der Klappe findet sich auch der Umschalter „Analog/ISDN“, den man entsprechend kontrollieren sollte.
Dem DSL-Modem (NTBBA) liegen in der Regel zwei 1:1-Netzwerk-Kabel bei, eins zum Anschluss an den Splitter (der dafür eine RJ-45-Dose hat), und eins zum Router. Für die Verbindung zum Splitter kann man wiederum normales Telefonkabel benutzen, sowohl NTBBA als auch BBAE haben Klemmen dafür.
Die Kabel vom Router zu den Computern sind normale 1:1-Netzwerk-Kabel, für die üblichen 100BaseTX sollte man natürlich Cat5 verwenden, während für die Verbindung vom NTBBA zum Router Cat3 genügt. Ein 1:1-Netzwerk-Kabel benutzt man auch, wenn man zu einem weiteren Switch oder Hub möchte, dazu nimmt man dann am Router den Uplink-Port und lässt den zugehörigen LAN-Port frei! Viele neuere Router haben auch Auto-MDI, d.h. es ist egal, ob man ein 1:1- oder ein Cross-Kabel benutzt, einen Uplink-Port braucht man damit dann nicht mehr.
Die Router bieten in der Regel an, die IP-Nummern für das lokale Netz per DHCP zu verteilen und holen sich ggf. sogar selbst eine IP-Nummer per DHCP, wenn im LAN ein DHCP-Server läuft. Wie man verfahren möchte, muss man jetzt entscheiden:
Dann gibt man im Browser z.B. „http://192.168.0.254/“ ein, und bekommt die Konfig-Seite des Routers. Das voreingestelltes Passwort (z.B. Username „admin“ Passwort „admin“) sollte man als erstes ändern, und als nächstes DHCP ausschalten, wenn man es nicht möchte (siehe http://in-berlin.de/support/in-dsl/index.html#fixip][oben). Damit der Router in das LAN passt, kann man auch seine IP-Nummer (siehe http://in-berlin.de/support/in-dsl/index.html#fixip][oben) ändern und dann z.B. o.g. Interface wieder entfernen. Am besten startet man den Router dann neu.<br /> <img alt=„“ border=„1“ src=„https://wiki.in-berlin.de/pub/Userdoc/INDSLRouter/pheenet3.png“ />
—++ 3. Einrichtung der Zugangsdaten
Über das DSL der Telekom sind verschiedene Provider zu erreichen. Da es sich bei der eigentlichen DSL-Verbindung - diese endet in der nächsten Vermittlungsstelle - jedoch nicht um eine Wählleitung handelt, muss auf andere Art und Weise eingestellt werden, wohin die Verbindung gehen soll. Das passiert durch das Anhängen einer Providerkennung an den eigentlichen Zugangsnamen. Unsere DSL-Provider heißen „city-adsl.de“ und „profi-adsl.de“. Die Telekom leitet die Verbindung zu diesen Providern weiter, und von dort geht es zum IN-Berlin, was wiederum durch eine angehängte Kennung erreicht wird. Daher ergibt sich der Name, den man bei den Zugangsdaten einstellen muss, aus dem Site- oder Benutzernamen, „#in“ für IN-Berlin und „@profi/city-adsl.de“ für den DSL-Provider. Also z.B. „beispielaccount#in@city-adsl.de“.<br /> city-adsl ist nicht überall verfügbar, aber wenn, dann meistens schneller (kürzere Ping-Zeiten).<br /> IN-Berlin-DSL arbeitet mit PPPoE, das muss man also anklicken. IN-Berlin vergibt derzeit nur feste IP-Nummern, man kann die Nummer, die wir vergeben haben, fest in der Router-Konfiguration eintragen, jedoch kann man auch darauf verzichten und „dynamisch“ oder „automatisch“ anklicken, sie wird dann automatisch übermittelt. Auch der DNS wird automatisch übermittelt, diese Felder kann man also unverändert lassen.<br /> Bei manchen Routern hat das Eintragen einer festen IP-Nummer außerdem eine andere Bedeutung (nämlich, dass kein PPPoE gemacht werden soll). Bei anderen wiederum kann man das Durchleiten aller Ports zu einem Rechner nur eintragen, wenn man eine feste Nummer eingetragen hat. Dass muss man leider selbst herausfinden. Insbesondere bei billigen Routern ist auch noch mit anderen Unzulänglichkeiten zu rechnen, z.B. lässt meiner bei Traceroute kein UDP durch, nur ICMP…<br /> „Connect on demand“ bzw. „Automatisch verbinden“ könnten je nach Router-Typ unterschiedliche Bedeutung haben. Meine Router agieren dabei so: Bei „Nein“ bzw. „Disabled“ stellen sie die Verbindung nur manuell her, und zwar auch dann, wenn die Verbindung z.B. von der Zwangstrennung der Telekom unterbrochen wurde. Damit sich der Router automatisch wieder einwählt, muss also „Ja“ bzw. „Enabled“ ausgewählt sein, und eine Haltezeit von 0 (damit er nicht von selbst auflegt). Die erste Einwahl muss u.U. trotzdem noch manuell ausgelöst werden. Wenn der Router nach einer Trennung nicht selbst wieder anwählt, muss man notfalls ein ping -i 60 oder dergleichen stehen lassen.<br /> <br /> <img alt=„“ border=„1“ src=„https://wiki.in-berlin.de/pub/Userdoc/INDSLRouter/pheenet1.png“ /><br /> <br /> <img alt=„“ border=„1“ src=„https://wiki.in-berlin.de/pub/Userdoc/INDSLRouter/devolo1.png“ /><br /> <br /> Dann sollte man in das Log des Routers schauen, ob die Verbindung zustandegekommen ist. Dort sieht man dann z.B. soetwas:<br /> <br /> <a name=„log“
><img alt="" border="1" src="https://wiki.in-berlin.de/pub/Userdoc/INDSLRouter/devolo5.png" /></a><br /> "Local IP address" sollte dann die vom IN-Berlin zugewiesene IP-Nummer sein und der Internet-Zugang sollte funktionieren.
—++ 4. Durchleiten - Beispiel ssh
IN-Berlin vergibt feste IP-Nummern. Mit einem Linux z.B. ist es so möglich, sich von unterwegs auch mit dem eigenen Rechner zu verbinden, um z.B. eine Datei abzuholen. Der Router muss dazu wissen, an welchen lokalen Rechner er eingehende Verbindungen weiterleiten soll. Das lässt sich je nach Anwendung variieren, wenn man mehrere Rechner hat. Für ssh könnte das so aussehen:<br /> <img alt=„“ border=„1“ src=„https://wiki.in-berlin.de/pub/Userdoc/INDSLRouter/devolo3.png“ /><br /> Oder so:<br /> <img alt=„“ border=„1“ src=„https://wiki.in-berlin.de/pub/Userdoc/INDSLRouter/pheenet2.png“ />
—++ 5. Mehrere IP-Nummern
Nach entsprechender Begründung vergeben wir auch mehrere IP-Nummern. Leider sind alle Router von mir damit nicht wirklich gut zurechtgekommen, ich habe mit einem 255.255.255.252er Netz probiert (also Netzadresse, 2 IP-Nummern und Broadcast-Adresse), sie haben jeweils die erste IP-Nummer für sich selbst beansprucht und dann entweder nur noch die zweite geroutet (man kann aber dann per „Virtuellem Server“ einzelne Ports wie z.B. ssh auch von der ersten IP an einen Server im LAN durchleiten) oder aber immerhin alle anderen einzeln (also incl. Netzadresse und Broadcast), so dass ich mit Linux drei Nummern nutzen konnte. Einer bot die Möglichkeit eines n:n-NAT, also mehrere externe Nummern auf je eine interne abzubilden, auch das ist brauchbar. Für den häufigsten Fall, dass die erste Nummer vom Router genommen und die anderen durchgereicht werden, habe ich die verbleibenden Nummern auf dem Router mit einzelnen Host-Routen (also Netmask 255.255.255.255) eingetragen und NAT ausgeschaltet. Die Rechner bekamen dann ein Interface mit der richtigen IP-Nummer sowie ein weiteres mit dem Transfernetz zum Router. Die Defaultroute kann man nicht mehr mit dem normalen „route“-Kommando setzen, sonder muss sowas machen: <pre>ip route add default src <richtige-nummer> via <transfernetznummerdesrouters> </pre>
Dazu muss das Paket iproute2 installiert sein. Grund ist, dass er sonst die falsche IP-Nummer für ausgehende Pakete nimmt, nämlich die des Transfernetzes. Die geht aber nicht, weil NAT ja aus ist. Erschwerend kommt hinzu, dass sich auch unter Linux einigen Programme beim Ermitteln der abgehenden IP irren (Traceroute!), und nur dann richtig laufen, wenn das Interface mit der richtigen IP das erste vom Interface ist. D.h. wenn eth0 = 192.168.xxx und eth0:1 = 212.42.xxx ist, geht es nicht, es geht aber, wenn eth0 = 212.42.xxx ist und eth0:1 = 192.168.xxx.<br /> Inwieweit sowas mit Win geht, weiß ich nicht.<br /> Eigentlich sollte das so laufen, dass der Router Bridge spielt und alle Pakete von außen nach innen durchreicht, egal welche Nummer sie haben. Für die Konfiguration bekommt er seine interne IP-Nummer (private Netze siehe http://in-berlin.de/support/in-dsl/index.html#fixip][oben), die Rechner im LAN bekommen dann die festen IP-Nummern mit der von uns zugeteilten Netz- und Broadcast-Adresse. Zusätzlich wird man das virtuelle Interface auf dem privaten Netz für den Zugriff auf den Router brauchen. Das ist mir aber nur mit einem Linux als Router gelungen, diese kleinen Hardware-DSL-Router sind dafür offenbar nicht gemacht. Immerhin habe ich es mit allen bis auf einen geschafft, mehrere IP-Nummern irgendwie hindurch zu bekommen.
—++ 6. gezielte Trennung/Verbindung/Tricks —++++ gezielte Trennung/Verbindung
Es gibt Router, die werfen bei der Zwangstrennung bestehende NAT- Sessions (und somit sowohl aus- als auch eingehende ssh-Verbindungen usw.) weg. Das ist zwar nicht ganz unsinnig (denn bei den meisten Provideren ändert sich dasnn ja auch die IP-Nummer), bei der gleichen IP-Nummer aber wie bei uns nicht sinnvoll. Wer solch Gerät hat, sollte der Trennung zuvorkommen, und das zu einer Uhrzeit, die ihm genehm ist, also z.B. mitten in der Nacht (oder bei Studenden am frühen Nachmittag:-).
Um das zu erreichen, muss man die entsprechende Konfig- Seite des Routers aufrufen - das geht aber wegen Javascript usw. normalerweise nicht automatisch. Man nehme sich also die Seite, schaue in den Quelltext, was da passiert, und baue sich eine Kommandozeile für Programme wie wget (die man dann aus dem Cron heraus rufen kann). Auf der Seite steht z.B. hier: bla bla bla <form method=„POST“ action=„status.cgi“> bla bla bla PPPoE Connected <input type=submit name=„connect“ value=„Connect“>&nbsp; <input type=submit name=„disconnect“ value=„Disconnect“> bla bla bla </form> bla bla bla Daraus kann man machen (User/Passwort/IP des Routers einsetzen): wget http://user:password@192.168.x.x/status.cgi?disconnect=disconnect Das ist dann zwar ein GET-Request statt POST, aber bei meinem Router geht das (sicher nicht bei allen, und bei einigen könnte die Stelle tief versteckt im Javascript liegen).<br /> Analog geht es hier auch mit connect=connect.<br /> Es gibt Router (z.B. von AVM), da kann man eine Zeit einstellen, zu der der Router einmal trennen soll. —++++ Versteckte Funktionen
Manche Router haben interessante Funktionen, z.B. SNMP, Telnet-Zugang oder ähnliches, ohne dass das in der Anleitung steht. Ein Portscanner-Durchlauf kann ganz interessant sein. Kann er z.B. SNMP (Edimax), kann man sich ein MRTG installieren und schöne Grafiken vom Traffic sehen.
%META:FORM{name=„DocumentationForm“}% %META:FIELD{name=„Title“ attributes=„M“ title=„Title“ value=„IN-DSL mit Router“}% %META:FIELD{name=„Type“ attributes=„M“ title=„Type“ value=„HowTo“}% %META:FIELD{name=„Classification“ attributes=„“ title=„Classification“ value=„Dialup“}% %META:FIELD{name=„QuickFind“ attributes=„M“ title=„QuickFind“ value=„no“}% %META:FIELD{name=„Keywords“ attributes=„“ title=„Keywords“ value=„IN-DSL Router “}% %META:FILEATTACHMENT{name=„devolo1.png“ attachment=„devolo1.png“ attr=„“ comment=„“ date=„1320399012“ path=„devolo1.png“ size=„12768“ user=„TheLazyChiChewingPandaLovesPlayingChessWithChewbacca“ version=„1“}% %META:FILEATTACHMENT{name=„devolo3.png“ attachment=„devolo3.png“ attr=„“ comment=„“ date=„1320399038“ path=„devolo3.png“ size=„10417“ user=„TheLazyChiChewingPandaLovesPlayingChessWithChewbacca“ version=„1“}% %META:FILEATTACHMENT{name=„devolo5.png“ attachment=„devolo5.png“ attr=„“ comment=„“ date=„1320399051“ path=„devolo5.png“ size=„6204“ user=„TheLazyChiChewingPandaLovesPlayingChessWithChewbacca“ version=„1“}% %META:FILEATTACHMENT{name=„ieprox.png“ attachment=„ieprox.png“ attr=„“ comment=„“ date=„1320399061“ path=„ieprox.png“ size=„12479“ user=„TheLazyChiChewingPandaLovesPlayingChessWithChewbacca“ version=„1“}% %META:FILEATTACHMENT{name=„moz1.png“ attachment=„moz1.png“ attr=„“ comment=„“ date=„1320399070“ path=„moz1.png“ size=„24865“ user=„TheLazyChiChewingPandaLovesPlayingChessWithChewbacca“ version=„1“}% %META:FILEATTACHMENT{name=„pheenet1.png“ attachment=„pheenet1.png“ attr=„“ comment=„“ date=„1320399083“ path=„pheenet1.png“ size=„68529“ user=„TheLazyChiChewingPandaLovesPlayingChessWithChewbacca“ version=„1“}% %META:FILEATTACHMENT{name=„pheenet2.png“ attachment=„pheenet2.png“ attr=„“ comment=„“ date=„1320399097“ path=„pheenet2.png“ size=„71974“ user=„TheLazyChiChewingPandaLovesPlayingChessWithChewbacca“ version=„1“}% %META:FILEATTACHMENT{name=„pheenet3.png“ attachment=„pheenet3.png“ attr=„“ comment=„“ date=„1320399107“ path=„pheenet3.png“ size=„63045“ user=„TheLazyChiChewingPandaLovesPlayingChessWithChewbacca“ version=„1“}%