TCP/IP - was ist das eigentlich

    Was bedeutet TCP/IP?

    TCP/IP ist die Abkürzung für Transmission Control Protocol / Internet Protocol

    Was ist eine IP-Adresse?

    Mit Hilfe der IP-Adresse ist es möglich, einen Rechner (Host) in einem Netzwerk (LAN, Internet) eindeutig zu identifizieren. Genau genommen ist es eine 32 Bit oder 4 Bytes große Zahl, die z.B. so aussehen kann:

    11000000 | 10100010 | 00000001 | 00000001

    Da dieses jedoch relativ unleserlich  ist , wurde die dottet decimal notation eingeführt. Die vier Bytes werden in Dezimalstellen umgesetzt und durch Punkte voneinander getrennt.

    So wird aus der Zahl von oben folgendes:

    192.168.1.1

    Daraus ergibt sich, dass jeder der vier Teile (Oktetts) einen Wert zwischen 0 (00000000) und 255 (11111111) annehmen kann.

    Eine IP-Adresse allein ist noch nicht mehr als eine laufende Nummer. Zu einer IP-Adresse gehört immer eine Subnetzmaske.

    Eine Subnetzmaske ist im Prinzip eine Reihe von Einsen, die irgendwann in eine Reihe von Nullen "umschlägt".

    Zum Beispiel:

    11111111 | 11111111 | 11111111 | 0000000

    entspricht:

    255.255.255.0

    Um den Sinn zu verstehen, ist es hilfreich, sich eine Telefonnummer mit Vorwahl zu denken. Hier erkennt man anhand der Vorwahl, in welche Stadt man anruft und anhand der Rufnummer, wen man sprechen möchte. So ähnlich verhält es sich auch mit IP-Adressen, die unterteilt man in Netzadresse (Vorwahl) und Hostadresse (Rufnummer). Durch die Subnetzmaske wird festgelegt, wo die Netzadresse aufhört und die Hostadresse anfängt.

    Beispiel:

    IP-Adresse:

    11000000 | 10100010 | 00000001 | 00000001 = 192.168.1.1

    Subnetzmaske:

    11111111 | 11111111 | 11111111 | 0000000 = 255.255.255.0

    Wofür braucht man die Subnetzmaske?

    Wenn man mehrere Rechner, Drucker, Router, was auch immer, miteinander kommunizieren lassen möchte, sollten alle die selbe Netzadresse haben, müssen aber dann unterschiedliche Hostadressen bekommen. Sprich, alle Berliner haben die Vorwahl 030, aber auf jeden Fall unterschiedliche Rufnummern.

    Adressklassen: Prinzipiell ist es egal, wo man in seinem Heimnetz die Grenze zwischen einsen und Nullen setzt,  der Unterschied ist folgender:

    Je mehr Nullen meine Subnetzmaske am Ende besitzt, desto mehr Rechner bekomme ich in  meinen Adressbereich. Das ist auch wieder wie bei den Telefonnummern: Je kleiner das Netz (wenige Anschlßüsse), desto länger ist die Vorwahl. Für die unterscheidung der Netzt hat man Klassen gebildet (A, B, C), wobei für jede Klasse die Nullen um 8 Stellen nach rechts rücken. Heimnetze befinden sich im Normalfall im C-Netz (siehe Tabelle oben!), da kaum jemand mehr als 255 Rechner zu Hause haben wird! Man kann die Position der Nullen auch beliebit verschieben, um z.B. ein Class-C-Netz in mehrere, kleinere Netze aufzuteilen. Darauf werden wir im nächsten Kapitel eingehen.

    Folgende Adressen darf man in einem privaten Heimnetzwerk verwenden:

    Klasse A - Bereich: 10.0.0.0 - 10.255.255.255            Subnetzmaske: 255.0.0.0

    Klasse B - Bereich: 172.16.0.0 - 172.32.255.255        Subnetzmaske: 255.255.255.0

    Klasse C - Bereich 192.168.0.0 - 192.168.255.255    Subnetzmaske: 255.255.255.0

    Auf den Unterschied zwischen privaten und öffentlichen Adressbereichen werden wir gleich eingehen. Zunächst wollen wir uns einmal eine IP-Konfiguration ansehen, wie sie sich auf einem Rechner beispielhaft darstellt:
    TCP/IP-Maske

    Betrachten wir zunächst den oberen Teil. Dort sehen wir eine IP-Adresse und die Subnetzmaske. Es steht jedoch noch ein dritter Eintrag dort: Das Standardgateway.

    Wozu benötigen wir diesen Eintrag? Wir wissen, dass die IP-Adresse durch die Subnetzmaske in einen Netz- und einen Hostanteil aufgeteilt wird. Aber warum macht man das überhaupt?

    Bemühen wir nochmals den Vergleich mit dem Telefonnetz. Eine Telefonnummer, die sich im selben Vorwahlbereich befindet, kann ich anrufen, ohne die Vorwahl mitzuwählen. Wenn ich jedoch in einen anderen Ort anrufen will, muss ich die Vorwahl mitwählen, damit die Vermittlungsstelle weiß, dass ich in ein anderes Ortsnetz telefonieren möchte.

    In einem IP-Netz ist es ähnlich: Einen Rechner, der sich im gleichen Subnetz befindet, kann ich über seine IP-Adresse erreichen. Wenn ich jedoch einen Rechner in einem anderen Subnetz erreichen will, brauche ich eine Art "Vermittlung", um eine Verbindung zwischen den beiden Netzen herzustellen. Hier kommt der Router ins Spiel. Ein Router ist ein Gerät, das mehrere Subnetze miteinander verbinden kann, er dient sozusagen als 'Tor nach Außen' oder eben als Gateway.

    Ein Router hat - im Gegensatz zu anderen Geräten wie z.B. PCs - zwei IP-Adressen. Eine innere Adresse aus dem eigenen Adressbereich und eine äußere Adresse, über die er die Daten weiterleitet. Die innere Adresse trägt man auf seinen Rechnern als Standardgateway ein.

    Beispiel:

    Wenn man in Class-C-Netzen von einem Rechner mit der IP-Adresse 168.16.1.150 auf einen Rechner mit der IP-Adresse 166.12.2.150 zugreifen möchte, benötigt man in jedem Subnetz einen Router.
    Routing

    Rechner 1 erkennt anhand der Zieladresse, dass es sich um eine Adresse außerhalb seines Adressbereichs handelt und schickt die Anfrage an sein Standardgateway. Der Router leitet die Anfrage über seine Äußere Adresse weiter. Router 2 erkannt anhand der Zieladresse, dass es sich um einen Rechner in seinem Netz handelt, nimmt die Anfrage an und leitet sie zum Zielrechner weiter. Die Antwort geht dann auf dem gleichen Weg zurück.

    Mehrere Router, die über ihre Äußere Adresse miteinander verbunden sind, werden wiederum über übergeordnete Router mit Routern aus anderen Adressbereichen verbunden.

    Nun kommen wir zurück auf den Unterschied zwischen privaten und öffentlichen Adressbereichen. Das internet besteht aus Milliarden von Rechner,n, die alle über Router miteinander vernetzt sind. Ein Rechner muss jedoch durch seine IP-Adresse eindeutig identifizierbar sein. Wenn man sich jedoch ein privates Heimnetzwerk aufbaut, weiss man nicht, welchen Adressbereich sich irgend jemand in der Nachbarschaft oder auch in Amerika schon ausgesucht hat und es würde unweigerlich zu Adresskonflikten kommen. Damit das nicht passiert, wurden die privaten Adressbereiche festgelegt. Diese Adressen werden von Routern nicht weitergeleitet, sprich nicht geroutet. Dadurch ist es egal, ob sich irgend jemand schon "meinen" Adressbereich ausgesucht hat.

    Was ist nun aber, wenn ich mit meinem Rechner ins Internet möchte? Wenn die Rechneradresse nicht geroutet wird, da sie sich in einem privaten bereich befinden, wie kommen dann Daten zu meinem Rechner?

    Im Gegensatz zu öffentlichen IP-Adressen, die sozusagen von der Quelle bis zum Ziel weitergeleitet werden, ist eine private IP-Adresse nur dem eigenen Router bekannt. Der Router "merkt" sich in diesem Fall, woher die Anfrage ursprünglich gekommen ist (von meinem Rechner) und leitet sie mit der eigenen, äußeren IP-Adresse weiter. Wenn die Antwort kommt, schickt er sie an meinen Rechner weiter. Im Heimbereich bekommt der Router die äußere IP-Adresse bei jeder Einwahl vom Provider zugewiesen. Nur diese IP-Adresse ist von außen - sprich aus dem Inernet - erreichbar.

    Daraus folgt, dass man von einem Rechner, der sich in einem privaten Adressbereich befindet, keinen Rechner aus einem anderen privaten Adressbereich direkt ansprechen kann. Das ist nur möglich, wenn sich die Rechner in öffentlichen Adressbereichen befinden.

    Wenn man einen Rechner aus einem privaten Adressbereich von außen zugänglich machen möchte, muss der Router so konfiguriert werden, dass er anfragen an seine äußere Adresse an den entsprechenden Rechner weiterleitet. Das soll jedoch hier nicht Thema sein. Im privaten Umfeld ist es ein nicht unerheblicher Schutz, dass lediglich der Router im Internet erreichbar ist und die dahinter liegenden Rechner sozusagen "unsichtbar" sind.

    Namensauflösung

    Damit man im Internet einen Rechner nicht nur über seine IP-Adresse, sondern z.B. über www.microsoft.de ansprechen kann, ist es nötig, einen so genannten DNS-Server zu bemühen, der uns die Arbeit im Internet erheblich erleichtert. Der Domain Name Service sorgt dafür, dass wir die Internetseiten nicht über umständliche IP-Adressen aufrufen müssen, die sich ständig ändern, sondern über so schöne Namen wie www.gruenspek.de. DNS ist demnach eine Art Telefonbuch, welches für uns die richtige Nummer zum entsprechenden Namen sucht, bzw. umgekehrt.

    Jeder Provider stellt solche DNS-Server bereit. Die IP-Adresse(n) werden im Router hinterlegt. Dieser ist dann wiederum der DNS-Server für unser Heimnetzwerk.

    Teilen eines Class-C-Netzes

    Subnetzmasken! Für die meisten Einsteiger ein Angstthema. Glücklicherweise müssen Sie diese nicht binär berechnen (auch wenn es gar nicht so schwierig ist) oder gar detailliert erklären können. Sie sollten allerdings deren Bedeutung kennen und auch genau wissen, welche Subnetzmasken vorkommen können, wenn Sie ein Class-C-Netzwerk aufteilen. Insofern kommen wir an ein wenig Netzwerktheorie an dieser Stelle nicht vorbei. Wie wohl leicht einzusehen ist, rechnen Computer mit IP-Nummern in Binärform und nicht im Dezimalsystem. Schauen wir uns also drei IP-Nummern in ihrer binären Schreibweise an:

    Host 1: 192.168.0.80 entspricht 11000000.10101000.00000000.01010000
    Host 2: 192.168.0.130 entspricht 11000000.10101000.00000000.10000010
    Host 3: 192.168.5.130 entspricht 11000000.10101000.00000101.10000010

    Die IP-Nummern bestehen also aus 4x8 = 32 Bits.

    Wenn ein Rechner IP-Pakete verschickt, muss er zunächst feststellen, ob sich die Zieladresse im selben LAN befindet wie er selbst (dann muss er das Paket „einfach So" aussenden) oder ob sie sich außerhalb dieses Netzes befindet, er die Pakete also über ein Gateway weiterrouten muss (dann müssen die Pakete eben zum Gateway in diesem LAN geschickt werden). Hier kommen nun die Subnetzmasken ins Spiel: Sie geben an, wie viele Bits der IP-Nummer zum so genannten Netzwerkanteil und wie viele zum so genannten Hostanteil gehören. Die Subnetzmaske 255.255.255.0 steht beispielsweise für binär 11111111.11111111.11111111.0000000, wobei alle 1-Bits den Netzwerkanteil repräsentieren - hier also die ersten 24 Bits. Die hier frei bleibenden letzten 8 Bits geben den Hostanteil an.

    Denn: Unterscheiden sich die Bits der Zieladresse gegenüber dem sendenden Host allein im Hostanteil, bzw. ist der Netzwerkanteil identisch, so liegt die Ziel-IP innerhalb eines LAN. Unterscheiden sich hingegen die Netzwerkanteile, muss das Paket über ein Gateway geroutet werden.

    Schauen Sie sich noch mal die drei oben angegebenen Binärmuster an: IP-Nummer eins und zwei unterscheiden sich allein in den letzten acht Bits. Bei der hier angenommenen Netzwerkmaske heißt das: Sie haben den gleichen Netzwerkanteil, sie liegen im selben Subnetz. Bei IP-Nummer drei ist das anders: Sie unterscheidet sich bereits im 3. Block von den anderen beiden IP-Nummern, und damit bereits im Netzwerkanteil. Diese IP- Nummer liegt damit in einem anderen Subnetz. Wollen Host 1 und Host 2 IP-Pakete an Host 3 senden, benötigen Sie einen Router, der die Daten weiterleitet.

    Nun wird es ein wenig komplizierter:

    Wir beschließen, das Netz zu teilen, und wählen Subnetzmaske 255.255.255.128, binär geschrieben

    1111111.11111111.11111111.10000000.

    Der Netzwerkanteil ist jetzt um ein Bit länger (die ersten 25 Bits) als im obigen Beispiel, der Hostanteil entsprechend ein Bit kürzer (die letzten 7 Bits). Für unseren Host 1 bedeutet das:

    Nur Hosts, die die ersten 25 Bits mit ihm gemein haben, liegen in seinem Netz. Und wir sehen schon: Host 1 und Host 2 befinden sich plötzlich nicht mehr in einem Subnetz:

    11111111.11111111.11111111.10000000 - Subnetzmaske /25
    11000000.10101000.00000000.01010000 - Host 1
    11000000.10101000.00000000.10000010 - Host 2

    Noch in dem durch die 1-Bits der Subnetzmaske markierten Netzwerkanteil gibt es Unterschiede, so dass der Weg über das Gateway notwendig wird.

    Nun können Sie fortfahren, indem Sie die Zahl der Bits des Netzwerkanteils weiter erhöhen; der Hostanteil wird entsprechend kleiner. Der Netzwerkanteil kann 27, 28, 29 oder mehr Bits lang sein, und wenn Sie die gesetzten Bits in Dezimalschreibweise umrechnen, kommen Sie zu folgender Tabelle. Die Kurzschreibweise der letzten Spalte gibt einfach nur an, wie viele Bits gesetzt sind:

    11111111.11111111.11111111.00000000 - 255.255.255.000 - /24
    11111111.11111111.11111111.10000000 - 255.255.255.128 - /25
    11111111.11111111.11111111.11000000 - 255.255.255.192 - /26
    11111111.11111111.11111111.11100000 - 255.255.255.224 - /27
    11111111.11111111.11111111.11110000 - 255.255.255.240 - /28
    11111111.11111111.11111111.11111000 - 255.255.255.248 - /29
    11111111.11111111.11111111.11111100 - 255.255.255.252 - /30
    11111111.11111111.11111111.11111110 - 255.255.255.254 - /31
    11111111.11111111.11111111.11111111 - 255.255.255.255 - /32

    Bis hierhin haben wir also schon einmal Dezimal- und Kurzschreibweise der Subnetzmasken zusammengetragen. Bleibt der zweite Teil der Frage, wie viele Hosts pro Subnetz vorhanden seink önnen.

    Dazu muss man wissen: In jedem Subnetz gehen zwei IP-Nummern verloren: Die eine wird als Netzwerk-Basisadresse benötigt (in der Regel die unterste IP-Nummer) des jeweiligen Subnetzes), die andere für die Broadcast-Adresse, normalerweise die höchste IP-Nummer eines jeden Subnetzes.

    In einem Class-C-Netz (alias /24) haben wir also 8 Bit Netzwerkanteil, alias 256 mögliche IP-Nummern, d. h. 254 nutzbare IPs für Hosts + 1 Netzwerkbasis-IP + 1 Broadcast-IP. In einem halben Class-C-Netz sieht es etwas anders aus: Bei einer /25-Bit-Netzwerkmaske stehen 7
    Bit Hostanteil zur Verfügung, also 128 IP-Nummern. Abzüglich Netzwerkbasis- und Broadcast-IP bleiben 126 nutzbare IPs für Hosts.

    Und zu guter Letzt: Vierteln wir das Netz (Netzwerkanteil /26), haben wir 6 Bit Hostanteil, alias 64 mögliche IP-Nummern, also 62 nutzbare IP-Nummern für Hosts.  Allerdings lauert eine Falle: Nehmen wir Subnetzmaske /31 (alias 255.255.255.254),bleibt uns 1 Bit Hostanteil, was zwei (!) möglichen IP-Nummern entspricht - abzüglich Netzwerk-Basisadresse und Broadcast ergäbe das 0 nutzbare IP-Nummern. Ein Subnetz /31 gibt es also nur theoretisch, nicht praktisch.

    Etwas anders liegt der Fall bei /32, alias 255.255.255.255. Hier haben wir eigentlich gar keinen Hostanteil und damit genau genommen auch kein Subnetz. Man gibt mit dieser Maske jedoch eine single host route an, also z. B. eine PPP-Verbindung zu einem einzelnen Host, der sich irgendwo über Modem oder ISDN eingewählt hat.

    Da die /31 wegfällt, ergeben sich demnach acht mögliche Subnetzmasken für ein Class-C-Netz:

    255.255.255.0 - Kurz: /24 - Hostanzahl: 254
    255.255.255.128 - Kurz: /25 - Hostanzahl: 126
    255.255.255.192 - Kurz: /26 - Hostanzahl: 62
    255.255.255.224 - Kurz: /27 - Hostanzahl: 30
    255.255.255.240 - Kurz: /28 - Hostanzahl: 14
    255.255.255.248 - Kurz: /29 - Hostanzahl: 6
    255.255.255.252 - Kurz: /30 - Hostanzahl: 2
    255.255.255.255 - Kurz: /32 - Hostanzahl: 1

    Beispiel: Subnetzmaske 255.255.255.128 (11111111.11111111.11111111.10000000):

    Mit dieser Subnetzmaske kann ein Class-C-Netz in zwei unabhängige Netze aufgeteilt werden:

    Netz 1: Hostadressen von 1 bis 126 (0000 0001 bis 0111 1110)
    Netz 2: Hostadressen von 129 bis 254 (1000 0001 bis 1111 1110)

    Wie bereits erläutert, kann die jeweils niedrigste / höchste Adresse kann nicht verwendet werden, also in

    Netz 1: 0 und 127
    Netz 2: 128 und 255

    Angenommen, wir teilen das Class-C-Netz 192.168.0.x mit dieser Subnetzmaske in zwei Netze auf, sieht das so aus:

    Maske:    11111111.11111111.11111111.10000000
    Netzwerkanteil                                  Hostanteil

    Netz 1:
    Basisadresse:     11000000.10101000.00000000.00000000
    Rechner 1:            11000000.10101000.00000000.00000001
    Rechner 2:            11000000.10101000.00000000.00000010
    Rechner 3:            11000000.10101000.00000000.00000011
    ....
    Rechner 125:        11000000.10101000.00000000.01111101
    Rechner 126:        11000000.10101000.00000000.01111110
    Broadcast:            11000000.10101000.00000000.01111111

    Bis hierher sind nur der Hostanteil, also die ersten sieben Stellen unterschiedlich, der Netzanteil ist
    gleich. Jetzt aber kommt die achte Stelle ins Spiel:

    Netz 2:
    Basisadresse:     11000000.10101000.00000000.10000000
    Rechner 1:            11000000.10101000.00000000.10000001
    Rechner 2:            11000000.10101000.00000000.10000010
    Rechner 3:            11000000.10101000.00000000.10000011
    ....
    Rechner 125:        11000000.10101000.00000000.11111101
    Rechner 126:        11000000.10101000.00000000.11111110
    Broadcast:            11000000.10101000.00000000.11111111

    Wie Ihr seht, alles keine Zauberei. Ein Computer kennt wirklich nur Nullen und Einsen!

    Kommentar schreiben

    Sicherheitscode
    Aktualisieren

    © 2018 Exilschwaelmer. All Rights Reserved. Designed By JoomShaper

    Wir nutzen Cookies auf unserer Website. Einige von ihnen sind essenziell für den Betrieb der Seite, während andere uns helfen, diese Website und die Nutzererfahrung zu verbessern (Tracking Cookies). Sie können selbst entscheiden, ob Sie die Cookies zulassen möchten. Bitte beachten Sie, dass bei einer Ablehnung womöglich nicht mehr alle Funktionalitäten der Seite zur Verfügung stehen.