Das Internet: Verbindung mehrerer lokaler Netzwerke
Geschichte des Internet
Gegen Ende der 50er Jahre erhielt die ARPA (Advanced Research Projects Agency), eine Abteilung des US-amerikanischen Verteidigungsministeriums, den Auftrag, einen Ersatz für die bis dahin verwendete Art der Datenübertragung über fest vorgegebene Leitungen zu entwickeln. Diese leitungsorientierte Datenübertragung war störanfällig und nicht genügend zuverlässig. Die ARPA entwickelte daraufhin eine "paketorientierte" Form der Datenübertragung. Dabei wird die zu sendende Information in kleine Datenpakete aufgeteilt, die unabhängig voneinander zum Zielort übermittelt werden. Am Zielort werden diese Datenpakete wieder zur Information zusammengesetzt. Der größte Unterschied zur zuvor verwendeten Technologie war jedoch, dass für den Weg eines einzelnen Datenpakets nun nicht mehr fest vorgeschrieben war, über welche der möglichen Zwischenstationen es sein Ziel erreichen sollte! Die folgende Grafik zeigt als Beispiel drei verschiedene Wege, auf denen ein Datenpaket von A nach B gelangen könnte:
Wenn ein Datenpaket den Weg links gewählt hat, dann muss das nächste Paket nicht den gleichen Weg wählen. Mit anderen Worten: Die Gesamtinformation ist möglicherweise auf völlig verschiedenen Wegen ans Ziel gelangt!
Der Hintergrund dieses Projektes war eigentlich militärischer Natur: man wollte ein Informationsnetz haben, das ohne zentrale Steuerung auskommt und auch dann noch funktioniert, wenn Teile der Verbindungsleitungen oder einzelne Knotenrechner zerstört sind. Damit dies erreicht wird, muss sich ein Paket quasi seinen Weg durchs Netz "selber suchen", und zwar jeweils in Abhängigkeit davon, welche Verbindungen gerade verfügbar sind. Ein Nebeneffekt ist, dass man auf diese Art und Weise auch gleich noch eine gleichmäßige Lastverteilung auf die einzelnen Verbindungskanäle erreichen kann, indem man bei Stau auf der einen Leitung nachfolgende Pakete eben auf eine Umleitung schickt.
1969 startete dieses ARPA-Net als erstes paketorientiertes Netzwerk den Testbetrieb. Zu Beginn waren vier Universitäts- und Forschungsstandorte in den USA über Telefonleitungen miteinander verbunden. Es handelte sich dabei um die Universität von Kalifornien in Los Angeles (UCLA), die Universität von Kalifornien in Santa Barbara (UCSB), die Universität in Utah und das Stanford Research Institute.
Im Laufe der folgenden Jahre entstanden neben dem ARPAnet weitere paketorientierte Netzwerke. Diese unterschiedlichen heterogenen Netzwerke wurden auf der Grundlage eines weiteren Forschungsauftrags Mitte der 70er Jahre miteinander verbunden. Das nun entstandene "Netz zwischen den Netzen" erhielt den Namen Internet.
Eigens für das Internet wurde ein neues Übertragungsprotokoll, das TCP/IP (Transport Control Protocol / Internet Protocol), entwickelt. Mit der Umstellung aller Rechner im ARPAnet auf TCP/IP Ende der 70er Jahre wurde dieses zum Standardübertragungsprotokoll erklärt. In dieser Zeit folgte die Aufteilung des sehr stark angewachsenen Netzes in einen rein militärischen (MilNet) und einen mehr forschungsorientierten Teil (ARPAnet), aus dem das jetzt bekannte Internet hervorging. Ende der 80er Jahre entstand das Hochgeschwindigkeitsnetz NSFnet (National Science Foundation - eine Behörde der US-Regierung), das sowohl die Wissenschaftszentren der USA als auch die Supercomputer miteinander verband. 1985 wurde der erste kommerzielle Internet-Knoten in Deutschland mit dem Internet verbunden.
Starken Auftrieb erhielt das Internet seit Anfang der 1990er durch das World Wide Web, kurz WWW. Es wurde im CERN (Genf) von Tim Berners-Lee entwickelt. Nun konnten mit Webbrowsern auch Laien auf das Netz zugreifen, was mit der wachsenden Zahl von Nutzern zu vielen kommerziellen Angeboten im Netz führte.
Obwohl das Internet bereits 40 Jahre alt ist, ist es erst in den letzten 20 Jahren in das Bewusstsein der Öffentlichkeit gerückt. Von ca. 1 Mio. im Jahr 1993 ist die Zahl der registrierten Domains auf 1,1 Mrd. im Jahr 2016 gestiegen1. Die Anzahl der existierenden Web-Sites spiegelt das Interesse der Bevölkerung an diesem Medium sehr gut wieder. Vor 1996 war das Internet praktisch unbekannt.
Um die riesigen Datenmengen zu bewältigen, baut man einige wenige „Daten-Autobahnen“ (Glasfaser). Heute liegen die meisten europäischen Routen im Dreieck zwischen den Internet-Hauptstätten London-Paris-Frankfurt. Dies macht es allerdings leicht möglich, einen großen Teil des Datenverkehrs im Internet durch Überwachung dieser zentralen Knoten zu kontrollieren.
Router – die Verbindung zwischen den Netzen
Sollen mehrere lokale Netzwerke miteinander verbunden werden, benötigt man sogenannte Router. Diese sind im Prinzip Computer mit zwei oder mehr Netzwerkkarten. Jede Netzwerkkarte gehört zu einem der Netzwerke und muss dementsprechend konfiguriert sein. Der Router hat also mehrere IP-Adressen.
Router darf man nicht mit Switches verwechseln, die die Daten innerhalb eines Netzwerks weiterreichen und dafür auch mehrere Netzwerkanschlüsse bereitstellen.
Der gesamte Datenverkehr, der in andere Netze geht, muss über den Router gehen. Der Router verfügt über eine Tabelle (routing table), in der er nachschaut, wohin er die an ihn gerichteten Daten weiter senden muss.
Diese weitere Zustellung kann über eine Vielzahl von Routern gehen. Jeder Schritt von einem Router zum nächsten wird als „Hop“ bezeichnet. Man kann diesen Weg der Daten durch das Internet über verschiedene Router auch nachverfolgen:
Trace Route
Mit diesem Tool bekommt man Informationen über die Netzwerkverbindung zwischen der lokalen Station und der entfernten Station. Mit Trace Route wird eine Routenverfolgung vorgenommen und sichtbar gemacht.
Trace Route steht auf der Kommandozeile/Konsole als Befehl traceroute
unter Unix/Linux und tracert
unter Windows zu Verfügung. Die entfernte Station kann unter der IP-Adresse oder dem Domain-Namen angesprochen werden.
Routenverfolgung zu nic1.belwue.de [129.143.2.9] über maximal 30 Abschnitte:
1 63 ms 46 ms 63 ms 217.5.98.84
2 46 ms 63 ms 47 ms 217.237.154.110
3 63 ms 62 ms 63 ms ulm-ea1.ULM.DE.net.DTAG.DE [62.154.58.154]
4 62 ms 63 ms 47 ms ulm-eb1.ULM.DE.net.DTAG.DE [62.154.58.106]
5 63 ms 62 ms 63 ms Ulm2.BelWue.de [129.143.87.17]
6 62 ms 47 ms 62 ms Ulm1.BelWue.de [129.143.87.37]
7 63 ms 62 ms 63 ms Stuttgart1.BelWue.DE [129.143.1.17]
8 62 ms 63 ms 62 ms Stuttgart5.BelWue.DE [129.143.98.38]
9 62 ms 63 ms 62 ms nic1.belwue.de [129.143.2.9]
Ablaufverfolgung beendet.
Man erhält also Informationen über die Qualität der Leitungen (Antwortzeiten in Millisekunden) und über die IP-Adressen der Router. Da die Router oft auch mit Adressangaben registriert sind, kann auch der Weg auf einer Weltkarte verfolgt werden. Dazu gibt es Tools wie VisualRoute2.
Die Route, die die Datenpakete nehmen, kann sich dabei häufig ändern, da die Router die günstigste Route ständig neu berechnen. Dadurch werden „Staus“ vermieden oder bei Routerausfällen andere Wege gewählt.
Möchte man mehrere Rechner über einen einzelnen Internet-Zugang auf das Internet zugreifen lassen, taucht früher oder später die Frage auf, mit welchen IP-Adressen diese Rechner ausgestattet werden sollen, da jeder Rechner im Internet eine IP-Adresse besitzen muss. Wenn also ein Unternehmen seine 200 Arbeitsplatzrechner mit Internet-Zugängen ausstatten möchte, wären hierfür mindestens 200 IP-Adressen notwendig.
Anfang der achtziger Jahre war dieser hohe Bedarf an IP-Adressen noch nicht vorstellbar. Universitäten und Institutionen, die am Internet angeschlossen waren, hatten meist nur wenige Großrechner am Netz, an denen die Anwender mit direkten Terminalverbindungen arbeiteten. Deshalb benötigte man nur für jeden Großrechner eine IP-Adresse.
Etwa zehn Jahre später, in den Anfängen des Internet-Booms, machten sich die ersten Experten Gedanken darüber, wie die bereits zu dem Zeitpunkt stark gestiegene Nachfrage nach IP-Adressen in der Zukunft aussehen würde. Selbst nach optimistischen Hochrechnungen würde der gesamte IP-Adressraum in der damaligen Entwicklung in wenigen Jahren aufgebraucht sein.
Die Idee, die einige Experten unabhängig voneinander hatten, wurde im Mai 1994 durch sogenannte Network Address Translator realisiert. Dieser Adressübersetzer sollte als zusätzliches Modul in einem Internet-Router integriert werden. Im Gegensatz zu einem lokalen Netz, das hinter einem normalen Router an das Internet angebunden wird, kann ein Netz, das hinter einem NAT-fähigen Router steht, mit einem beliebigen IP-Adressbereich konfiguriert sein, da mit NAT eine strikte Trennung zwischen dem Internet und dem lokalen Netzwerk erfolgt.
Initiiert ein Rechner im lokalen Netzwerk eine Verbindung zu einem Rechner im Internet, so werden die Datenpakete mit der Anfrage zunächst zum Router des Netzwerks übertragen. Dieser Router nimmt die Adressübersetzung der Absenderadresse vor, tauscht also die Adresse des internen Rechners gegen seine eigene im Internet gültige IP-Adresse aus und überträgt dann die Anfrage in das Internet. Der Router stellt sich somit gegenüber dem Internet als Absender der Anfrage dar.
Gleichzeitig wird jede Adressübersetzung in einer NAT-Übersetzungstabelle gespeichert, um die Antwort aus dem Internet verarbeiten zu können. Jede Anfrage ins Internet bekommt dabei einen speziellen Port (z.B. in der Tabelle oben: z.B. 9761) zugewiesen. Daher kann der NAT-Router bei der Antwort aus dem Internet anhand der Portnummer wissen, welchem lokalen Rechner er die Daten weiterreichen muss. Er tauscht die Empfängeradresse der Datenpakete gegen die IP-Adresse des lokalen Rechners aus und gibt die Daten dann ins lokale Netzwerk weiter. Der lokale Rechner erhält diese Datenpakete und kann sie verarbeiten.
NAT ist vor allem für Szenarien gedacht, in denen ein einzelner Internet-Zugang, der nur eine einzelne öffentliche IP-Adresse zur Verfügung stellt, mit mehreren Rechnern gleichzeitig genutzt werden soll. Dies ist in Heimnetzen oder auch in den meisten Schulnetzen der Fall. Dazu ist NAT in den Router implementiert, der den Datenaustausch zum Internet regelt. Wenn zuhause ein DSL-Anschluss eingerichtet, so können alle Familienmitglieder gleichzeitig über den Router ins Internet gehen. Nicht viel anders ist es auch an der Schule. Auch hier sorgt ein Router dafür, dass alle Clients durch nur eine IP im Internet repräsentiert werden.
Theoretisch können so viele Anfragen von einem NAT-Router gleichzeitig ins Internet weitergeleitet werden wie es Portnummern gibt. Diese sind auf 16-Bit beschränkt. Man hat also ca. 65000 Verbindungen. Es können auf diese Weise also mehrere tausend Rechner mit einer einzigen IP-Adresse ins Internet gehen. Dies spart sehr viele IP-Adresse ein.
Private IP-Adressen für private Netzwerke
Ein Problem ergab sich bei der Verwendung von IP-Adressen für ein internes, durch NAT vom Internet getrennten Netzwerks: Welche IP-Adressen sollte man für so ein Netzwerk verwenden?
Anfänglich wurde dieses Problem quasi nach dem Lotterieprinzip gelöst: Der Administrator des betroffenen Netzwerks wählte einfach einen IP-Adressraum nach Gutdünken aus. Dies funktionierte normalerweise auch einwandfrei, erzeugte unter Umständen jedoch ein kleines Problem: Was tun, wenn jemand aus diesem lokalen Netzwerk einen Rechner im Internet erreichen muss, der im Internet eine IP-Adresse besitzt, die im lokalen Netzwerk ebenfalls verwendet wird? Sie ahnen es, dieser Rechner konnte so niemals erreicht werden, da die Netzwerkeinstellungen vorgaben, dass sich die die gesuchte IP-Adresse im lokalen Netzwerk angeblich befinden musste.
Deshalb wurden so genannte "private IP-Adressen" eingeführt, die genau diesen Umstand beheben sollten. Private IP-Adressen sind spezielle Adressbereiche im IP-Adressraum, die speziell für die Nutzung in lokalen Netzwerken vorgesehen sind und im öffentlichen Internet nicht verwendet oder geroutet werden.
Ein solcher reservierter Adressbereich, der sehr häufig für lokale Netzwerke verwendet wird, liegt zwischen 192.168.0.0
und 192.168.255.255
. (Oft auch zwischen 10.1.0.0
und 10.1.255.255
, wie oft in Schulnetzen).
1Quelle: Internet Domain Survey, https://www.isc.org/network/survey/ (abgerufen: Jan. 2017)
2Siehe Seite „Visual Traceroute“. URL: http://www.dnstools.ch/visual-traceroute.html (abgerufen: Okt. 2017)
Hintergrund: Kommunikation in Rechnernetzen: Herunterladen [odt][181 KB]
Hintergrund: Kommunikation in Rechnernetzen: Herunterladen [pdf][358 KB]
Weiter zu Internetdienste