Routing
Während die Kommunikation zwischen 2 Hosts eines Subnetzes direkt möglich ist, ist eine Kommunikation zwischen 2 Hosts in unterschiedlichen Subnetzen nicht ohne weiteres möglich. Um diese Kommunikation zu ermöglichen, wird ein Gerät benötigt, welcher mit den Geräten beider Subnetze kommunizieren kann, ein sogenannter Router. Welchen Weg ein Paket vom Sender zum Empfänger nimmt, entscheidet die Routingtabelle.
MAC-und IP-Adressen beim Routing
Innerhalb eines Subnetzes wird ausschließlich über MAC-Adressen mit anderen Geräten kommuniziert. Zur Auflösung von IP-Adressen in MAC-Adressen wird das Address Resolution Protocol (ARP) verwendet. Befindet sich der Empfänger in einem anderen Subnetz, wird statt der MAC-Adresse des Empfängers die MAC-Adresse vom Router des Subnetzes in das Paket eingetragen.
Routingtabellen
Ein Eintrag in einer Routingtabelle besteht aus folgenden Angaben:
Ziel | Adresse des zu erreichenden Empfängers (dies kann die Adresse eines Subnetzes oder eines Hosts sein) |
Subnetzmaske | zu jeder IP-Adresse gehört eine Subnetzmaske |
Gateway bzw. next hop | Adresse, an welche ein Paket für den Empfänger geschickt werden soll |
Schnittstelle | über welches Interface soll das Paket geschickt werden |
Metrik | der Eintrag mit der niedrigeren Metrik wird bevorzugt |
Einsehen und Ändern der Routingtabelle
Unter Windows gibt es den Befehl "route" zum Einsehen und Ändern der Routingtabelle. Dessen grundlegende Syntax sieht folgendermaßen aus:
route [<command> [<destination>] [mask <netmask>] [<gateway>] [metric <metric>]] [if <interface>]]
Der Befehl kennt folgende "commands":
gibt einen (bei Angabe eines Ziels), ansonsten alle Einträge der Routingtabelle aus | |
add | Hinzufügen einer statischen Route (Angabe des Ziels ist notwendig) |
delete | Löscht eine Route in der Routingtabelle (Angabe des Ziels ist notwendig) |
change | Ändert einen Eintrag in der Routingtabelle (Angabe des Ziels ist notwendig) |
LesenBesondere einer RoutingtabelleRouten
Routing-Tabellen werden von unten nach oben gelesen.
Default-Route
Das Ziel 0.0.0.0/0 in einer Routingtabelle steht für die Default-Route. Ist kein passender Eintrag für ein Paket vorhanden, wird die IP-Adresse des Gateways dieses Eintrags mittels ARP-Protokoll aufgelöst und als Empfänger die ermittelte MAC-Adresse in das Ethernet-Frame eingetragen. Es können mehrere Default-Routen definiert sein, um den Ausfall eines Gateways zu kompensieren.
Loopback
Das Netz 127.0.0.0/8 bzw. 127.0.0.0 mit Subnetzmaske 255.0.0.0, also die IP-Adressen 127.0.0.1 bis 127.255.255.255, ist für Loopback-Traffic reserviert. Dieser verlässt das Interface nicht, sondern wird intern an es zurückgeschickt.
Limited Broadcast
Die IP-Adresse 255.255.255.255 mit der Subnetzmaske 255.255.255.255 (CIDR: /32) ist eine spezielle IP-Adresse, welche zum Limited Broadcast gehört. Ein Paket, welches an diese IP-Adresse geschickt wird, wird an alle Geräte im Subnetz geschickt. Es verlässt das aktuelle Subnetz nicht und kann nicht geroutet werden. Einträge mit dem Ziel 255.255.255.255 und der Subnetzmaske 255.255.255.255 (CIDR: 255.255.255.255/32) sind Einträge für den Limited Broadcast, die den Traffic ins jeweilige Subnetz zurückschicken.
Multicast
Das Netz 224.0.0.0 mit der Subnetzmaske 240.0.0.0 ist für Multicast reserviert
Lesen einer Routing Tabelle anhand eines Beispiels
Eine Routing Tabelle sieht folgendermaßen aus:
Ziel + Subnetzmaske | Metrik | Next Hop | Bedeutung |
255.255.255.255/32 | 25 | 0.0.0.0 | |
255.255.255.255/32 | 25 | 0.0.0.0 | |
255.255.255.255/32 | 50 | 0.0.0.0 | |
255.255.255.255/32 | 85 | 0.0.0.0 | |
255.255.255.255/32 | 25 | 0.0.0.0 | |
255.255.255.255/32 | 25 | 0.0.0.0 | |
255.255.255.255/32 | 75 | 0.0.0.0 | |
224.0.0.0/4 | 25 | 0.0.0.0 | |
224.0.0.0/4 | 25 | 0.0.0.0 | |
224.0.0.0/4 | 50 | 0.0.0.0 | |
224.0.0.0/4 | 85 | 0.0.0.0 | |
224.0.0.0/4 | 25 | 0.0.0.0 | |
224.0.0.0/4 | 25 | 0.0.0.0 | |
224.0.0.0/4 | 75 | 0.0.0.0 | |
192.168.178.255/32 | 50 | 0.0.0.0 | |
192.168.178.60/32 | 50 | 0.0.0.0 | |
192.168.178.0/24 | 50 | 0.0.0.0 | |
192.168.132.255/32 | 25 | 0.0.0.0 | |
192.168.132.1/32 | 25 | 0.0.0.0 | |
192.168.132.0/24 | 25 | 0.0.0.0 | |
192.168.56.255/32 | 25 | 0.0.0.0 | |
192.168.56.1/32 | 25 | 0.0.0.0 | |
192.168.56.0/24 | 25 | 0.0.0.0 | |
127.255.255.255/32 | 75 | 0.0.0.0 | |
127.0.0.1/32 | 75 | 0.0.0.0 | |
127.0.0.0/8 | 75 | 0.0.0.0 | |
0.0.0.0/0 | 50 | 192.168.178.1 |