TCP/ IP Protokoll – Routing, Nat und Fehlersuche

TCP-IP Routing, NAT
Im zweiten Teil der Einführung in das TCP/IP Protokoll werden
das Routing, und die NAT Funktion erklärt, und wie diese aktiv
im Internet, aber auch in lokalen Netzen angewendet wird. Am Ende
der Einführung finden Sie noch nützliche Tools zur Fehlersuche
in eigenen TCP/IP Netzwerken auf Windows basierend.

Routing und Network Adress Translation

Wie bereits festgestellt wurde ist das TCP/IP Protokoll aufgrund
seiner Struktur routingfähig. Zum Verbinden verschiedener Netze
dienen Gateways oder kurz: Router. Auch ein Router besitzt
eine IP-Adresse, Netzdesigner legen diese Adresse meistens an den
Anfang oder ans Ende des IP-Ranges, z.B. 10.0.0.1 oder 10.0.0.254
im Netz 10.0.0.0.

Das folgende Bild veranschaulicht das Routing:

Routing

Ganz ohne Routing würde ein Datenpaket von Rechner 10.0.0.2
an Rechner 10.0.0.3 gelangen denn beide Maschinen befinden
sich im gleichen Netz. Der Host 10.0.0.2 hat nun jedoch eine
Nachricht für die Maschine 10.0.1.23. Anhand des Netzanteils
der IP-Adresse des Empfängers schickt 10.0.0.2 die Nachricht
nicht in das “eigene” Netz sondern gleich an seinen in der TCP/IP-Konfiguration
eingetragenen Standardgateway (Router) weil sich der Empfänger
in einem anderen Netz befindet. Der Router, welcher physikalisch
in beiden Netzen
anwesend ist erkennt vermittels Routingtabelle
dass das Paket aus dem Netz 10.0.0.0 in das Netz 10.0.1.0 zu leiten
ist und so gelangt das Paket von Maschine 10.0.0.2 zu Maschine
10.0.1.23.

Routingtabellen können statisch oder dynamisch sein. Neben
der Netzadresse oder auch einzelner Hostadressen welche geroutet
werden sollen beinhaltet eine Routingtable außerdem eine sogenannte
Metrik, damit ist festgelegt in welcher Reihenfolge
Routen abgearbeitet werden falls es Mehrere gibt (meistens ist dabei
die Preisfrage ausschlaggebend).

NAT (Network Adress Translation) ist ein Protokoll welches
das Umsetzen von IP-Adressen von einem Netz in ein Anderes
beschreibt und kommt ebenfalls auf Routern oder Firewalls zum Einsatz.
Mit NAT kann z.B. eine Netzadresse 10.0.0.2 zu 192.168.0.2,
eine weitere IP 10.0.0.3 zu 192.168.0.3 usw. umgesetzt
werden. Möglich ist es, auf diese Weise auch Ports linear zu
übersetzen. Eine Sonderform von NAT liegt vor, wenn die IP-Adressen
aller Maschinen in einem Netz (z.B. 10.0.0.2 bis 10.0.0.253)
auf eine einzige IP-Adresse umgesetzt werden. Damit lassen sich
die IP-Adressen einzelner oder mehrerer Netzwerke verbergen (Mascerading)
und ein privates Netzwerk wird dadurch nach außen hin durch
eine einzige IP-Adresse presentiert.

NAT und Routing wird von LINUX Maschinen von “Haus aus” soweit
unterstützt so dass hier nur die Frage der Konfiguration zu
klären wäre. Anders hingegen auf Windows-Rechnern, hier
macht sich der Erwerb weiterer Software notwendig, soll ein PC als
Router eingesetzt werden.

Der Einsatz einer solche Software wie WinRoute Pro z.B. macht sich
erforderlich wenn

  • bestimmte Computer eine andere IP-Adresse aufweisen sollen als
    die Haupt-Adresse, die vom Rest des Netzwerks genutzt wird.

  • Sie Zweigniederlassungen mit dem WAN (Wide Area Network) mit
    privatem Adressplatz verbunden haben und sich alle einen Internetzugang
    teilen sollen.

  • sich Mehrfachsegmente im Hintergrund von WinRoute befinden,
    von denen ein oder mehrere Segmente DMZ(s) mit öffentlichen
    IP-Adressen sind.

  • Sie innerhalb Ihres privaten Netzwerks über öffentliche
    IP-Adressen verfügen möchten. (Denken Sie daran, mit
    Ihrem ISP abzusprechen, dass diese IP-Adressen an Ihre IP-Adresse
    geroutet werden.)

TCP/IP im OSI Referenzmodell

  OSI-Modell Ebenen Protokolle
7 Anwenderschicht Application Layer Telnet, SMTP…
6 Darstellungsschicht Presentation Layer  
5 Kommunikations- 
steuerungsschicht
Session Layer  
4 Transportschicht Transport Layer TCP/UDP
3 Vermittlungsschicht Network Layer IP/ICMP
2 Sicherungsschicht Data Link Layer ARP
1 Bitübertragungsschicht Physical Layer Ethernet

Für TCP/IP geschriebene Anwendungen benutzen meist mehrere
Protokolle (Telnet, SMTP, http…). Die Summe der Schichten der
Protokolle wird als Protocol-Stack bezeichnet. Die Kommunikation
beginnt in der obersten Schicht des Protokoll-Stacks. Jede Schicht
reicht die Informationen an untere Schichten weiter, bis sie schließlich
vom physikalischen Netzwerk übertragen werden. Beim Empfänger
verläuft der Prozeß umgekehrt von den unteren zu den
oberen Schichten. Diese einfache Betrachtungsweise möge für
diesen Artikel genügen.

Tools zur Fehlersuche

Auch Betriebssysteme Windows9x, NT und W2000 stellen ein paar Tools
bereit mit welchen sich Fehler im Netzwerk eingrenzen oder fehlerhafte
Konfigurationen ermitteln lassen.

winipcfg

Steht unter Windows9x zur Verfügung und zeigt die lokale IP-Konfiguration
über ein grafisches Dialogfenster an. Ebenfalls grafisch angezeigt
wird die Hilfe wenn winipcfg -? auf der Kommandozeile eingegeben
wurde. Mit den Schaltern freigeben und aktualisieren
kann geprüft werden ob eine automatische IP-Konfiguration über
DHCP funktioniert.

ipconfig

Funktionen wie winipcfg jedoch rein kommandozeilenorientiert.
Steht unter Win95 nicht zur Verfügung. Die Schalter weichen
unter Win9x und NT geringfügig voneinander ab, in WinNT z.B.
steht -a für “all” unter Win9x muss -all notiert
werden. Mit Letzerem werden auch die MAC-Adressen der Adapter angezeigt.

netstat

Zeigt Protokollstatistik und aktuelle TCP/IP-Netzwerkverbindungen
an., netstat ohne Schalter zeigt aktive Verbindungen:

Aktive Verbindungen

  Proto  Lokale Adresse    Remote-Adresse      Status
  TCP    rolf:ftp          VRONI:1025          ESTABLISHED

netstat -r zeigt den Inhalt der Routing-Tabelle an. Weitere
Möglichkeiten werden wie gehabt mit dem Schalter -?
angezeigt.

tracert

Ein mächtiges Tool um das Routing zu überprüfen,
zum prüfen also welchen “Weg” ein Datenpaket vom Ausgangsrechner
zum Zielrechner nimmt. Dabei ist ein hop ein Gerät auf
dem Pfad zwischen zwei Geräten.

ping

Das wohl wichtigste Werkzeug in dieser “Sammlung”. Mit ping
kann geprüft werden ob ein Host überhaupt erreichbar ist
in TCP/IP-Netzwerken.


Ping in der MS-DOS Eingabeaufforderung. In die Eingabeaufforderung
gelangen Sie über "Start->Ausführen->command
"

ping verwendet ICMP (Internet Control Message Protocol).
ICMP-Pakete enthalten ein Type-Field und ein Code-Field
in welchem die Meldung spezifiziert ist:

Type Code
0 echo reply
3 destination unreachable
4 source quench
5 redirect
8 echo request
11 time exceeded
12 parameter problem
13 timestamp request
14 timestamp reply
17 address mask request
18 address mask reply
nslookup

Mit diesem Utility (nicht unter Win9x) kann geprüft werden
ob die Auflösung von Namen im DNS funktioniert. nslookup
ohne Schalter zeigt an welcher Nameserver im Default auf der lokalen
Station verwendet wird. nslookup ist Scriptfähig, gut
zu wissen wenn mit einem Kommando eine ganze Liste von Domains geprüft
werden soll: nslookup < liste. nslookup kann sowohl
im Batchmode als auch interaktiv verwendet werden, eine umfangreiche
Hilfe wird dabei mit dem ? angezeigt.

Vielen dank an Herrn Rolf Rost von I-NetLab,
der uns den Artikel zur Verfügung gestellt hat. Bei Fragen
können Sie sich an ihn wenden. Auf seiner Webseite finden Sie
ein Kontakt-Formular.

This entry was posted in Servertechnik and tagged . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *