Ein Ethernetframe und die MAC-Adresse verlassen das Locale Netz (LAN) nicht.
Anstatt der physikalischen MAC-Adresse werden im Layer 3 meist die so genannten IP (=Internet Protokoll) Adressen verwendet.
Vorteile der Trennung von MAC und IP:
Rechner trotz neuer Netzwerkarte (inkl. neuer MAC) weiter erreichbar
Bei einem Server Ausfall kann die IP einem neuen Rechner gegeben werden (die MAC nicht).
Dynamische IP Vergabe von ISP (Internet Service Provider).
Änderungen betreffen nur Software z.B. von IPv4 (4 Byte Adressen ≈ 4,3 Mrd Adressen ≈ 8,4 Adr/km²)
auf IPv6 (16 Byte Adressen ≈ 3,4·1029Mrd Adressen ≈ 6,6·1023 Adr / m²).
IPv4
Eine IP Adresse wird in der Dotted Decimal Schreibweise notiert: Byte.Byte.Byte.Byte
z.B. 127.0.0.1
Ziel-Rechner per IP finden:
IP-Adresse im LAN: Packet an PC mit passender MAC senden
IP nicht im LAN: Packet an Router schicken, dieser leitet es weiter.
Der Router
Router arbeiten auf der Netzwerkschickt (Layer 3) und verbinden Netze.
D.h. mit einem Router kann ein Ethernet mit einem Tokenring oder einem FDDI verbunden werden.
Am Router enden:
Kollision Domain
Broadcast Domain
IP Adressierung
IP-Adressen bestehen aus 2 logischen Teilen
Die vorderen Bit gehören zur Netzwerk-Adresse
Die hinteren (restlichen) zur Host Adresse
Wie viele Bits zur Netzwerk-Adresse gehören gibt die Subnetzmaske an.
Bsp.: dezimal binär
IP Adresse:
10.0.20.254
0000 1010.0000 0000.0001 0100.1111 1110
Subnetzmaske:
255.255.255.0
1111 1111.1111 1111.1111 1111.0000 0000
Netz-Adresse:
IP AND Submask
0000 1010.0000 0000 0001 0100.0000 0000
Wenn eine IP-Adresse AND Subnetzmaske = Netz-Adresse, dann liegt die IP im selben Subnetz (kann z.B. über Ethernet erreicht werden).
Wenn nicht, dann muss das Paket über den Router in ein anderes Netz.
Ob eine Ziel-IP im selben Netz liegt ermittelt man wie folgt: if (eigene IP & Subnetzmaske == ziel IP & Subnetzmaske) ziel IP im LAN
else ziel IP woanders
Aufgaben
Um die Netzwerkadresse zu ermitteln benötigt man eine IP aus dem Subnetz und die Netzwerkmaske.
Eine kürzere Notation ist eine IP Adresse aus dem Subnetz und die Anzahl der Bits der Netzwerk-ID
(z.B. 10.0.20.254/24 ist das gleiche wie IP 10.0.20.254 und Subnetzmaske 255.255.255.0).
Aufgabe 1
Wie viele Hosts können folgendes Subnetz maximal besitzen?
10.2.128.0/24 232-24-2=28-2=256-2=254
10.2.128.0/16 232-16-2=216-2=65536-2=65534
IP: 64.233.183.99
Subnetzmaske: 255.255.128.0 255.255.128.0 = /17, somit 232-17-2=215-2=32768-2=32766
100.100.100.100/30 232-30-2=22-2=4-2=2
129.243.20.123/22 232-22-2=210-2=1024-2=1022
IP: 134.60.1.25
Subnetzmaske: 255.255.254.0 255.255.254.0 = /23, somit 232-23-2=29-2=512-2=510
Aufgabe 2
In dieser Aufgabe ist die Subnetzmaske 255.255.252.0. Liegen die IP Adressen im selben Netz?
129.10.87.2 129.10.87.2
Ja, beide liegen im Netz 129.10.84.0
200.0.1.187 200.0.4.209
Nein, die erste liegt im Netz 200.0.0.0 und die zweite in 200.0.4.0
123.0.0.1 298.0.0.1
Nein, die erste liegt im Netz 123.0.0.0 und die zweite in 298.0.0.1
Auserdem ist 298.0.0.1 keine IP da das erste Byte (298) größer als 255 ist.
120.255.4.165 120.255.7.230
Ja, beide liegen im Netz 120.255.4.0
Aufgabe 3
Geben Sie die Broadcast Adressen in Dotted Dezimal Schreibweise an.
188.188.188.0/24
Broadcast: 188.188.188.255
109.230.0.0/8
Broadcast: 109.255.255.255
140.255.20.1/15
Broadcast: 140.255.255.255
102.0.0.33/6
Broadcast: 103.255.255.255
Aufgabe 4
Für private Netzwerke reservier sind: 10.0.0.0/8, 172.12.0.0/12, 192.168.0.0/16.
Ein unerfahrener Admin hat in seinem internen Netz jedoch 64.233.183.0/24 gewählt
und wundert sich das er www.google.de (IP 64.233.183.103) nicht erreicht.
Woran liegt das?
Da die IP jedes Rechners zwischen 64.233.183.1 und 64.233.183.255 liegt und die Netzmaske /24 ist
wird das Ziel www.google.de mit der IP 64.233.183.103 im eigenen Netz vermutet und das Paket wird nicht zum Router gesendet.
Der Rechner vermutet www.google.de im eigenen LAN und bekommt somit nie eine Antwort.
ARP
Wenn ein Paket von außen (z.B. dem Internet) an einem Router ankommt, so wird dieses
Paket per Ethernet zugestellt. Da das Paket jedoch die Ziel-MAC des Hosts nicht kennt,
muss der Router diese erst ermitteln. Hierfür wird ARP
(Adress Resolution Protoocol) eingesetzt.
Aufgabe: Gegeben: IP des Zielrechners Gesucht: MAC des Zielrechners
Vorgehen
MAC Broadcast senden (ff-ff-ff-ff-ff-ff)
Nutzdaten im Paket ist die Ziel-IP
nur der Host mit der Ziel-IP antwortet mit seiner MAC
der Router ließt die Absender-MAC aus dem Ethernet-Frame
der Router verschickt das IP-Paket in einem Ethernet Frame an diese MAC
Die IP-MAC-Paare werden im Router wie in den anderen Host gecached.
Somit muss nicht bei jedem Paket ein ARP-Request versendet werden.
In der Konsole kann man diesen Cache mit arp -a anzeigen lassen.
Internet Protocol
Das Internet Protocol (=IP) dient der Versendung von Paketen von einem Host zum
anderen.
In einem LAN kann man dies via Ethernet machen,
aber wenn das Ziel in einem anderen LAN liegt benötigt man ein Schicht 3 Protokoll
wie IPv4.
IPv4 Header
7. Bit
6. Bit
5. Bit
4. Bit
3. Bit
2. Bit
1. Bit
0. Bit
Byte 0
Version
IHL
Byte 1
TOS
Byte 2
Paketlänge
Byte 3
Byte 4
Identifikation
Byte 5
Byte 6
Flags
Fragmentabstand
Byte 7
Fragmentabstand
Byte 8
Time To Live (TTL)
Byte 9
Schicht 4 Protokoll
Byte 10
Kopf-Prüfsumme
Byte 11
Byte 12
IP-Sender-Adresse
Byte 13
Byte 14
Byte 15
Byte 16
IP-Empfänger-Adresse
Byte 17
Byte 18
Byte 19
Byte 20 ...(max. 40)
Optionen (evtl. mit Füllzeichen)
Begriffserklärung:
Version:
Der Wert 4 für IPv4.
IHL (IP Header Length):
Die Länge des Headers in Bit geteilt durch 32
TOS (Type of Service):
wie z.B. schneller Druchsatz, min. Delay, …
Paketlänge:
Länge von Header und Daten (also des gesamten Pakets)
Identifikation:
eindeutige ID des Pakets um fragmentierte Pakete wieder zusammenzusetzen
Flags:
Bit 0 = 0 (reserviert)
Bit 1 (0=darf zerlegt werden / 1=darf nicht zerlegt werden)
Bit 2 (0=letztes Fragment / 1=weitere Fragmente folgen)
Fragmentabstand:
Paketnummer innerhalb der ID (Reihenfolge, falls Daten in mehrere Paktete aufgeteilt werden mussten)
TTL (Time to Live):
Nach wie vielen Router-Passagen das Paket verworfen wird.
Protokoll:
Das Schicht 4 Protokoll (Protokoll einer Schicht höher)
Kopf-Prüfsumme:
Prüfsumme (Addition aller komplementierter 16Bit Teile muss FFh) ergeben