IPv4-basierende Netzwerke verwenden Host-Adressen nach dem Schema
aaa.bbb.ccc.ddd, die genau einem Interface (Netzwerkkarte, PPP-Ende,...)
zugeordnet seien sollen. Ausnamen bilden hier die für private Netze
reservierten Adressbereiche, Broadcast- und Multicast-Adressen,
der für Testzwecke reservierte und der für Boot-Protokolle reservierte
Adressbereich.
Die Adresse ist in einen sogenannten Subnetz- und Host-Teil aufgeteilt.
Die Aufteilung kann, muß aber nicht, einem Standard folgen:
Class A: Subnetzmaske 255.000.000.000
Class B: Subnetzmaske 255.255.000.000
Class C: Subnetzmaske 255.255.255.000
Der Adressraum wird folgendermaßen aufgeteilt:
0. 0. 0. 0 - 0.255.255.255 Bootp
1. 0. 0. 0 - 126.255.255.255 Class A
127. 0. 0. 0 - 127.255.255.255 Test area (127.0.0.1=loopback test)
128. 0. 0. 0 - 191.255.255.255 Class B
192. 0. 0. 0 - 223.255.254.255 Class C
223.255.255. 0 - 223.255.255.255 (Reserviert)
224. 0. 0. 0 - 239.255.255.254 Multicast (Class D)
240. 0. 0. 0 - 254.255.255.254 Experimentale/zukünftige Nutzung (Class E)
255.255.255.255 locales Broadcast (Netzwerkstrang)
"Neuer"dings werden auch im Class A-Bereich Class C-Netzwerke
vergeben.
Innerhalb dieser Adressbereiche wurden folgende Adresen für private Netzwerke
freigegeben:
10. 0. 0. 0: private Class A ( 1 Subnetz )
172. 16. 0. 0
bis 172. 31. 0. 0: private Class B ( 16 Subnetze)
192.168. 0. 0: private class C (255 Subnetze)
Class A hat sich bei Heim-Netzwerksessions als praktisch erwiesen, da
die Chance, eine belegte IP zu erwischen, rechnerisch 1/16.777.214 ist,
vorlieben nicht eingerechnet. Class C hingegen eignet sich für für Heim-Netzwerke, besonders wenn
irgendwann mehrere Stränge (z.B. der zum Nachbarn) liegen. Class B konnte sich wegen der "vielen" zu merkenden Zahlen nicht
durchsetzen.
Pakete von/zu solchen Adressen werden im Internet verworfen, so daß mehrere
lokale Netze sich nicht gegenseitig stören können.
Für eine Kommunikation über Netzwerkstränge hinaus muß ei sogenanntes Routing
erfolgen. Hierbei werden Datenpakete, die nicht im lokalen Subnetz zugestellt
werden können, einem Gerät, welches an mehr als einen Netzwerkstrang hängt,
zugestellt. Dieses Gerät wird nach seiner Funktion Router (vorzugsweise bei
Standalone-Geräten) oder Gateway (vorzugsweise bei PCs) zugestellt.
Damit erkannt werden kann, welche Adressen im lokalen Subnetz liegen,
wurde die Aufteilung in Subnetze vorgenommen.
Die Aufteilungh in Subnetze geschieht über die sogenannte Subnetzmaske.
Hierbei werden vier dezimale Zahlen in Bitwerte umgerechnet. Dieser Wert wird
dann mit der eigenen IP-Adresse und der Ziel-Adresse und-verknüpft. Ist der
Wert für beide Adressen gleich, so liegt das Ziel im lokalen Subnetz.
Für Einsteiger als Hilfe: Die Zahl(en) über der 255 müssenß bei allen
PCs eines Subnetzes gleich sein und bei allen Subnetzen insgesamt an mindestens
einer Stelle unterschiedlich, solange zwischen diesen geroutet wird.
Die Zahl(en) über der 0 müssenß bei allen PCs eines Subnetzes
an mindestens einer Stelle unterschiedlich sein, und sie dürfen nicht alle 0
und nicht alle 255 sein.
Traditionell durften nur die Class X-Subnetzmasken benutzt werden, da
alte Router nichts anderes verkraftet haben. Heutzutage liegen diese auf
Schrottplätzen oder dienen als Bügelbrett/Tisch/... . Demzufolge können auch
freie Netzwerkmasken eingegeben werden.
Routing erfolgt grundsätzlich an Hand von Routing-Tabellen, in denen die
Netzwerke (Subnetz ohne Host-Anteil), zu denen die vorhandenen Interfaces
(Netzwerkanschlüsse) führen, die Subnetz-Maske und eventuell ein Gateway,
über den die Pakete versendet werden müssen.
Die Einträge sind nach Größe der Subnetz-Maske geordnet und werden in dieser
Reihenfolge abgearbeitet. Dies erlaubt es, zusammenhängende Bereiche
einzutragen, ohne dabei eventuell anhängende Netze aussparen zu müssen.
In dem obrigen Beispiel werden private Netzwerkadressen benutzt, die nicht ins
Internet gelangen dürfen/sollen/nicht_wieder_herauskommen.
Daher benötigen wir einen Mechanismus, um dennoch zu surfen.
Ein Proxy ist ein Programm, daß Anfragen entgegennimmt, weiterleitet und das
Ergebnis zurückliefert. Hierbei können die Daten zwischengespeichert werden
oder bestimmte Inhalte können herausgefiltert werden.
Der Vorteil eines Proxies in dieser Situation ist, daß er auf dem am Internet
hängenden Rechner laufen kann. Dieser hat eine offizielle IP-Adresse, so daß
er problemlos (hoffentlich) mit dem Internet kommunizieren kann.
Gleichzeitig ist ein problemloser Datentransfer in unserem Netz (hoffentlich
auch) möglich.
Wird also als Proxy der am Internet hängende Rechner
(172.18.64.165 b.z.w. 10.156.045.035) eingetragen, so ermöglicht es uns
das auf diesem Rechner ("Proxy-Server") Programm ("Proxy-Server"), auf das
Internet zuzugreifen.
Auf dem Rechner, der mit dem Internet verbunden ist, läuft eine Erweiterung
des IP-Stacks, die aus lokalen Netz weitergeleitete Pakete so umschreibt,
daß sie direkt von der offiziellen Internet-Adresse zu kommen scheinen.
Ankommende Pakete werden wiederum so umgeschrieben, daß sie zu dem Host
zurückfinden, der die betreffende Anfrage gestellt hat.
Während dies für manche Protokolle (HTTP) trivial ist, ist für komplexere
Protokolle (FTP,Quake) eine spezielle Behandlung notwendig.