Jeder Host im Netzwerk erhält eine eindeutige Adresse, die sogenannte
IP-Adresse oder IP-Nummer. Das 'IP' in der Bezeichnung deutet darauf hin, daß
hierfür das Internet Protocol zuständig ist.
In der aktuellen Version von TCP/IP wird jedem Rechner eine 32 Bit lange
Adresse zugeordnet, die der besseren Lesbarkeit halber in der Form
xxx.xxx.xxx.xxx geschrieben wird. Hierbei werden die einzelnen Bytes
durch Punkte getrennt. So sind IP-Adressen von 0.0.0.0 bis 255.255.255.255
möglich. Für die Verwendung durch Hosts nicht alle Nummern nutzbar, einige
z.B. sind für die Netzadresse oder sogenannte Broadcasts reserviert. Mehr
dazu weiter unten.
Eine typische IP-Adresse könnte nun lauten
141.89.64.1
(ist in diesem Fall der Nameserver der Universität Potsdam). In
Binärschreibweise wäre dies
10001101 1011001 1000000 00000001
Eine IP-Adresse gliedert sich nun in einen vorderen und einen hinteren
Teil. Der vordere Teil stellt die Netzadresse dar, der hintere Teil die
Host-Adresse. Die IP-Adresse bezeichnet das Netz, in dem sich ein Rechner
befindet und seine Nummer in diesem Netz. Die Trennung dieser beiden
Teile kann prinzipiell an jedem Bit der Adresse erfolgen. Dazu benötigt
man aber noch die sogenannte Netzmaske. Diese Netzmaske ist genauso lang
wie die IP-Adresse und wird bis zu einem bestimmten Bit mit Einsen gefüllt.
Der Rest wird auf Null gesetzt. Alle Bits in der IP-Adresse, die in der
Netzmaske belegt sind, zählen dann zum Netzanteil, der Rest zum Hostanteil.
Lassen wir der Theorie einige Beispiel folgen und zwar in der nächsten
Abbildung:
Beispiel
|
[1] Binär Dezimal
IP-Adresse 10001101 1011001 01000000 00000001 141.89.64.1
Netzmaske 11111111 1111111 00000000 00000000 255.255.0.0
---------------- ---------------- ------- ---
Netz-ID Host-ID Netz Host
[2] Binär Dezimal
IP-Adresse 00111010 00010001 10000011 00101100 58.17.131.43
Netzmaske 11111111 11111111 11111111 00000000 255.255.255.0
------------------------ -------- ------- ---
Netz-ID Host-ID Netz Host
[3] Binär Dezimal
IP-Adresse 01111011 00000101 01100100 00000010 123.5.100.2
Netzmaske 11111111 11111111 11110000 00000000 255.255.240.0
------------------------ -------- ------- ---
Netz-ID Host-ID Netz Host
|
Im ersten Beispiel verwenden wir als Netmask 255.255.0.0, d.h. die ersten
16 Bit der Adresse sind dem Netzteil vorbehalten, hier 141.89, die restlichen
16 Bit werden zur Adressierung des Hosts in diesem Netz verwendet, dazu
bleiben 254*254, also gut 64.516 Möglichkeiten - praktisch können also
über 64.000 Hosts in diesem Netz adressiert werden. Die Adresse 141.89.0.0
ist für das Netzwerk selbst reserviert, die Adresse 141.89.255.255 bezeichnet
die sogenannte Broadcast-Adresse: Pakete an diese Adresse werden an alle
Stationen im Netz verschickt.
Doch fahren wir mit unseren Beispielen fort. Beispiel Nummer zwei beschreibt
den Host 58.17.131.43 mit der Netmask 255.255.255.0. Hier sind also 24 Bit
für den Netz- und 8 Bit für den Hostanteil reserviert. Theoretisch kann es
in diesem Netz maximal 254 Hosts geben. Adresse dieses Netzwerk ist
58.17.131.0, Broadcasts gehen an 58.17.131.255.
Das dritte Beispiel zeigt nun, dass man sich bei der Netzmaske keinesfalls
auf ganze Bytes beschränken muß. Bei dieser Adresse macht der Netzanteil
20 Bit aus, der Hostanteil 12 Bit. Die Netzadresse ist hier 123.5.6.0 (bis
zum 20. Bit), Broadcasts gehen an 123.5.112.255 (Alle Bits ab dem 21. sind
auf 1 gesetzt).
Die verschiedenen Netzmasken lassen sich in verschiedene Klassen unterteilen:
Class-A-Netz haben die Netmask 255.0.0.0, Class-B-Netze die Netmask
255.255.0.0 und Class-C-Netze die Netmask 255.255.255.0. Netze mit anderen
Netmasks bezeichnet man als Subnetze.
Man sieht, dass eine Netzmaske mit "1" beginnen und mit "0"
aufhören muß. Eine Netzmaske "11111111000000011111110000000"
macht keinen Sinn, da der Netzwerkanteil hier nicht geschlossen
auftauchen würde; es gibt ja zwei Grenzen zwischen Netz- und
Hostanteil! Eigentlich beschreibt die Netzmaske also eine Grenze
an einer bestimmten Bitposition. Diese Grenze kann man auch
einfach als eine Zahl angeben. Dazu zählt man einfach die "1".
Aus "1111111111111111111110000000" bzw. 255.255.255.0 wird dann
kurz "24" und aus 255.255.0.0 wird dann "16". Üblich ist
folgende Notation: man schreibt die kurze Netzmaske durch einen
Schrägstrich getrennt hinter eine Netzwerkadresse. Aus
141.89.0.0, Netzmaske 255.255.0.0 wird dann kurz 141.89.0.0/16
oder noch kürzer 141.89/16 (durch die Netzmaske ist ja klar, daß
hinter der Netzwerkadresse nur noch "0" kommen können).
Heute verwendet man jedoch weitgehend CIDR, Classless Internet
Domain Routing. Das heißt, man ist nicht mehr auf Netzklassen A,
B und C festgelegt, sondern kann auch kleinere Netze verwenden.
Dadurch werden Netzmasken wie zum Beispiel 255.255.255.252, kurz
30 verwendet, die ein Netz mit lediglich 4 IP Adressen
bezeichnet, das kleinste sinnvolle Netz (2 IP ist wenig sinnvoll,
da ja die erste [kleinste] Adresse das Netzwerk, und die größte
für Broadcast reserviert ist, so dass hier keine [0] Adresse
nutzbar wäre). Bei Standleitungen bekommt man in Deutschland
häufig 8 IP Adressen, Netzmaske ist demzufolge 255.255.255.248,
kurz 29. Von diesen sind dann 6 nutzbar.
Das Kopfrechnen ist hier unübersichtlich. Bei der Netzmaske in
Langform erhält man die Zahl der IP Adressen, in dem man schaut,
wieviel zwischen Netzmaske und 255.255.255.255+1 übrig bleibt.
Das + 1 kommt daher, dass die letzte Position selbst auch Teil des
Netzes ist: 256-252=4, 256-248=8. Mit der kurzen Netzmaske ist
das etwas anders. Man subtrahiert diese zunächst von 32 und
erhält die Anzahl der Bits für den Hostanteil (also die möglichen
Adressen): 32-30=2, 32-29=3. Um von Bits auf mögliche Werte zu
kommen, muß man nun (wie immer) "zwei hoch Bit" rechnen, also
2^2=4, 2^3=8. Man kommt hier natürlich auf das gleiche Ergebnis,
wie wenn man die Langform verwendet.
Bei der Kurzform kann man übrigens keine ungültigen Netzmasken
angeben, bei der Langform hingegen schon. Man überlege sich die
Netzmaske 255.255.255.127. Vielleicht ist das auf den ersten
Blick nicht erkennbar, aber binär ist das ja "1111111 111111
111111 0111111". Man sieht eine "0" in der "Mitte". Diese
Netzmaske kann man gar nicht in Kurzform schreiben. Genauer
gesagt, ist diese Angabe überhaupt keine Netzmaske.
Natürlich kann man sich IP-Adressen nicht einfach ausdenken, denn
die Netzwerke, mit denen man Daten austauschen möchte, müssen
diese Adresse ja erreichen können, also den Weg zu dieser Adresse
finden. Wählt man sich über einen Internet Provider in das
Internet ein, so erhält man von diesem beispielsweise eine
Adresse zugewiesen (man bekommt meistens bei jeder Anwahl eine
neue und nennt diese Adressen daher "dynamisch"). Mietet man sich
eine Standleitung, erhält man in der Regel gleich mehrere
IP-Adressen. Diese Adressen "gehören" meistens weiterhin dem
Provider, jedoch wird der Endkunde meistens in einer öffentlich
zugänglichen Datenbank eingetragen.
Nun wollen wir mit unserem Netz aber gar nicht fest an das Internet
angebunden sein. Dann steht uns die Wahl der Netzadressen im Grunde
genommen frei, dies kann aber später zu Problemen führen. Stellen wir uns
vor, wir möchten ein Netzwerk mit der Adresse 141.89.0.0 aufbauen. Soweit
kein Problem, unsere Rechner bekommen IP-Nummern von 141.89.1.1 bis
141.90.254.254 mit Netzmaske 255.255.0.0 und alles sollte funktionieren.
Wenn dieses Netzwerk allerdings irgendwann in das Internet eingebunden wird
kommt es zwangsläufig zu Konflikten mit Hosts irgendwo da draußen.
Abhilfe schaffen hier die sogenannten privaten Adressräume. Hierbei handelt
es sich um Bereiche von IP-Adressen die im Internet nicht
geroutet werden (dürfen) und für LANs frei verwendet werden
können. Diese werden in RFC 1918 definiert. Im einzelnen sind
dies:
-
1 Class-A-Netz 10.0.0.0 ... 10.255.255.255
-
16 Class-B-Netze 172.16.0.0 ... 172.31.255.255
-
256 Class-C-Netze 192.168.0.0 ... 192.168.255.255
Da heute "classless" geroutet wird (CIDR), notiert man diese meistens:
-
10.0.0.0/8
-
172.16.0.0/12
-
192.168.0.0/16
Letzteres zum Beispiel kann man sich dann in 256 C-Netze oder in
512 Netze mit je 128 Adressen oder auch in verschiedene
unterschiedlich große aufteilen.
|
|