Routing mit TCP/IP
IP Routing wird eingesetzt wenn man verschiedene Subnets, auch ohne
direkte physikalische Verbindung(auf dem selben Kabel, HUB),
mit einander verbinden möchte.
Standart Gateway:
Die einfachste Art des routings ist das Routen über ein standart Gateway. Unter dem
standart Gateway versteht man einen Router, von dem man ausgeht,
dass ihm allen Routen zu anderen Netzen bekannt sind. Deswegen werden zu dem standart Gateway
alle Pakete geschickt zu denen sonst keine Verbindung(Route) bekannt ist. Das standart
Gateway benötigt also eine Adresse aus dem Netz aus dem die Rechner sind die es benutzen oder
es müssen Routen definiert sein wie man das standart Gateway erreicht.
Um das Routing im Internet etwas zu verstehen sollte man also nur daran denken, dass jeder
Provider also einen standart Gateway Router hat, der wiederum das nächste standart
Gateway kennt und die Pakte die es nicht direkt zustellen kann an dieses weiter gibt.
Subnet Routing:
Wie zu eingang bereits gesagt, verbindet man durch Routing verschiedene
Subnets. Nun das routen über ein standart Gateway verbindet
ja eigentlich einen mit jedem Netz könnte man denken. Das muss aber nicht umbedingt so
sein, denn dem Gateway müssen nicht unbedingt wirklich alle Netze bekannt sein. Einem
Gateway aus dem Internet sind z.B. nicht die privaten Subnets bekannt und in grösseren
Netzen kann es verschiedene Gateways geben mit verschiedenen Aufgaben. So ist es z.B.
denkbar das es ein Gateway fürs Internet gibt und ein anderes für verschiedene
Netzabschnitte.
Jedem Gateway ist deshalb in der Regel mindestens ein Subnet bekannt und ein Gateway als
standart Gateway oder genau definiert nur für bestimmte Netze. Einem Gateway können
jedoch auch nur mehrere Netze bekannt sein aber kein Gateway zu anderen Netzen, dies bleibt
immer demjenigen überlassen der die Netze verwaltet. Einem Gateway im Internet wird
jedoch immer mindestens ein standart Gateway bekannt sein denn die gesamte Anzahl der Netze
im Internet wird niemand einzeln auf einem Router eintragen.
An dieser Stelle möchte ich gleich noch darauf hinweisen, dass das eintragen mehrer
standart Gateways nur Sinn macht, wenn entweder jedes der Gateway permanent verfügbar
sind und die gewünschten Ziele erreichen können, oder die Gateways über
Router Protokolle überprüfen können welche der Gateways tatsächlich zur
Verfügung stehen.
Definieren von Routen:
Ein Gateway besitzt in den meisten fällen mehrere physikalische und/oder virtuelle
Netzwerkkarten in verschiedenen Subnets. Dadurch wurden die ersten Routen schon ganz
einfach definiert, da jede Netzwerkkarte beim Start die Route für ihr eigenes Subnet
mitbringt. Als Beispiel ein Gateway hat folgende Netzwerkkarten:
Netzwerkdevice0: 10.1.1.1/255.255.255.0
Netzwerkdevice1: 10.1.2.1/255.255.255.0
So nun weiss es also ein Paket das es aus von z.b. einem Rechner mit der Adresse 10.1.1.67
bekommt und zu einem Rechner mit der Adresse sagen wir 10.1.2.143 soll, dass es diese Paket
auf der Netzwerkkarte Netzwerkdevice0 empfängt und an Netzwerkdevice1 übergibt und
der Rückweg ist umgekehrt auch definiert. Was muss jetzt aber nun z.b auf dem
Rechner 10.1.1.67 definiert sein damit dies funktioneirt?
Es könnte jetzt als standart Gateway 10.1.1.1 eingetragen sein und deswegen bekommt
dieses Gateway sowieso alle Pakte die nicht anders definiert worden sind. Oder es könnte
in der lokalen Routing Tabelle ein Eintrag existieren der festlegt, das Netzwerk(Subnet)
10.1.2.0/255.255.255.0 wird über das Gateway 10.1.1.1 erreicht, dann werden alle
Pakete mit dem Ziel 10.1.2.??? an das Gateway 10.1.1.1 geschickt. Umgekehrt muss natürlich
auf dem Rechner 10.1.2.143 genauso entweder ein standart Gateway oder ein Eintrag 10.1.1.0/255.255.255.0
nach 10.1.2.1 vorhanden sein, weil sonst könnte er ja nicht auf das Paket antworten wenn
er nicht weiss wie er den Absender erreichen soll.
Machen wir die Sache etwas schwerer und fügen dem Netz noch ein Gateway mit folgenden
Netzwerkkarten hinzu:
Netzwerkdevice0: 10.1.2.2/255.255.255.0
Netzwerkdevice1: 10.1.3.1/255.255.255.0
Nun wieder zu unserem Rechner 10.1.1.67. Was muss jetzt definiert werden, damit er einen Rechner
10.1.3.15 erreichen kann? So wenn jetzt 10.1.1.1 als standart Gateway definiert wurde reicht
es wenn man dem Gateway noch die Route 10.1.3.0/24 über 10.1.2.2 einträgt. Wenn
jetzt aber das 10.1.2.0 Netz direkt eingetragen wurde, kann man entweder auf dem Rechner
eintragen 10.1.3.0/24 über 10.1.1.1 und trägt die Route 10.1.3.0/24 über 10.1.2.2
auf dem Gateway 10.1.1.1 ein. Man kann aber auch nichts auf dem Gateway eintragen und auf dem
Rechner selbst die Route 10.1.3.0/24 über 10.1.2.2 definieren. Bei diesen Beispielen
habe ich jetzt vorraus gesetzt, das auf dem Gateway 10.1.3.1 eine Route 10.1.1.0/24 über 10.1.2.1
definiert ist, da sonst der Rückweg nicht funktioniert und der Rechner 10.1.3.15 nicht
antworten kann.
Nun setzen wir dem ganzen noch die Krone auf und sagen das das Gateway für das Internet
die Adresse 10.1.3.10 hat. Es kann jetzt also auf den Rechnern nur das nächste Gateway
als standart Gateway eingetragen werden wenn das Gateway slebst als standart Gateway das
eingetragen hat, das zum Internet führt. Ansonsten muss als standart Gateway die
10.1.3.10 eingetragen werden auf den Rechnern und muss natürlich durch die Routen
Definition erreichbar sein.
Abschließend fassen wir das Ganze noch in ein paar Tabellen zusammen, wie das obige
Beispiel in der Praksis aussehen könnte:
| Client basierend | Gateway basierend |
Gateway 1 (10.1.1.1 - 10.1.2.1):
| Subnet | Maske | Gateway | Device |
| 10.1.1.0 | 255.255.255.0 | | NWDev0 |
| 10.1.2.0 | 255.255.255.0 | | NWDev1 |
| 10.1.3.0 | 255.255.255.0 | 10.1.2.2 | |
Gateway 2 (10.1.2.2 - 10.1.3.1):
| Subnet | Maske | Gateway | Device |
| 10.2.2.0 | 255.255.255.0 | | NWDev0 |
| 10.1.3.0 | 255.255.255.0 | | NWDev1 |
| 10.1.1.0 | 255.255.255.0 | 10.1.2.1 | |
Gateway 3 (10.1.3.10):
| Subnet | Maske | Gateway | Device |
| 10.1.3.0 | 255.255.255.0 | | NWDev0 |
| 0.0.0.0 | 0.0.0.0 | IP Provider | ISDN |
| 10.1.1.0 | 255.255.255.0 | 10.1.3.1 | |
| 10.1.2.0 | 255.255.255.0 | 10.1.3.1 | |
Rechner 1 (10.1.1.67):
| Subnet | Maske | Gateway | Device |
| 10.1.1.0 | 255.255.255.0 | | NWDev0 |
| 10.1.2.0 | 255.255.255.0 | 10.1.1.1 | |
| 10.1.3.0 | 255.255.255.0 | 10.1.2.2 | |
| 0.0.0.0 | 0.0.0.0 | 10.1.3.10 | |
Rechner 2 (10.1.2.143):
| Subnet | Maske | Gateway | Device |
| 10.1.2.0 | 255.255.255.0 | | NWDev0 |
| 10.1.1.0 | 255.255.255.0 | 10.1.2.1 | |
| 10.1.3.0 | 255.255.255.0 | 10.1.2.2 | |
| 0.0.0.0 | 0.0.0.0 | 10.1.3.10 | |
Rechner 3 (10.1.3.15):
| Subnet | Maske | Gateway | Device |
| 10.1.3.0 | 255.255.255.0 | | NWDev0 |
| 10.1.1.0 | 255.255.255.0 | 10.1.3.1 | |
| 10.1.2.0 | 255.255.255.0 | 10.1.3.1 | |
| 0.0.0.0 | 0.0.0.0 | 10.1.3.10 | |
|
Gateway 1 (10.1.1.1 - 10.1.2.1):
| Subnet | Maske | Gateway | Device |
| 10.1.1.0 | 255.255.255.0 | | NWDev0 |
| 10.1.2.0 | 255.255.255.0 | | NWDev1 |
| 0.0.0.0 | 0.0.0.0 | 10.1.2.2 | |
Gateway 2 (10.1.2.2 - 10.1.3.1):
| Subnet | Maske | Gateway | Device |
| 10.2.2.0 | 255.255.255.0 | | NWDev0 |
| 10.1.3.0 | 255.255.255.0 | | NWDev1 |
| 10.1.1.0 | 255.255.255.0 | 10.1.2.1 | |
| 0.0.0.0 | 0.0.0.0 | 10.1.3.10 | |
Gateway 3 (10.1.3.10):
| Subnet | Maske | Gateway | Device |
| 10.1.3.0 | 255.255.255.0 | | NWDev0 |
| 0.0.0.0 | 0.0.0.0 | IP Provider | ISDN |
| 10.1.1.0 | 255.255.255.0 | 10.1.3.1 | |
| 10.1.2.0 | 255.255.255.0 | 10.1.3.1 | |
Rechner 1 (10.1.1.67):
| Subnet | Maske | Gateway | Device |
| 10.1.1.0 | 255.255.255.0 | | NWDev0 |
| 0.0.0.0 | 0.0.0.0 | 10.1.1.1 | |
Rechner 2 (10.1.2.143):
| Subnet | Maske | Gateway | Device |
| 10.1.2.0 | 255.255.255.0 | | NWDev0 |
| 0.0.0.0 | 0.0.0.0 | 10.1.2.1 | |
Rechner 3 (10.1.3.15):
| Subnet | Maske | Gateway | Device |
| 10.1.3.0 | 255.255.255.0 | | NWDev0 |
| 0.0.0.0 | 0.0.0.0 | 10.1.3.1 | |
|
Hinweis: Es ist nicht möglich nur durch das definieren von Gateways das lokal
Netz bei dynamischer Einwahl ins Internet mit dem Internet zu verbinden. Versuche in dieser
Richtung sind vergebene Mühen da keinem Router im Internet Routen zu den privaten
Adressen bekannt sind und deswegen kein Server im Internet auf Pakete antworten kann.
Wenn man versucht offizielle Internet Adressen im lokalen Netz zu benutzen und wird man auch
keine Antwort erhalten da die Antworten an einen anderen Rechner, dem diese Adresse gehört,
im Internet gehen.