IPv4/DHCP/Server: Unterschied zwischen den Versionen

Aus Foxwiki
K (Textersetzung - „  “ durch „ “)
 
(70 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
=Allgemein=
= Allgemein =
*DHCP (Dynamic Host Configuration Protocol)
*DHCP (Dynamic Host Configuration Protocol)
*Transport durch UDP
*Transport durch UDP
Zeile 5: Zeile 5:
**IPv4:67 (Server) 68 (Client)
**IPv4:67 (Server) 68 (Client)
**IPv6: 547 (Server) 546 (Client)
**IPv6: 547 (Server) 546 (Client)
=Aufgabe=
 
= Aufgabe =
*Clients automatisch in ein bestehendes Netz einbinden
*Clients automatisch in ein bestehendes Netz einbinden
*Übermittlung der Netzwerkeinstellungen:
*Übermittlung der Netzwerkeinstellungen:
Zeile 18: Zeile 19:
**Time- und NTP-Server, die für die Synchronisierung der Uhrzeit zuständig sind
**Time- und NTP-Server, die für die Synchronisierung der Uhrzeit zuständig sind


=<big>Betriebsmodi</big>=
= Betriebsmodi =


<big> '''Manuelle Zuordnung''' </big>
== Manuelle Zuordnung ==


*In diesem Modus (statisches DHCP) werden am DHCP-Server die IP-Adressen bestimmten MAC-Adressen fest zugeordnet
*In diesem Modus (statisches DHCP) werden am DHCP-Server die IP-Adressen bestimmten MAC-Adressen fest zugeordnet
Zeile 26: Zeile 27:
*Der Nachteil kann darin liegen, dass sich keine zusätzlichen Clients in das Netz einbinden können, da die Adressen fest vergeben sind
*Der Nachteil kann darin liegen, dass sich keine zusätzlichen Clients in das Netz einbinden können, da die Adressen fest vergeben sind


<big> '''Automatische Zuordnung''' </big>
== Automatische Zuordnung ==
*Am DHCP-Server wird ein Bereich (range) von IP-Adressen definiert
*Am DHCP-Server wird ein Bereich (range) von IP-Adressen definiert
*IP-Adressen werden automatisch an die MAC-Adressen von neuen DHCP-Clients zugewiesen und keinem anderen Host mehr zugewiesen
*IP-Adressen werden automatisch an die MAC-Adressen von neuen DHCP-Clients zugewiesen und keinem anderen Host mehr zugewiesen
*Neue Clients erhalten keine IP-Adresse, wenn Adressbereich vergeben ist
*Neue Clients erhalten keine IP-Adresse, wenn Adressbereich vergeben ist


<big> '''Dynamische Zuordnung''' </big>
== Dynamische Zuordnung ==
 
*Automatische Zuordnung aber mit Lease-Time: Festlegung wie lange eine IP-Adresse an Client „verliehen“ wird, bevor Client eine „Verlängerung“ beantragen muss
*Automatische Zuordnung aber mit Lease-Time: Festlegung wie lange eine IP-Adresse an Client „verliehen“ wird, bevor Client eine „Verlängerung“ beantragen muss
*Bei „Nicht-Verlängerung“ wird IP-Adresse frei und neu vergeben
*Bei „Nicht-Verlängerung“ wird IP-Adresse frei und neu vergeben
*DHCP-Server vergibt auch von der MAC-Adresse abhängige IP-Adressen, d. h. ein Client bekommt hier selbst nach längerer Netzwerkabstinenz und Ablauf der Lease-Time die gleiche IP-Adresse wie zuvor (es sei denn natürlich, diese ist inzwischen schon anderweitig vergeben)
*DHCP-Server vergibt auch von der MAC-Adresse abhängige IP-Adressen, d. h. ein Client bekommt hier selbst nach längerer Netzwerkabstinenz und Ablauf der Lease-Time die gleiche IP-Adresse wie zuvor (es sei denn natürlich, diese ist inzwischen schon anderweitig vergeben)


= <big>Installation</big> =
= Installation =
<pre>root@router:~# apt install isc-dhcp-server</pre>
# apt install isc-dhcp-server
 
= <big>Konfiguration</big> =


'''Datei:'''<code>/etc/dhcp/dhcpd.conf</code>
= Konfiguration =
*<big>Lease-Time in Sekunden</big>
/etc/dhcp/dhcpd.conf
<pre>default-lease-time 600;
max-lease-time 7200;</pre>


Subnet-Blöcke
== Lease-Time ==
 
in Sekunden
  subnet 10.2.0.0 netmask 255.255.0.0
  default-lease-time 600;
 
max-lease-time 7200;
*<big>Range</big>


== Range ==
  range 10.2.0.10 10.2.0.100;
  range 10.2.0.10 10.2.0.100;
*<big>Options</big>


== Options ==
  option subnet-mask 255.255.0.0;
  option subnet-mask 255.255.0.0;
      option domain-name-servers 10.10.0.4;
option domain-name-servers 10.10.0.4;
      option domain-name "raum102.itw";
option domain-name "raum102.itw";
      option domain-search "raum102.itw";
option domain-search "raum102.itw";
      option routers 10.2.0.1;
option routers 10.2.0.1;
 
== Subnet-Blöcke ==
subnet 10.2.0.0 netmask 255.255.0.0


*<big>Nach der Änderung der Konfiguration, muss die dhcpd.conf erneut eingelesen werden.</big>
= Dienssteuerung =
Nach der Änderung der Konfiguration, muss die dhcpd.conf erneut eingelesen werden.


  root@router:~# systemctl restart isc-dhcp-server.service
  # systemctl restart isc-dhcp-server.service


*<big>Damit Änderungen bei bereits aktivem Client wirksam werden, muss dieser sie neu anfordern.</big>
= DHCP-Client =
Damit Änderungen bei bereits aktivem Client wirksam werden, muss dieser sie neu anfordern.


*<big>Bisherige Konfiguration verwerfen.</big>
== Konfiguration verwerfen ==
  root@router:~# dhclient -r
  # dhclient -r
*<big>Neue Konfiguration anfordern.</big>


  root@router:~# dhclient
== Neue Konfiguration anfordern ==
  # dhclient


= <big>Fehler Aufheben</big> =
=== DHCP release mit verbose ===
'''# dhclient -v -r'''
[sudo] Passwort für user:     
Killed old client process
Internet Systems Consortium DHCP Client 4.4.1
Copyright 2004-2018 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Listening on LPF/enp2s0/74:27:ea:e1:db:32
Sending on  LPF/enp2s0/74:27:ea:e1:db:32
Sending on  Socket/fallback
DHCPRELEASE of 10.20.1.110 on enp2s0 to 10.20.0.1 port 67 (xid=0x1f86c144)


'''Datei:'''<code>/var/log/syslog</code>
=== Ausführliche Ausgabe von dhclient ===
'''# dhclient -v'''
Internet Systems Consortium DHCP Client 4.4.1
Copyright 2004-2018 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Listening on LPF/enp2s0/74:27:ea:e1:db:32
Sending on  LPF/enp2s0/74:27:ea:e1:db:32
Sending on  Socket/fallback
DHCPDISCOVER on enp2s0 to 255.255.255.255 port 67 interval 3 (xid=0xac531335)
DHCPOFFER of 10.20.1.13 from 10.20.1.1
DHCPREQUEST for 10.20.1.13 on enp2s0 to 255.255.255.255 port 67 (xid=0x351353ac)
DHCPACK of 10.20.1.13 from 10.20.1.1 (xid=0xac531335)
cmp: EOF on /tmp/tmp.JBuNGXT4Zg which is empty
bound to 10.20.1.13 -- renewal in 5933 seconds.


root@router:~# cat /var/log/syslog | grep "dhcp"
== Konfigurationsdatei ==
/etc/dhcp/dhclient.conf


==<big>Konfigurationsdatei auf Server</big>==
option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;
send host-name = gethostname();
request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, domain-search, host-name,
dhcp6.name-servers, dhcp6.domain-search, dhcp6.fqdn, dhcp6.sntp-servers,
netbios-name-servers, netbios-scope, interface-mtu,
rfc3442-classless-static-routes, ntp-servers;


'''Datei:'''<code>/etc/dhcp/dhcpd.conf</code>
= Fehleranalyse =
dhcpd.conf
# cat /var/log/syslog | grep "dhcp"
#


# If this DHCP server is the official DHCP server for the local
=Konfigurationsdatei=
# network, the authoritative directive should be uncommented.
/etc/dhcp/dhcpd.conf
authoritative;


# Use this to send dhcp log messages to a different log file (you also
# have to hack syslog.conf to complete the redirection).
  log-facility local7;
  log-facility local7;
 
   
  # A slightly different configuration for an internal subnet.
 
  subnet 10.2.0.0 netmask 255.255.0.0 {
  subnet 10.2.0.0 netmask 255.255.0.0 {
      range 10.2.0.10 10.2.0.100;
range 10.2.0.10 10.2.0.100;
      option subnet-mask 255.255.0.0;
option subnet-mask 255.255.0.0;
      option domain-name-servers 10.10.0.4;
option domain-name-servers 10.10.0.4;
      option domain-name "raum102.itw";
option domain-name "raum102.itw";
      option domain-search "raum102.itw";
option domain-search "raum102.itw";
      option routers 10.2.0.1;
option routers 10.2.0.1;
      default-lease-time 600;
default-lease-time 600;
      max-lease-time 7200;
max-lease-time 7200;
  }
  }
#host user {
#  hardware ethernet 00:1d:7d:c8:de:bd;
#  fixed-address 10.2.0.50;
#  option host-name "user";
#}
   
   
host user {
  hardware ethernet 00:1d:7d:c8:de:bd;
  fixed-address 10.2.0.50;
  option host-name "user";
}


= <big>Konfigurationsdatei auf Client</big> =
= DORA: (Discover Offer Request ACK) =
 
[[Datei:DORA Aufbau.png]]
'''Datei:'''<code>/etc/dhcp/dhclient.conf</code>
# Configuration file for /sbin/dhclient.
#
# This is a sample configuration file for dhclient. See dhclient.conf's
#      man page for more information about the syntax of this file
#      and a more comprehensive list of the parameters understood by
#      dhclient.
#
# Normally, if the DHCP server provides reasonable information and does
#      not leave anything out (like the domain name, for example), then
#      few changes must be made to this file, if any.
#


option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;
# DHCP-DISCOVER: Client sucht per Broadcast nach DHCP-Server
# DHCP-OFFER: DHCP-Server bietet Client per Unicast Konfigurationsparameter der Schnittstelle an
# DHCP-REQUEST: Client fordert angebotene Konfigurationsparameter bei DHCP-Server an (z.&nbsp;B.&nbsp;Mietanfrage)
# DHCP-ACK: DHCP-Server sendet Konfigurationsparameter an Client


send host-name = gethostname();
request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, domain-search, host-name,
        dhcp6.name-servers, dhcp6.domain-search, dhcp6.fqdn, dhcp6.sntp-servers,
        netbios-name-servers, netbios-scope, interface-mtu,
        rfc3442-classless-static-routes, ntp-servers;


= Verbindungsaufbau =
#DHCP-DISCOVER: Client sucht per Broadcast nach DHCP-Server
#DHCP-OFFER: DHCP-Server bietet Client per Unicast Konfigurationsparameter der Schnittstelle an
#DHCP-REQUEST: Client fordert angebotene Konfigurationsparameter bei DHCP-Server an (z.B. Mietanfrage)
#DHCP-ACK: DHCP-Server sendet Konfigurationsparameter an Client


[[Datei: DHCP.png|DHCP Ablauf]]
*DHCP-NAK: Ablehnung einer DHCP-REQUEST-Anforderung durch den DHCP-Server.
 
*DHCP-NAK: Ablehnung einer DHCPREQUEST-Anforderung durch den DHCP-Server.
*DHCP-DECLINE: Ablehnung durch den Client, da die IP-Adresse schon verwendet wird.
*DHCP-DECLINE: Ablehnung durch den Client, da die IP-Adresse schon verwendet wird.
*DHCP-RELEASE: Der Client gibt die eigene Konfiguration frei, damit die Parameter wieder für andere Clients zur Verfügung stehen.
*DHCP-RELEASE: Der Client gibt die eigene Konfiguration frei, damit die Parameter wieder für andere Clients zur Verfügung stehen.
*DHCP-INFORM: Anfrage eines Clients nach weiteren Konfigurationsparametern, z. B. weil der Client eine statische IP-Adresse besitzt.
*DHCP-INFORM: Anfrage eines Clients nach weiteren Konfigurationsparametern, z.&nbsp;B.&nbsp;weil der Client eine statische IP-Adresse besitzt.
*DHCP-Refresh (nur bei dynamischer Zuordnung) DHCP-ACK-Nachricht<br>


 
= Lease Time =
*DHCP-Refresh (nur bei dynamischer Zuordnung) DHCPACK-Nachricht<br>
IP-Adresse,"lease time" und zwei Fristen: Die "Renewal-Time" T1 und die "Rebinding-Time" T2.  
IP-Adresse,"lease time" und zwei Fristen: Die "Renewal-Time" T1 und die "Rebinding-Time" T2.  
*T1 1/2 der Lease-Time
*T1 1/2 der Lease-Time
*T2 7/8 der Lease-Time
*T2 7/8 der Lease-Time
Zum Beispiel:
== Beispiel ==
*Lease-Time = 100s => "Renewal-Time" T1 = 50s und "Rebinding-Time" T2 = 87,5s
*Lease-Time = 100s => "Renewal-Time" T1 = 50s und "Rebinding-Time" T2 = 87,5s
*Nach Ablauf T1 versucht der Client, seine Lease-Time zu verlängern.  
*Nach Ablauf T1 versucht der Client, seine Lease-Time zu verlängern.  
*DHCPREQUESTs per Unicast an bisherigen Server
*DHCP-REQUESTs per Unicast an bisherigen Server
**Erfolgt DHCP-ACK: Client erhält bisherige Konfiguration mit frischer Lease-Time
**Erfolgt DHCP-ACK: Client erhält bisherige Konfiguration mit frischer Lease-Time
**Erfolgt kein DHCP-ACK: Client nutzt Konfiguration ohne Einschränkungen weiter
**Erfolgt kein DHCP-ACK: Client nutzt Konfiguration ohne Einschränkungen weiter
Zeile 166: Zeile 173:
*Sind alle IP-Adressen bereits vergeben, sendet Server ein DHCP-NAK (DHCP-Not Acknowledged).
*Sind alle IP-Adressen bereits vergeben, sendet Server ein DHCP-NAK (DHCP-Not Acknowledged).


*Die genaue Verbindung in Wireshark:
= Ablaufverfolgung =
[[Datei:Wireshark Screenshot.png|700px|thumb|Datei:Wireshark Screenshot|center]]
[[Datei:Wireshark Screenshot.png]]


= DHCP-Relay =
= DHCP-Relay =
*Ist eine Funktion, um DHCP über Netzwerkgrenzen (Broadcastdomäne) hinaus nutzen zu können
* Ist eine Funktion, um DHCP über Netzwerkgrenzen (Broadcastdomäne) hinaus nutzen zu können
*Damit wird die Notwendigkeit der Bereitstellung eines DHCP-Servers in jedem Subnetz, in dem sich DHCP-Clients befinden, vermieden
* Damit wird die Notwendigkeit der Bereitstellung eines DHCP-Servers in jedem Subnetz, in dem sich DHCP-Clients befinden, vermieden
*Die DHCP-Relay-Funktion wird meist durch den Router selbst erbracht
* Die DHCP-Relay-Funktion wird meist durch den Router selbst erbracht
*DHCP-Relay ist ein notwendig, um die Broadcasts weiterzuleiten
* DHCP-Relay ist notwendig, um die Broadcasts weiterzuleiten. Bitte auf alle interfaces Aktivieren.
 
= Links =
== Quellen ==
# https://de.wikipedia.org/wiki/DHCP
# https://kb.isc.org/docs/isc-dhcp-41-manual-pages-dhcpdconf
# https://wiki.ubuntuusers.de/ISC-DHCPD/
# https://wiki.debian.org/de/DHCP_Server


= Quellen =
== Weiterführend ==
[https://de.wikipedia.org/wiki/DHCP wikipedia.org]
=== DHCP Failover ===
[https://kb.isc.org/docs/isc-dhcp-41-manual-pages-dhcpdconf isc.org]
# https://www.tech-island.com/tutorials/dhcp-failover-linux
[https://wiki.ubuntuusers.de/ISC-DHCPD/ ubuntuusers.de]
# https://kb.isc.org/docs/aa-00502
[https://wiki.debian.org/de/DHCP_Server wiki.debian.org]


[[Category:IPv4]]
[[Kategorie:IPv4]]
[[Category:Netzwerk]]

Aktuelle Version vom 28. Mai 2023, 12:03 Uhr

Allgemein[Bearbeiten | Quelltext bearbeiten]

  • DHCP (Dynamic Host Configuration Protocol)
  • Transport durch UDP
  • Standard-Ports:
    • IPv4:67 (Server) 68 (Client)
    • IPv6: 547 (Server) 546 (Client)

Aufgabe[Bearbeiten | Quelltext bearbeiten]

  • Clients automatisch in ein bestehendes Netz einbinden
  • Übermittlung der Netzwerkeinstellungen:
    • IP-Adressen
    • Rechnername
    • Netzmaske
    • Broadcast-Adresse
    • Gateway
    • DNS-Nameserver
    • NetBIOS Nameserver
    • Boot-Image für plattenlose Workstations
    • Time- und NTP-Server, die für die Synchronisierung der Uhrzeit zuständig sind

Betriebsmodi[Bearbeiten | Quelltext bearbeiten]

Manuelle Zuordnung[Bearbeiten | Quelltext bearbeiten]

  • In diesem Modus (statisches DHCP) werden am DHCP-Server die IP-Adressen bestimmten MAC-Adressen fest zugeordnet
  • Die Adressen werden der MAC-Adresse auf unbestimmte Zeit zugeteilt
  • Der Nachteil kann darin liegen, dass sich keine zusätzlichen Clients in das Netz einbinden können, da die Adressen fest vergeben sind

Automatische Zuordnung[Bearbeiten | Quelltext bearbeiten]

  • Am DHCP-Server wird ein Bereich (range) von IP-Adressen definiert
  • IP-Adressen werden automatisch an die MAC-Adressen von neuen DHCP-Clients zugewiesen und keinem anderen Host mehr zugewiesen
  • Neue Clients erhalten keine IP-Adresse, wenn Adressbereich vergeben ist

Dynamische Zuordnung[Bearbeiten | Quelltext bearbeiten]

  • Automatische Zuordnung aber mit Lease-Time: Festlegung wie lange eine IP-Adresse an Client „verliehen“ wird, bevor Client eine „Verlängerung“ beantragen muss
  • Bei „Nicht-Verlängerung“ wird IP-Adresse frei und neu vergeben
  • DHCP-Server vergibt auch von der MAC-Adresse abhängige IP-Adressen, d. h. ein Client bekommt hier selbst nach längerer Netzwerkabstinenz und Ablauf der Lease-Time die gleiche IP-Adresse wie zuvor (es sei denn natürlich, diese ist inzwischen schon anderweitig vergeben)

Installation[Bearbeiten | Quelltext bearbeiten]

# apt install isc-dhcp-server

Konfiguration[Bearbeiten | Quelltext bearbeiten]

/etc/dhcp/dhcpd.conf

Lease-Time[Bearbeiten | Quelltext bearbeiten]

in Sekunden

default-lease-time 600;
max-lease-time 7200;

Range[Bearbeiten | Quelltext bearbeiten]

range 10.2.0.10 10.2.0.100;

Options[Bearbeiten | Quelltext bearbeiten]

option subnet-mask 255.255.0.0;
option domain-name-servers 10.10.0.4;
option domain-name "raum102.itw";
option domain-search "raum102.itw";
option routers 10.2.0.1;

Subnet-Blöcke[Bearbeiten | Quelltext bearbeiten]

subnet 10.2.0.0 netmask 255.255.0.0

Dienssteuerung[Bearbeiten | Quelltext bearbeiten]

Nach der Änderung der Konfiguration, muss die dhcpd.conf erneut eingelesen werden.

# systemctl restart isc-dhcp-server.service

DHCP-Client[Bearbeiten | Quelltext bearbeiten]

Damit Änderungen bei bereits aktivem Client wirksam werden, muss dieser sie neu anfordern.

Konfiguration verwerfen[Bearbeiten | Quelltext bearbeiten]

# dhclient -r

Neue Konfiguration anfordern[Bearbeiten | Quelltext bearbeiten]

# dhclient

DHCP release mit verbose[Bearbeiten | Quelltext bearbeiten]

# dhclient -v -r
[sudo] Passwort für user:       
Killed old client process
Internet Systems Consortium DHCP Client 4.4.1
Copyright 2004-2018 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/enp2s0/74:27:ea:e1:db:32
Sending on   LPF/enp2s0/74:27:ea:e1:db:32
Sending on   Socket/fallback
DHCPRELEASE of 10.20.1.110 on enp2s0 to 10.20.0.1 port 67 (xid=0x1f86c144)

Ausführliche Ausgabe von dhclient[Bearbeiten | Quelltext bearbeiten]

# dhclient -v
Internet Systems Consortium DHCP Client 4.4.1
Copyright 2004-2018 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Listening on LPF/enp2s0/74:27:ea:e1:db:32
Sending on   LPF/enp2s0/74:27:ea:e1:db:32
Sending on   Socket/fallback
DHCPDISCOVER on enp2s0 to 255.255.255.255 port 67 interval 3 (xid=0xac531335)
DHCPOFFER of 10.20.1.13 from 10.20.1.1
DHCPREQUEST for 10.20.1.13 on enp2s0 to 255.255.255.255 port 67 (xid=0x351353ac)
DHCPACK of 10.20.1.13 from 10.20.1.1 (xid=0xac531335)
cmp: EOF on /tmp/tmp.JBuNGXT4Zg which is empty
bound to 10.20.1.13 -- renewal in 5933 seconds.

Konfigurationsdatei[Bearbeiten | Quelltext bearbeiten]

/etc/dhcp/dhclient.conf

option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;

send host-name = gethostname();

request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, domain-search, host-name,
dhcp6.name-servers, dhcp6.domain-search, dhcp6.fqdn, dhcp6.sntp-servers,
netbios-name-servers, netbios-scope, interface-mtu,
rfc3442-classless-static-routes, ntp-servers;

Fehleranalyse[Bearbeiten | Quelltext bearbeiten]

# cat /var/log/syslog | grep "dhcp"

Konfigurationsdatei[Bearbeiten | Quelltext bearbeiten]

/etc/dhcp/dhcpd.conf

log-facility local7;

subnet 10.2.0.0 netmask 255.255.0.0 {
range 10.2.0.10 10.2.0.100;
option subnet-mask 255.255.0.0;
option domain-name-servers 10.10.0.4;
option domain-name "raum102.itw";
option domain-search "raum102.itw";
option routers 10.2.0.1;
default-lease-time 600;
max-lease-time 7200;
}

host user {
 hardware ethernet 00:1d:7d:c8:de:bd;
 fixed-address 10.2.0.50;
 option host-name "user";
}

DORA: (Discover Offer Request ACK)[Bearbeiten | Quelltext bearbeiten]

  1. DHCP-DISCOVER: Client sucht per Broadcast nach DHCP-Server
  2. DHCP-OFFER: DHCP-Server bietet Client per Unicast Konfigurationsparameter der Schnittstelle an
  3. DHCP-REQUEST: Client fordert angebotene Konfigurationsparameter bei DHCP-Server an (z. B. Mietanfrage)
  4. DHCP-ACK: DHCP-Server sendet Konfigurationsparameter an Client


  • DHCP-NAK: Ablehnung einer DHCP-REQUEST-Anforderung durch den DHCP-Server.
  • DHCP-DECLINE: Ablehnung durch den Client, da die IP-Adresse schon verwendet wird.
  • DHCP-RELEASE: Der Client gibt die eigene Konfiguration frei, damit die Parameter wieder für andere Clients zur Verfügung stehen.
  • DHCP-INFORM: Anfrage eines Clients nach weiteren Konfigurationsparametern, z. B. weil der Client eine statische IP-Adresse besitzt.
  • DHCP-Refresh (nur bei dynamischer Zuordnung) DHCP-ACK-Nachricht

Lease Time[Bearbeiten | Quelltext bearbeiten]

IP-Adresse,"lease time" und zwei Fristen: Die "Renewal-Time" T1 und die "Rebinding-Time" T2.

  • T1 1/2 der Lease-Time
  • T2 7/8 der Lease-Time

Beispiel[Bearbeiten | Quelltext bearbeiten]

  • Lease-Time = 100s => "Renewal-Time" T1 = 50s und "Rebinding-Time" T2 = 87,5s
  • Nach Ablauf T1 versucht der Client, seine Lease-Time zu verlängern.
  • DHCP-REQUESTs per Unicast an bisherigen Server
    • Erfolgt DHCP-ACK: Client erhält bisherige Konfiguration mit frischer Lease-Time
    • Erfolgt kein DHCP-ACK: Client nutzt Konfiguration ohne Einschränkungen weiter
  • Nach Ablauf von T2 sendet Client DHCPREQUESTs per Broadcast an irgendeinen anderen DHCP-Server
  • Läuft die Lease-Time ab so verfällt die Konfiguration und Client beginnt erneut mit eunem DHCP-DISCOVER.
  • Sind alle IP-Adressen bereits vergeben, sendet Server ein DHCP-NAK (DHCP-Not Acknowledged).

Ablaufverfolgung[Bearbeiten | Quelltext bearbeiten]

DHCP-Relay[Bearbeiten | Quelltext bearbeiten]

  • Ist eine Funktion, um DHCP über Netzwerkgrenzen (Broadcastdomäne) hinaus nutzen zu können
  • Damit wird die Notwendigkeit der Bereitstellung eines DHCP-Servers in jedem Subnetz, in dem sich DHCP-Clients befinden, vermieden
  • Die DHCP-Relay-Funktion wird meist durch den Router selbst erbracht
  • DHCP-Relay ist notwendig, um die Broadcasts weiterzuleiten. Bitte auf alle interfaces Aktivieren.

Links[Bearbeiten | Quelltext bearbeiten]

Quellen[Bearbeiten | Quelltext bearbeiten]

  1. https://de.wikipedia.org/wiki/DHCP
  2. https://kb.isc.org/docs/isc-dhcp-41-manual-pages-dhcpdconf
  3. https://wiki.ubuntuusers.de/ISC-DHCPD/
  4. https://wiki.debian.org/de/DHCP_Server

Weiterführend[Bearbeiten | Quelltext bearbeiten]

DHCP Failover[Bearbeiten | Quelltext bearbeiten]

  1. https://www.tech-island.com/tutorials/dhcp-failover-linux
  2. https://kb.isc.org/docs/aa-00502