BUN: OSI Modell und Protokolle

Werbung
1) Schichtenmodelle und Protokolle
1.1 Das OSI Schichtenmodell
OSI
Open Systems Interconnection
Das OSI Modell wurde in den 80er Jahren von der ISO (International Standards Organization) entwickelt
Beispiel: Verbindung über Telefon
Menschen
Telefon
Vermittlung
Virtuelle Verbindung
Menschen
Telefon
Vermittlung
Kabel
Von einem rein technischen Blickwinkel sprechen wir nicht mit dem anderen Menschen, sondern mit dem Telefon,
das wiederum mit der Vermittlungseinrichtung der Post kommuniziert. In der Vermittlung werden die elektrischen
Impulse mittels Kabel zur anderen Vermittlung transportiert, weiter zum Telefon, wo diese elektrischen Signale
wieder in akustische Signale umgewandelt werden.
Sprechen die Kommunikationspartner nicht dieselbe Sprache, muss eine Schicht hinzugefügt werden:
Engländer
Dolmetsch
Telefon
Vermittlung
Österreicher
Dolmetsch
Telefon
Vermittlung
Kabel
Das OSI Modell besteht aus 7 Schichten:
OSI Schicht
TCP/IP Schicht
Protokollbeispiel
Einheiten
Hardware
7 Anwendung
(Application)
Anwendung
HTTP, FTP,
HTTPS, SMTP
Daten
Layer 4-7 Switch
4 Transport
(Transport)
Transport
TCP, UDP
Segmente
3 Vermittlung
(Network)
Internet
IP, Routing
Protokolle (IGMP)
Pakete
(datagram)
Router, Layer 3 Switch
Ethernet, Token
Ring
Frames
Switch, WLAN Access
Point
Bits
Hub, Repeater, Kabel, usw.
6 Darstellung
(Presentation)
5 Sitzung (Session)
2 Sicherung (Data
Link)
1
BitübertragungPhys
ical Layer
Network
Einer von vielen Merksprüchen: All People Seem To Need Data Processing
Jede Schicht
Realisiert spezifische Aufgaben
Stellt der darüberliegenden Schicht ihre Dienste zur Verfügung
Nutzt die Dienste der darunterliegenden Schicht
Seite 1/29
Nur für schulinternen Gebrauch
© WR
19/09/16
Durch dieses Modell werden die Aufgaben jeder Schicht klar definiert; Wird etwa ein Programm, das für eine
Schicht geschrieben wurde, verändert, bleibt die Programme jeder anderen Schicht davon unberührt.
Jede Schicht fügt beim Sender ein spezifische Information dazu, sodass das zu versendende Datenpaket in Schicht 1
am größten ist, beim Empfänger werden die Daten in jeder Schicht von den Protokollinformation befreit
(entkapselt)
Bildquelle: http://www2.themanualpage.org/networks/images/osi_com.gif
Die 7 Schichten lassen sich in 2 Gruppen teilen, die anwendungsorientierte (Schicht 5-7) und die transportorientierte
Schicht (1 bis 4.) Vom Standpunkt der Netzwerktechnik sind die transportorientierten Schichten interessant.
Schicht 1 – Bitübertragungsschicht Physical Layer
Die Bitübertragungsschicht ist die unterste Schicht. Diese Schicht stellt mechanische, elektrische und weitere
funktionale Hilfsmittel zur Verfügung, um physikalische Verbindungen zu aktivieren bzw. deaktivieren, sie
aufrechtzuerhalten und Bits darüber zu übertragen. Das können zum Beispiel elektrische Signale, optische Signale
(Lichtleiter, Laser), elektromagnetische Wellen (drahtlose Netze) oder Schall sein.
Die Aufgabe der Schicht 1 besteht also in der Übertragung der Signale; eine Absicherung findet nicht statt, sondern
wird an Schicht 2 übertragen. Es muss festgelegt werden, welches Übertragungsmedium verwendet wird, welches
Codierungsverfahren angewandt wird, welche Schnittstellen verwendet werden, wie die Pinbelegung ist, welche
Leitungen für den Datentransfer und für die Steuersignale reserviert werden.
Kabel, Modem, Hub, Repeater, Stecker usw sind die entsprechende Hardware für diese Schicht.
Schicht 2 Data Link Layer
Die Aufgaben der Schicht 2 sind die Absicherung der einzelnen Datenbits durch eine entsprechende
Fehlererkennung, Empfangsbestätigung, Flusskontrolle (Verschiedene Geschwindigkeiten von Sender und
Empfänger) sowie die Ermöglichung einer Adressierung in einem LAN.
In Schicht 2 findet das framing, die Datenkapselung, statt.
Es findet eine Fehlererkennung statt, jedoch keine Fehlerkorrektur. Ein Korrektursystem, das in Schicht 4
implementiert ist, ist auch nicht immer angebracht, wie etwa bei der Direktübertragung von Ton oder Bild.
Seite 2/29
Nur für schulinternen Gebrauch
© WR
19/09/16
Im Schicht 2 Header sind die sogenannten MAC (Media Access Control) Adressen der NICs enthalten, die eine
eindeutige Adressierung des Empfängers erlauben.
Unterschiede von Layer1 und Layer2:
 Layer 1 kann keine Hosts adressieren
 Layer 1 kann nicht mit oberen Layer kommunizieren
 Layer 2 kann mit dem LLC (Logical Link Control) mit Layer 3 kommunizieren
 Layer 1 beschreibt einen Bitstrom
 Layer 2 organisiert und gruppiert die Daten in frames
 Layer 2 verwendet eine flache Adressierung (keine Subnetze oder hierarchische Adressierung)
 Layer 1 kann nicht entscheiden,welcher Host im Netz senden soll um Kollísionen zu vermeiden, Layer 2
benutzt dazu die MAC Adresse
Die ersten 2 OSI Layers entsprechen der LAN Spezifikation
Data Link Layer
LLC
MAC
Ethernet
IEEE 802.3
IEEE 802.2
10 BASE T FDDI
Physical Layer
IEEE:
IEEE
802.5
(Token Ring)
Institute of Electrical and Electronical Engineers
Die LLC ist für den gesicherten Informationsaustausch zuständig und ist hardwareunabhängig,, dass LLC Protokoll
kommuniziert mit Schicht 3 und dem MAC Protokoll. Die Flusskontrolle, also die Kommunikation zwischen
Kommunikationspartnern mit unterschiedlicher Übertragungsgeschwindigkeit, findet hier statt. Die MAC Ebene
beschreibt die Art und Weise, wie im Netz auf das Übertragungsmedium zugegriffen wird.
Der Standard IEEE 802.2 entspricht dem LLC. Der Standard IEEE 802.5 beschreibt die Übertragung in der Token
Ring Topologie, 802.11 beschreibt die drahtlosen Netzwerke.
Beispiel eines Frame Formats im Ethernet Standard
Preamble Ziel
Quelle
8
6
6
Die Zahlen geben Bytes an
Preamble
Zieladresse:
Quelladresse
Frame Type:
Type
2
Daten
46-1500
CRC
4
Zum Synchronisieren für den Empfänger
MAC Adresse
MAC Adresse
0000-05DC
reserviert für IEEE LLC
0800
Internet IP Version 4
8008
AT&T Corporation
8137
Novell IPX
80D5
IBM SNA
Die Zieldresse nur aus 1 bestehend ist für den broadcast reserviert. Steht im frame type 8137, so folgen die Daten
dem IPX Protokoll.
Die MAC Adresse ist eine 48 Bit Adresse der Netzwerkkarte, die weltweit eindeutig ist, Die ersten 24 Bits sind vom
Hersteller, die zweiten 24 Bits geben die Kartennummer des Herstellers an.
Beispiel:
00 A4 31 12 DF A6
(Hexadezimal)
--------------------------------------arp ist das Address Resolution Protocol auf der Ebene 2, das eine Liste der Hosts im Netz auflöst und auch auf
jedem PC zwischenspeichert:
arp -a
Seite 3/29
gibt eine Liste aller im Cache befindlichen PC‘s an
Nur für schulinternen Gebrauch
© WR
19/09/16
Nach einem Broadcast ping, ping -b 172.16.23.255, sieht man, dass alle PC‘s im Netz nun im Cache des ARP
gespeichert sind.
--------------------------------------Packets, frames, Übertragungsfehler und ihre Behebung
Daten werden zum Versenden aus folgenden Gründen in Pakete zusammengefasst:



Fehler können leichter korrigiert werden
Hardware kann den Benutzern gleichmäßig zur Verfügung gestellt werden
Minimierung der Wartezeiten
Paket ist ein allgemeiner Begriff eines kleinen Datenblocks; zusammen mit der spezifischen Hardware oder
Software wird von einem frame (Rahmen) gesprochen.
Beispiel eines frames: RS232 Standard; spezifiziert die ASCII Codierung, aber nicht wie die Kontaktaufnahme
stattfinden soll.
Byte Stuffing: Übertragung von Binärdateien
Reine Textdateien können problemlos übertragen werden, da die Steuerinformationen im Bereich der
nichtdruckbaren Zeichen unter dem ASCII Code 32 sich befinden. Wenn jedoch Binärdateien übertragen werden
sollen, können auch im zu übertragenden Datenpaket Steuerinformationen enthalten sein. Das Byte stuffing ist ein
Verfahren, das es möglich macht, auch Binärdateien zu übertragen.
SOH
Daten
SOH
EOT
EOT
Start of Header
End of Text
Wenn nun SOH, EOT in den Daten enthalten sein können, wird das Verfahren des Byte stuffings angewendet:
Soh
Eot
Esc
esc x
esc y
esc z
esc
Soh
Soh
Esc z
eot
Esc x
Esc y
eot
Erkennung der Übertragungsfehler
a) Hinzufügen eines Paritybits, even oder odd Parity, Sender und Empfänger haben die gleiche Parität eingestellt
Funktioniert nicht, wenn mehrere Bits verändert werden.
Beispiel Gerade Parität:
Sender
Byte
Parity Bit
01010101
0
11100000
1
11100001
0
Empfänger
Byte
Parity Bit
01010101
0
11100100
1
11111001
0
Fehler wird erkannt
Fehler wird nicht erkannt
Werden jedoch 2 Bits in einem Byte verändert, wird der Fehler nicht erkannt. Außerdem ist die Redundanz sehr
hoch, es werden 12,5 % für die Fehlerüberprüfung verwendet.
Seite 4/29
Nur für schulinternen Gebrauch
© WR
19/09/16
b) Checksummen
Sender
0001
0010
0011
0001
Checksum
1
2
3
1
Empfänger
0001
1
0010
2
0011
3
0010
2
7
Checksum 8
Fehler wird erkannt
Auch hier werden natürlich nicht alle Fehler bemerkt
c) Cyclic Redundancy Check (CRC)
Kann mathematisch durch ein Polynom dargestellt werden
X ... Daten
P(x) = X16 + X12 +X5 +1
Die letzten 16 oder 32Bit von P(x) werden an die Daten hinzugefügt und als CRC bezeichnet
Data
CRC
Der CRC ist das heutige Standardverfahren im Internet.
Schicht 3: Network Layer
Schicht 3 ermöglicht den Datenaustausch zwischen mehreren LAN‘s. Die Aufgabe von Layer 3 liegt in der
Wegwahl. Das Datenpaket der 3. Schicht wird datagram genannt (frame ... 2.Schicht, Segment ... 4.Schicht). Mit
Hilfe einer logischen Netzwerkadresse kann die physikalische Adresse des PC bestimmt werden.
Source
Netz
Knoten
Schicht 3 Header
Destination
Netz
Schicht 4 Daten
Schicht 4 Daten
Schicht 4 Daten
Knoten
Im Netzwerk gibt es 2 Adressen, die MAC Adresse (Layer 2) und die IP Adresse (Layer 3)
Die Adresszuweisung kann statisch erfolgen (die Adresse des PC wird mit der Hand eingetragen) oder dynamisch.
Bei der dynamischen Adressierung wird das DHCP (Dynamic Host Configuration Protocol) verwendet, das dem PC
eine Adresse zuweist: wenn ein PC bootet, kontaktiert er den Server (mit seiner MACAdresse) worauf der Server
dem PC eine IP - Adresse zuweist; die Tabelle von MAC Adresse und IP- Adresse werden am Server gespeichert.
Eine andere Art der dynamischen Adressierung ist das ARP oder RARP (Reverse Address Resolution Protocol):
ARP: Der PC will an einen anderen PC senden, hat seine IP Adresse, aber nicht seine MAC Adresse: er sendet
daher einen ARP Request: „Wer hat die IP Adresse 172.16.23.12 ?“. Der PC mit dieser Adresse sendet darauf seine
MAC Adresse, die der Empfänger in den ARP Cache abspeichert.
RARP: Hier hat der PC seine eigene MAC-Adresse, aber nicht seine IP-Adresse.
Anwendungsbeispiel für Schicht 3: Routing von einem logischen Netz zum anderen.
Schicht 4: Transport Layer
Schicht 4 Header
Schicht 5 Daten
Das Datenpaket heißt Segment.
Die OSI Schichten 1-3 arbeiten in der Regel verbindungslos. In der Schicht 4 kann nun eine Verbindung zwischen
Hosts bereitgestellt werden. Aus der Sicht des Benutzers existiert diese Verbindung immer, real existiert sie nur in
dem Zeitraum, in dem Daten versendet werden. Verzögert sich der Verbindungsaufbau, werden die anstehenden
Daten zwischengespeichert.
Seite 5/29
Nur für schulinternen Gebrauch
© WR
19/09/16
Schicht 4 ist für die korrekte Reihenfolge versendeter Segmente verantwortlich, überprüft also etwaigen
Datenverlust und fordert fehlende Daten wieder an.
Schicht 5 Session Layer (Kommunikationsschicht)
Zu den Aufgaben der Schicht gehören Auf und Abbau einer Verbindung und die Dialogsteuerung. Remote login mit
telnet oder ssh verwenden z.B. diese Schicht bei der Authentifizierung mit Passwort.
Schicht 6 Presentation Layer (Darstellungsschicht)
Sorgt für eine einheitliche Darstellung der Daten. Datenverschlüsselung und Datenkompression gehören in diese
Schicht. 2 verschiedene PC‘s haben unter Umständen verschiedene interne Darstellungen von Buchstaben, Integer
oder floating point Zahlen.
Diese Schicht stellt also sicher, dass die Daten, die PC1 aussendet, auch von PC2 gelesen werden können.
Schicht 7 Application Layer (Anwendungsschicht)
Ein Schicht 7 Protokoll gibt an, wie eine Anwendung das Netzwerk verwendet. Wie etwa eine Textverarbeitung
einen File auf einen Server abspeichert. Diese Schicht ist dem Benutzer am nächsten. (NFS, Dateidienste,
Druckerdienste, alle Anwendungsprogramme)
Seite 6/29
Nur für schulinternen Gebrauch
© WR
19/09/16
1.2 Die TCP/IP Protokollfamilie
Das OSI Schichtenmodell wurde in den 80-er Jahren eingeführt, in denen das Internet noch nicht aktuell war.
TCP/IP ist auf UNIX Rechnern die Grundausstattung, das Protokoll wurde in den 70-er Jahren in den USA vom
Department of defense (Dod) entwickelt und wird auch als dod 4 Schichtenmodell oder als Internet Layering Modell
bezeichnet. Obwohl das OSI Modell als theoretische Grundlage des Netzwerkverkehrs gilt hat sich in der Paxis das
TCP/IP Schichtenmodell durchgesetzt.
Das TCP/IP Schichtenmodell:
Application
Transport
Internet
Network Interface
Schicht 1: Hardwareschicht und Organisation von Daten in frames, ähnlich Schicht 1 und 2 im OSI Modell
Schicht 2:Spezifiziert Datenformat, die übers Internet versendet werden. Forwarding, routing.
Schicht 3: Sichert verlässlichen Datenverkehr
Schicht 4: Layer 5, 6 und 7 des OSI Modells
Bildquelle: www.netzmafia.de
OSI Modell
Application
Internet Modell
Application
Presentation
Nicht spezifiziert
Session
Nicht spezifiziert
Transport
Transport
Network
Internet
Datalink
Physical Layer 1
Network Interface
Seite 7/29
Nur für schulinternen Gebrauch
telnet
FTP
TCP
Protokolle
SMTP http
UDP
IP
Ethernet Token Ring
Physical Layer
© WR
PP
19/09/16
Eine Anordnung der Protokolle in einem Graphen:
FTP
HTTP
SMTP
DNS
ping
TCP
DNS
TFTP
UDP
ICMP
IP
Ethernet
ATM
WLAN
Abkürzungen und Beschreibung:
FTP
HTTP
SMTP
POP3
IMAP
DNS
TFTP
TCP
UDP
IP
RIP
ICMP
DHCP
File Transfer Protocol, zum effizienten Filetransfer
Hypertext Transfer Protocol, wird zum surfen mit Browsern verwendet
Sendmail Transfer Protocol, zum Senden von E-Mail
Post office Protocol 3, zum Empfangen von E-Mail
Internet Message Application Protocol, ein verbesserter Nachfolger von POP3
Domain Name Service,Auflösung von www-namen in IP Adressen :
www.bulme.at = 193.171.122.180
Trivial File Transfer Protocol, ein einfaches FTP ohne zusätzliche Befehle
Transport Control Protocol, sichert verlässlichen Transfer
User Datagram Protocol,wie TCP, aber es findet keine Kontrolle über Datenverlust statt,
bei Audio- oder Videoübertragungen
Internet Protocol, Das Internet Protokoll
Routing Information Protocol, Routinginformationen innerhalb eines Netzverbundes
werden ausgetauscht
Înternet Control Message Protocol, gibt Statusmeldungen an andere Protokolle
oder Anwendungen weiter. Beispiel ist der Befehl ping
Dynamic Host Control Protocol, zur Zuweisung von dynamisch vergebenen IP Adressen
innerhalb eines Netzes
1.3 Das Internet Protokoll Version 4
Eine IP - Adresse besteht aus einem Netzteil und einem Hostteil und umfasst 32 Bit. Ein Host ist ein PC,
Workstation oder Mainframe, der eine Internetadresse besitzt.
IP - Adresse
Netzwerkanteil
Hostanteil
Der Netzwerkanteil gibt die Netznummer an, der Hostanteil beschreibt die Adresse des Hosts innerhalb des Netzes.
Geschrieben werden die IP- Nummern in 4 Zahlen von 0 bis 255. die sogenannte dotted decimal notation.
Beispiel:
10000001 00001001 00110000 00000011
129
9
48
3
ist die IP-Nummer 129.9.48.3.
Seite 8/29
Nur für schulinternen Gebrauch
© WR
19/09/16
Die Netze werden in mehrere Klassen eingeteilt:
Klasse A:
Der Netzteil besteht aus den ersten 8 Bits, wobei das erste Bit 0 ist, der Hostanteil besteht aus 24 Bits.
0
xxxxxxx
Hostanteil
Das erste Byte gibt die Netznummer an, also gibt es 128 Netznummern, jedes dieser Netze kann 2 24 = 16 Millionen
Hosts besitzen. Die erste Zahl dieser Ip Adressen liegt zwischen 1 und 127
Klasse B:
1
0
14 Bit beliebig
Hostanteil
Der Netzteil besteht aus 16 Bits, wobei die ersten Bits 1 und 0 sind, der Hostanteil ist 16 Bits
Die ersten 2 Bytes geben die Netznummer an, die letzten 2 Bytes geben die Anzahl der Hosts pro Netz an
(216 = 65536) Die Anzhal der Netze beträgt 64 x 256 = 16384
Die erste Zahl der IP Adressen liegt also zwischen
10 000000
128
10 111111
191
Klasse C:
1
1
0
und
21 Bit beliebig
Hostanteil
Der Netzteil besteht aus 24 Bit, wobei die ersten 3 Bits 110 darstellen, der Hostanteil ist bei 8 Bits
Die ersten 3 Bytes geben die Netznummer an, pro Netz gibt es also 256 Adressen und 221 = 2 097 152 Netze dieser
Klasse, wobei die erste Zahl dieser Adressen zwischen 192 und 223 liegt.
Klasse D:
1
1
224 –239
1
Klasse E:
1
1
0
Multicast Adresse
240 – 255
1
die erste Zahl
1
die erste Zahl
Reserved for future use
Adressklasse
Klasse A
Klasse B
Klasse C
Klasse D
Klasse E
Anzahl der Netze
128
16384
2097152
Anzahl der Hosts
16777214
65534
255
1. Byte der IP Adresse
1-126
128-191
192-223
224-239
240-255
Folgende Adressen werden im Internet nicht geroutet, dh. von den Routern nicht weitergesendet, sondern werden
für den internen Gebrauch, also für das Intranet verwendet. Diese Adressen werden auch als private Adressen oder
Intranetadressen bezeichnet; für die Klassen A,B und C wurde je ein Bereich für die Intranetadressen reserviert.
Klasse A:
Klasse B:
Klasse C:
10.0.0.0
172.16.0.0
192.168.0.0
bis
bis
bis
10.255.255.255
172.31.255.255
192.168.255.255
Damit kann jede Organisation ein auf TCP/IP basierendes Intranet aufbauen, das eine Verbindung zum Internet
besitzt, das jedoch durch die internen Adressen von diesem geschützt ist. Dabei unterscheidet man zwischen
Network Address Translating (NAT) und Masquerading. Das NAT übersetzt jede einzelne interne Adresse in je eine
externe Adresse, der Router benötigt dazu nur eine Zuordnungstabelle. Die internen Rechner benötigen, um mit dem
Internet zu kommunizieren, keine externe Adresse.
Seite 9/29
Nur für schulinternen Gebrauch
© WR
19/09/16
NAT: Bild: http://www.netzmafia.de/skripten/netze/netz8.html
Beim Maskieren einer Adresse werden alle internen Adressen mit einer externen Adresse versehen. Im Internet ist
nun für alle internen Adressen nur die eine externe Adresse sichtbar. Es werden zwar Internetadressen für andere
Zwecke gespart, jedoch können die internen Rechner ohne Proxy nicht mehr von außem angesprochen werden.
Masqerading: Bild: http://www.netzmafia.de/skripten/netze/netz8.html
Die Länge des Netzanteils der IP Adresse wird mit einem Schrägstrich an die IP Adresse angehängt oder extra als
Netzmaske geschrieben:
Seite 10/29
Nur für schulinternen Gebrauch
© WR
19/09/16
Beispiel: Die IP Adresse 172.16.25.34/24 hat einen Netzanteil von 24 Bit. Damit verbleiben für den Hostanteil 8 Bit,
also können 2 hoch 8 =256 Adressen in diesem Netz vergeben werden. Die Netzmaske von 24 Bit wird in der dotted
decimal notation geschrieben:
11111111
11111111
11111111
00000000
255
255
255
0
Netzmaske:
255.255.255.0
Die Angaben
1) 172.16.25.34/24
2) 172.16.25.34, Netzmaske 255.255.255.0
sind gleichbedeutend.
Spezielle Adressen:
Für jedes Netz werden spezielle Adressen benötigt:
Für den Host 172.16.25.34/24 sind folgende Adressen reserviert:
172.16.25.0
Netzwerkadresse (die erste Adresse des Netzes)
172.16.25.255
Broadcastadresse (die letzte Adresse des Netzes)
127.0.0.1
Loopbackadresse zum Testen
255.255.255.0
Netzmaske (24 Bits werden mit 1 gesetzt)
2 Hosts befinden sich im selben Netz, wenn ihr Netznummer gleich ist. Wenn sich 2 Hosts im selben Netz befinden,
können sie über einen Hub oder Switch (oder auch mit einer direkten Verbindung oder WLAN) kommunizieren. Sie
benötigen dazu keinen Router. Die Netznummer (auch Netz ID genannt) wird mit Hilfe der AND Funktion
berechnet: IP Adresse AND Netzmaske
Bsp: Berechne die Netzadresse für den Host 172.16.25.34/24
IP-Adresse:
172
16
25
34
10101100
00010000
00011001
00100010
Netzmaske:
255
255
255
0
11111111
11111111
11111111
00000000
-------------------------------------------------------------------------------AND liefert
10101100
00010000
00011001
00000000
die Netznummer 172
16
25
0
Da die Netznummer die niedrigste Adresse im Netz ist, 2 hoch 8 = 256 Adressen im Netz sind, kann die
Broadcastadresse mit 172.16.25.255 sofort angegeben werden. Jeder PC besitzt neben seiner IP Adresse noch diese
Broadcastadresse (Rundrufadresse), die für alle PC's im Netz gleich ist. Ein Datenpaket, das an die Broadcastadresse
verschickt wird, erhält somit jeder PC.
Subnetting
Da die öffentlichen, also nicht privaten Adressen, nicht verschwendet werden sollen, kleine Firmen jedoch nur
wenige IP Adressen benötigen, werden sogenannte Subnetze oder Teilnetze vergeben.
Beispiel:
Der PC mit der IP Adresse 172.16.25.150/28 soll ins Netz gestellt werden. Wie lautet die Broadcastadresse, die
Netzadresse und die Netzmaske ?
28 Bits sind für das Netz reserviert also 4 Bits für die einzelnen PC’s sim Netz, 24=16 PC’s
Die Netzmaske besteht aus 28 Bit, die auf 1 gesetzt sind und 4 Bit sind Null.
Netzmaske:
Netzmaske:
11111111
255
11111111
255
11111111
255
11110000
240
Die Netznummer lässt sich durch ein logisches UND von IP Adresse und Netzmaske berechnen:
IP-Adresse 172.16..25.150 ist binär
10101100
00010000
00011001
10010110
Netzmaske 255.255.255.240 ist binär
11111111
11111111
11111111
11110000
Netznummer
172.16.25.144
10101100
00010000
00011001
10010000
Beispiel 2: Befinden sich die 2 PC's im selben Netz?
PC 1: 192.168.100.12
Netzmaske 255.255.254.0
PC 2: 192.168.101.254
Netzmaske: 255.255.254.0
Seite 11/29
Nur für schulinternen Gebrauch
© WR
19/09/16
Das Internet Protokoll ist der wesentliche Bestandteil des Internets: Die Funktionen umfassen:
● Definieren des Datagrams, die grundlegende Übertragungseinheit des Internets
● Definiert das Adressschema des Internets
● Transportiert die Daten von Schicht 2, der Netzwerkschicht, zu Schicht 4, der TCP Transportschicht
● Routet datagrams zu remote hosts
● Führt Fragmentierung und und Zusammensetzen der Datagramme durch
IP ist ein verbindungsloses Protokoll, eh: es tauscht keine Kontrollinformation mit dem Kommunikationspartner aus
(Handshake) Ein verbindungsorientiertes Protokoll tauscht Kontrollinformation aus um zu überprüfen, ob die der
Kommunikationspartner auch bereit ist, die Daten zu empfangen. IP ist ein unverläßliches Protokoll, weil es keine
Fehlerbehandlung inkludiert – diese passiert in Schicht 4.
Ein IP Datagramm muss wegen der heterogenen Netze im Internet u.U in mehrere Fragmente geteilt werden; jeder
Router hat eine MTU size, eine Maximum Transmission Unit, die in der Regel bei 1500 Bytes liegt.
Form eines IP datagrams:
0
4
8
Headerlänge
Type of Service
Identifizierung
Time to live
Protocol
16
Version
Flags
31
Total Length
Fragmentation offset
Header Checksum
Source Address
Destination Address
Options
Daten
Version:
Headerlänge:
Type of service:
Gesamtlänge:
Identifizierung:
Flags:
Fragmentation offset:
Time to live:
Protocol:
Header Checksum:
Padding
Version des Protokolls, zur Zeit Ipv4, wird in Zukunft von Ipv6 abgelöst
weil Zeile 6 optional
Ist eine Routerinformation: Verzögerung, Durchsatz und Zuverlässigkeit des
Datenpaketes werden beschrieben, Hier kann zB. in einer Firewall der Durchsatz eines
Datenpaketes bestimmt werden, also die Geschwindigkeit der Datenübertragung
beeinflusst werden.
Gesamtlänge
Für den Fall eines Verlust des datagrams; jedes datagram hat eine eindeutige
Identifizierung, um die Daten wieder in der richtigen Reihenfolge zusammensetzen zu
können.
zB: Ist das datagram fragmentiert ?
Wenn ein datagramm in mehrere Fragmente zerteilt ist, gibt das die Fragmentnummer
bekannt
Eine Zahl zwischen 1 und 255; jeder router vermindert diese Zahl um 1, wenn 0 erreicht
wird, wird das Paket weggeworfen.
Info für die darüberliegende Schicht: welches Transportprotokoll wird verwendet
16 Bit für die CRC Prüfsumme
Options sind optional, padding füllt nur das Wort auf 32 Bits auf.
Seite 12/29
Nur für schulinternen Gebrauch
© WR
19/09/16
Beispiel: Weg eines Datagramms vom ET Raum bis ins Internet
172.16.23.10
172.16.23.253
172.16.90.23
172.16.90.253
172.16.50.253
193.171.122.191
193.170.238.26
NIC
Der PC im ET Raum
NIC 1 routed Netz 17.16.23.0
NIC 2 gateway 172.16.90.253
Router in ET
Router im NCC
NIC 1 routed Netz 90 (Intranet)
NIC 2 routed Netz 50 (intranet)
NIC 3 routed Netz 193.171.122.0
NIC 4 gateway (routed alles andere)
Internet
Das Datenpaket wird über die einzige NIC des PC an den Server gesandt, das gateway des PC ist die Adresse
172.16.23.253. Der Server sendet jedes Paket mit der Netznummer 172.16.23.xxx wieder an das eigene Netz, alle
anderen Pakete sendet er über die NIC 2 an das gateway 172.16.90.253, also an den Router im NCC. Das gateay des
Servers in der ET ist 172.16.90.253. Der Router sieht anhand seiner Routingtabelle, dass das Paket an NIC 4
gesendet werden muss, wenn die Zieladresse außerhalb der Schule liegt.
Ein wichtiger Begriff beim Routing ist der des gateways: Wenn beim Router die angegebene Zieladresse nicht in der
Routingtabelle aufscheint, wird das Paket an das gateway weitergegeben.
Seite 13/29
Nur für schulinternen Gebrauch
© WR
19/09/16
Beispiel: Weg zu www.styria.com von einem Chello- anschluss in Graz .
Der Weg eines Datagrams kann mit dem Befehl
tracert
www.styria.com
verfolgt werden.
(traceroute www.styria.com in Linux)
Route-Verfolgung zu www.styria.com [195.12.206.6]
über maximal 30 Abschnitte:
1
2
3
4
5
6
7
8
9
10
11
2
6
7
257
14
12
10
33
36
20
25
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
2
6
8
13
10
11
16
27
23
26
31
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
2
7
6
228
23
13
12
22
28
33
64
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
graz-access1.chello.at [10.34.7.1]
rt146.chello.at [212.17.99.146]
vienna-bgp1-fe-4-0-0.chello.com [212.17.99.5]
tk-uni-eb3-pos-9-0-0.chello.com [212.17.99.41]
cvix1.apa.net [193.203.0.5]
mvn-apa-vix-34.apa.net [194.158.155.197]
cwien4.apa.net [194.158.136.251]
mvn-klagenfurt-wien.apa.net [194.158.155.122]
cisco-kleine_klag1.apa.net [194.158.154.102]
195.12.203.249
www.styria.com [195.12.206.6]
Route-Verfolgung beendet.
Das derzeit gültige Internetprotokoll ipv4 wird in Zukunft durch das Protokoll ipv6 abgelöst werden: Gründe für die
Erneuerung sind:
 Der Adressraum der IP Nummern wird bald zu klein
 Audio und Video Übertragungen werden besonders berücksichtigt
 Konferenzschaltungen übers Internet werden eingeplant ( Die Übertragung von Daten an Gruppen von Personen
wird erleichtert)
 Die Sicherheitsmechanismen in IPv4 sind mangelhaft
Seite 14/29
Nur für schulinternen Gebrauch
© WR
19/09/16
1.4 Das TCP Protokoll
Das TCP Protokoll hat folgende wesentliche Eigenschaften:
 Verbindungsorientiert
 Verläßlich
TCP errichtet eine verbindungsorientierte logische point to point Kommunikation zwischen den kommunizierenden
hosts mittels eines Handshakes: Host A beginnt die Kommunikation, indem es Host B eine Segment schickt, in dem
das SYN bit gesetzt ist. Das SYN Bit (Synchronize Sequence Numbers) weist B darauf hin, dass Host A eine
Verbindung beginnen will, wobei Host A dem Host B mit der sequence number auch mitteilt, mit welcher
Sequenznummer er die Übertragung starten will. Die Sequenznummern gewährleisten die richtige Reihenfolge der
einzelnen Segmente. Host B sendet nun an Host A ein Segment, in dem sein SYN Bit gesetzt ist, er also seine
Sequenznummer mitteilt, und auch das ACK Bit (positiv acknowledgment). Daraufhin sendet A eine Bestätigung
und gleichzeitig die Daten.
Modell eines 3-way handshakes
Host A
Host B
SYN
SYN, ACK
ACK, data
Das TCP Segmentformat:
Source Port
Headerlength
Reserved
Destination Port
Sequence number
Acknowledgment number
U A P R S F
R C S S Y I
G K H T N N
Checksum
Window
Urgent Pointer
Padding
Options
Data
Source Port und Destination port benötigen 16 Bits
Die Sequence number bezieht sich auf die ausgehenden Daten, (wieviele Bytes verschickt wurden), die
acknowledgment number bezieht sich auf die eingehenden Daten (wieviele Bytes bereits empfangen wurden)
Headerlength:
Reserved:
URG
ACK
PSH
RST
SYN
FIN
Seite 15/29
4 bits
6 bits
Urgent Pointer Field significant
Acknowledgment field
Push function
Reset the connection
Synchronize sequence numbers
No more data from sender
Nur für schulinternen Gebrauch
© WR
19/09/16
Im Window - Feld stehen die Anzahl der Bytes, die der Empfänger bereit ist zu empfangen. Bei einer window Zahl
von 6000 kann der Sender also 6000 Bytes schicken.
Checksum: 16 Bits
Urgent Pointer: Nur relevant, wenn das URG Bit gesetzt ist: Zeigt auf den Beginn von urgent data (der dringend
benötigten Daten)
Optionen (ein Vielfaches von 8 Bit) können hinzugefügt werden
Padding: Zum Auffüllen auf 32 Bit
Das Internet Control Message Protocol (ICMP)
Als Bestandteil der TCP/IP Protokollfamilie wird ICMP als Fehlerbehandlungsprotokoll verwendet. Sobald ein
Fehler auftritt, wird ICMP aufgerufen, um den Fehler mit den entsprechenden Informationen anzuzeigen.. Beispiele
dafür sind:




Flow control: Wenn die datagrams zu schnell ankommen (buffer overflow), sendet der Zielhost eine ICMP
Source Quench message zurück. Dadurch wird die Übertragung zeitweilig gestoppt.
Detecting unreachable destinations: Falls eine Zieladresse (oder aber auch eine Zielanwendung) nicht erreichbar
ist, wird eine entsprechende Meldung gesendet
Redirecting routes: Ein gateway kann einem host eine ICMP Redirect Message senden, um ihm mitzuteilen,
dass ein anderes gateway eine bessere Route zum Ziel bietet
Checking remote hosts: Um festzustellen, ob ein anderer Host erreichbar ist, wird eine ICMP echo message
gesendet. Wenn ein host eine echo message erhält, wird das Datenpaket zum Sender zurückgeschickt. (Der
befehl „ping zieladresse“ (Windows und Linux) benutzt diese echo message)
Ein Beispiel für das icmp Protokoll:
[harald@georg harald]$ ping www.netscape.com
PING www-mv.netscape.com (205.188.247.66): 56 data bytes
64 bytes from 205.188.247.66: icmp_seq=0 ttl=37 time=115.4 ms
64 bytes from 205.188.247.66: icmp_seq=1 ttl=37 time=114.7 ms
64 bytes from 205.188.247.66: icmp_seq=2 ttl=37 time=173.0 ms
64 bytes from 205.188.247.66: icmp_seq=3 ttl=37 time=114.7 ms
64 bytes from 205.188.247.66: icmp_seq=9 ttl=37 time=115.1 ms
64 bytes from 205.188.247.66: icmp_seq=11 ttl=37 time=114.6 ms
64 bytes from 205.188.247.66: icmp_seq=12 ttl=37 time=115.8 ms
64 bytes from 205.188.247.66: icmp_seq=13 ttl=37 time=115.3 ms
64 bytes from 205.188.247.66: icmp_seq=14 ttl=37 time=117.9 ms
64 bytes from 205.188.247.66: icmp_seq=19 ttl=37 time=114.4 ms
64 bytes from 205.188.247.66: icmp_seq=20 ttl=37 time=114.1 ms
Pakete gingen verloren !!!
Seite 16/29
© WR
Nur für schulinternen Gebrauch
Pakete gingen verloren !!!
19/09/16
Analyse des Netzwerktraffics mit tcpdump:
Mit dem Befehl tcpdump können die Datenpakete mit ihren Headern angezeigt werden. Alle Netzwerkanalysetools
wie zB. wireshark verwenden dieses Tool und bereiten die Ergebnisse in einer grafischen Form auf.
Die wichtigsten Optionen von tcpdump sind:
-i eth0
-n
-nn
-X
-XX
-v, -vv, -vvv
-c 5
-S
-e
-q
-s
hört auf das Interface eth0
Hostnamen werden nicht aufgelöst
Hostnamen und Portnummern werden nicht aufgelöst
zeigt die Pakete in Hexadezimaldarstellung und in ASCII
zeigt zusätzlich zu -X auch den Ethernet Header
Verboselevels
listet 5 Datenpakete
listet absolute Sequenznumbers
zeige auch den Ethernet Header
zeige weniger Infos
snaplength: Anzahl der Bytes, die gezeigt werden (default ist 96)
Beispiel:
Der Befehl
tcpdump -c 1 -nnvvXXSs 2000 -i virbr0
lieferte folgende Ausgabe:
tcpdump: listening on virbr0, link­type EN10MB (Ethernet), capture size 2000 bytes
13:10:07.677974 IP (tos 0x0, ttl 64, id 573, offset 0, flags [DF], proto: TCP (6), length: 60) 192.168.0.2.39868 > 174.129.29.218.80: S, cksum 0x7362 (correct), 148981455:148981455(0) win 5840 <mss 1460,sackOK,timestamp 1656050 0,nop,wscale 7>
0x0000: 001c 10a2 c18a 001d 6023 5c8b 0800 4500 Interpret: Quell­Macadresse Ziel Macadresse ethernet die 0x0010: 003c 023d 4000 4006 ab79 c0a8 0002 ae81 ersten 12 Bytes des IP headers 192.168.0.2 174.129.
0x0020: 1dda 9bbc 0050 08e1 46cf 0000 0000 a002 29.218 39868 80 148981455 ACK Nr
Bits
Port1 Port2
(Sequenznr)
0x0030: 16d0 7362 0000 0204 05b4 0402 080a 0019 5840 checksum URGP options header Schicht 5 0x0040: 44f2 0000 0000 0103 0307 Dieses Beispiel wurde beim Surfen mitgeschrieben: Die Quell IP-Adresse 192.168.0.2 mit der MAC Adresse
00:1c:10:a2:c1:8a surft zur Zieladresse 174.129.29.81 mit der MAC Adresse 00:1d:60:23:5c:8b. Die
Quellportnummer ist 39868, die Zielportnummer ist 80.
Gelb unterlegt ist der Header von Schicht2, hellblau der Header von Schicht 3, braun zuletzt der TCP Header,
gefolgt vom Header von Schicht 5.
Seite 17/29
Nur für schulinternen Gebrauch
© WR
19/09/16
Weitere Beispiele:
tcpdump host www.bulme.at
Loggt jedes Datenpaket mit, das als Quell- oder Zieladresse www.bulme.at hat
tcpdump port 21
Loggt nur Port 21 mit
tcpdump net 192.168.0.0/24 and dst net 10.10.10.0/24 or port 21
Und/Oder Verknüpfungen sind auch möglich
Es ist auch möglich, einzelne Bits eines Headers anzusprechen: Hier wird das 14.Byte (es wird mit Null zu zählen
begonnen) angesprochen und dort überprüft ob das SYN Bit gesetzt ist
tcpdump 'tcp[13] & 2!=0'
Das ACK Bit des TCP Headers ist im 14. Byte das 5.Bit von rechts also 2 4=16
tcpdump 'tcp[13] & 16!=0'
Seite 18/29
Nur für schulinternen Gebrauch
© WR
19/09/16
2) Einige Anwendungsprotokolle
2.1 DNS Domain Name System
Das Domain Name Service ist der grundlegende Dienst des Internets, denn ohne eine Namensauflösung (Umsetzung
des Namens in eine IP Adresse) wären Surfen und Mailen nicht möglich. Für einen Domain müssen aus Gründen
der Ausfallssicherheit immer 2 Hosts das Nameservice bereitstellen. DNS ist ein streng hierarchischer Dienst. Es
gibt über die Welt verteilte Rootserver, die die Informationen über die Top Level Domains (TLD) wie zB. .at
oder .com besitzen. Für jeden Top Level Domain gibt es mehrere Server, die die Informationen der Sub Level
Domains (SLD) wie bulme.at oder linux.at beinhalten. Erst der Nameserver für einen Domain wie zB. bulme.at
enthält die Informationen über die jeweiligen Hosts.
Quelle:http://blog.icann.org/2007/11/there-are-not-13-root-servers/
Die Namensauflösung www.bulme.at. geschieht also von rechts nach links: Zuerst wird der Rootserver (durch den
Punkt am Ende des Namens bezeichnet) befragt, der die Anfrage an den zuständigen Nameserver für at weiterleitet,
der wiederum eine Weiterleitung an den Nameserver der Bulme veranlasst; erst hier passiert die tatsächliche
Auflösung des Hostnamens in eine IP Adresse.
Seite 19/29
Nur für schulinternen Gebrauch
© WR
19/09/16
Hierarchische Auflösung des Hostnamens www.bulme.at
.
Rootserver
at
com
de
TLD
SLD
bulme
linux Host
proxy
www
Das Domain Name System ist für die Umsetzung des Hostnamens in eine IP-Adresse (und
umgekehrt) zuständig. Das DNS verwendet die Transportprotokolle TCP und UDP sowie den Anwendungsport 53.
Ein DNS Computername besteht aus 2 Teilen, dem Hostnamen und Domainnamen.hostname.domainname
Im obigen Beispiel ist www der Hostname, bulme.at der Domainname.
Außerdem ist es möglich, innerhalb eines domains Subdomains einzuführen, um eine hierarchische Organisation der
Hosts zu erreichen.
Bsp:
www.edv.bulme.at
193.171.122.181
www ist der hostname, edv der subdomain, bulme.at der Domainname, at der sogenannte Top level domain.
Der Verwalter eines Domains ist auch für die Bereitstellung der Nameserver zuständig. Wegen der Wichtigkeit des
Namesevice müssen pro Domain mindestens, 2 Nameserver bereitgestellt werden, um einen Ausfall eines Servers
überbrücken zu können. Jede Änderung eines Eintrags erfolgt im sogenannten Master oder Primary Name Server,
der dann die Informationen selbständig an den secondary nameserver weitergibt.
Die Domainnamen sind hierarchisch aufgebaut und die Auflösung des Hostnamens beginnt von links anch rechts;
Zuerst werden die zentralen Rootserver befragt, die die Informationen über die nameserver der top level domains
besitzen, dann der entsprechende top level domain nameserver, dann der nameserver des gesuchten domains.
gov
net
country-code
Root server
edu
bulme
www
com
mil
Org
Die einzelnen domains sowie die Countrycodes liegen unterhalb des Wurzelverzeichnisses root und gehören zu den
top level domains. Es gibt weltweit 14 Root Server , die die zentralen Informationen des DNS speichern; sie werden
Seite 20/29
Nur für schulinternen Gebrauch
© WR
19/09/16
mit einem Punkt am Ende des Namens angegeben. Jeder Browser fügt jedoch selbständig diesen Punkt hinzu,
sodass er nicht angegeben werden muss.
gov
net
edu
com
mil
Government Institutions
Networking Support Centers
Educational Institutions
Commercial Organisation
Military Groups
Die weltweiten Toplevel Domainnamen werden von der Organisation Inter-NIC vergeben (www.internic.at), in
Österreich können diese bei www.nic.at oder bei einem Provider bestellt werden.
1997 wurden weitere Top Level Domains eingeführt (store, firm, web, arts, rec, info, nom), die sich jedoch bis heute
noch nicht durchsetzen konnten.
Der Befehl nslookup wird verwendet, um für eine gegebene Adresse den Namen zu finden:
Bsp: nslookup www.bulme.at
oder
nslookup 193.171.122.190
-----------------Auflösung des Namens www.linux.at
dig +trace www.linux.at.
; <<>> DiG 9.3.1 <<>> +trace www.linux.at.
;; global options: printcmd
.
381582 IN
NS
G.ROOT-SERVERS.NET.
.
381582 IN
NS
H.ROOT-SERVERS.NET.
.
381582 IN
NS
I.ROOT-SERVERS.NET.
.
381582 IN
NS
J.ROOT-SERVERS.NET.
.
381582 IN
NS
K.ROOT-SERVERS.NET.
.
381582 IN
NS
L.ROOT-SERVERS.NET.
.
381582 IN
NS
M.ROOT-SERVERS.NET.
.
381582 IN
NS
A.ROOT-SERVERS.NET.
.
381582 IN
NS
B.ROOT-SERVERS.NET.
.
381582 IN
NS
C.ROOT-SERVERS.NET.
.
381582 IN
NS
D.ROOT-SERVERS.NET.
.
381582 IN
NS
E.ROOT-SERVERS.NET.
.
381582 IN
NS
F.ROOT-SERVERS.NET.
;; Received 228 bytes from 195.34.133.17#53(195.34.133.17) in 37 ms
-----------------------------
at.
172800 IN
NS
SSS-NL.NIC.at.
at.
172800 IN
NS
SSS-US2.NIC.at.
at.
172800 IN
NS
NS1.UNIVIE.AC.at.
at.
172800 IN
NS
NS2.UNIVIE.AC.at.
at.
172800 IN
NS
NS9.UNIVIE.AC.at.
at.
172800 IN
NS
NS-DE.NIC.at.
at.
172800 IN
NS
NS-UK.NIC.at.
at.
172800 IN
NS
NS-US1.NIC.at.
at.
172800 IN
NS
SSS-JP.NIC.at.
;; Received 423 bytes from 192.112.36.4#53(G.ROOT-SERVERS.NET) in 151 ms
linux.at.
10800 IN
NS
lipo.at0.net.
linux.at.
10800 IN
NS
vishna.hjp.at.
linux.at.
10800 IN
NS
arachne.luga.at.
linux.at.
10800 IN
NS
ns1.wsr.ac.at.
;; Received 181 bytes from 193.0.0.231#53(SSS-NL.NIC.at) in 38 ms
www.linux.at.
86400 IN
A
143.130.20.3
linux.at.
604800 IN
NS
ns.luga.at.
linux.at.
604800 IN
NS
ns1.hjp.at.
linux.at.
604800 IN
NS
ns1.wsr.ac.at.
linux.at.
604800 IN
NS
tmpdns.lipo.at0.net.
;; Received 180 bytes from 213.235.202.142#53(lipo.at0.net) in 164 ms
--------------------------------------------------------------------------------
Seite 21/29
Nur für schulinternen Gebrauch
© WR
19/09/16
2.2 SMTP und POP3 Simple Mail Transfer Protocol und Post Office Protocol 3
Bildquelle: http://www.elektronik-kompendium.de
SMTP ist für das Senden einer E-Mail in einem TCP/IP Netzwerk zuständig, es verwendet die Portnummer 25. Das
Protokoll POP3 holt die Mail vom Server ab und verwendet dern Port 110.
In Linux kann eine Mail kann auch auf der Konsole versendet werden, im folgenden Beispiel befindet sich die Mail
in einem File namens textfile, das Subject lautet Testmail.
mail –s „Testmail“ [email protected] < textfile
Eine andere, vom Betriebssystem unabhängige Möglichkeit zur direkten Kontaktaufnahme mit dem Mailserver:
(Fett: vom Benutzer eingegeben)
harald:[root]#
telnet www.kbg.at 25
Trying 192.168.0.1...
Connected to www.kbg.at.
Escape character is '^]'.
220 harald.kbg.at ESMTP Sendmail 8.12.8/8.12.5; Tue, 21 Oct 2003 12:05:54 +0200
maifrom: [email protected]
500 5.5.1 Command unrecognized: "maifrom: [email protected]"
mail from: [email protected]
250 2.1.0 [email protected]... Sender ok
rcpt to: [email protected]
550 5.1.1 [email protected]... User unknown
rcpt to:[email protected]
250 2.1.5 [email protected]... Recipient ok
data
354 Enter mail, end with "." on a line by itself
Hallo Armin !
Das ist eine testmail ....
.
250 2.0.0 h9LA5siZ008717 Message accepted for delivery
quit
221 2.0.0 harald.kbg.at closing connection
Connection closed by foreign host.
harald:[root]#
Bemerkenswert ist, dass zum Versenden einer E-Mail kein gültiger Absender notwendig ist und eine eventuelle
Angabe der E-Mailadresse auch nicht auf ihre Richtigkeit überprüft wird. Diese Schwäche des Protokolls führte in
den vergangenen Jahren zu einen enormen Anstieg von Spammails.
Seite 22/29
Nur für schulinternen Gebrauch
© WR
19/09/16
Ein Beispiel des POP3 Protokolls, fett vom Benutzer eingegeben:
harald:[root]# telnet www.kbg.at 110
# Verbindung zum Mailserver
Trying 192.168.0.1...
Connected to www.kbg.at.
Escape character is '^]'.
+OK POP3 harald.kbg.at v2001.78rh server ready
user armin
# Benutzer anmelden
+OK User name accepted, password please
pass armin
# Passwort eingeben
+OK Mailbox open, 2 messages
list
# Anzahl der Mails
+OK Mailbox scan listing follows
1 711
# Mail 1 hat 711 Bytes
2 641
# Mail 2 hat 641 Bytes
.
retr 1
# Retrieve Mail 1
+OK 711 octets
Return-Path: <[email protected]>
Received: from harald (harald.kbg.at [192.168.0.1])
by harald.kbg.at (8.12.5/8.12.5) with ESMTP id h0RF0mtJ001881
(version=TLSv1/SSLv3 cipher=RC4-MD5 bits=128 verify=NO)
for <[email protected]>; Mon, 27 Jan 2003 16:00:48 +0100
Content-Type: text/plain;
charset="us-ascii"
From: Harald Wolfger <[email protected]>
Reply-To: [email protected]
To: [email protected]
Subject: (no subject)
Date: Mon, 27 Jan 2003 16:00:48 +0100
User-Agent: KMail/1.4.3
MIME-Version: 1.0
Message-Id: <[email protected]>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by harald.kbg.at id h0RF0mtJ001881
Status: RO
Hallo Armin !
Das ist eine testmail ....
.
quit
+OK Sayonara
Connection closed by foreign host.
2.3 Protokollnummern, Ports and Sockets:
Wenn die Daten die einzelnen Schichten des Internet Modells durchwandern, muss auch sichergestellt sein, welches
Transport Protokoll und welche Anwendung die Daten erhalten.
Das IP verwendet Protokollnummern um das Transportprotokoll (TCP, UDP, ICMP) zu identifizieren.
Das Transportprotokoll verwendet Portnummern um die Anwendung zu identifizieren.
Einige Beispiele von Protokollnummern: (auf Linux unter /etc/protocols)
ICMP
1
TCP
6
UDP
17
Auf Grund dieser Protokollnummern weiß die IP Schicht, welchem Transportprotokoll sie die Daten übergeben
muss. Nachdem die Daten dem Transportprotokoll übergeben wurden, reicht dieses nun die Daten an die korrekte
Anwendung weiter. Dazu wird die portnummer verwendet:
Seite 23/29
Nur für schulinternen Gebrauch
© WR
19/09/16
Einige Beispiele von bekannten (und standardisierten) Portnummern: (Linux: /etc/services)
ftp
20 und 21
ssh
22
telnet
23
smtp
25
http
80
pop3
110
Neben den fix vergebenen Portnummern gibt es auch noch die dynamisch vergebenen Portnummern. Diese werden
notwendig, wenn mehrere Benutzer die gleiche Applikation, wie zB. telnet, benutzen wollen. Der destination port
bleibt immer 23, jedoch der source port der verschiedenen Benutzer wird dynamisch vergeben:
Source 1
Source 2
Source 3
Sourceport
3144
3419
3678
Destinationport
23
23
23
Die Kombination einer IP – Adresse und einer Portnummer wird als Socket bezeichnet. Hat nun die Quelle im
obigen Beispiel die Adresse 193.171.122.180 und das Ziel die Adresse 127.29.23.1, so ist die Kombination
193.171.122.180.3144
die durch den Befehl
identifiziert.
127.29.23.1.23
telnet 127.29.23.1 auf dem Host 193.171.122.180 eingegeben wurde, im Internet eindeutig
2.4 Einige weitere Transportprotokolle
NetBIOS...Network Basic Input Output System
Ist ein Protokoll von IBM; es benutzt NetBEUI als Transportprotokoll und erstreckt sich dabei von der OSI Schicht
3 bis zur OSI Schicht 5. Es wurde ursprünglich zur Kommunikation zwischen einem mainframe und einem
Terminal entwickelt.
NetBEUI... NetBIOS Extended User Interface
Ist ein Protokoll von IBM. Wird heute die PC-Server von IBM und bei Microsoft Netzwerksystemen (W9x,
Windows NT usw) eingesetzt
IPX/SPX...Internetwork Packet Exchange/Sequenced Packet Exchange
Von Novell entwickeltes Protokoll: verantwortlich für die Abbildung der IPX Adresse auf die MAC Adresse und für
das routing in den Netzen.
Appletalk
Nur für den Einsatz von Netzwerken bei Apple PC‘s
SNA... System Network Architecture
Von IBM für den Token Ring entwickelt, deckt alle 7 Schichten des OSI Modells ab.
Seite 24/29
Nur für schulinternen Gebrauch
© WR
19/09/16
2.5 Internet Protokoll Version 6
Der Adressraum von IPv6 von 128 Bit ermöglicht 2 128 ~ 3,4·1038 mögliche Adressen.
Damit sind nun ausreichend viele Adressen erhältlich. Bekanntlich ist der Adressraum von IPv4 bereits
ausgeschöpft, die letzten IPv4 Adressen wurden 2011 vergeben.
IPv6 ermöglicht eine automatische Konfiguration der Netzwerkadresse durch das ND (Neighbour Discovery)
Protokoll, es ist also weder eine manuelle Konfiguration und auch kein DHCP Server notwendig. Die Adresse wird
durch eine Kommunikation mit den nächsten benachbarten Routern bestimmt.
Einer Netzwerkschnittstelle können mehrere Adressen zugewiesen werden; als ein Mitglied mehrerer Netze ist es
leichter auf diese zuzugreifen. Ein Laptop kann somit problemlos von einem Firmenstandort zum anderen
mitgenommen werden und kann noch immer unter derselben Adresse erreicht werden. Die Mobilität wird
vereinfacht.
Ein wesentlicher Nachteil von IPv4 war die Sicherheit. Die Sicherheitsmechanismen von IPv4 wurden alle
nachträglich hinzugefügt und sind mangelhaft. In IPv6 wurde bei der Konzeption bereits die Sicherheit mit IPSec
besonders berücksichtigt. Es ist möglich im Internet über einen sicheren Tunnel zu kommunizieren.
IPv6 Adressen sind mit IPv4 Adressen abwärtskompatibel, sodass beide Protokolle auf einem Host laufen können.
IPv4 Adressen können leicht in IPv6 Adressen umgewandelt werden.
In IPv4 konnten viele Dienste ihre Pakete nur über Broadcast oder Unicast versenden. In IPv6 ist das Multicasting
deutlich erleichtert worden, es können z.B.: alle Router oder auch alle Nameserver angesprochen werden.
Durch die neue geographische Anordnung und Zuweisung der IPv6 Adressen und durch die Anpassung der
Headerdaten des IP Paketes wird ein schnelleres Routing ermöglicht.
Unicast:
Broadcast:
Multicast:
Anycast:
Versenden eines Paketes an einen bestimmtenn Host
Versenden eines Paketes an alle Hosts des Netzes
Versenden eines Paketes an eine ausgewählte Gruppe von Hosts
Mehrere Hosts besitzen dieselbe Adresse, das Paket wird von den Routern an denjenigen
Host gesendet, der dem Absender am nächsten ist. Dieses System wird vor allem bei den
Nameservern verwendet
Die Adressierung in IPv6:
Ipv6 Adressen werden hexadezimal angeschrieben, 128 Bit werden in 8 Blöcke zu je 16 Bit aufgeteilt; je 8 Bit
entsprechen einer hexadezimalen Zahl:
23a1:3628:cd73:ad82:8333:acf5:1201:a2ff
Führende Nullen brauchen nicht geschrieben zu werden, die Adresse
00a1:0028:cd73:ad82:0000:acf5:1201:a2ff
kann abgekürzt werden in
a1:28:cd73:ad82:0:acf5:1201:a2ff
Mehrere Blöcke mit Nullen können weiter abgekürzt werden:
0a1:0028:cd73:0000:0000:0000:1201:a2ff
wird zu
a1:28:cd73::1201:a2ff
Seite 25/29
Nur für schulinternen Gebrauch
© WR
19/09/16
Einteilung einer Adresse:
Die 128 Bit der IPv6 Adresse werden in 3 Teile geteilt:
Das Standort Präfix.
Die Teilnetz-ID.
Die Schnittstellen-ID (Interface identifier)
48 Bit
16 Bit
64 Bit
Beispiel:
2001:0da8:1c4d:0d14:4000:0400:232f:1a2b
2001:0da8:1c4d
ist das Standortpräfix, das vom Provider oder von der RIR
zugewiesen wurde, das die öffentliche Topologie beschreibt
0d14
ist die Teilnetz-ID, das der Administrator des Netzes dem eigenen
Standort zugewiesen hat, die Standorttopologie.
4000:0400:232f:1a2b
Ist die Schnittstellen-ID, die automatisch aus der MAC Adresse
generiert wird
Es gibt unterschiedliche Präfixe, so kann auch ein Teilnetzpräfix angeben werden, das 64 Bit umfasst:
2001:0da8:1c4d:0d14 /64
Die Netzmaske wird wie bei IPv4 mit einem Schrägstrich angegeben, zB:
fe80::21d:60ff:fe23:5c8b:c1ab:7ab0/64
Auch hier wird die IP Adresse mit der Netzmaske geundet um die Netzadresse zu ermitteln.
Beispiel:
Hat z.B. ein Netzwerkgerät die IPv6-Adresse
20a3:01b8:84a3:0813:1119:2a2e:4370:7127/64,
so lautet das Präfix
20a3:01b8:84a3:0813::/64
und der Interface Identifier
1119:2a2e:4370:7127.
Adressarten in IPv6
Link­lokale (verbindungslokale) Unicast­Adresse
Die Link-lokale Unicast-Adresse kann nur auf dem lokalen Netzwerklink verwendet werden. Link-lokale Adressen
sind außerhalb des Unternehmens ungültig und werden nicht erkannt. Diese Adressen werden für ND (Neighbour
Discovery) Protokoll verwendet, mit dem man eine gültige IPv6 Adresse erhält.
Ein Link-lokaler Präfix hat das folgende Format:
fe80::Schnittstellen-ID/10
Seite 26/29
Nur für schulinternen Gebrauch
© WR
19/09/16
fe80
Hexadezimale Darstellung des binären 10-Bit-Präfixes 1111111010. Dieses Präfix identifiziert den Typ der IPv6Adresse als Link-lokal.
Schnittstellen-ID
Hexadezimale Adresse der Schnittstelle, die in der Regel von der 48-Bit-MAC-Adresse abgeleitet wird.
Das folgende Beispiel zeigt das Format einer Link-lokalen Adresse.
fe80::5652:ff:fe4c:1634/64
Private Adressen (ULA ... Unique Local Addresses)
werden im Internet nicht geroutet und haben ein Präfix von
fc00::/7
Dieses Netz wird aufgeteilt in zwei /8 Netze, also fc00::/8 und fd00::/8. Auf das Präfix (also fc oder fd) folgen 40
Bit Site ID, wobei beim Präfix „fd“ diese 40 Bit zufällig generiert werden, während beim Präfix fc die Adresse
zugewiesen wird, was aber noch nicht implementiert wurde.
Nach den 40 Bit der Site ID folgen 16 Bit der Netz ID, diese geben das Subnetz an.
Eine Beispiel-ULA wäre fd12:3456:7890:abcd::1. Hierbei ist fd der Präfix für lokal generierte ULAs, 12:3456:7890
ein einmalig zufällig erzeugter 40-Bit-Wert und abcd eine willkürlich gewählte Subnet-ID.
Wenn Site ID's eindeutig gewählt werden, kann es bei VPN Verbindungen keine Probleme geben, da die
verschiedenen privaten Netze auch verschiedene Adressen besitzen. Bei Ipv4 kann es passieren, dass
Adresskollisionen auftreten, wenn ein privates Netz zu einem zweiten privaten Netz getunnelt wird.
Für die Generierung der 64 Bit lange Adresse innerhalb des Netzes, die auch interface identifier genannt wird,
verwendet man die MAC Adresse, aus der das EUI-64-Token (Extended Unique Identifier) erzeugt wird. Diese
IPv6 Adresse ist weltweit eindeutig.
Im Internet kann man sich ULA's erzeugen lassen:
Quelle: http://www.sixxs.net/tools/grh/ula/
Seite 27/29
Nur für schulinternen Gebrauch
© WR
19/09/16
Wie man sieht werden Bytes 4,5 und 6 der MAC Adresse unverändert gelassen, vorher werden 2 Bytes ff und fe
eingefügt. Die Bytes 2 bis 3 der MAC Adresse werden wieder unverändert übernommen, beim ersten Byte wird
jedoch das 7. Bit auf 1 gesetzt. Globale eindeutige Adressen haben dieses Bit auf Null gesetzt, während lokal
generierte Adressen dieses Bit auf 1 gesetzt haben.
Multicast Adressen
ff00::/8 stehen für Multicast-Adressen.
Eine IPv6 Multicastadresse besitzt einen Präfix von FF00::/8 (1111 1111). Das zweite Halbbyte der Adresse
FF00::/16 definiert die Lebenszeit und den Geltungsbereich (scope). Dabei besitzt eine permanente Adresse einen
Wert von 0 und eine temporäre Adresse einen Wert von 1. Der Gültigkeitsbereich einer Multicastadresse variiert
von node, link, site, organization bis zu global und wird mit dem Parametern 1, 2, 5, 8 bzw. E angezeigt.
Global Unicast Adressen
2000::/3 (also alle Adressen von 2000:… bis 3fff:…) sind von der IANA vergebenen globalen Unicast-Adressen,
also routbare und weltweit einzigartige Adressen. Sie entsprechen den öffentlichen IPv4 Adressen.
Umrechnung von IPv4 in IPv6 Adressen:
(siehe zB: http://www.subnetonline.com/pages/subnet-calculators/ipv4-to-ipv6-converter.php)
Hier wurde die Adresse 193.171.122.180 in eine Ipv6-Adresse umgerechnet.
2002 ist das 6to4 Präfix, das anzeigt, dass hier eine IPv4 Adresse in IPv6 umgewandelt wurde.
Die localhost Adresse
127.0.0.1 in IPv4, lautet in Ipv6 nun
0000:0000:0000:0000:0000:0000:0000:0001
oder, abgekürzt
::1
Seite 28/29
Nur für schulinternen Gebrauch
© WR
19/09/16
Der IPv6 Header:
Die Version ist nun IPv6.
Die Priorität gibt an, ob ein Paket bevorzugt behandelt werden soll. So können Datenpakete für eine Real Time
Anwendung wie eine Liveübertragung gegenüber einem Mailversand bevorzugt werden. Wenn ein Router nun
ausgelastet ist können die Emaildaten verworfen werden und können später nachgereicht werden. Mit dem 4 Bit
großen Priorityfeld können 16 Prioritäten vergeben werden.
Das Flow Label erspart es dem Router aufwändige Berechnungen für den gleichen Datenstrom für alle Datenpakete
durchführen zu müssen; die Berechnungen werden nur für das erste Datenpaket ausgeführt und deren Ergebnisse auf
die weiteren Pakte dieses Datenstroms angewendet.
Payload length: Länge des Datenpaketes
Next Header: Ist ein Link auf den eventuell nächsten Header
Hop Limit: Wie bei IPV4, jeder Router erhöht die Anzahl der Hops bis die maximale Anzahl erreicht ist, danach
wird das Paket weggeworfen.
Quell- und Zieladresse enthalten nun 128 Bit.
Ein Host kann in IPv6 mehrere IP Adressen besitzen, neben der Localhost Adresse eine Multicastadresse, eine
verbindungslokale Adresse, eine standortlokale Adresse und eine globale Adresse.
Quellen:
Seite 29/29
http://de.wikipedia.org
http://tldp.org/HOWTO/Linux+IPv6HOWTO
http://en.wikipedia.org/wiki/IPv6_address
http://docs.oracle.com/cd/E19957­01/820­2980/ipv6­overview­10/index.html
Nur für schulinternen Gebrauch
© WR
19/09/16
Herunterladen