[wlanfhain] IP Grundwissen - bitte *LESEN*
Sven-Ola Tuecke
mail2news
Sa Nov 27 15:24:19 CET 2004
Hallo,
ich bekomme immer wieder Anfragen zu der OLSR-DHCP-Funktion. Aus den
Anfragen geht hervor, dass der Zusammenhang zwischen IP-Adresse und
Netzmaske oft nur halbverstanden ist. Ich weiß, das Internet wimmelt von
Erläuterungen. Ein Posting nur für *euch* bekämpft evt. doch den natürlichen
Lesewiederstand (hoffentlich):
Über eine DHCP-Anfrage erhält ein Notebook/PC für die Netzwerk-Karte eine
IP-Konfiguration. Die DHCP-Antwort enthält normalerweise die IP-Adresse, die
Netzmaske und ein Standard-Gateway. Zusätzlich können u.a. DNS-Server-IP,
Domain- und Rechnername in der DHCP-Antwort enthalten sein.
IP-Adresse: Das ist die bekannte 4-stellige Zahlenfolge mit Werten von
0-255. Im gesamten Netzwerk darf eine IP-Adresse nur einmal verwendet
werden. Beispiele für IP-Adressen:
216.239.59.104: google.de
172.16.1.24: HdL (im Internet nicht gültig)
192.168.1.1: WRT54g-Default (im Internet und im OLSR-Netz nicht gültig)
Netzmaske: Dieser Zahlenwert bestimmt das lokale IP-Subnetz. Ein IP-Subnetz
ist ein Teil-Netzwerk, in dem sich alle Rechner gegenseitig direkt - also
ohne Vermittlung von Routern, Gateway o.ä. untereinander erreichen können.
Beispiele für Netzmasken:
255.255.255.255: Kein IP-Subnetz, einzelne IP (auch /32)
255.255.255.254: Subnetz für 2 Rechner (auch /31)
255.255.255.252: Subnetz für 4 Rechner (auch /30)
255.255.255.248: Subnetz für 8 Rechner (auch /29)
255.255.255.240: Subnetz für 16 Rechner (auch /28)
255.255.255.224: Subnetz für 32 Rechner (auch /27)
255.2552.55.192: Subnetz für 64 Rechner (auch /26)
255.255.255.128: Subnetz für 128 Rechner (auch /25)
255.255.255.0: Subnetz für 256 Rechner (auch /24)
255.255.254.0: Subnetz für 512 Rechner (auch /23)
255.255.252.0: Subnetz für 1024 Rechner (auch /22)
...
128.0.0.0: Subnetz für 2147483648 Rechner (auch /1)
0.0.0.0: Subnetz für alle Rechner (auch /0)
Netzwerk-Adresse: Die Netzwerk-Adresse ergibt sich aus binären
Und-Verknüpfung von IP-Adresse und Netzmaske. Wenn euer Taschenrechner ein
binäres UND kann (z.B. Windows-Rechner in der Ansicht "Wissenschaftlich"),
könnt ihr das selbst ausrechnen. Beispiel: IP=192.168.5.236 und
Netzmaske=255.255.255.248. Es gehören 8 IP-Adressen zum Subnetz. Das Subnetz
hat dann die Netzwerk-Adresse 192.168.5.232. In der Praxis gibt man die
Netzwerk-Maske in der Schrägstrich-Notation mit an. Hier also
192.168.5.232/29.
Broadcast: Es gibt eine spezielle IP-Adresse in einem Subnetz, da wird eine
IP-Paket an alle IP-Adressen im Subnetz gesendet. Es ist immer die letzte
IP-Adresse des Subnetzes. Oder anders: Man verknüpft mit einem binären ODER
die Netzwerk-Adresse mit dem Einer-Komplement der Netzmaske (z.B.
Windows-Rechner Taste "Not"). Im obigen Beispiel ist das die 192.168.5.249.
Hinweis: Die Netzwerk-Adresse und die Broadcast-Adresse werden nicht als
Rechner-IP-Adressen benutzt. Es gibt also im Beispiel-Netzwerk max. 6
Rechner.
ARP: Im Ethernet und im WLAN werden IP-Pakete nicht direkt gesendet. Ein
IP-Paket wird in einen Ethernet-Frame eingepackt und erst dann gesendet bzw.
empfangen. Auch der Ethernet-Frame hat eine Quell- und eine Ziel-Adresse.
Als Adressen werden hier die bekannten MAC-Adressen der Ethernet/WLAN-Karten
verwendet. Eine Ethernet/WLAN-Karte empfängt genau die Ethernet-Frames mit
der eigenen MAC als Ziel-MAC-Adresse. Alle anderen Frames werden von der
Hardware komplett ignoriert. Das ARP-Protokoll stellt nun die Verbindung
zwischen MAC-Adresse und IP-Adresse her. Das ARP-Protokoll läuft im
Hintergrund mit und ermittelt beispielsweise kurz vor einen Ping die
MAC-Adresse des Ziel-Rechners. Aus Performance-Gründen gibt es einen
ARP-Cache.
Ethernet-Broadcast: Es kann als Ziel-Adresse die MAC ff:ff:ff:ff:ff:ff
angegeben werden. Ein solcher Ethernet-Frame wird von allen
Ethernet/WLAN-Karten empfangen. Die Ethernet/WLAN-Karte ermittelt anhand der
eingestellten IP/Netzmaske, wann es die Ziel-MAC-Adresse auf
ff:ff:ff:ff:ff:ff setzen muss. Darum ist die korrekte IP-Netzmaske so
wichtig. Hinweis: Es gibt einen Sonderfall, mit dem einige
Ethernet/WLAN-Karten im sog. Promiscous-Modus sämtliche Ethernet-Frames
empfangen kann. Dies braucht man z.B. mit dem Programm TCPDUMP, um den
Netzwerk-Verkehr untersuchen zu können. Soweit mir bekannt ist, schaltet das
OLSR-Dienstprogramm diesen Modus aber nicht ein. Es gibt einige
Geräte/Treiber, die grundsätzlich den Promiscous-Modus einschalten.
Standard-Gateway: Möchte der Notebook/PC ein IP-Paket an eine andere
IP-Adresse senden, wird er zunächst die Ziel-IP-Adresse untersuchen. Stellt
er fest, dass die Ziel-IP-Adresse im eigenen Subnetz liegt, sendet er
direkt. Bei allen anderen Ziel-IP-Adressen sendet er das IP-Paket an das
Standard-Gateway. Der Standard-Gateway-Rechner weiß dann hoffentlich, wie es
weiter geht.
Route: Nur mit Standard-Gateway kommt man bei der Weiterleitung von
IP-Paketen nicht weit. Darum gibt es z.B. auf dem WRT54g eine interne
Tabelle mit sog. Routen. Diese kann man manuell setzen (statische Route)
oder mit einem Routing-Protokoll dynamisch ermitteln (z.B. OLSR-Routen). Die
Routing-Tabelle wird Eintrag für Eintrag durchsucht. Der erste passende
Eintrag bestimmt, wohin ein IP-Paket weitergeleitet wird. Es gibt
Routen-Einträge nur zu einzelnen Rechnern. Die sog. Host-Routen haben eine
Netzmaske von 255.255.255.255 (auch /32). Und es gibt Routing-Einträge zu
ganzen Netzwerken (andere Netzmaske, z.B. 255.240.0.0) bei denen immer eine
Gateway-IP-Adresse angegeben ist. Das bezeichnetet Netzwerk kann über das
entsprechende Gateway erreicht werden. Ein Sonderfall ist die Default-Route
mit der Netzmaske 0.0.0.0 (auch /0). Dahin geht alles, was in der Tabelle
nicht gefunden werden konnte. Richtig: Die Einstellung "Default-Gateway"
setzt eine Default-Route.
NAT: IP-Adressen-Übersetzung (unter Linux auch Masquerading genannt). Nur
intern verwendete IP-Adressen werden von einem zentralen Router auf eine
einzige extern gültige IP-Adresse umgesetzt. Damit können z.B. 5
verschiedene Rechner über einen einzigen Internet-Zugang surfen. Damit kann
man auch für Nicht-OLSR-Rechner die externe Kommunikation in das OLSR-Netz
hinein umsetzen.
OLSR-DHCP: Damit das funktioniert, müssen *zwei* IP-Bereiche angeben werden.
Ein IP-Bereich mit den DHCP-Adressen (DHCP-Bereich) und zweitens eine
Netzmaske, die an die DHCP-Clients übermittelt wird (Euer Subnetz). Der
DHCP-Bereich muss in das Subnetz passen. Für den DHCP-Bereich wird ein NAT
eingerichtet. Wenn der WRT nicht über NAT kommunizieren soll, dann muss er
eine IP ausserhalb des DHCP-Bereichs bekommen. Damit die DHCP-Clients noch
das Standard-Gateway (euren WRT) erreichen, benötigen diese also eine
Netzmaske die einen *größeren* Bereich als den DHCP-Bereich bezeichnet.
HTH
Sven-Ola
Mehr Informationen über die Mailingliste Berlin