IP.ppt [Schreibgeschützt]

Werbung
Internet Protokoll (IP)
und network adresses
Seminar Internet-Protokolle
November 2002
Patrick Mai / Sebastian Elsner
[email protected]
[email protected]
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
1 / 56
Schichten-Modell
Applikation Layer (FTP, telnet, HTTP, SMTP, ...)
Transport Layer (TCP, UDP, ...)
Network Layer (IP, ICMP, ...)
Data Link Layer (Ethernet, ARP, RARP, ...)
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
2 / 56
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
3 / 56
Eigenschaften des Internet Protokolls
• Paketorientiert
• connectionless (verbindungslos)
• best effort (nicht garantiert)
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
4 / 56
Connectionless
• keine direkte Verbindung zwischen dem
Sender und dem Empfänger
• kein Verbindungsaufbau
• Weg dynamisch von Routern festgelegt
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
5 / 56
Best effort
• Keine Garantie
• Checksumme (CS) im Header
• bei Fehlern
- vernichten des Pakets
- ICMP – Nachricht (nicht bei CS Fehlern)
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
6 / 56
Paketorientiert
• Fragmentierung der Daten in Datagramms
• Unabhängigkeit der Pakete
• Größe abhängig von der Maximum Transfer
Unit (MTU) und Daten
• Mindestpaketlänge 21 Bytes
• Maximalpaketlänge 65.535 Bytes
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
7 / 56
Aufbau der Pakete
• Header
- Größe 20 – 60 Byte
• Daten
- Größe 1 – 65515 Byte (abhängig vom
Header)
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
8 / 56
Header
• Einteilung in
32-Bit-Wörter
• ersten 5 Wörter fest
• Mindestens 20 Byte
• Maximal 60 Byte
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
9 / 56
Version
• Länge 4 Bit
• IP – Versionsnummer
• In Bit Darstellung
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
10 / 56
Header Length (IHL)
•
•
•
•
Länge 4 Bit
Anzahl der Wörter im Header
Mindestens 5 Wörter
Maximal 15 Wörter
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
11 / 56
Type of Service (TOS)
• Länge 8 Bit
• Ersten 3 Bit Precendece Field
• 4 TOS Bits bevorzugte
Funktion
• Letzte Bit muß 0
• Heutzutage irrelevant
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
12 / 56
Total Length
• Länge 16 Bit
• Gesamtlänge des Datagramms (Header +
Daten)
- 2^16 = 65 535 Byte
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
13 / 56
Identification
• Länge 16 Bit
• Eindeutige Kennzeichnung der Datagramms
• Vergabe erfolgt durch höheres Protokoll
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
14 / 56
Flags
•
•
•
•
Länge 3 Bit
Erste immer 0
2. Bit DF (=Don`t fragment)
3. Bit MF (=More Fragments)
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
15 / 56
Fragment Offset
• Länge 13 Bit
• Lage des Fragmentes innerhalb des
Datagramms
• Keine Fragmente = 0
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
16 / 56
Time-to-Live (TTL)
•
•
•
•
Länge 8 Bit
Lebensdauer in Sekunden (Hops)
Jeder Router dekrementiert TTL
Bei 0 :
- ICMP-Nachricht an Sender
- Paket wird gedroppt
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
17 / 56
Protocol
• Länge 8 Bit
• Protkolltyp der nächst höheren Schicht
(UDP =17, TCP = 6, ICMP = 1, ...)
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
18 / 56
Header Checksum
• Länge 8 Bit
• Wird bei Ankunft errechnet
• Ergebnis ungleich 0 (checksum error):
- droppen des Pakets
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
19 / 56
Source IP-Address
• Länge 32 Bit
• IP-Addresse des sendenen Rechners
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
20 / 56
Destination IP-Address
• Länge 32 Bit
• IP-Addresse des Empfangsrechners
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
21 / 56
Options
• Länge variable bis zu 40 Byte (ein
vielfaches von 32 Bit, sonst padding)
• Kein Pflichtbestandteil des Headers
• Seltene Nutzung
z.B. security, record route, timestamp, loose
source routing, strict source routing, ...
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
22 / 56
Security
= hohe Sicherheit
• Militärische Zwecke
• RFC 1108 [Kent 1991]
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
23 / 56
Record route
= Routenaufzeichnung
• Jeder Router trägt seine IP-Addresse ein
• Heutzutage zu klein (max 15 Router)
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
24 / 56
Timestamp
= Zeitstempel
• record route + Zeitangabe
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
25 / 56
Loose source routing
= lockeres Quellen routing
• Liste von IP-Addressen
• Müssen durchlaufen werden
• Auch andere Router möglich
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
26 / 56
Strict source routing
= stricktes Quellen routing
• Liste von IP-Addressen
• Genauer IP-Addressen-Weg
• Keine andere Router dürfen durchlaufen
werden
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
27 / 56
Internet Adresse oder IP-Adresse
• wird jedem einzelnen Host zugeteilt
• bestehen aus ganzen Zahlen
• werden systematisch vergeben von der
ICAN (Internet Corporation for
Assigned Names And Numbers)
1.schnelle Verwaltung
2.effizientes Routing
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
28 / 56
Adressenbeschreibung
• 32-bit Internetadresse
• besteht aus "netid" und "hostid"
• hostid "0" bezeichnet immer das
Netzwerk selbst
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
29 / 56
Notation
• 4 dezimale Zahlen mit Punkten getrennt
• jede Zahl steht für ein Oktett der
Binärdarstellung
• Anschaulich:
Binärnotation:
10000000 00001010 00000010 00011110
Dezimalnotation:
128.10.2.30
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
30 / 56
IP-Adressklassen
• Adressen sind in 3 Hauptklassen
eingeteilt: A, B, C
• 2 für uns jetzt eher nebensächliche
Klassen D und E
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
31 / 56
Klasse A
• erstes Bit (0) zeichnet die Klasse A
• netid besteht aus 7 Bits, hostid aus 24
Bits
• 126 Klasse-A Netze mit über 16Mio
Hosts
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
32 / 56
Klasse B
• ersten 2 Bits (1,0) zeichnen die
Klasse B
• netid besteht aus 14 Bits, hostid aus 16
Bits
• 16.382 Klasse-B Netze mit bis zu
64.000 Hosts
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
33 / 56
Klasse C
• ersten 3 Bits (1,1,0) zeichnen die
Klasse C
• netid besteht aus 21 Bits, hostid aus 8
Bits
• 2Mio Klasse-C Netze mit bis zu 254
Hosts
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
34 / 56
Klasse D
• sog. Multicast Adressen
• ersten 4 Bits (1,1,1,0) zeichnen die
Klasse D
• sendet Datagramme an mehrere
spezielle Hostadressen gleichzeitig
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
35 / 56
Klasse E
• wurde für zukünftige Nutzungen
reserviert
• ersten 5 Bits (1,1,1,1,0) zeichnen die
Klasse E
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
36 / 56
IP-Adressklassen
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
37 / 56
Adressbereiche nach Klassen
Class
A
B
C
D
E
Range
1.0.0.0
128.1.0.0
192.0.1.0
224.0.0.0
240.0.0.0
Patrick Mai / Sebastian Elsner
to 126.0.0.0
to 191.255.0.0
to 223.255.255.0
to 239.255.255.255
to 255.255.255.254
Internetprotokolle / Internetprotokoll (IP)
38 / 56
Beispiele für Klasse-B Netze
129.65.0.0
129.66.0.0
129.67.0.0
129.68.0.0
129.69.0.0
129.70.0.0
California Polytechnic State University (NETCALPOLY)
Alabama Supercomputer Network (NET-ASC-UNIVALABAMA)
Oxford University, England (NET-OXFORDNET)
Saint Joseph's University, PA (NET-SJU-NET)
University of Stuttgart, Germany (NET-RUS-NET)
University of Bielefeld, Germany (NET-UNIBI)
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
39 / 56
Grosser Nachteil:
Adressknappheit
• Ursache: unvorhergesehenes
Wachstum des Internets
• bald alle Adressbereiche vergeben
• Klasse-B Netze sind zum grössten Teil
betroffen
• Wie kann man die Vergabe von
Adressbereichen besser gestalten?
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
40 / 56
mögliche, vorrübergehende
Lösung: Subnetze
• mehrere physikalische Netze teilen sich
eine netid durch "subnetting"
• Senkung der Vergabe von Klasse-B
Adressbereichen durch Ausweichen auf
mehrere C-Klassen
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
41 / 56
Subnet adressing oder subnetting
• mit einer netid mehrere physikalische Netze
ansprechbar
• Host muss subnetting unterstützen
• benutzt einige Bits der hostid als physische
Netzadresse
• hostid wird zweigeteilt in subnetid und hostid
• bei Klasse-B meist 8 Bit-subnetid, 8 Bit-hostid
• Einteilung aber sonst beliebig
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
42 / 56
Quelle: Douglas Comer und David L. Stevens. Internetworking with TCP/IP, Band 1 Prentice Hall
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
43 / 56
Subnetzmaske
• mittlerweile obligatorisch in
permanenten Netzwerken
• ordnet einem Subnetz unter
• alle Bits der net- und subnetid werden
auf "1" gesetzt, hostid auf "0"
• hexadezimale Darstellung (4 Bit-Blöcke)
ergibt die subnetmask
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
44 / 56
Subnetzmaske
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
45 / 56
Quelle: Douglas Comer und David L. Stevens. Internetworking with TCP/IP, Band 1 Prentice Hall
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
46 / 56
Broadcasting
• gleichzeitige Adressierung aller
Stationen eines Subnets (Rundfunk)
• broadcastadress wird allen Hosts des
Netzwerks zugewiesen
• hostid besteht ausschl. aus "EinserBits", ist damit reserviert für
broadcasting
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
47 / 56
Broadcasting
• Nutzen:
1. Erkennung der eigenen IP-Adresse
über die Hardware
2. Pakettransmission kann u.U. sehr
effizient abgewickelt werden
3. Multicast ähnlich, z.B.
VideoKonferenz mit wenig Traffic
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
48 / 56
Der Befehl "ifconfig"
• dient zur Konfiguration der
Netzwerkschnittstellen zur Nutzung von
TCP/IP Verbindungen
• wird normal beim Systemboot gestartet
• MTU zeigt den max. Durchsatzwert
(Grösse des Datagramms) der
Schnittstelle in Bytes an
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
49 / 56
ifconfig- Ausgabe
pmai@antipasto cd /usr/sbin/
pmai@antipasto ifconfig -a ("-a" zeigt alle Devices/Schnittstellen an)
lo0: flags=1000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232
index 1 inet 127.0.0.1 netmask ff000000
ge0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500
index 2 inet 192.168.133.3 netmask ffffff00 broadcast 192.168.133.255
hme0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500
index 3 inet 129.70.131.113 netmask ffffff00 broadcast 129.70.131.255
lo0: flags=2000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv6> mtu 8252
index 1 inet6 ::1/128
hme0: flags=2000841<UP,RUNNING,MULTICAST,IPv6> mtu 1500 index 3
inet6 fe80::a00:20ff:fefc:c670/10
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
50 / 56
Der Befehl "netstat"
• zeigt Informationen über einzelne
Schnittstellen, darunter:
- MTU-Grössen
- Anzahl ein- und ausgehender Pakete
- Fehlermeldungen
- Kollisionen
- Pakete in Warteschlange
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
51 / 56
netstat- Ausgabe
pmai@antipasto
netstat –i
Name Mtu Net/Dest Address Ipkts Ierrs Opkts Oerrs Collis Queue
lo0 8232 loopback localhost 6569662 0 6569662 0 0 0
ge0 1500 SunRay-ge0 3.133.168.192.in-addr.arpa 397831150 0
1322734838 0 0 0
hme0 1500 gzi-ether antipasto.TechFak.Uni-Bielefeld.DE 789512800
0 770765691 0
00
Name Mtu Net/Dest Address Ipkts Ierrs Opkts Oerrs Collis
lo0 8252 localhost localhost 6569662 0 6569662 0 0
hme0 1500 fe80::a00:20ff:fefc:c670/10 fe80::a00:20ff:fefc:c670
789512802 0
770765694 0 0
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
52 / 56
netstat- Ausgabe
Pmai@antipasto netstat -ni ("-i" gibt alle
Interfaces an, "-n" löst die Hostnamen auf)
Name Mtu Net/Dest Address Ipkts Ierrs Opkts Oerrs
Collis Queue
lo0 8232 127.0.0.0 127.0.0.1 6568631 0 6568631 0 0
0
ge0 1500 192.168.133.0 192.168.133.3 397692599 0
1322283415 0 0 0
hme0 1500 129.70.131.0 129.70.131.113 789298220
0 770556699 0 0 0
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
53 / 56
Schwächen von IP-Adressen
• lokal gebunden: bezieht sich auf Netze,
nicht auf einzelne Hosts
• Wachstum von einzelnen Netzen kann
den "Klassenrahmen" sprengen
(Bsp.: Klasse C)
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
54 / 56
RFC`s
• RFC 791 erstmalige Veröffentlichung
• RFC 1122 (Host Network Requirements)
- Beseitigung aller Unklarheiten von RFC
791
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
55 / 56
Quellen
• 1 - Richard W. Stevens. TCP/IP Illustrated,
Band 1 Addison Wesley
• 2 - Douglas Comer und David L. Stevens.
Internetworking with TCP/IP, Band 1
Prentice Hall
Patrick Mai / Sebastian Elsner
Internetprotokolle / Internetprotokoll (IP)
56 / 56
Herunterladen