Um DHCP verwenden zu können, müssen Sie die Broadcast-Adresse Ihres Netzwerks kennen.
Nein. Sie benötigen nur die lokale Broadcast-Adresse 255.255.255.255 (für IPv4) oder die Multicast-Gruppe ff02::1:2 (für IPv6). Der springende Punkt bei DHCP ist, dass es keine benötigt vorherige Konfiguration auf dem Client.
Wie würde es überhaupt auf der IP-Schicht kommunizieren, wenn es keine Adresse hat? Das tut es nicht, jedenfalls nicht wirklich. Stattdessen kommuniziert es über Layer 2.
Die Broadcast-Adresse eines Ethernet Netzwerk ist FF:FF:FF:FF:FF:FF. Auf der IP-Schicht gibt es 255.255.255.255. Das ist im DHCPDISCOVER-Paket enthalten. Auf diese Weise können Sie anstelle eines rohen Ethernet-Sockets einen normalen UDP-Listen-Socket haben.
- Die Boot-Firmware erkennt die installierten NICs
- Die Boot-Firmware erkennt jede NIC-Broadcast-MAC-Adresse und fragt den PXE-UNDI-Treiber (UNDI GET INFORMATION gibt HwType und HwAddrLen zurück), d. h. HwType=ETHER_TYPE HwAddrLen=6 => Broadcast-MAC-Adresse=FF:FF:FF:FF:FF:FF .
- Die Boot-Firmware initiiert die DHCP-DORA-Sequenz (DHCPDISCOVERY) und meldet sich selbst als PXE-Client (DHCP-Option 60) auf den BIOS/UEFI-fähigen NICs mit:
- Die entsprechende zuvor ermittelte MAC-Broadcast-Adresse auf OSI-Ebene 2 (Datenverbindungsschicht)
- Die BIOS/UEFI-aktivierte IPv4/IPv6-Broadcast-Adresse (255.255.255.255/ff02::1:2) auf OSI-Ebene 3 (Netzwerkschicht)
-
Die Boot-Firmware beendet die DHCP-DORA-Sequenz, wenn ein vollständiges DHCP-PXE-Angebot empfangen wird, das Folgendes definiert:
- Client-IP/Maskenadresse
- IP-Adresse des TFTP-Servers
- NBP (Network Boot Program)
Hinweis:Wenn mehr als ein vollständiges Angebot eingeht, definieren die aktuellen Standards nicht ausdrücklich, wie der Kunde eines auswählen muss.
- Die Boot-Firmware legt die NIC-IP fest, überträgt TFTP, lädt in den Speicher und führt das NBP aus.
Die Layer-2-MAC-Broadcast-Adresse ermöglicht die Zustellung des DHCP-Ethernet-Frames an alle Listener innerhalb der NIC-Ethernet-Kollisionsdomäne des Clients. Die Layer-3-IP-Broadcast-Adresse ist diejenige, die die Tür zum IP-Stack des DHCP-Servers öffnet. Beide L2/L3-Broadcast-Adressen werden benötigt .
Wenn sich der PXE-Client und der DHCP-Server in unterschiedlichen Subnetzen befinden, wird der Broadcast-DHCP-Verkehr an den Routern gestoppt, dann müssen sie ihren DHCP-Relay-Agent (IP Helper in der Cisco-Welt) aktivieren, indem sie beispielsweise das Broadcast-DHCPDISCOVERY-Paket nehmen und es in ein Unicast konvertieren DHCPDISCOVERY und leiten Sie es an die IP-Adresse des definierten Ziel-DHCP-Servers weiter.