Netzwerk
- IP-Adressen (IPv4)
- öffentliche IP-Adressen
- private Netze
- eigene IP-Adresse, IP-Adresse gegen aussen
- Routing
- DNS (Domain Name Service)
- Domain, Subdomain
- Hierarchische Auflösung, Caching
- Ports
- Typische Ports: https (443), http (80), dns (53), ssh (22)
- Dynamische Ports
- NAT (Network Address Translation)
IP-Adresse (IPv4)
Services, die Ihre öffentliche(n) IP-Adresse(n) anzeigen:
- https://www.top10vpn.com/tools/what-is-my-ip/ (gibt aus IPv6 Adressen aus, falls Sie mit einer unterwegs sind).
Kommandos, die Ihre lokalen IP-Adressen anzeigen:
ipconfig # Windows (und Mac?) ip addr # Linux
Kommando, das Ihre öffentliche IP-Adresse anzeigt:
curl --silent https://ifconfig.me curl --silent https://ifconfig.me/all
Private und reservierte Netzwerke
Folgende Bereiche von IP-Adressen sind reserviert und «gibt es nicht» im Internet:
- 10.0.0.0 bis 10.255.255.255 (für grosse Netzwerke, wie z.B. das Schul-WLAN)
- 172.16.0.0 bis 172.31.255.255 (für mittlere Netzwerke, z.B. das interne Netzwerk vom Cluster, der die Schulnetze betreut.)
- 192.168.0.0 bis 192.168.255.255 (für kleine Netzwerke, typischerweise zu Hause)
- 127.0.0.0 bis 127.255.255.255 (Loopback Netzwerk, normalerweise der eigene Computer, auch localhost genannt).
Anatomie einer IP-Adresesse
- 4 Bytes, normalerweise Dezimal geschrieben mit 3 Punkten getrennt.
- Aufgeteilt in Netzteil (erste $n$ Bits) und Hostteil (letzte $32-n$ Bits).
- Netzmaske gibt an, wie viele Bits zum Netzteil gehören. Binär sind das immer $n$ Einsen, gefolgt von $32-n$ Nullen. Beispiele:
- 255.255.255.0 (24 Bit Netzmaske)
- 255.255.0.0 (16 Bit Netzmaske)
- 255.255.255.254 (31 Bit Netzmaske)
Datenpakete Routing
Aussprache: «ruuting», wie französisch «route», («rauting» wäre dann die Fräsmaschine)
- Internet: Ein Netz, das Netzwerke verbindet (Netzteil der IP-Adresse).
- Datenpaket:
- Zieladresse, Zielport (Nummer von 0-65535)
- Absenderadresse, Absenderport
- Meta-Daten
- Payload (Inhalt, Nutzlast)
- Routing: Datenpakete von einem Netz ins nächste weiterleiten.
- Router: «Computer mit 2 oder mehr Netzwerkanschlüssen» (für jedes verbundene Netz eines).
- Aus den ersten Bits der Zieladresse wird entschieden, in welches nächste Netz das Datenpacket weitergeleitet werden soll
- Meist mehrere Möglichkeiten, Auswahl nach Auslastung/Geschwindigkeit.
Packetverfolgung
tracert tech-lab.ch # Windows traceroute tech-lab.ch # Linux (evtl. Installation vom Programm nötig)
DNS
Domain Name Service. «It's always DNS» (wenn es Netzwerkprobleme gibt)
- Telefonbuch für IP-Adressen
- tech-lab.ch ist (für Menschen) einfacher als 81.62.232.82
- TLD: Top Level Domain (z.B. .ch, .com, .de etc). Der letzte Teil eines Domain-Names.
- Domain: Name.TLD, z.B. tech-lab.ch, ksbg.ch, google.com. (Ein Name (ohne Punkt), Punkt, TLD).
- Subdomain: subdomain.name.tld, z.B. www.tech-lab.ch, ofi.tech-lab.ch, fginfo.ksbg.ch, www.ksbg.ch (www, ofi, fginfo wären hier die Subdomains).
Reservierung einer Domain
- TLD legt Regeln für mögliche Domains fest.
- Registrare verwalten Domain-Reservierungen. Kostet je nach Domain und Registrar zwischen 10.- und 100.- pro Jahr (oder mehr)
- Domain grabbing (z.B. Expo01 Story)
- Domain Streitigkeiten (zu blöd, wenn Familie Maggi den Domain maggi.com benutzt hat), siehe https://mll-legal.com/wp-content/uploads/2019/12/maggi_case.pdf
Lookup auf der Kommandozeile:
nslookup tech-lab.ch # Windows host tech-lab.ch # Linux
Die Auflösung funktioniert auch in die entgegengesetzte Richtung, also z.B.
nslookup 81.62.232.82
Wer ist also der Internetprovider vom Tech-Lab?
- Finden Sie heraus, bei welchem Anbieter www.ksbg.ch ghostet ist.
- Finden Sie heraus, wer der Internetprovider der KSBG ist.
Anatomie der Namensauflösung
- Root-Server
- Wissen, welche Server für TLD-Auflösungen zuständig sind (z.B. für .ch-Domains).
- TLD DNS (z.B. für .ch)
- Wissen, welche Nameserver für einen bestimmten Domain zuständig sind (z.B. für tech-lab.ch)
- Authoritative Nameserver
- Kennt alle Subdomain, Mailserver etc. für einen einen Domain.
- Nameserver vom Provider: Kennt die IP noch, oder fragt nach (Caching)
- Nameserver vom Modem/Router zu Hause: Kennt die IP noch, oder fragt nach (Caching)
- Lokaler Computer: Kennt die IP noch, oder fragt nach (Caching)
Die Anfragen werden zwischengespeichert während einer gewissen Zeit (TTL, Time to live), meist Stunden bis Tage.
Gecashte Einträge anzeigen (zeigt auch, mit welchen Adressen ihr Computer letztlich höchstwahrscheinlich kommuniziert hat).
ipconfig -displaydns # Windows
Zuständige Nameserver für einen Domain finden:
nslookup -type=ns tech-lab.ch # Windows host -t ns tech-lab.ch # Linux dig ns tech-lab.ch # Linux
- Finden Sie heraus, bei welchem Provider wohl der Domain-Name ksbg.ch reserviert wurde.
Ports
Bei einem Verbindungsaufgaufbau ist nicht nur die IP-Adresse, sondern auch die Portnummer wichtig.
- Laden Sie folgendes Archiv: webserver.zip herunter und entpacken Sie es.
- Navigieren Sie auf der Kommandozeile ins entpackte Verzeichnis und starten Sie einen einfachen Webserver mit
python -m http.server
- Verbinden Sie sich dann auf http://localhost:8000
- Betrachten Sie die Ausgabe auf der Konsole.
- Verbinden Sie sich aufs Tech-Lab Netzwerk (falls möglich).
- Wenn Ihr Webserver gestartet ist, geben Sie jemanden die IP-Adresse Ihres Computers (im Tech-Lab Netz 192.168.1.xyz). Er soll per http://192.168.1.xyz:8000 auf Ihren Webserver zugreifen.
- Sie dürfen gerne «Ihre» Webseite modifizieren oder weitere Dinge hinzufügen.
NAT
Network Address Translation.
- Problem: Theoretisches Limit von $2^{32}$ IP-Adressen, praktisch noch etwas weniger (3.6 Milliarden?)
- Lösung IPv6 ($2^{128}$ Adressen), aber niemand will umstellen…
- Workaround: NAT
- Am Beispiel der Schule:
- Eine öffentliche IP-Adresse gegen aussen.
- Datenpakete nach draussen werden vom Gateway (erster Router) umadressiert und sich die Verbindungsdetails (IP/Portnummer) gemerkt.
- Einkommende Antworten werden mit gemerkter Liste wieder umadressiert und an korrekte interne IP weiter geleitet.
- Verbinden Sie sich auf das Schule-SG WLAN
- Verfolgen Sie die Stationen eines Datenpakets zum tech-lab.ch Server mit
tracert tech-lab.ch
- Finden Sie eine interne IP vom Cluster (d.h. eine IP eines private Netzwerks, aber nicht ihres eigenen)?