Registrierung
leer
leer
newposts
Users
search
FAQ
Login
Start

Hallo Gast, und Willkommen im Forum. Sie müssen sich einloggen oder registrieren, um alle Funktionen nutzen zu können.


PN's Forum \ Kommunikation \ Netzwerke \ Grundlagen Routing: was ist eine DMZ, was ist Port-Forwarding, was ist NAT usw?


 Poison Nuke  *

#1 Verfasst am 18.01.2008, um 00:48:43



Hallo,


da häufiger immer wieder mal ein paar Fragen zu diesem Thema kommen, hier mal eine kurze Einführung in die Welt der Netzwerke, bzw dem wichtigsten Bestandteil, dem Routing.



Wie ist das Internet grundlegend aufgebaut

Damit jeder Rechner in einem Netzwerk identifiziert werden kann, braucht er eine eindeutige Adresse. Diese wurden vor vielen Jahren in dem Standard IPv4 als eine Folge von 4Byte = 32bit = ~4Mia mögliche Varianten festgelegt. Intern rechnet ein PC mit den 32bit, damit es für den Menschen aber einfacher lesbar ist, wurde eine Notation festgelegt, in der jedes Byte durch einen Punkt getrennt sind und alles dezimal geschrieben wird. Eine IP Adresse (von meinem Server z.B.), sieht also so aus:

84.19.184.229

Jetzt ist natürlich das Problem, wenn man allen Geräten im Netzwerk fortlaufend IP-Adressen gibt, dann kann man diese natürlich so gesehen alle ansprechen, aber jeder Rechner muss ab und an sogenannte Broadcast Anfragen senden. D.h. er sendet eine Mitteilung an alle IP Adressen, weil er selbst z.B. noch nicht weiß, welche er bekommen soll, oder weil er bekannt geben will, dass er eine neue Funktion im Netzwerk erfüllt oder was auch immer.
Wenn man sich nun überlegt, dass man 4 Mia PCs in einem großen Netz hätte und jeder würde mal ab und an einen Broadcast machen...wäre so, als würde regelmäßig Heinz Müller einen Rundbrief an alle Adressen der Welt schicken...also 6Mia Briefe. Die Post würde es ihm zweierlei danken

das Netzwerk natürlich auch, bis zu 4Mia Pakete würden einfach jeglichen Verkehr lahmlegen, so wie die 6Mia Briefe bei einer Rundsendung.

Weiterhin hat es aber auch einen Verwaltungs- und vorallem Sicherheitsaspekt. Würden alle PCs in einem gigantischen Netzwerk miteinander kommunizieren können, dann würde es keine Möglichkeit der Kontrolle und der Verwaltung geben. Es wäre ein riesiges Chaos.

Aus diesem Grund werden Netzwerke in viele kleine Broadcastdomänen untergliedert, bzw es werden Subnetze gebildet. Dabei gibt es verschiedene Subnetzklassen. Klasse A definiert Netze mit bis zu 16Mio Adressen, Klasse B mit bis zu 65.000 und Klasse C mit bis zu 255 Adressen. Da früher noch kein Mangel an IP-Adressen herrschte, hatte man auch großzügigerweise gleich ganze IP-Bereiche für bestimmte Klassen eingeteilt, was heute aber nicht mehr genutzt wird. Am häufigsten zum Einsatz kommen Klasse C Netzwerke. Aber es ist auch möglich, Netzwerke mit einer ganz bestimmten Größe festzulegen, minimal 2 müssen es aber schon sein.


Damit jetzt natürlich die Subnetze auch wirklich getrennt sind, prüft jeder PC vor dem losschicken eines Paketes, ob das Ziel auch im eigenen Subnetz liegt. Dazu vergleicht er die ZielIP mit der eigenen Subnetzmaske und als Ergebnis kommt eine SubnetzID heraus. Ist diese identisch mit der eigenen SubnetzID, dann sendet der PC das Paket über eine ARP Anfrage direkt ins eigene Subnezt.

Ok, wie bekommt man jetzt aber ein Paket von Rechner A in Subnetz A zu Rechner C in Subnetz B? Es muss ein Router dazwischen. Recher A weiß, wenn er ein Paket lossenden will, dass nicht in seinem Subnetz ist (in seiner Nachbarschaft sozusagen), dann hat er einen meist manuell eingetragenen Standardgateway, soviel wie die Poststelle um die Ecke.
Das Paket wird nun direkt zu diesem Standardgateway (ein Router) gesendet. Dieser weiß nun, wo genau sich der Empfänger befindet und leitet das Paket in das passende Subnetz weiter, wo der Empfänger es dann entgegen nehmen kann.

Der Empfänger selbst muss dann aber auch wissen, wie er antworten kann. Dazu schickt der Sender seine IP als Absender mit. Der Empfänger macht bei der Antwort nun aber exakt das gleiche wie der Sender. D.h. er prüft die Zieladresse, ob sie im eigenen Subnetz liegt und wenn nicht, dann geht es zum Standardgateway.
Problem, was ab und an vorkommt ist, dass ein Empfänger selbst keinen Standardgateway eingetragen hat und damit nicht weiß, wohin er ein Paket schicken soll,w enn es nicht im eigenen Subnetz liegt. So kann er zwar Pakete bekommen, aber keine Antwort zurücksenden. Es kann aber auch passieren, dass sein Standardgateway ein anderer Router ist, als der, von dem das Paket ursprünglich in das Subnetz gelangt ist. Dadurch kann die Antwort einen völlig anderen Weg nehmen, wie die Anfrage.


Da man im Internet "ein paar" mehr Subnetze hat, die physikalisch teilweise tausende Kilometer voneinander getrennt sind, hat man normalerweise auch eine Vielzahl von Routern dazwischen. Jeder Router weiß aber, wo sich welches Subnetz befindet und über welche anderen Router er es erreichen kann. Zu diesem Zweck haben die großen Router dynamische Routingtabellen die sie ständig mit allen anderen Routern abgleichen. Auf diese Weise erfahren sie auch schnell, ob ein Router ausgefallen ist oder ob es eine neue kürzeste Route zu einem bestimmten Ziel gibt usw.




der Mangel an IP-Adressen

früher dachte man, dass ~4 Mia IP-Adressen mehr als locker ausreichen, um alle PCs zu adressieren usw. Nunja, es hatte keiner an die Masse von PCs, an Handys, an Bürocomputer, Server usw gedacht. Allein die Server hatten früher bis zu 100 IP-Adressen gehabt, damit verschiedenste Aktionen von verschiedenen Adressen aus gemacht werden konnten (so wie einige halt mehrere Telefone haben, um ihre Tätigkeiten zu trennen).
Zumindest wird es schon seit einiger Zeit extrem knapp mit IPs. Ein neuer Standard, IPv6 ist zwar im Anmarsch, aber auch nur sehr langsam, weil es dauert einfach extrem lange, eh alle Router und PCs usw umgestellt wurden. Das zieht sich also noch über einige jahre. Zumindest hat man bei IPv6 eine 128bit lange Adresse, das reicht wahrscheinlich sogar aus, um alle Atome im Universum zu adressieren

Da dieser Standard aber noch lange braucht, eh er überall verwendet wird, wird der Hauptteil der Kommunikation mit IPv4 abgewickelt. Damit es nun aber nicht zu einem Mangel von Adressen kommt, werden verschiedene Subnetze logisch abgetrennt vom eigentlichen Internet.

Um das zu realisieren, wird in einer Firma oder zuhause ein kleines Netzwerk aufgebaut, welches einen privaten IP-Bereich verwendet (192.168.xxx.xxx, 172.24.xxx.xxx und 10.xxx.xxx.xxx sind als private Bereiche markiert und werden öffentlich nicht weitergeleitet).
Damit der Anschluss zum Internet realisiert werden kann, kommt nromal ein Router zum Einsatz, nur leitet der nicht einfach die Pakete weiter, sondern er trennt das private Netzwerk durch NAT ab.



NAT - Network Address Translation

auf Deutsch: Netzwerkadressen Übersetzung.
Der Router nimmt vom privaten Netzwerk die Pakete entgegen und ERSETZT die Absenderadresse mit seiner eigenen Adresse, die er im Internet hat.
Das wäre genau das gleiche, als wenn man ein Paket zur Post bringen würde, und die dort die Absenderadresse gegen die eigene tauschen würden.

Auf diese Weise können beliebig viele PCs über so einen NAT Router ins Internet gehen, vom Internet aus betrachtet ist es ein einziger. Es wird also auch nur eine einzige öffentliche IP-Adresse für eine Vielzahl von Computern benötigt. Auf diese Weise spart man massiv viele öffentliche Adressen ein.

Problem ist natürlich, dass im Internet IMMER eine Antwort kommt. Diese kommt nun also zum Router und der muss jetzt zusehen, welcher PC denn die Antwort haben wollte. Dazu hat er sich natürlich gemerkt, welcher PC an welche öffentliche IP-Adresse ein Paket geschickt hat. An diesen PC liefert er dann auch die Antwort aus.


Blöd ist jetzt aber: will ein PC von außerhalb eine Anfrage an einen PC im privaten Netzwerk stellen, dann hat er ein Problem. Von außen ist nämlich lediglich der Router sichtbar, es ist aber nicht möglich, die PCs dahinter anzusprechen.
Damit es trotzdem möglich ist, und man im internen Netz einen Server laufen lassen kann, der von außen erreichbar ist, muss man im Router das sog.



Port-Forwarding

aktivieren. Wird auch "Port-Weiterleitung" oder ähnlich genannt. Dabei ist nun der Fakt interessant, dass man einen PC nicht nur allein über seine IP-Adresse anspricht, sondern er über 65.000 Ports hat, ähnlich wie Briefkästen bei einem Mehrfamilienhaus. Dabei hat jeder Port eine bestimmte Bedeutung und Serveranwendungen auf dem PC "lauschen" dann bestimmte Ports ab, ob da eine Anfrage reinkommt. Auf diese Weise kann man auf einem PC über eine IP-Adresse bis zu 65.000 unterschiedliche Anwendungen direkt ansprechen, insofern das eingestellt wäre


Wenn nun aber ein PC über das Internet z.B. einen FTP Server ansprechen will, der in einem privaten Netz steht, dann muss der Router von diesem Netz alle Anfragen auf Port 21 (über den Port werden alle FTP Anfragen gestellt) auf die IP-Adresse im internen Netz weiterleiten, auf dem der FTP-Server läuft.
Wenn das geschehen ist, kann dieser dann die restliche Verbindung selbst herstellen usw.



DMZ - Demilitarized Zone

oder auch demilitarisierte Zone genannt. Wird eigentlich nur im Zusammenhang mit Firewalls benötigt. Rechner in einer DMZ unterliegen geringeren Filterregeln wie das eigentlich geschützte Netzwerk dahinter.
Im Zusammenhang mit einfachen DSL Routern wird DMZ aber dafür "missbraucht", um einen einzelnen Rechner so mit dem Internet zu verbinden, als wäre der Router gar nicht dazwischen. Anfragen aus dem Internet auf den Router werden direkt auf die DMZ geleitet. Auf diese Weise kann man z.B. einen Server im lokalen Netzwerk betreiben...vom Internet aus "sieht" jeder unter der IP des Routers dann direkt diesen Server.




Das Problem mit der dynamischen IP-Adressvergabe

Wie die meisten Internetuser sicher schon mitbekommen haben, gibt es alle 24h eine Trennung der Verbindung. Diese wird automatisch wiederhergestellt, nur diesmal halt mit einer neuen IP-Adresse, die über DHCP (Dynamic Host Configuration Protocoll) vergeben wird.
Der Hintergrund ist der, dass auf diese Weise Angriffe erschwert werden. Denn bei festen IP-Adressen wäre es sehr einfach möglich, bestimmte User längerfristig zu identifizieren und man könnte vorallem Angriffe auf die Adresse starten und damit z.B. seine Verbindung lahmlegen. Bei der regelmäßigen Trennung wird das aber massiv erschwert.

Blöd ist jetzt nur, wenn man im Netzwerk einen Server laufen hat, der von außen erreichbar sein soll. Man muss dann nämlich alle 24h erstmal die neue IP-Adresse (www.wieistmeineIP.de) herausfinden und allen mitteilen, die auf diesen Server zugreifen sollen.
Um dass zu vereinfachen, gibt es dynDNS.org. Bei denen hat man die Möglichkeit, einen Domänennamen zu bekommen, der immer auf die aktuelle IP-Adresse verweist. Da natürlich dynDNS selbst niemals herausfinden könnte, welches dei aktuelle IP ist, muss dies regelmäßig der Router machen. Dazu sollte in dessen Einstellungen irgendwo die Möglichkeit sein, die aktuelle IP immer an dynDNS.org mitzuteilen.

Man muss allerdings auch beachten, dass aufgrund der masse von DNS-Servern auf der Welt, die häufig Anfragen zwischenspeichern, die Änderungen nicht sofort, sondern erst ein paar Minuten, teilweise sogar erst über 1h später für alle Nutzer im Internet verfügbar sind.






Der große Vorteil von NAT

Abschließend will ich noch sagen, dass NAT einen großen Vorteil hat:
solange das Port-Forwarding nicht aktiviert ist, ist es definitiv ausgeschlossen, dass irgendein Angreifer von außerhalb des Internets auf den eigenen PC zugreifen könnte. Daher braucht man nichtmal eine Firewall installieren (ok, bei Software, die "nach Hause telefoniert" ist sie schon ganz sinnvoll :D).
Allerdings muss man auch aufpassen, dass man den Router von außen nicht konfigurieren kann, dazu müsste es in den Optionen eine Einstellung geben, die die Konfigurationsoberfläche nur vom internen Netz aus erreichbar macht. Ebenfalls sollte der Router auf ICPM (Ping) Signale nicht antworten, auf diese Weise kann ein Angreifer nicht prüfen, ob die IP gerade aktiv ist, oder nicht. blöderweise kann damit auch keiner im Internet prüfen, ob man online ist. Wenn man intern einen Server laufen hat und mit dyndns arbeiten, sollte man also auch den Ping besser zulassen, damit die Nutzer einfach herausfinden können, ob man gerade online ist oder nicht.

Ist die Frage, wenn IPv6 irgendwann endlich mal überall genutzt wird, ob es dann immernoch NAT geben wird.


greetz
Poison Nuke

bearbeitet von Poison Nuke, am 07.06.2008, um: 18:45:37


 Poison Nuke  *

#2 Verfasst am 07.06.2008, um 18:47:19



ich habe mal den Bereich "DMZ", sowie "Routing" überarbeitet, hatte da einige Sachen nicht ganz korrekt geschrieben.

Insbesondere habe ich den Teil mit dem Standardgateway und der Zielfindung bei verschiedenen Subnetzen erweitert.



Solltet ihr einen Fehler finden, oder sollte was unklar geschrieben sein, bitte schreiben:prost


greetz
Poison Nuke

PN's Forum \ Kommunikation \ Netzwerke \ Grundlagen Routing: was ist eine DMZ, was ist Port-Forwarding, was ist NAT usw?


- Zurück zur Homepage - Eigene Beiträge - Neue Beiträge - Wer ist online? - Impressum - Datenschutz - Statistiken -



Board coded and provided by: Poison Nuke
Copyright 2007-2014, Robert Menger