Skip to content

Commit

Permalink
Add Routing im Internet.
Browse files Browse the repository at this point in the history
  • Loading branch information
SilasBerger committed Feb 24, 2024
1 parent d6bad97 commit eef7461
Show file tree
Hide file tree
Showing 11 changed files with 186 additions and 1 deletion.
4 changes: 3 additions & 1 deletion config/scriptsConfigs/lerbermatt.scriptsConfigs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,9 @@
- section: 01-Netzwerke/01-Anfaenge-des-Web.mdx
material: Netzwerke/04-Anfaenge-des-Web.mdx
- section: 01-Netzwerke/01-Aufgaben-Routing-im-Alltag.mdx
material: Netzwerke/98-Aufgaben-Routing-im-Alltag.mdx
material: Netzwerke/97-Aufgaben-Routing-im-Alltag.mdx
- section: 01-Netzwerke/02-Routing-im-Internet.mdx
material: Netzwerke/98-Routing-im-Internet.mdx
27k:
markers:
lerb.27k: 0
Expand Down
3 changes: 3 additions & 0 deletions config/scriptsConfigs/teach.scriptsConfigs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ gymnasium/informatik:
material: Codierung
- section: 04-Netzwerke
material: Netzwerke
ignore:
- 97-Aufgaben-Routing-im-Alltag.mdx
- 98-Routing-im-Internet.mdx
- section: 05-Kryptologie
material: Kryptologie
- section: 06-Microbit/img
Expand Down
179 changes: 179 additions & 0 deletions content/material/Netzwerke/98-Routing-im-Internet.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,179 @@
---
sidebar_custom_props:
source:
name: ofi-blog.gbsl.website
ref: https://ofi.gbsl.website/26e/Netzwerke/Routing/routing-internet
---

import SearchBox from '@site/src/app/components/SearchBox';

# Routing im Internet
Wie Pakete eine Postadresse haben, brauchen auch Datenpakete eine Adresse, damit sie korrekt zugestellt werden können. Diese Adressen nennt man **IP-Adressen**, wobei IP für *Internet Protocol* steht.

## Adressierung
Normalerweise erhält jedes Gerät beim Beitritt zu einem Rechnernetz eine IP-Adresse zugewiesen. Die Adresse gehört zum entsprechenden Netz und erlaubt die Kommunikation mit allen Geräten die sich ebenfalls im selben Netz befinden. Deshalb erhält Ihr Gerät hier am Gymnasium eine andere Adresse als bei Ihnen zu Hause.

### Aufbau
Eine IP-Adresse (genauer, IPv4 Adresse) setzt sich aus 4 Zahlen zu je 8 Bit zusammen. Diese 4 Zahlen werden im Dezimalsystem notiert und mit Punkten verbunden.

```
194.124.132.216
```

Es gibt also insgesamt $2^{32} = 4'294'967'296$ verschiedene IP-Adressen. Auf den ersten Blick scheint die Anzahl sehr gross zu sein. Durch die Vielzahl an internetfähigen Geräten weltweit sind ein Grossteil der Adressen inzwischen vergeben. Deshalb gibt es eine neuere IP-Version 6, die aber den alten Standard noch nicht ersetzt hat. Mehr dazu [hier: IPv6](../010-Begriffe/1-ip-adresse.md#ipv6-adressen).

### Ping
Beim Ping-Befehl handelt es sich um ein Netzwerkdiagnose-Tool, womit man die Datenübertragung zu einem anderen Gerät überprüfen kann. Dabei sendet man ein Signal an ein entferntes Gerät. Dieses Gerät sollte dann ein Signal zurücksenden.

```sh title="In der Kommandozeile"
ping 194.124.132.216
```

:::aufgabe[Ping ausführen]
Öffenen Sie die Kommandozeile (Eingabeaufforderung) und führen Sie einen Ping mit folgenden IP-Adressen aus:

```sh
8.8.8.8
185.237.144.226
194.150.245.142
127.0.0.1
```

- Was bedeutet die Ausgabe?
- Wieso gibt es Unterschiede?

<details>
<summary>Antwort anzeigen</summary>
<div>
Der Ping-Befehl sendet wiederholt eine Test-Paket in der Grösse von 64 Bytes an die gewünschte IP-Adresse und misst dabei, wie lange es dauert, bis eine Antwort zurückkommt.

Bei der Adresse `194.150.245.142` kommt keine Antwort zurück - dies bedeutet, dass unter dieser Adresse kein Gerät erreichbar ist.

Bei der Adresse `127.0.0.1` kommt die Antwort viel schneller als bei den beiden ersten. Das liegt daran, dass es sich hierbei um die sogenannte **Loopback-Adresse** handelt: Unter `127.0.0.1` erreicht man auf jedem Computer diesen Computer selbst. Die Daten müssen also nie Ihr Gerät verlassen, weshalb auch so schnell eine Antwort kommt. Das ist so, als würden Sie einen Brief an sich selbst Adressieren - sie müssen ihn gar nicht erst zur Post bringen, um ihn zu zuzustellen.
</div>
</details>
:::

## Routing für Datenpakete
Routing-Algorithmen sorgen dafür, dass Datenpakete ihren Weg durch das Internet finden. Dabei kann es sein, dass mehrere Pakete mit demselben Ziel unterschiedliche Routen nehmen.

![Netzwerkrouting](img/routing.svg)

### Router im Schichtenmodell
Der **Router** ist das **Paketverteilzentrum** und verbindet mehrere Netzwerke miteinander. Er besitzt also mindestens **zwei Netzwerkkarten** und somit auch mindestens **zwei IP-Adressen** um sich mit den einzelnen Netzwerken zu verbinden.

Sie müssen die **IP-Pakete auspacken**, damit diese gemäss der IP-Adresse **weitergeleitet** werden können. Dabei bedienen sich Router spezieller Tabellen, welche angeben, wohin ein Paket mit einer bestimmten IP-Adresse hingeleitet werden soll.

![](img/routing_slim.png)

:::insight[Benötigte Informationen]
Damit ein Router ein IP-Paket weiterleiten kann, braucht er folgende, im Paket enthaltene Informationen:
- IP-Adresse Sender
- IP-Adresse Empfänger
:::

## Standardgateway
Für die Kommunikation mit Geräten ausserhalb des eigenen Netzwerks müssen die Internetpakete zum nächsten Verteilzentrum geschickt werden. In der Analogie zum Öffentlichen Verkehr ist dies die nächstgelegene Haltestelle, die Sie zum Hauptbahnhof bringt: wollen Sie an einen Ort ausserhalb ihrer Stadt, so gehen Sie zum Hauptbahnhof, wo Sie in die richtige Richtung weitergeleitet werden. Dieser Weg zum Hauptbahnhof wird bei Netzwerkfähigen Geräten **Standardgateway** genannt.

### Standardgateway ihres Laptops
So bestimmen Sie das Standardgateway Ihres Laptops:

::::Tabs{groupId="os"}
:::Tab[Windows]{value="windows"}
```.sh title="In der Kommandozeile (cmd) eingeben"
ipconfig
```

![](img/ipconfig.png)
:::

:::Tab[macOS]{value="macos"}
```.sh title="In der Koommandozeile (terminal) eingeben"
netstat -nr
```

![](img/netstat.png)
:::
::::

:::insight[Nicht überall gleich]
Zu Hause haben Sie als Standardgateway die IP-Adresse Ihres Routers/Modems eingetragen – also dem Gerät, das Sie von Ihrem Internet-Anbieter erhalten, um Zugang zum Internet zu erhalten.
:::

:::aufgabe[Standardgateway bestimmen]
Falls Sie ihr aktuelles Standardgateway noch nicht kennen, dann finden Sie es jetzt heraus. Halten Sie das Ergebnis für die nächste Aufgabe zur Hand.
:::

## Routen verfolgen
Der Befehl `traceroute` (macOS) resp. `tracert` (Windows) kann diese Route nachverfolgt werden. Dabei werden die Zwischenstationen – also dort wo das Paket entpackt und gemäss Ziel-IP-Adresse weitergeleitet wird – angezeigt.

:::::aufgabe[traceroute]
::::Tabs{groupId="os"}
:::Tab[Windows]{value="windows"}
Öffnen Sie eine Eingabeaufforderung (cmd) und geben Sie nacheinander die folgenden drei Befehl ein:
```.sh title="In der Kommandozeile (cmd)"
tracert office.com
tracert www.google.ch
tracert www.lerbermatt.ch
```
:::

:::Tab[macOS]{value="macos"}
Öffnen Sie eine Eingabeaufforderung (terminal) und geben Sie nacheinander die folgenden drei Befehl ein:

```.sh title="In der Kommandozeile (terminal)"
traceroute office.com
traceroute www.google.ch
traceroute www.lerbermatt.ch
```
:::
::::

Beobachten Sie den Output. Erkennen Sie Gemeinsamkeiten oder irgendeine spezielle Zwischenstation?

<details>
<summary>Antwort anzeigen</summary>
<div>
Die erste Zwischenstation ist immer Ihr Standardgateway. Vergleichen Sie mit dem Resultat der vorangehenden Aufgabe!

Danach sind vermutlich noch ein paar weitere Zwischenstationen bei allen drei Traceroute-Abfragen identisch. Das liegt daran, dass Ihre Pakete höchstwahrscheinlich immer den gleichen Weg zum nächsten Verteilzentrum Ihres Internetanbieters (Swisscom, UPC, etc.) nehmen. Erst dann laufen die Routen auseinander, denn nun muss das Paket von diesem Verteilzentrum über eine möglichst effiziente Route zur Ziel-Adresse vermittelt werden.
</div>
</details>
:::::

## «Highspeed-Routen»
### Schweiz
Auf der untenstehenden Karte erkennt man die schnellsten Leitungen von Switch. Diese Organisation verbindet die Universitäten und Forschungsinstitute miteinander und mit dem Ausland.

![SWITCH-LAN](img/switch-lan.jpg)

Andere Provider besitzen ebenfalls schnelle Leitungen zwischen den Städten und ins Ausland. z.B. wurden bestehenden Gas-Leitungen mit schnellen Glasfaser-Kabeln versehen.

![GASCOM](img/gascom-lan.png)

### Interkontinental

Bei der Verbindung von Kontinenten hatte man schon vor dem Internet-Zeitalter Unterseekabel verlegt.

![](img/international-lan.png)

Heute laufen zahlreiche «Highspeed-Routen» über den Grund der Meere.

::youtube[https://www.youtube.com/embed/0TZwiUwZwIE?si=wP5CQXEA14LpFh_0]

:::aufgabe[Unterseekabel]
Wie kommt ein Datenpaket von Köniz
- in die USA?
- nach Madagaskar?

https://www.submarinecablemap.com/

<details>
<summary>Antwort anzeigen</summary>
<div>
Auf dem Weg in die USA liegt der vermutlich nächste Untersee-Eintrittspunkt in Frankreich, und zwar in Saint-Hilarie-de-Riez. Von dort aus durchquert das Paket im Kabel _Dunant_ den Atlantik, bis es schiesslich in Virginia Beach die USA erreicht. Falls das Paket jedoch einen nördlicheren Teil der USA erreichen muss (z.B. Massachusetts oder New York), dann könnte es seine Atlantiküberquerung auch in Nordfrankreich oder in Südengland antreten.

Um nach Madagaskar zu gelangen, geht das Datenpaket vermutlich zuerst über Frankreich oder Italien durch das Mittelmeer nach Ägypten. Von dort aus wandert es durch den Suezkanal und durch das rote Meer in den Indischen Ozean, wo es wahrscheinlich nach einem Zwischenstopp in Kenya endlich Madagaskar erreicht.
</div>
</details>
:::
Binary file added content/material/Netzwerke/img/gascom-lan.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added content/material/Netzwerke/img/ipconfig.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added content/material/Netzwerke/img/netstat.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit eef7461

Please # to comment.