Routingtabelle
aus Wikipedia, der freien Enzyklopädie
Bestimmte Netzwerkknoten, wie z. B. ein Router oder ein an ein Netzwerk angeschlossener Computer, verfügen über zwei Arten von „Adress-Tabellen“ – Routingtabellen (engl. routing table) und Forwardingtabellen (engl. forwarding table) – welche zur Wegfindung beim Routing und beim Forwarding eingesetzt werden.
Inhaltsverzeichnis |
[Bearbeiten] Routing und Forwarding
In vielen Darstellungen wird der subtile, aber wichtige Unterschied zwischen Routing (=Wegeberechnung) und Forwarding (=Entscheidung pro Datenpaket) unterschlagen. Er ist jedoch wichtig, weil aufgrund dieser Unterscheidung auch zwischen Forwardingtabellen (fälschlich oft als „Routingtabellen“ bezeichnet) und den (eigentlichen) Routingtabellen unterschieden werden muss.
Beim Routing kommunizieren Router untereinander mit Hilfe von Routingprotokollen, und tauschen Informationen darüber aus, welches die optimalen Wege im Netzwerk sind. Die Routingtabelle stellt hierbei sozusagen das Herz eines jeden Routingprotokolls dar; in ihr werden typischerweise Ziele, Nachbarn und Wegekosten festgehalten (variiert je nach Protokoll). Da auf einem Router mehrere Routingprotokolle gleichzeitig laufen können, und da jedem Routingprotokoll (mindestens) eine Routingtabelle zugeordnet ist, verfügen viele Router über mehrere Routingtabellen.
Empfängt ein Router ein Datenpaket, bzw. möchte ein Computer ein Datenpaket versenden, so muss er zunächst feststellen, an welchen seiner direkten Nachbarn das Paket zu versenden ist. Da es ineffizient wäre, diese Information jeweils pro Datenpaket aus den verschiedenen – sich möglicherweise widersprechenden! – Routingtabellen zusammenzusuchen, wird in vielen Systemen nach jeder Routingänderung eine „Haupt-Routingtabelle“, die sogenannte Forwardingtabelle berechnet. Mit Hilfe der Forwardingtabelle wird aus der Ziel-IP-Adresse des Pakets eine Host-IP-Adresse ermittelt. Diese entspricht der Ziel-IP-Adresse, falls sich der Zielhost im gleichen Subnetz befindet; ansonsten stellt die Host-IP-Adresse die IP-Adresse des nächsten Routers dar.
Routingtabellen sind je nach Routingprotokoll völlig verschieden aufgebaut. Forwardingtabellen weisen hingegen immer einen gleichen Aufbau auf, auch über Betriebssystemgrenzen hinweg. Sehr häufig ist, wenn die Rede von einer Routingtabelle ist, eigentlich eine Forwardingtabelle gemeint. Daher gehen die folgenden Abschnitte auf Forwardingtabellen ein.
[Bearbeiten] Entstehung
Die Einträge in der Forwardingtabelle können statisch oder dynamisch sein. Statische Einträge werden durch explizite Einträge eines Administrators erzeugt; dynamische Einträge resultieren aus Routingprotokollen. Beispiele für diese Routingprotokolle sind: BGP, OSPF, IGRP, EIGRP und RIP.
Mit Hilfe dieser Routingprotokolle ist ein Router in der Lage, Einträge aus Routingtabellen anderer Router zu „lernen“. Je nach Konfiguration des Routingprotokolls gibt zum Beispiel ein Router seinem Nachbar-Router die an ihm angeschlossenen Netze bekannt und umgekehrt. Dadurch ergeben sich neue Routen und somit neue Einträge in der Routingtabelle.
Wurde eine dieser Routen jedoch schon manuell als statischer Eintrag in die Forwardingtabelle eingetragen, wird die neu gelernte Route in der Routingtabelle des jeweiligen Protokoll zwar eingetragen – für die Forwardingtabelle wird diese neue Route jedoch verworfen, da sie eine höhere sogenannte administrative Distanz hat. Mit Hilfe der administrativen Distanz können Routen verschieden priorisiert werden, so dass im Falle widersprüchlicher Angaben klar definiert ist, welche der einander widersprechenden Routen letztendlich ihren Weg in die Forwardingtabelle findet. Eine höhere administrative Distanz bedeutet hierbei eine höhere „Unglaubwürdigkeit“. Im vorgenannten Beispiel bedeutet dies, dass eine über ein Routingprotokoll gelernte Route weniger vertrauenswürdig ist, als eine manuell eingetragene.
[Bearbeiten] Beispiel
Gegeben sei ein LAN mit drei Subnetzen und einem Zugang ins Internet. Um die Netze miteinander verbinden zu können, werden drei Router eingesetzt:
Netzadresse bzw. IP-Adresse | Subnetzmaske bzw. Netmask | Gateway bzw. Router |
Metrik (Anzahl der Hops) |
192.168.0.0 | 255.255.255.0 | 192.168.1.1 | 1 |
192.168.1.0 | 255.255.255.0 | * | 0 |
192.168.2.0 | 255.255.255.0 | * | 0 |
0.0.0.0 | 0.0.0.0 | 192.168.1.1 | 2 |
[Bearbeiten] Praxis
[Bearbeiten] Routing-Daten ermitteln
Bei Windows- und Unix-Systemen (incl. Linux) kann die Forwardingtabelle mittels des Befehls netstat -r angezeigt werden. Bei Windows funktioniert dies auch über den Befehl "route print"