GNU/Linux >> Linux Esercitazione >  >> Linux

Come fa un client PXE a sapere su quale rete si trova?

Per utilizzare DHCP è necessario che tu conosca l'indirizzo di trasmissione della tua rete.

No. È necessario solo l'indirizzo di trasmissione locale 255.255.255.255 (per IPv4) o il gruppo multicast ff02::1:2 (per IPv6). Il punto centrale del DHCP è che non ne richiede alcun configurazione precedente sul client.


Come comunicherebbe anche sul livello IP quando non ha un indirizzo? Non lo fa, non proprio comunque. Invece, comunica utilizzando il livello 2.

L'indirizzo di trasmissione di qualsiasi Ethernet la rete è FF:FF:FF:FF:FF:FF. Sul livello IP, c'è 255.255.255.255. Questo è ciò che è presente nel pacchetto DHCPDISCOVER. In questo modo, puoi avere un normale socket di ascolto UDP invece di un socket Ethernet grezzo.


  1. Il firmware di avvio rileva le NIC installate
  2. Il firmware di avvio rileva l'indirizzo MAC broadcast di ogni NIC chiedendo al driver PXE UNDI (UNDI GET INFORMATION restituendo HwType e HwAddrLen) ovvero HwType=ETHER_TYPE HwAddrLen=6 => Indirizzo MAC broadcast=FF:FF:FF:FF:FF:FF .
  3. Il firmware di avvio avvia la sequenza DHCP DORA (DHCPDISCOVERY) annunciandosi come client PXE (opzione DHCP 60) sui NIC abilitati per BIOS/UEFI utilizzando:
    1. L'indirizzo di trasmissione MAC corrispondente rilevato in precedenza a livello OSI 2 (livello di collegamento dati)
    2. L'indirizzo di trasmissione IPv4/IPv6 abilitato per BIOS/UEFI (255.255.255.255/ff02::1:2) a livello OSI 3 (livello di rete)
  4. Il firmware di avvio termina la sequenza DHCP DORA se viene ricevuta un'offerta DHCP-PXE completa che definisce:

    1. Indirizzo maschera/IP client
    2. Indirizzo IP del server TFTP
    3. NBP (programma di avvio di rete)

    Nota:se viene ricevuta più di un'offerta completa, gli standard attuali non definiscono in modo specifico come il cliente deve selezionarne una.

  5. Il firmware di avvio imposta l'IP NIC, i trasferimenti TFTP, carica in memoria ed esegue l'NBP.

L'indirizzo di broadcast MAC di livello 2 consente la consegna del frame Ethernet DHCP a tutti i listener all'interno del dominio di collisione Ethernet NIC del client. L'indirizzo di trasmissione IP di livello 3 è quello che apre la porta dello stack IP del server DHCP. Sono necessari entrambi gli indirizzi di trasmissione L2/L3 .

Quando il client PXE e il server DHCP si trovano in sottoreti diverse, il traffico DHCP di trasmissione viene interrotto sul router/i, quindi devono abilitare il loro agente di inoltro DHCP (IP Helper nel mondo Cisco) prendendo ad esempio il pacchetto DHCPDISCOVERY di trasmissione, convertirlo in unicast DHCPDISCOVERY e indirizzarlo all'indirizzo IP del server DHCP di destinazione definito.


Linux
  1. Che cos'è un Makefile e come funziona?

  2. Come impostare l'indirizzo IP statico e configurare la rete in Linux

  3. Come sapere cosa significa 'errno'?

  4. Come funziona rm? Cosa fa rm?

  5. Come faccio a sapere se il multicasting IP è abilitato sulla mia rete?

Comando file Linux:cosa fa e come usarlo

Come trovare quali dispositivi sono collegati alla rete in Linux

Cosa devi sapere su IPv6

Come modificare l'indirizzo MAC di rete in Linux

Come funziona un sistema di bilanciamento del carico? Che cos'è il bilanciamento del carico?

Procedura:Amministrazione di rete di FreeBSD