Skip to main content

DHCP / DNS / FTP / TCP / UDP

DHCP

Dynamic Host Configuration Protocol – mit diesem Protokoll werden die IP-Adressen an Endgeräte (das könnte ein PC, Smartphone oder Drucker sein) innerhalb eines Netzwerks zugewiesen. Die Hosts werden dynamisch (automatisch) konfiguriert.

Das Ziel von diesem Protokoll ist es, dass jedem Host im Netzwerk eine IP-Adresse sowohl auch ein Gateway, Subnetzmaske und DNS automatisch zuzuordnen.

Port 67 - UDP (Server)
Port 68 - UDP (Client)

Layer 7 (Application Layer) - OSI Modell

Ablauf DHCP
  1. DHCPOFFER: Die DHCP-Server antworten mit entsprechenden Werten auf eine DHCPDISCOVER-Anfrage.

  1. DHCPREQUEST: Der Client fordert eine der angebotenen IP-Adressen, weitere Daten sowie Verlängerung der Lease-Zeit von einem der antwortenden DHCP-Server.

  1. DHCPACK: Bestätigung des DHCP-Servers zu einer DHCPREQUEST-Anforderung oder die Übermittlung von Konfigurationsparametern, die vorher durch DHCPINFORM vom Client angefordert wurden.

  1. DHCPNAK: Ablehnung einer DHCPREQUEST-Anforderung durch den DHCP-Server.

  1. DHCPDECLINE: Ablehnung durch den Client, da die IP-Adresse schon verwendet wird.

  1. DHCPRELEASE: Der Client gibt die eigene Konfiguration frei, damit die Parameter wieder für andere Clients zur Verfügung stehen.

  1. DHCPINFORM: Anfrage eines Clients nach weiteren Konfigurationsparametern, z. B. weil der Client eine statische IP-Adresse besitzt.

Wichtige Headereinträge DHCP

Client-/Transaction-ID

Zufallszahl, die der Client bestimmt und dem Server der Zuordnung hilft

Flags

Discover

Offer

Request

Acknowledge

Server-Address

Hilft dem DHCP-Server zu erkennen, an wen der Request gerichtet ist

Client-Address

Die IP-Adresse, die dem Client dann zugeordnet wird

Client hardware address

MAC-Adresse welcher der Client Broadcastet


DNS

Domain Name System – funktioniert ähnlich wie ein Telefonbuch: Es verwaltet die Zuweisung zwischen Namen und Nummern. DNS-Server übersetzen Namensanforderungen in IP-Adressen und steuern dabei, welchen Server ein Endbenutzer erreicht, wenn er in seinen Webbrowser einen Domänen-Namen eingibt.

Port 53 - UDP

Layer 7 (Application Layer) - OSI Modell

Auf jedem Client ist ein Stück Software installiert, dass sich Resolver nennt. Sollte man eine IP-Adresse auf Basis einer URL benötigen, dann kümmert sich der Resolver um die Anfrage beim DNS-Server.

Eine Anfrage bei einem DNS-Server kann zwei unterschiedliche Antworten zur Folge haben.
Beim itterativen Verfahren (links im Bild) bekommt man entweder die gewünschte Antwort oder einen Verweis zu einem anderen DNS-Server. Dieser wird dann vom Resolver auf dem Client angefragt.
Beim rekursiven Verfahren (rechts im Bild) frägt der Resolver ebenfalls bei einem DNS-Server an, sollte der die Antwort nicht kennen, dann leitet dieser sie selbst an den nächsten DNS-Server weiter.

rekursiv-iterativ.jpg

TCP

Transmission Control Protocol - ist ein verbindungsorientiertes und paketvermitteltes Transportprotokoll. Kommunikation über TCP lässt sich in drei Schritte einteilen, dem Verbindungsaufbau, der Datenübertragung und dem Verbindungsabbau.

Verbindungsaufbau - Drei-Wege-Handshacke
Client (Rechner der Verbindung aufbauen will) schickt ein SYN mit einer zufälligen 16-Bit langen Sequenznummer(seq). Ist der Server (Rechner zu dem die Verbindung aufgebaut wird) bereit die Verbindung zu zulassen, dann antwortet er mit einem SYN-ACK.Dabei wird die erhaltene seq um eins weitergezählt und als Acknowledgenummer(ack) zurück geschickt. Zusätzlich erstellt der Server selbst eine 16-Bit lange Sequenznummer und schickt diese mit.
Das SYN-ACK wird vom Client mit einem ACK bestätigt. Hier wird die seq des Servers als ack verwendet und um eins hochgezählt.

1024px-Tcp-handshake.svg.png