1 / 49

Grundlagen: Internet-Protokolle

Grundlagen: Internet-Protokolle. Torsten Sorger / Martin Gaitzsch. Gliederung. ISO/OSI Schichten + TCP/IP-Äquivalente IPv4 (Internet Protocol) TCP ( T ransmission C ontrol P rotocol) UDP ( U ser D atagramm P rotocol) ICMP ( I nternet C ontrol M essage P rotocol). Gliederung.

lise
Download Presentation

Grundlagen: Internet-Protokolle

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Grundlagen: Internet-Protokolle Torsten Sorger / Martin Gaitzsch

  2. Gliederung • ISO/OSI Schichten + TCP/IP-Äquivalente • IPv4 (Internet Protocol) • TCP (Transmission Control Protocol) • UDP (User Datagramm Protocol) • ICMP (Internet Control Message Protocol) Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  3. Gliederung • TCP Verbindungsablauf • Fehlerbehandlung • Routingprotokolle • IPv6 Überblick Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  4. ISO/OSI-Referenzmodell • beschreibt das externe Verhalten von Endsystemen und keine Implementierung • dient der Interoperabililität verschiedenster Protokolle und Netzwerktechnologien • realisiert durch Schichten-Modell • Abstraktion / Komplexitätsreduzierung • Austauschbarkeit der Protokolle einzelner Schichten Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  5. ISO/OSI-Referenzmodell Anwendungsschicht SMTP, FTP, HTTP, DNS... 7 Darstellungsschicht 6 Sitzungsschicht 5 TCP, UDP Transportschicht 4 ICMP Vermittlungsschicht IP 3 Sicherungsschicht 2 Physikalische Ebene 1 Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  6. ISO/OSI-Referenzmodell • Protokolle sind ineinander geschachtelt • eine Schicht n nimmt Dienste der Schicht n-1 in Anspruch und stellt der Schicht n+1 Dienste bereit • Beispiel für ein TCP-Paket in einem Ethernet: Ethernet-Frame IP-Packet TCP-Packet Nutzdaten (z.B. http) Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  7. TCP/IP - Architekturmodell Application Level WWW(http) File Transfer(ftp) E-Mail(smtp) NameServer(dns) NFS Transmission Level TransmissionControl Protocol User DatagrammProtocol Internet Level Internet Protocol &Internet Control Message Protocol Network Level ARPANET SatellitenNetzwerk X.25 Ethernet Token Ring Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  8. Internet Protocol • IP ist ein packetorientiertes und verbindungs-loses Protokoll der Vermittlungsschicht • dient der Abstaktion von Besonderheiten der unterliegenden Schicht 2 Protokoll wie z.B. Ethernet, Token Ring oder ATM • bietet der Transportschicht einen unzuverlässiges Transportsystem Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  9. Internet Protocol v4 Version K-Länge Servicetypen Paketlänge Identifikation 0 DF MF Fragmentabstand Lebenszeit Protokoll Kopfprüfsumme Protkoll-Kopf Senderadresse Empfängeradresse Optionen Füllzeichen Eigentliche Nutzdaten bzw. Protokoll-Köpfe+Daten von Protokollen höherer Schichten (z.B. TCP) Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  10. Internet Protocol v4 • Version: klassisch v4, zukünftig v6 • Kopflänge: Länge des Paketkopfs in 32Bit-Worten • Servicetypen: Prioritätsvergabe • Paketlänge: Länge des ganzen Pakets in Byte • Identifikation, DF, MF, Fragmentabstand: s.u. • Lebenszeit: verbleibende Paketlebenszeit • Protokoll: Nummer des transportierten Protokolls Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  11. Internet Protocol v4 • Kopfprüfsumme: Prüfsumme über den Paketkopf • Sender- und Empfängeradresse: eindeutige 32Bit Adressen • Optionen: für flexible Erweiterbarkeit (z.B. Zeitstempel, Source Routing,...) • Füllzeichen: Auffüllen auf Vielfaches von 32-Bit • Nutzdaten (z.B. TCP) Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  12. IP-Adressen • 32-Bit lang (z.B: 134.100.14.15 oder 86640E0Fhex) • global eindeutig (mit Ausnahmen) • bestehen aus Netz- und Host-Anteil • früher: Netzanteil nur in 8, 16 und 24 Bit (Klasse A,B und C) • mit CIDR: flexibler Netzanteil • zusätzlich: • Multicast-Adressen • private Adressen... Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  13. IP - Fragmentierung • Felder: DF, MF, Identifikation, Fragmentabstand • kann nur bei DF=0 angewendet werden • wird von den Routern eigenständig vorgenommen • kann bei Bedarf wiederholt angewendet werden • Zielhost muss die Fragmente zusammensetzen Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  14. IP - Fragmentierung: Beispiel • Netz1: MTU 1200Byte • Netz2: MTU 532 Byte • Netz3: MTU 276 Byte • Paket mit Länge 1044Byte (= 20Byte Header + 1024Byte Daten) und nicht gesetztem DF-Bit soll über die 3 Netze übertragen werden Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  15. IP - Fragmentierung: Beispiel Netz1: 1200 ID / MF=0 / FO=0 / Rest Daten 0..1023 Netz2: 532 ID / MF=1 / FO=0 / Rest Daten 0..511 ID / MF=0 / FO=64 / Rest Daten 512..1023 Netz2: 276 ID / MF=1 / FO=0 / Rest 0..255 ID / MF=1 / FO=32 / Rest 256..511 ID / MF=1 / FO=64 / Rest 512..767 ID / MF=0 / FO=96 / Rest 768..1023 Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  16. IP - Fragmentierung • Die Reihenfolge der Ankunft beim Zielhost spielt keine Rolle. • Wenn nach Ablauf eines Timers nicht alle Teilpakete angekommen sind, wird das Paket verworfen. Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  17. Ports • Ports von 0 bis 65535 gibt es unabhängig voneinander bei TCP und UDP • sie stellen die Endpunkte einer Kommunikationsbeziehung zwischen zwei Rechnern dar • die sog. „well-known-ports“ von 0..1023 sind standardisiert z.B.: • TCP-Port 80 für http • UDP+TCP-Port 53 für DNS • UDP-Port 123 für NTP Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  18. TCP (Transmisson Control Protocol) • verbindungsorientiertes Protokoll • beinhaltet verschiedene Algorithmen zur Fehler-erkennung und -behandlung • Sequenznummern • Quittungsnummern • Anzeigen (Flags) • die richtige Reihenfolge der Daten ist garantiert • bietet der Anwendungsschicht einen zuverlässigen Transportdienst Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  19. TCP (Transmisson Control Protocol) Sender-Port Empfänger-Port Sequenznummer Quittungsnummer Kopflänge Reserviert Anzeigen Fenstergrösse Prüfsumme Urgent Zeiger Optionen Füllzeichen Eigentliche Nutzdaten bzw. Protokoll-Köpfe+Daten von Protokollen höherer Schichten (z.B. http) Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  20. TCP • Sender- und Empfängerport:Endpunkte der TCP-Verbindung • Sequenznummer: Nummer zur Indentifizierung gesendeter Datensegmente • Quittungsnummer: Nummer zur Bestätigung bereits empfangener Datensegmente • Kopflänge: Länge des TCP-Kopfs in 32Bit-Worten • Anzeigen: zur Steuerung (z.B. Verbindungsauf und -abbau) Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  21. TCP • Fenstergröße: wird vom Hostje nach Belastung dynamisch festgelegt • Prüfsumme über: • TCP-Paketkopf • Daten • Teil des IP-Paketkopfs (u.a. Quell und Zieladresse) • Urgent-Zeiger: Zeiger auf das Ende von dringenden Daten, die vor den eigentlichen Nutzdaten stehen Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  22. TCP • Optionen: z.B. MSS (Maximum Segment Size) • Füllzeichen: auf die nächste 32-Bit-Grenze wird mit Nullen aufgefüllt • Nutzdaten (z.B. http) Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  23. UDP - User Datagramm Protocol • verbindungsloses Protokoll der Transportschicht • bietet keine • gesicherte Übertragung • Flusskontrolle • Garantie auf Reihenfolgeerhalt • einfaches Protokoll ohne großen Overhead Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  24. UDP - User Datagramm Protocol Sender-Port Empfänger-Port • Sender- und Empfängerport: Endpunkte der UDP-„Verbindung“ • Länge: Länge des UDP-Pakets • Prüfsumme: ist optional und wird gebildet über: • UDP-Paketkopf • Daten • Teil des IP-Paketkopfs (u.a. Quell und Zieladresse) Länge Prüfsumme Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  25. ICMP - Internet Control Message Protocol • Steuer- und Fehlerbenachrichtigungsprotokoll • wird von IP, aber auch von höheren Schichten wie UDP und TCP benutzt • dient unter anderem zu Testzwecken • ICMP-Daten werden in IP-Paketen verschickt Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  26. ICMP - Internet Control Message Protocol Typ Code Prüfsumme Verschiedenes • Typ: Art der ICMP-Nachricht • Code: weitere Unterteilung innerhalb des Typs • Prüfsumme: über das ICMP-Paket • Verschiedenes: nur bei manchen Typen genutzt • Daten: bei den meisten Typen der IP-Kopf des fehlererzeugenden Pakets + 64 weitere Bits Daten Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  27. ICMP - Nachrichtentypen • 1. Fehlermeldungen • Typ3: Destination Unreachable • Code0: Netz nicht erreichbar • Code1: Rechner nicht erreichbar • Code2: Protokoll nicht erreichbar • Code3: Port nicht erreichbar • Code4: Fragmentierung erforderlich, aber DF=1 • Typ4: Source Quench • Typ5: Redirect • Typ11: Time Exeeded • Typ12: Parameter Problem Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  28. ICMP - Nachrichtentypen • 2. Anfragen • Typ8: Echo Request • Typ0: Echo Reply (einzige IMCP-Nachricht, die jeder Rechner unterstützen muss) • Typ17: Adress Mask Request • Typ18: Adress Mask Response PING Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  29. Demonstration • Ping mit Ethereal: Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  30. TCP Verbindungsablauf • Drei Phasen: • Verbindungsaufbau • Datenaustausch • Verbindungsabbau Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  31. 1. Verbindungsaufbau • Verbindungswunsch • Bestätigung durch beide Seiten Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  32. Sequenznummern • Erhaltung der Reihenfolge • Nummerierung: • Zufallszahl auf beiden Seiten • Seq.nr. := Initiale Seq.nr. + Byte-Position im Datenstrom Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  33. 2. Datenaustausch • Senden eines Segments und Start eines Timer • Bestätigung mit nächster erwarteter Seq.nr. • wird Timer überschritten, erneutes Senden Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  34. sliding window Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  35. variable window • Größe des Fensters kann variieren: • Reagieren auf Netzwerk-Engpässe • Flusskontrolle (z.B. zwischen verschieden starken Partnern) Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  36. 3. Verbindungsabbau • Senden eines Segments mit FIN=1 • Bestätigung • muss für beide Richtungen gemacht werden Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  37. Demonstration • TCP Verbindungsablauf mit Ethereal: Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  38. Zustandsautomat Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  39. Fehlerbehandlung • Checksummen-Fehler • Ablehnung einer Verbindung • Abgebrochene Verbindungen Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  40. Checksummen-Fehler • Erkennen von Übertragungsfehlern • Defekte Pakete werden weggeworfen • Nach Timeout wird das entsprechende Paket neu gesendet Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  41. Ablehnung einer Verbindung • Versuch eines Verbindungsaufbaus zu einem geschlossenen Port • Beispiel TCP • Beispiel UDP Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  42. Beispiel TCP Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  43. Beispiel UDP Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  44. Abgebrochene Verbindung • plötzlicher Abbruch (Absturz, Kabel entfernt, ...) • Schließen der Verbindung nach Timeout Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  45. IP Routing Protokolle • RIP : Routing Information Protocol • OSPF: Open Shortest Path First • BGP4: Border Gateway Protocol 4 Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  46. IPv6 • Adressgrösse 128 Bit • Einfacheres Header-Format • Erweiterte Unterstützung von Optionen • Dienstarten • Sicherheit • Erweiterbarkeit Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  47. … das war‘s ! • Fragen ? • Kommentare ? Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  48. Literaturliste I • RFCshttp://www.ietf.org/rfc/rfc####.txt 0768 – User Datagram Protocol 0791 – Internet Protocol Version 4 0792 – Internet Control Message Protocol 0793 – Transmission Control Protocol 2018 – Transmission Control Protocol Selective ACK 2460 – Internet Protocol Version 6 Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

  49. Literaturliste II • Bücher: • TCP/IP Network Administration (Craig Hunt) • Technik der IP-Netze (Anatol Badach & Erwin Hoffmann) • NetCat • http://www.atstake.com/research/tools/index.html#network_utilities • Ethereal: • http://www.ethereal.com Torsten Sorger / Martin Gaitzsch 18.415 Sicherheit in vernetzten Systemen - Grundlagen: Internet-Protokolle

More Related