Rechnernetze BA Dresden :: 3MI11-1 :: Jan/Feb 2013 Vorlesung 2.2: Die OSI-Schicht 3 Josef Spillner <[email protected]> Experimentierumgebung Rechner Neunauge ● IP-Adresse: 141.76.41.201 ● Zugriff: über SSH (benutzer@rechner) ● Zugangsdaten: werden verteilt OSI-Schicht 3: Vermittlung Vielfältige Aufgaben ● Weiterleitung von Paketen über Zwischenrechner zum Ziel (Routing) ● Wegewahl, Anpassung, Optimierung ● Einheitliche Adressierung Wegewahl Global ● gesamte Topologie ist bekannt → OSPF Verteilt ● begrenzter Austausch an Weginformationen → RIP Lokal ● kein dynamischer Austausch → Hot Potato, Rückwärtslernen, Fluten Wegewahl: Lokale Verfahren Hot Potato: Sofort absenden an Weg mit kürzester lokaler Warteschlange bei Mehrfach-Wegen Rückwärtslernen: Ankommende Pakete führen Zähler mit Zahl überwundener Zwischenknoten, optimaler Vorgänger für Ursprungsknoten bestimmbar Fluten: Paket an alle Nachbarn weiterleiten, Terminierung durch dekrementierenden Zähler Wegewahl: OSPF Open Shortest Path First (OSPF) basierend auf Dijkstra-Algorithmus zur Suche des kürzesten Pfades in einem Netz Knotenbeschriftung: vorläufig oder permanent Algorithmus mit Arbeitsknoten AK: ● Ursprungsknoten ist permanent und AK ● Abstandsermittlung, vorläufige Beschr. ● Kleinster vorläufiger Knoten wird AK ● Terminierung, falls Endknoten permanent OSPF-Beispiel Netzwerk mit Pfadlängen (z.B. Entfernung, Verzögerung, Kosten) Suche A-E: Lösung: Übungsaufgabe Über welche möglichen Routen (abhängig vom Routingverfahren) wird die Nachricht von A nach D zugestellt? Das Internet 1969: ARPANET via PSTN 1970: Octopus-LAN 1974: Datendienst Telenet 1981: Internetprotokoll [OE13] 1983: BTX (später DATEX-J/-P) 1984: Mailboxsysteme FidoNet und MausNet 1994: kommerzielle Zugänge, CompuServe Routen im Internet [He11] Routen im Internet [He11] Das Internetprotokoll (IP) Verbindungsprotokoll hervorgegangen aus dem ARPANET Spezifikation 1981 in der Reihe „Request for Comments“: RFC 791 Eindeutige Identifizierung eines Geräts durch eine (global gültige) IP-Adresse Aber: Ein Gerät kann mehrere IP-Adressen haben IP-Adressfamilien IPv4 ● ● adressiert 32 Bit Einteilung in Netze durch Netzmasken Beispiele: IPv6 ● ● adressiert 128 Bit davon i.d.R. 64 Bit geräteabhängig für private Teilnetze 127.0.0.1 Beispiele: 192.168.0.0/32 ::1 141.76.40.99/28 fe80::224:d7ff:fe27:7b0c/64 IPv4-Pakete IHL: Headerlänge mit Multiplikator 32 Bit; Flags: z.B. zu Fragmenten [Gü13] Routing mit IP Autonome Systeme: Basisstruktur des Internets, verbunden über das Border Gateway Protocol (BGP) RFC 1519: Klassenloses Routing ● ● Reaktion auf Problem der Routenexplosion 173 Routen im Juli'88, 1727 im Juli'90, 6031 im Juli'92 Lokale Netze und NAT NAT: Network Address Translation → Gateway-Funktion zwischen zwei Netzen mit IP-Abbildung aller Endgeräte auf Gateway Vorteile ● weniger (globale) IP-Adressen ● vereinfachte Netzadministration Nachteile ● direkte Verbindungen erfordern STUN o.ä. Lokale Netze und VPN VPN: Virtual Private Network → Umsetzung auf Schicht 2 oder 3 Funktionsweise ● ● VPN bringt einen Rechner virtuell in ein anderes (eigentlich geschlossenes) privates Netz IP-Paket-Tunnel zwischen Rechner und VPN-Gateway Virtuelle lokale Netze VLAN: Virtuelles LAN → Segmentierung eines lokalen Netzes in mehrere mit unterschiedlichen Eigenschaften Funktionsweise ● ● Bildung logischer Teilnetze, z.B. anhand Steckernummern am Switch oder Ethernet-Markierungen Firewall- und Routingkonfiguration separat für jedes Teilnetz Hilfsprotokolle zu IP ICMP: Internet Control Message Protocol ● diagnostische Nachrichten, keine Daten IGMP: Internet Group Management Protocol ● Verwaltung von Multicastgruppen ARP: Address Resolution Protocol ● Zuordnung von IPv4-Adressen zu MACAdressen Hilfsprotokolle zu IP DHCP: Dynamic Host Configuration Protocol ● ● dynamischer Bezug einer IP-Adresse, einer Netzwerkmaske, eines Gateways und eines bzw. mehrerer DNS-Server dadurch vereinfachte Integration Funktionsweise ● ● Entdeckung des DHCP-Servers per Broadcast zeitlich beschränkte Zuordnung; Erneuerung Sicherheitsbetrachtung Klassische Sicherheitsanforderungen ● Verschlüsselung ● Echtheitsprüfung IP-Kommunikation ● Autentifizierungs-Header ● Gekapselte Sicherheits-Nutzdaten ● Verwaltungsparameter durch Sicherheitsbeziehungs- und Schlüsselverw.-protokoll Mobilitätsbetrachtung Mitnahme einer IP-Adresse in andere Netze ● benötigt 2 IP-Adressen auf dem Gerät ● benötigt weiterhin Agent im Ursprungsnetz [St04] Qualitätsbetrachtung IPv4: Diensttyp-Feld, 8 Bit ● konventionell: normale(r) bzw. optimale(r) (hohe/niedrige) Verzögerung, Durchsatz, Zuverlässigkeit mit 3 Bit ● mittlerweile: DiffServ-Kennung mit 6 Bit ● erfordert Vermittlungsarchitektur Übungsaufgabe Gegeben sei ein Heimnetzwerk mit folgenden Rechnern: ● Notebook, 100base-T, 802.11g ● Desktop-PC, 1000base-T, 802.11n ● WLAN-Router am VDSL2-Anschluss, 802.11n Wie lautet eine mögliche Zuweisung von IPAdressen und (sinnvollen) Routen? Übungsaufgabe 2 Das Heimnetzwerk wird über einen neu gekauften Tablet-PC erweitert. Wie wird dessen Integration durchgeführt? Wie kann der Benutzer vom Tablet aus auf Projektdokumente in der Firma zugreifen? Wie kann er sicherstellen, dass der Abruf von Mails aus der Firma nicht durch Netzwerkspiele anderer Benutzer behindert wird? Werkzeugunterstützung für IP Schicht 2: Schnittstellen (Netzwerkkarten) ● ip link (Teil der iproute2-Suite) ● Alias-Syntax: <DEVm>:n, z.B. eth0:1 Beispiel: Virtuelle WLAN-Schnittstelle % ip link show 1: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT qlen 1000 link/ether 00:24:d7:27:7b:0c brd ff:ff:ff:ff:ff:ff % ip link add link wlan0 name wlanx address 00:11:22:33:44:55 type macvlan Werkzeugunterstützung für IP Schicht 2: Schnittstellenstatus anzeigen ● mii-tool (veraltet, bis 100 MBit/s) ● ethtool Beispiel: Erzwingung einer Geschwindigkeit % ethtool -s eth0 speed 1000 duplex full autoneg off % ethtool eth0 Supported ports: [ TP ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full ... Werkzeugunterstützung für IP Schicht 3: Konfiguration ● ifconfig (traditionell) ● ip addr + ip link Beispiel: Schnittstelle in lokales Netz bringen % ifconfig eth0 192.168.0.9 netmask 255.255.255.0 up % ip address flush dev eth0; ip address add dev eth0 192.168.0.9 % ip link set eth0 up % ip addr show # erweitert ip link show inet 192.168.0.9/24 brd 192.168.0.255 scope global eth0 ... Werkzeugunterstützung für IP Schicht 3: Routing ● route (traditionell) ● ip route Beispiel: Route setzen und anzeigen % route add default gw 141.76.40.99 dev eth0 % route -n # Kernel-IP-Routentabelle Ziel Router 0.0.0.0 Genmask Flags Iface 141.76.40.99 0.0.0.0 UG eth0 0.0.0.0 141.76.40.1 0.0.0.0 UG eth0 141.76.40.0 0.0.0.0 255.255.252.0 U eth0 Werkzeugunterstützung für IP Beispiel: Route setzen und anzeigen mit ip % ip route default via 141.76.40.99 dev eth0 default via 141.76.40.1 dev eth0 proto static 141.76.40.0/22 dev eth0 proto kernel scope link src 141.76.40.xx Beispiel: MAC-IP-Adresszuordnung (IPv4) % ip neighbour # äquivalent: arp -n 141.76.40.1 dev eth0 lladdr c4:7d:4f:d2:d8:00 REACHABLE Werkzeugunterstützung für IP Hilfsprotokoll DHCP (OSI 7): dhcpclient % dhclient -v wlan0 DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 6 DHCPREQUEST on wlan0 to 255.255.255.255 port 67 DHCPOFFER from 141.30.1.225 / DHCPACK from 141.30.1.225 bound to 141.76.181.xx -- renewal in 488 seconds. Hilfsprotokoll ICMP (OSI 4): ping % ping -c 1 sachsen.de PING sachsen.de (193.158.122.63) 56(84) bytes of data. 64 bytes from 193.158.122.63: icmp_req=1 ttl=246 time=61.2 ms Werkzeugunterstützung für IP Routenverfolgung mit ICMP: traceroute % traceroute 8.8.8.7 traceroute to 8.8.8.7 (8.8.8.7), 30 hops max, 60 byte packets 1 141.76.29.121 (141.76.29.121) 1.655 ms 1.587 ms 1.604 ms 2 141.30.1.181 (141.30.1.181) 1.579 ms 1.183 ms 1.572 ms 3 cr-tub1-be1.x-win.dfn.de (188.1.237.193) 4.713 ms 4.941 ms 5.168 ms 4 *** 5 *** [Pa12] Werkzeugunterstützung für IP Registratur-Hilfsprotokolle (OSI 7): whois, host, dig % host sachsen.de sachsen.de has address 193.158.122.63 % whois sachsen.de # liefert Domaineintrag, Nameserver, Ansprechpartner % whois 193.158.122.63 # liefert Informationen zum Autonomen System (EGOV-SACHSEN-01) [Pa12] Zusammenfassung VL 2.2 Wegewahl (Routing) zur Vermittlung Internet & Internetprotokoll (IP) Lokale Netze auf IP-Basis Aspekte von IP Werkzeugunterstützung für IP Quellen + Literatur [Pa12] J. Pattloch, Topologie des X-Win, Online-Publikation zum DFNWissenschaftsnetz [OE13] The Organisation for Economic Co-operation and Development (OECD): Internetgrafik, OECD-Webseite [He11] Mathias Helminger, Interactive visualization of global routing dynamics, Bachelorarbeit TU München [Gü13] D. Gütter, Rechnernetzpraxis, Vorlesung TUD [St04] L. Strand, Linux Mobile IPv6 HOWTO, TLDP-Webseite