anleitungen:netzwerk_grundlagen

Dies ist eine alte Version des Dokuments!


Dieser Artikel befindet sich noch in Arbeit.

Netzwerkgrundlagen

Wer mehr machen möchte, als nur Router zu flashen und aufzustellen, braucht früher oder später ein paar Grundkenntnisse von Netzwerken. Hier sollen zumindest die Grundkenntnisse erklärt werden, die wir bei Freifunk in Mössingen brauchen.

Ein Netzwerk ist einfach eine Menge von Computern oder anderen Geräten, die so miteinander verbunden sind, dass sie miteinander Daten austauschen können. Im einfachsten Fall verbindet man einfach zwei Geräte direkt mit einem LAN-Kabel:

Da die meisten Computer nur einen Anschluss (Port) haben, kann man nicht ohne weiteres mehrere Computer miteinander verbinden. Dafür verwendet man dann einen Switch:

Jedes Gerät hat eine eindeutige MAC-Adresse. Sie besteht aus 48 bit, die meist im Hexadezimalsystem dargestellt werden - z.B. 00:1b:21:5f:b3:90. Kennt man die MAC-Adresse eines Geräts aus dem obigen Beispiel, so kann man diesem bereits Daten schicken.

In einem Netzwerk kann man übrigens beliebig viele Switches aufstellen:

Wenn ein Gerät ein Paket losschickt, müssen sich die Switches auf dem Weg zwischen Absender und Empfänger immer darum kümmern, dass das Paket auch auf dem richtigen Port weitergeschickt wird. Dazu hat ein Switch eine SAT-Tabelle, in der steht, unter welchem Port welche MAC-Adresse zu erreichen ist. Schickt ein Computer ein Paket los, dann steht dort sowohl seine eigene MAC-Adresse als auch die des Empfängers drinnen. Ein Switch baut seine SAT-Tabelle auf, indem er schaut, von welcher MAC-Adresse und von welchem Port die Pakete kommen. Wenn ein Switch die Ziel-MAC-Adresse noch nicht in seinem SAT-Table hat, schickt er das Paket an allen Ports (außer an dem, über den er es bekommen hat) weiter. Das passiert auch, wenn die Tabelle anfangs noch ganz leer ist.

Damit das Weiterschicken der Pakete (auch Forwarding genannt) so funktioniert, ist es wichtig, dass es keine Schleifen im Netzwerk gibt (spätestens durch Broadcast-Pakete enstehen sonst große Probleme, siehe Wikipedia). Man nennt diese Netzwerkstruktur auch sternenförmig - so wie es im obigen Bild zu sehen ist.

Möchte man immer mehr Geräte miteinander verbinden, dann ergeben sich immer mehr Probleme. Z.B. würde man in einem großen Netzwerk gerne mehrere Querverbindungen haben, was aber gegen die sternförmige Topologie verstößt. Deswegen baut man sich lieber viele kleine Netzwerke, die man dann mit Routern verbindet.

Wie man im folgenden Beispiel sehen kann, kann man einen Router auch verwenden, um mehr als zwei Netzwerke miteinander zu verbinden. Außerdem kann man auch mehrere Router in einem Netzwerk aufstellen, um dieses Netzwerk mit mehreren anderen Netzwerken zu verbinden. Die Topologie innerhalb eines Netzwerks muss zwar noch sternenförmig sein, aber man darf diese Netzwerke mit Routern so verbinden, dass die Topologie außerhalb dann nicht sternenförmig ist.

Weil die Topologie jetzt nicht mehr sternenförmig sein muss, kann es auch mehrere Routen zwischen zwei Geräten geben. Hier sollte natürlich immer die Beste gewählt werden. Damit man sich nicht für jedes Gerät eine eigene Route merken muss, werden IP-Adressen verwendet. Das sind 32-bit Zahlen, die oft als vier 8-bit Blöcke dargestellt werden (z.B. 192.168.12.4). Jedes Subnetz (so nennt man Netzwerke in diesem Zusammenhang) bekommt jetzt einen IP-Adressbereich. Wie groß dieser ist, wird durch die Subnetzmaske bestimmt. Diese gibt an, wie viele der ersten Bits der Adresse zum Subnetzteil gehören - der Rest gehört dann zum Hostteil. Bei jedem Host aus einem Subnetz mit einer Subnetzmaske von n bit müssen die ersten n bit übereinstimmen - die restlichen 32-n bit werden dann benutzt, um jedem Gerät eine eindeutige Adresse zu geben.

Hier ein Beispiel dazu: Hier ein Beispiel dazu: Ein Host hat die Adresse 192.168.12.4 und sein Netzwerk hat die Subnetzmaske 24 (dafür schreibt man dann oftmals 192.168.12.4/24). In welchem Subnetz sich dieser Host befindet, erfährt man, wenn man sich die ersten 24 bit seiner IP-Adresse anschaut: 192.168.12.4 = 11000000.10101000.00001100.00000100 → 11000000.10101000.00001100.00000000 = 192.168.12.0. Diese Adresse nennt man auch die Subnetzadresse. Weil die Subnetzmaske mit 24 bit genau die ersten drei Blöcke in der Dezimaldarstellung einnimmt, sind auch die ersten drei Blöcke identisch zur IP-Adresse des Hosts und der Rest wird mit Nullen gefüllt. Man könnte sich nun auch Fragen, ob ein zweiter Host sich im selben Subnetz befindet. Dieser hat zum Beispiel die Adresse und Subnetzmaske 192.168.12.208/24. Um diese Frage zu beantworten, berechnet man wieder die Subnetzadresse: 192.168.12.208 = 11000000.10101000.00001100.11010000 → 11000000.10101000.00001100.00000000 = 192.168.12.0''. Da die Subnetzadresse dieselbe ist, befinden sich die Geräte im selben Subnetz. Das hätte man auch gleich dran sehen können, dass sich die ersten drei Blöcke der IP-Adressen gleichen - das geht aber nur, weil die Subnetzmaske in diesem Beispiel 24 bit einnimmt - wäre sie z.B. 22 bit lang, dann wäre das nicht so einfach.

In der folgenden Grafik haben nun alle Geräte auch eine passende IP-Adresse:

  • anleitungen/netzwerk_grundlagen.1701273754.txt.gz
  • Zuletzt geändert: 2023/11/29 17:02
  • von epkrichi