La documentazione per questo prodotto è stata redatta cercando di utilizzare un linguaggio senza pregiudizi. Ai fini di questa documentazione, per linguaggio senza di pregiudizi si intende un linguaggio che non implica discriminazioni basate su età, disabilità, genere, identità razziale, identità etnica, orientamento sessuale, status socioeconomico e intersezionalità. Le eventuali eccezioni possono dipendere dal linguaggio codificato nelle interfacce utente del software del prodotto, dal linguaggio utilizzato nella documentazione RFP o dal linguaggio utilizzato in prodotti di terze parti a cui si fa riferimento. Scopri di più sul modo in cui Cisco utilizza il linguaggio inclusivo.
Cisco ha tradotto questo documento utilizzando una combinazione di tecnologie automatiche e umane per offrire ai nostri utenti in tutto il mondo contenuti di supporto nella propria lingua. Si noti che anche la migliore traduzione automatica non sarà mai accurata come quella fornita da un traduttore professionista. Cisco Systems, Inc. non si assume alcuna responsabilità per l’accuratezza di queste traduzioni e consiglia di consultare sempre il documento originale in inglese (disponibile al link fornito).
In questo documento viene descritto come risolvere diversi problemi comuni del protocollo DHCP (Dynamic Host Configuration Protocol) in una rete di dispositivi Cisco Catalyst Switch.
Non sono previsti prerequisiti specifici per questo documento.
Il documento può essere consultato per tutte le versioni software o hardware.
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
Nota: solo i client Cisco registrati possono accedere ai report dei bug interni.
DHCP fornisce un meccanismo tramite il quale i computer che utilizzano il protocollo TCP/IP (Transmission Control Protocol/Internet Protocol) possono ottenere automaticamente i parametri di configurazione del protocollo attraverso la rete. DHCP è uno standard aperto sviluppato dal Dynamic Host Configuration-Working Group (DHC-WG) dell'Internet Engineering Task Force (IETF).
DHCP si basa su un paradigma client-server, in cui il client DHCP, ad esempio un computer desktop, contatta un server DHCP per i parametri di configurazione. Il server DHCP si trova in genere in una posizione centrale e viene gestito dall'amministratore di rete. Poiché il server viene eseguito da un amministratore di rete, i client DHCP possono essere configurati in modo affidabile e dinamico con parametri appropriati per l'architettura di rete corrente.
La maggior parte delle reti aziendali è costituita da più subnet suddivise in sottoreti denominate VLAN (Virtual LANS), in cui i router eseguono il routing tra le sottoreti. Poiché i router non superano i broadcast per impostazione predefinita, è necessario un server DHCP su ciascuna subnet, a meno che i router non siano configurati per inoltrare il broadcast DHCP con la funzionalità DHCP Relay Agent.
Di seguito vengono riportati alcuni concetti chiave di DHCP:
I client DHCP inizialmente non dispongono di un indirizzo IP configurato e devono quindi inviare una richiesta di trasmissione per ottenere un indirizzo IP da un server DHCP.
Per impostazione predefinita, i router non inoltrano le trasmissioni. Se il server DHCP si trova su un altro dominio di trasmissione (rete di livello 3 (L3)), è necessario soddisfare le richieste di trasmissione DHCP del client. Questa operazione viene eseguita tramite un agente di inoltro DHCP.
L'implementazione del router DHCP dell'inoltro DHCP viene fornita tramite comandi di helper IP a livello di interfaccia
Scenario 1: Routing del router Cisco tra le reti client e server DHCP
Come configurato in questo diagramma, l'interfaccia Ethernet1 inoltra il client DHCPDISCOVER a 192.168.2.2 tramite l'interfaccia Ethernet1. Il server DHCP soddisfa la richiesta tramite unicast. Nell'esempio, non è necessaria alcuna ulteriore configurazione del router.
Scenario 2: Switch Cisco Catalyst con routing del modulo L3 tra reti client e server DHCP
Come configurato nel diagramma, l'interfaccia VLAN20 inoltra il client DHCPDISCOVER a 192.168.2.2 tramite l'interfaccia VLAN10. Il server DHCP soddisfa la richiesta tramite unicast. Nell'esempio, non è necessaria alcuna ulteriore configurazione del router. Le porte dello switch devono essere configurate come porte host con il protocollo Spanning-Tree Protocol (STP) portfast abilitato e il trunking e il channeling disabilitati.
DHCP è stato definito in origine nelle RFC (Requests for Comments) 1531 e da allora è diventato obsoleto in base alla RFC 2131. Il protocollo DHCP si basa sul protocollo Bootstrap (BootP) definito nella RFC 951.
Il protocollo DHCP viene utilizzato dalle workstation (host) per ottenere le informazioni di configurazione iniziali, ad esempio l'indirizzo IP, la subnet mask e il gateway predefinito all'avvio. Con DHCP, non è necessario configurare manualmente ciascun host con un indirizzo IP. Inoltre, se un host viene spostato su una subnet IP diversa, deve utilizzare un indirizzo IP diverso da quello utilizzato in precedenza. DHCP si occupa di questa operazione automaticamente. Consente all'host di scegliere un indirizzo IP nella subnet IP corretta.
RFC 2131 - DHCP
RFC 2132 - Opzioni DHCP ed estensioni del fornitore BootP
RFC 1534 - Interoperabilità tra DHCP e BootP
RFC 1542 - Chiarimenti ed estensioni per BootP
RFC 2241 - Opzioni DHCP per Novell Directory Services
RFC 2242 - Nome e informazioni del dominio Netware/IP
RFC 2489 - Procedura per la definizione delle nuove opzioni DHCP
DHCP utilizza un modello client-server in cui uno o più server (server DHCP) allocano indirizzi IP e altri parametri di configurazione facoltativi ai client (host) all'avvio del client. Questi parametri di configurazione vengono concessi in lease dal server al client per un periodo di tempo specificato. All'avvio di un host, lo stack TCP/IP trasmette un messaggio broadcast (DHCPDISCOVER) per ottenere un indirizzo IP e una subnet mask, tra gli altri parametri di configurazione. In questo modo viene avviato uno scambio tra il server DHCP e l'host. Durante questo scambio, il client passa attraverso questi stati ben definiti:
Inizializzazione
Selezione
Richiesta
Associato
Rinnovo
Rebinding
Per spostarsi tra questi stati, il client e il server possono scambiarsi i tipi di messaggi elencati nella tabella dei messaggi DHCP.
Riferimento | Messaggio | Descrizione |
---|---|---|
0x01 | DHCPDISCOVER | Il client cerca i server DHCP disponibili. |
0x02 | DHCP POFFER | Risposta del server al comando DHCPDISCOVER del client. |
0x03 | DHCPREQUEST | Il client trasmette al server, richiede parametri offerti da un server in particolare, come definito nel pacchetto. |
0x04 | DHCPDECLINE | La comunicazione client-server indica che l'indirizzo di rete è già in uso. |
0x05 | DHCPACK | Comunicazione tra server e client con parametri di configurazione e indirizzo di rete confermato. |
0x06 | DHCPNAK | La comunicazione server-client rifiuta la richiesta del parametro di configurazione. |
0x07 | DHCP PRELEASE | La comunicazione client-server, restituisce l'indirizzo di rete e annulla il lease rimanente. |
0x08 | DHCPINFORM | La comunicazione client-server richiede solo i parametri di configurazione locali che il client ha già configurato esternamente come indirizzo. |
Quando un client viene avviato per la prima volta, si dice che si trovi nello stato Inizializzazione in corso e trasmette un messaggio DHCPDISCOVER sulla subnet fisica locale tramite la porta UDP (User Datagram Protocol) 67 (server BootP). Poiché il client non ha modo di conoscere la subnet a cui appartiene, DHCPDISCOVER è un broadcast all subnet (indirizzo IP di destinazione di 255.255.255.255), con un indirizzo IP di origine di 0.0.0.0. L'indirizzo IP di origine è 0.0.0.0 poiché il client non dispone di un indirizzo IP configurato. Se nella subnet locale è presente un server DHCP configurato e correttamente funzionante, il server DHCP ascolta la trasmissione e risponde con un messaggio DHCP. Se nella subnet locale non è presente un server DHCP, è necessario che nella subnet locale sia presente un agente di inoltro DHCP/BootP per inoltrare il messaggio DHCPDISCOVER a una subnet che contiene un server DHCP.
Questo agente di inoltro può essere un host dedicato, ad esempio Microsoft Windows Server, o un router, ad esempio un router Cisco configurato con istruzioni helper IP a livello di interfaccia.
Un server DHCP che riceve un messaggio DHCPDISCOVER può rispondere con un messaggio DHCPOFFER sulla porta UDP 68 (client BootP). Il client riceve il DHCPOFFER e passa allo stato di selezione. Questo messaggio DHCP contiene le informazioni di configurazione iniziale per il client. Ad esempio, il server DHCP inserisce l'indirizzo IP richiesto nel campo yiaddr del messaggio DHCP POFFER. La subnet mask e il gateway predefinito sono specificati rispettivamente nel campo options (Opzioni), subnet mask (Subnet mask) e router (Opzioni router). Altre opzioni comuni nel messaggio DHCPOFFER includono la durata del lease dell'indirizzo IP, il tempo di rinnovo, il server del nome di dominio e il server dei nomi NetBIOS (WINS). Il server DHCP invia il DHCPOFFER all'indirizzo di broadcast ma include l'indirizzo hardware del client nel campo chaddr dell'offerta, in modo che il client sappia che si tratta della destinazione prevista. Nel caso in cui il server DHCP non si trovi nella subnet locale, il server DHCP invia il DHCP POFFER, come pacchetto unicast, sulla porta UDP 67, all'agente di inoltro DHCP/BootP da cui proviene il comando DHCPDISCOVER. L'agente di inoltro DHCP/BootP trasmette o trasmette in unicast il DHCPOFFER nella subnet locale sulla porta UDP 68, che dipende dal flag Broadcast impostato dal client Bootp.
Dopo aver ricevuto un DHCPOFFER, il client risponde con un messaggio DHCPREQUEST e indica la propria intenzione di accettare i parametri in DHCPOFFER e passa allo stato richiedente. Il client può ricevere più messaggi DHCP, uno da ogni server DHCP che ha ricevuto il messaggio DHCPDISCOVER originale. Il client sceglie un DHCP e risponde solo a quel server DHCP e, implicitamente, rifiuta tutti gli altri messaggi DHCP. Il client identifica il server selezionato dopo aver popolato il campo dell'opzione Identificatore server con l'indirizzo IP del server DHCP. Anche DHCPREQUEST è un broadcast, pertanto tutti i server DHCP che hanno inviato un DHCPOFFER visualizzano DHCPREQUEST e ognuno sa se il DHCPOFFER è stato accettato o rifiutato. Le eventuali opzioni di configurazione aggiuntive richieste dal client sono incluse nel campo options del messaggio DHCPREQUEST. Anche se al client è stato offerto un indirizzo IP, invia il messaggio DHCPREQUEST con un indirizzo IP di origine di 0.0.0.0. Al momento, il client non ha ancora ricevuto la verifica che sia chiaro utilizzare l'indirizzo IP.
Dopo aver ricevuto la richiesta DHCPREQUEST, il server DHCP la riconosce con un messaggio DHCP e quindi completa il processo di inizializzazione. Il messaggio DHCPACK ha un indirizzo IP di origine del server DHCP e l'indirizzo di destinazione è di nuovo una trasmissione e contiene tutti i parametri richiesti dal client nel messaggio DHCPREQUEST. Quando il client riceve il pacchetto DHCP, passa allo stato Bound e può utilizzare l'indirizzo IP per comunicare sulla rete. Nel frattempo, il server DHCP memorizza il lease nel proprio database e lo identifica in modo univoco con l'identificatore del client o chaddr e l'indirizzo IP associato. Sia il client che il server utilizzano questa combinazione di identificatori per fare riferimento al lease. L'identificatore del client è l'indirizzo MAC del dispositivo più il tipo di supporto.
Prima che il client DHCP inizi a utilizzare il nuovo indirizzo, deve calcolare i parametri temporali associati a un indirizzo in lease, ovvero Lease Time (LT), Renewal Time (T1) e Rebind Time (T2). Il valore predefinito è in genere 72 ore. Se necessario, è possibile ridurre i tempi di lease per conservare gli indirizzi.
Se il server selezionato non è in grado di soddisfare il messaggio DHCPREQUEST, il server DHCP risponde con un messaggio DHCPNAK. Quando il client riceve un messaggio DHCPNAK o non riceve una risposta a un messaggio DHCPREQUEST, riavvia il processo di configurazione quando passa allo stato Requesting. Il client ritrasmette DHCPREQUEST almeno quattro volte entro 60 secondi prima di riavviare lo stato di inizializzazione.
Il client riceve il DHCPACK e, facoltativamente, esegue un controllo finale sui parametri. Il client esegue questa procedura quando invia le richieste ARP (Address Resolution Protocol) per l'indirizzo IP fornito nel DHCP. Se il client rileva che l'indirizzo è già in uso quando riceve una risposta alla richiesta ARP, invia un messaggio DHCPDECLINE al server e riavvia il processo di configurazione nello stato richiedente.
Se un client ha ottenuto un indirizzo di rete in altro modo o dispone di un indirizzo IP configurato manualmente, una workstation client può utilizzare un messaggio di richiesta DHCPINFORM per ottenere altri parametri di configurazione locale, ad esempio il nome di dominio e i server dei nomi di dominio (DNS). Quando i server DHCP ricevono un messaggio DHCPINFORM, crea un messaggio DHCP con eventuali parametri di configurazione locali appropriati per il client senza un nuovo indirizzo IP. DHCPACK inviato come unicast al client.
Un client DHCP può scegliere di rinunciare al lease su un indirizzo di rete quando invia un messaggio DHCPRELEASE al server DHCP. Il client identifica il lease da rilasciare mediante l'utilizzo del campo dell'identificatore client e dell'indirizzo di rete nel messaggio DHCPRELEASE. Per estendere l'intervallo corrente del pool DHCP, rimuovere il pool di indirizzi corrente e specificare il nuovo intervallo di indirizzi IP nel pool DHCP. Per rimuovere indirizzi IP specifici o un intervallo di indirizzi da includere nel pool DHCP, utilizzare il comando ip dhcp exclude-address.
Nota: se i dispositivi usano BOOTP, i lease di lunghezza infinita vengono mostrati nei binding DHCP dei router.
Poiché l'indirizzo IP viene assegnato in lease solo dal server, il lease deve essere rinnovato di tanto in tanto. Quando la metà del tempo di lease è scaduta (T1=0,5 x LT), il client tenta di rinnovare il lease. Il client entra nello stato di rinnovo e invia un messaggio DHCPREQUEST al server, che contiene il lease corrente. Il server risponde alla richiesta di rinnovo con un messaggio DHCPACK se accetta di rinnovare il lease. Il messaggio DHCPACK contiene il nuovo lease ed eventuali nuovi parametri di configurazione, nel caso in cui vengano apportate modifiche al server durante il lease precedente. Se il client non è in grado di raggiungere il server quando detiene il lease per qualche motivo, tenta di rinnovare l'indirizzo da qualsiasi server DHCP dopo che il server DHCP originale non ha risposto alle richieste di rinnovo entro un tempo T2. Il valore predefinito di T2 è ( 7/8 x LT). Ciò significa T1 < T2< LT.
Se in precedenza al client era stato assegnato un indirizzo IP DHCP e il client viene riavviato, il client richiede esplicitamente l'indirizzo IP precedentemente assegnato in lease in un pacchetto DHCPREQUEST. DHCPREQUEST dispone ancora l'indirizzo IP di origine come 0.0.0.0 e la destinazione come indirizzo di broadcast IP 255.255.255.255.
Quando un client invia una richiesta DHCPREQUEST durante un riavvio, non deve compilare il campo dell'identificatore del server e deve invece compilare il campo dell'opzione dell'indirizzo IP richiesto. Solo i client conformi alla RFC compilano il campo ciaddr con l'indirizzo richiesto anziché con il campo dell'opzione DHCP. Il server DHCP accetta entrambi i metodi. Il comportamento del server DHCP dipende da una serie di fattori, ad esempio nel caso dei server DHCP Windows NT, la versione del sistema utilizzato e altri fattori, ad esempio l'ambito esteso. Se il server DHCP stabilisce che il client può ancora utilizzare l'indirizzo IP richiesto, rimane invisibile all'utente o invia un DHCPACK per DHCPREQUEST. Se il server stabilisce che il client non può utilizzare l'indirizzo IP richiesto, invia un DHCPNACK al client. Il client passa quindi allo stato Inizializzazione in corso e invia un messaggio DHCPDISCOVER.
Nota: il server DHCP assegna l'indirizzo IP inferiore di un pool di indirizzi IP ai client DHCP. Alla scadenza del lease dell'ultimo indirizzo, questo viene assegnato a un altro client, se richiesto. Non è possibile modificare l'ordine di assegnazione degli indirizzi DHCP.
Il messaggio DHCP ha una lunghezza variabile ed è costituito dai campi elencati nella tabella dei pacchetti DHCP.
Nota: questo pacchetto è una versione modificata del pacchetto BootP originale.
Campo | Byte | Nome | Descrizione |
---|---|---|---|
op | 1 | Codice operativo | Identifica il pacchetto come richiesta o risposta: 1=BOOTREQUEST, 2=BOOTREPLY |
tipo | 1 | Tipo di hardware | Specifica il tipo di indirizzo hardware di rete. |
hlen | 1 | Lunghezza hardware | Specifica la lunghezza dell'indirizzo hardware. |
hop | 1 | Luppolo | Il client imposta il valore su zero e il valore aumenta se la richiesta viene inoltrata attraverso un router. |
xid | 4 | ID transazione | Numero casuale scelto dal client. Tutti i messaggi DHCP scambiati per una determinata transazione DHCP utilizzano l'ID (xid). |
sec | 2 | Secondi | Specifica il numero di secondi dall'avvio del processo DHCP. |
bandiere | 2 | Flag | Indica se il messaggio è trasmesso o unicast. |
ciaddr | 4 | Indirizzo IP client | Utilizzato solo quando il client conosce il proprio indirizzo IP, come nel caso degli stati Bound, Renew o Rebinding. |
yiaddr | 4 | Indirizzo IP | Se l'indirizzo IP del client è 0.0.0.0, il server DHCP inserisce in questo campo l'indirizzo IP del client offerto. |
siaddr | 4 | Indirizzo IP server | Se il client conosce l'indirizzo IP del server DHCP, questo campo viene compilato con l'indirizzo del server DHCP. In caso contrario, viene utilizzato in DHCP POFFER e DHCP dal server DHCP. |
giaddr | 4 | Indirizzo IP router (GI ADDR) | Indirizzo IP del gateway, specificato dall'agente di inoltro DHCP/BootP. |
chaddr | 16 | Indirizzo MAC client | Indirizzo MAC del client DHCP. |
sname | 64 | Nome server | Il nome host del server facoltativo. |
file | 128 | Nome file di avvio | Nome del file di avvio. |
opzioni | variabile | Parametri opzione | Parametri facoltativi che possono essere forniti dal server DHCP. La RFC 2132 offre tutte le opzioni possibili. |
Descrizione pacchetto | Indirizzo MAC di origine | Indirizzo MAC di destinazione | Source IP Address | Indirizzo IP di destinazione |
---|---|---|---|---|
DHCPDISCOVER | Cliente | Trasmissione | 0.0.0.0 | 255.255.255.255 |
DHCP POFFER | Server DHCP | Trasmissione | Server DHCP | 255.255.255.255 |
DHCPREQUEST | Cliente | Trasmissione | 0.0.0.0 | 255.255.255.255 |
DHCPACK | Server DHCP | Trasmissione | Server DHCP | 255.255.255.255 |
Per impostazione predefinita, i router non inoltrano i pacchetti di broadcast. Poiché i messaggi del client DHCP utilizzano l'indirizzo IP di destinazione 255.255.255.255 (tutte le reti broadcast), i client DHCP non possono inviare richieste a un server DHCP in una subnet diversa a meno che l'agente di inoltro DHCP/BootP non sia configurato sul router. L'agente di inoltro DHCP/BootP inoltra le richieste DHCP per conto di un client DHCP al server DHCP. L'agente di inoltro DHCP/BootP aggiunge il proprio indirizzo IP all'indirizzo IP di origine dei frame DHCP inviati al server DHCP. In questo modo il server DHCP può rispondere tramite unicast all'agente di inoltro DHCP/BootP. L'agente di inoltro DHCP/BootP popola inoltre il campo dell'indirizzo IP del gateway con l'indirizzo IP dell'interfaccia su cui il messaggio DHCP viene ricevuto dal client. Il server DHCP utilizza il campo Indirizzo IP gateway per determinare la subnet da cui ha origine il messaggio DHCPDISCOVER, DHCPREQUEST o DHCPINFORM.
Il processo di configurazione di un router Cisco per l'inoltro delle richieste BootP o DHCP è semplice. È sufficiente configurare un indirizzo dell'helper IP che punti al server DHCP/BootP o all'indirizzo di broadcast della subnet della rete su cui si trova il server.
Esempio di rete:
Per inoltrare la richiesta BootP/DHCP dal client al server DHCP, viene usato il comando ip helper-address interface. L'indirizzo dell'helper IP può essere configurato per inoltrare qualsiasi trasmissione UDP in base al numero di porta UDP. Per impostazione predefinita, l'indirizzo dell'helper IP inoltra le seguenti trasmissioni UDP:
Protocollo TFTP (Trivial File Transfer Protocol) (porta 69)
DNS (porta 53), servizio Ora (porta 37)
Server dei nomi NetBIOS (porta 137)
Server datagramma NetBIOS (porta 138)
Datagrammi client e server del protocollo di avvio (DHCP/BootP) (porte 67 e 68)
Servizio Terminal Access Control Access Control System (TACACS) (porta 49)
Servizio di denominazione IEN-116 (porta 42)
Gli indirizzi dell'helper IP possono indirizzare le trasmissioni UDP a un indirizzo IP unicast o broadcast. Tuttavia, non utilizzare l'indirizzo dell'helper IP per inoltrare le trasmissioni UDP da una subnet all'indirizzo di broadcast di un'altra subnet, a causa della grande quantità di broadcast che possono verificarsi. Sono supportate anche più voci di indirizzi dell'helper IP su una singola interfaccia:
version 12.0 service timestamps debug uptime service timestamps log uptime no service password-encryption ! hostname router ! ! ! interface Ethernet0 ip address 192.168.2.1 255.255.255.0 no ip directed-broadcast ! interface Ethernet1 ip address 192.168.1.1 255.255.255.0 ip helper-address 192.168.2.2 ip helper-address 192.168.2.3 !--- IP helper-address pointing to DHCP server no ip directed-broadcast ! ! ! line con 0 exec-timeout 0 0 transport input none line aux 0 line vty 0 4 login ! end |
I router Cisco non supportano il bilanciamento del carico dei server DHCP configurati come agenti di inoltro DHCP. I router Cisco inoltrano il messaggio DHCPDISCOVER a tutti gli indirizzi dell'helper menzionati per quell'interfaccia. L'utilizzo di due o più server DHCP per la gestione di una subnet non fa che aumentare il traffico DHCP, in quanto i messaggi DHCPDISCOVER, DHCPOFFER e DHCPREQUEST / DHCPDECLINE vengono scambiati tra ogni coppia di client e server DHCP.
Esistono due modi per configurare i binding manuali: uno per l'host Windows e l'altro per gli host non Windows. Per configurare sono disponibili due diversi comandi, uno per i client DHCP Microsoft e l'altro per i client DHCP non Microsoft: DHCPclient-identifier (binding manuale - client DHCP Microsoft) e DHCPhardware-address (binding manuale - client DHCP non Microsoft). La ragione di due diversi comandi è che un PC che esegue con Windows modifica i propri MAC, e uno 01 viene aggiunto all'inizio dell'indirizzo. Di seguito sono riportati gli esempi di configurazione.
Questa è una configurazione per i client DHCP Microsoft:
configure terminal ip dhcp pool new_pool host ip_address subnet_mask client-identifier 01XXXXXXXXXXXX
!--- xxxxxx represents 48 bit MAC address prepended with 01
Questa è una configurazione per client DHCP non Microsoft:
configure terminal ip dhcp pool new_pool host ip_address subnet_mask hardware-address XXXXXXXXXXXX
!--- xxxxxx represents 48 bit MAC address
Per impostazione predefinita, il protocollo DHCP prevede un limite in base al quale i pacchetti di risposta vengono inviati solo se la richiesta viene ricevuta dall'interfaccia configurata con l'indirizzo IP primario. Il traffico DHCP utilizza l'indirizzo di broadcast. Quando la richiesta DHCP viene ricevuta dall'interfaccia del router, viene inoltrata al server DHCP (quando è configurato l'indirizzo dell'helper IP) con l'indirizzo di origine dell'IP primario configurato sull'interfaccia per comunicare al server DHCP il pool IP da utilizzare (per il client) nel pacchetto di risposta DHCP.
Il router non è in grado di sapere se la richiesta di trasmissione DHCP proviene da un dispositivo che si trova sulla rete IP secondaria configurata sull'interfaccia. Per ovviare al problema, è possibile configurare una configurazione di sottointerfaccia (a condizione che il dispositivo collegato al router supporti il tagging dot1q) per separare le due subnet, in modo che entrambe ottengano correttamente gli indirizzi IP corrispondenti.
Se l'indirizzo secondario è il metodo preferito, è disponibile un'altra soluzione che consiste nell'abilitare il comando di configurazione globale ip dhcp smart-relay. Questo è un limite in quanto utilizza solo l'IP secondario per inoltrare la richiesta DHCP se il server DHCP non risponde dopo tre richieste consecutive per il pool di indirizzi primario.
Nella tabella seguente viene illustrato il processo con cui un client DHCP ottiene un indirizzo IP da un server DHCP. Questa tabella è basata sul diagramma di rete precedente relativo alla configurazione della funzionalità dell'agente di inoltro DHCP/BootP. Ogni valore numerico del diagramma rappresenta un pacchetto descritto nella tabella seguente. Utilizzare questa tabella per comprendere il flusso di pacchetti della conversazione client-server DHCP. Consente inoltre di determinare dove si verificano i problemi.
Pacchetto | Indirizzo IP client | Indirizzo IP server | Indirizzo GI | Indirizzo MAC origine pacchetto | Indirizzo IP origine pacchetto | Indirizzo MAC di destinazione pacchetto | Indirizzo IP destinazione pacchetto |
---|---|---|---|---|---|---|---|
1. DHCPDISCOVER viene inviato dal client. | 0.0.0.0 | 0.0.0.0 | 0.0.0.0 | 0005.DCC9.C640 | 0.0.0.0 | ffff.ffff.fff (broadcast) | 255.255.255.255 |
2. Il router riceve il comando DHCPDISCOVER sull'interfaccia E1. Il router riconosce che questo pacchetto è un broadcast UDP DHCP. A questo punto, il router svolge la funzione di agente di inoltro DHCP/BootP e compila il campo Indirizzo IP gateway con l'indirizzo IP dell'interfaccia in ingresso, modifica l'indirizzo IP di origine in un indirizzo IP dell'interfaccia in ingresso e inoltra la richiesta direttamente al server DHCP. | 0.0.0.0 | 0.0.0.0 | 192.168.1.1 | Indirizzo MAC interfaccia E2 | 192.168.1.1 | Indirizzo MAC del server DHCP | 192.168.2.2 |
3. Il server DHCP ha ricevuto il comando DHCPDISCOVER e invia un comando DHCP all'agente di inoltro DHCP. | 192.168.1.2 | 192.168.2.2 | 192.168.1.1 | Indirizzo MAC del server DHCP | 192.168.2.2 | Indirizzo MAC interfaccia E2 | 192.168.1.1 |
4. L'agente di inoltro DHCP riceve un DHCPOFFER e inoltra la trasmissione DHCP POFFER sulla LAN locale. | 192.168.1.2 | 192.168.2.2 | 192.168.1.1 | Indirizzo MAC interfaccia E1 | 192.168.1.1 | ffff.ffff.ffff (broadcast) | 255.255.255.255 |
5. DHCPREQUEST inviato dal client. | 0.0.0.0 | 0.0.0.0 | 0.0.0.0 | 0005.DCC9.C640 | 0.0.0.0 | ffff.ffff.fff (broadcast) | 255.255.255.255 |
6. Il router riceve la richiesta DHCP sull'interfaccia E1. Il router riconosce che il pacchetto è un broadcast UDP DHCP. Il router ora funge da agente di inoltro DHCP e compilare il campo Indirizzo IP gateway con l'indirizzo IP dell'interfaccia inviata, modificare l'indirizzo IP di origine in un indirizzo IP dell'interfaccia in ingresso e inoltrare la richiesta direttamente al server DHCP. | 0.0.0.0 | 0.0.0.0 | 192.168.1.1 | Indirizzo MAC interfaccia E2 | 192.168.1.1 | Indirizzo MAC del server DHCP | 192.168.2.2 |
7. Il server DHCP ha ricevuto DHCPREQUEST e invia un DHCPACK all'agente di inoltro DHCP/BootP. | 192.168.1.2 | 192.168.2.2 | 192.168.1.1 | Indirizzo MAC del server DHCP | 192.168.2.2 | Indirizzo MAC interfaccia E2 | 192.168.1.1 |
8. L'agente di inoltro DHCP/BootP riceve il DHCP e inoltra la trasmissione DHCP sulla LAN locale. Il client accetta l'ACK e utilizza l'indirizzo IP del client. | 192.168.1.2 | 192.168.2.2 | 192.168.1.1 | Indirizzo MAC interfaccia E1 | 192.168.1.1 | ffff.ffff.ffff (broadcast) | 255.255.255.255 |
Pre-Execution Environment (PXE) consente l'avvio di una workstation da un server in una rete prima dell'avvio del sistema nel disco rigido locale. L'amministratore di rete non deve visitare fisicamente la workstation specifica e avviarla manualmente. Il sistema operativo e altri software, ad esempio i programmi di diagnostica, possono essere caricati sul dispositivo da un server in rete. L'ambiente PXE utilizza DHCP per configurare il proprio indirizzo IP.
La configurazione dell'agente di inoltro DHCP/BootP deve essere eseguita sul router se il server DHCP si trova su un altro segmento indirizzato della rete. È necessario configurare il comando ip helper-address sull'interfaccia del router locale. Per informazioni sulla configurazione, consultare la sezione Configurazione della funzione DHCP/BootP Relay Agent sui router Cisco IOS di questo documento.
L'esempio di traccia dello sniffer è costituito da sei fotogrammi. Questi sei frame illustrano uno scenario in cui il client e il server DHCP risiedono sullo stesso segmento fisico o logico. Nell'esempio di codice seguente viene illustrato come risolvere i problemi relativi a DHCP. È importante far corrispondere la traccia dello sniffer alle tracce di questo esempio. Ci possono essere alcune differenze rispetto alle successive tracce illustrate, ma il flusso generale del pacchetto deve essere esattamente lo stesso. La traccia del pacchetto tiene traccia delle discussioni precedenti sul funzionamento di DHCP.
- - - - - - - - - - - - - - - - - - - - Frame 1 - DHCPDISCOVER - - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summary 1[0.0.0.0] [255.255.255.255] 618 0:01:26.810 0.575.244 05/07/2001 11:52:03 AM DHCP: Request, Message type: DHCP Discover DLC: ----- DLC Header ----- DLC: DLC: Frame 1arrived at 11:52:03.8106; frame size is 618 (026A hex) bytes. DLC: Destination = BROADCAST FFFFFFFFFFFF, Broadcast DLC: Source = Station 0005DCC9C640 DLC: Ethertype = 0800 (IP) DLC: IP: ----- IP Header ----- IP: IP: Version = 4, header length = 20 bytes IP: Type of service = 00 IP: 000. .... = routine IP: ...0 .... = normal delay IP: .... 0... = normal throughput IP: .... .0.. = normal reliability IP: .... ..0. = ECT bit - transport protocol will ignore the CE bit IP: .... ...0 = CE bit - no congestion IP: Total length = 604 bytes IP: Identification = 9 IP: Flags = 0X IP: .0.. .... = may fragment IP: ..0. .... = last fragment IP: Fragment offset = 0 bytes IP: Time to live = 255 seconds/hops IP: Protocol = 17 (UDP) IP: Header checksum = B988 (correct) IP: Source address = [0.0.0.0] IP: Destination address = [255.255.255.255] IP: No options IP: UDP: ----- UDP Header ----- UDP: UDP: Source port = 68 (BootPc/DHCP) UDP: Destination port = 67 (BootPs/DHCP) UDP: Length = 584 UDP: No checksum UDP: [576 byte(s) of data] UDP: DHCP: ----- DHCP Header ----- DHCP: DHCP: Boot record type = 1 (Request) DHCP: Hardware address type = 1 (10Mb Ethernet) DHCP: Hardware address length = 6 bytes DHCP: DHCP: Hops = 0 DHCP: Transaction id = 00000882 DHCP: Elapsed boot time = 0 seconds DHCP: Flags = 8000 DHCP: 1... .... .... .... = Broadcast IP datagrams DHCP: Client self-assigned IP address = [0.0.0.0] DHCP: Client IP address = [0.0.0.0] DHCP: Next Server to use in bootstrap = [0.0.0.0] DHCP: Relay Agent = [0.0.0.0] DHCP: Client hardware address = 0005DCC9C640 DHCP: DHCP: Host name = "" DHCP: Boot file name = "" DHCP: DHCP: Vendor Information tag = 63825363 DHCP: Message Type = 1 (DHCP Discover) DHCP: Maximum message size = 1152 DHCP: Client identifier = 00636973636F2D303030352E646363392E633634302D564C31 DHCP: Parameter Request List: 7 entries DHCP: 1 = Client's subnet mask DHCP: 66 = TFTP Option DHCP: 6 = Domain name server DHCP: 3 = Routers on the client's subnet DHCP: 67 = Boot File Option DHCP: 12 = Host name server DHCP: 150 = Unknown Option DHCP: Class identifier = 646F63736973312E30 DHCP: Option overload =3 (File and Sname fields hold options) DHCP: - - - - - - - - - - - - - - - - - - - - Frame 2 - DHCPOFFER - - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summary 2[192.168.1.1] [255.255.255.255] 331 0:01:26.825 0.015.172 05/07/2001 11:52:03 AM DHCP: Reply, Message type: DHCP Offer DLC: ----- DLC Header ----- DLC: DLC: Frame 2 arrived at 11:52:03.8258; frame size is 331 (014B hex) bytes. DLC: Destination = BROADCAST FFFFFFFFFFFF, Broadcast DLC: Source = Station 0005DCC42484 DLC: Ethertype = 0800 (IP) DLC: IP: ----- IP Header ----- IP: IP: Version = 4, header length = 20 bytes IP: Type of service = 00 IP: 000. .... = routine IP: ...0 .... = normal delay IP: .... 0... = normal throughput IP: .... .0.. = normal reliability IP: .... ..0. = ECT bit - transport protocol will ignore the CE bit IP: .... ...0 = CE bit - no congestion IP: Total length = 317 bytes IP: Identification = 5 IP: Flags = 0X IP: .0.. .... = may fragment IP: ..0. .... = last fragment IP: Fragment offset = 0 bytes IP: Time to live = 255 seconds/hops IP: Protocol = 17 (UDP) IP: Header checksum = F901 (correct) IP: Source address = [192.168.1.1] IP: Destination address = [255.255.255.255] IP: No options IP: UDP: ----- UDP Header ----- UDP: UDP: Source port = 67 (BootPs/DHCP) UDP: Destination port = 68 (BootPc/DHCP) UDP: Length = 297 UDP: No checksum UDP: [289 byte(s) of data] UDP: DHCP: ----- DHCP Header ----- DHCP: DHCP: Boot record type = 2 (Reply) DHCP: Hardware address type = 1 (10Mb Ethernet) DHCP: Hardware address length = 6 bytes DHCP: DHCP: Hops = 0 DHCP: Transaction id = 00000882 DHCP: Elapsed boot time = 0 seconds DHCP: Flags = 8000 DHCP: 1... .... .... .... = Broadcast IP datagrams DHCP: Client self-assigned IP address = [0.0.0.0] DHCP: Client IP address = [192.168.1.2] DHCP: Next Server to use in bootstrap = [0.0.0.0] DHCP: Relay Agent = [0.0.0.0] DHCP: Client hardware address = 0005DCC9C640 DHCP: DHCP: Host name = "" DHCP: Boot file name = "" DHCP: DHCP: Vendor Information tag = 63825363 DHCP: Message Type = 2 (DHCP Offer) DHCP: Server IP address = [192.168.1.1] DHCP: Request IP address lease time = 85535 (seconds) DHCP: Address Renewal interval = 42767 (seconds) DHCP: Address Rebinding interval = 74843 (seconds) DHCP: Subnet mask = [255.255.255.0] DHCP: Domain Name Server address = [192.168.1.3] DHCP: Domain Name Server address = [192.168.1.4] DHCP: Gateway address = [192.168.1.1] DHCP: - - - - - - - - - - - - - - - - - - - - Frame 3 - DHCPREQUEST - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summary 3[0.0.0.0] [255.255.255.255] 618 0:01:26.829 0.003.586 05/07/2001 11:52:03 AM DHCP: Request, Message type: DHCP Request DLC: ----- DLC Header ----- DLC: DLC: Frame 56 arrived at 11:52:03.8294; frame size is 618 (026A hex) bytes. DLC: Destination = BROADCAST FFFFFFFFFFFF, Broadcast DLC: Source = Station 0005DCC9C640 DLC: Ethertype = 0800 (IP) DLC: IP: ----- IP Header ----- IP: IP: Version = 4, header length = 20 bytes IP: Type of service = 00 IP: 000. .... = routine IP: ...0 .... = normal delay IP: .... 0... = normal throughput IP: .... .0.. = normal reliability IP: .... ..0. = ECT bit - transport protocol will ignore the CE bit IP: .... ...0 = CE bit - no congestion IP: Total length = 604 bytes IP: Identification = 10 IP: Flags = 0X IP: .0.. .... = may fragment IP: ..0. .... = last fragment IP: Fragment offset = 0 bytes IP: Time to live = 255 seconds/hops IP: Protocol = 17 (UDP) IP: Header checksum = B987 (correct) IP: Source address = [0.0.0.0] IP: Destination address = [255.255.255.255] IP: No options IP: UDP: ----- UDP Header ----- UDP: UDP: Source port = 68 (BootPc/DHCP) UDP: Destination port = 67 (BootPs/DHCP) UDP: Length = 584 UDP: No checksum UDP: [576 byte(s) of data] UDP: DHCP: ----- DHCP Header ----- DHCP: DHCP: Boot record type = 1 (Request) DHCP: Hardware address type = 1 (10Mb Ethernet) DHCP: Hardware address length = 6 bytes DHCP: DHCP: Hops = 0 DHCP: Transaction id = 00000882 DHCP: Elapsed boot time = 0 seconds DHCP: Flags = 8000 DHCP: 1... .... .... .... = Broadcast IP datagrams DHCP: Client self-assigned IP address = [0.0.0.0] DHCP: Client IP address = [0.0.0.0] DHCP: Next Server to use in bootstrap = [0.0.0.0] DHCP: Relay Agent = [0.0.0.0] DHCP: Client hardware address = 0005DCC9C640 DHCP: DHCP: Host name = "" DHCP: Boot file name = "" DHCP: DHCP: Vendor Information tag = 63825363 DHCP: Message Type = 3 (DHCP Request) DHCP: Maximum message size = 1152 DHCP: Client identifier = 00636973636F2D303030352E646363392E633634302D564C31 DHCP: Server IP address = [192.168.1.1] DHCP: Request specific IP address = [192.168.1.2] DHCP: Request IP address lease time = 85535 (seconds) DHCP: Parameter Request List: 7 entries DHCP: 1 = Client's subnet mask DHCP: 66 = TFTP Option DHCP: 6 = Domain name server DHCP: 3 = Routers on the client's subnet DHCP: 67 = Boot File Option DHCP: 12 = Host name server DHCP: 150 = Unknown Option DHCP: Class identifier = 646F63736973312E30 DHCP: Option overload =3 (File and Sname fields hold options) DHCP: - - - - - - - - - - - - - - - - - - - - Frame 4 - DHCPACK - - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summary 4[192.168.1.1] [255.255.255.255] 331 0:01:26.844 0.014.658 05/07/2001 11:52:03 AM DHCP: Reply, Message type: DHCP Ack DLC: ----- DLC Header ----- DLC: DLC: Frame 57 arrived at 11:52:03.8440; frame size is 331 (014B hex) bytes. DLC: Destination = BROADCAST FFFFFFFFFFFF, Broadcast DLC: Source = Station 0005DCC42484 DLC: Ethertype = 0800 (IP) DLC: IP: ----- IP Header ----- IP: IP: Version = 4, header length = 20 bytes IP: Type of service = 00 IP: 000. .... = routine IP: ...0 .... = normal delay IP: .... 0... = normal throughput IP: .... .0.. = normal reliability IP: .... ..0. = ECT bit - transport protocol will ignore the CE bit IP: .... ...0 = CE bit - no congestion IP: Total length = 317 bytes IP: Identification = 6 IP: Flags = 0X IP: .0.. .... = may fragment IP: ..0. .... = last fragment IP: Fragment offset = 0 bytes IP: Time to live = 255 seconds/hops IP: Protocol = 17 (UDP) IP: Header checksum = F900 (correct) IP: Source address = [192.168.1.1] IP: Destination address = [255.255.255.255] IP: No options IP: UDP: ----- UDP Header ----- UDP: UDP: Source port = 67 (BootPs/DHCP) UDP: Destination port = 68 (BootPc/DHCP) UDP: Length = 297 UDP: No checksum UDP: [289 byte(s) of data] UDP: DHCP: ----- DHCP Header ----- DHCP: DHCP: Boot record type = 2 (Reply) DHCP: Hardware address type = 1 (10Mb Ethernet) DHCP: Hardware address length = 6 bytes DHCP: DHCP: Hops = 0 DHCP: Transaction id = 00000882 DHCP: Elapsed boot time = 0 seconds DHCP: Flags = 8000 DHCP: 1... .... .... .... = Broadcast IP datagrams DHCP: Client self-assigned IP address = [0.0.0.0] DHCP: Client IP address = [192.168.1.2] DHCP: Next Server to use in bootstrap = [0.0.0.0] DHCP: Relay Agent = [0.0.0.0] DHCP: Client hardware address = 0005DCC9C640 DHCP: DHCP: Host name = "" DHCP: Boot file name = "" DHCP: DHCP: Vendor Information tag = 63825363 DHCP: Message Type = 5 (DHCP Ack) DHCP: Server IP address = [192.168.1.1] DHCP: Request IP address lease time = 86400 (seconds) DHCP: Address Renewal interval = 43200 (seconds) DHCP: Address Rebinding interval = 75600 (seconds) DHCP: Subnet mask = [255.255.255.0] DHCP: Domain Name Server address = [192.168.1.3] DHCP: Domain Name Server address = [192.168.1.4] DHCP: Gateway address = [192.168.1.1] DHCP: - - - - - - - - - - - - - - - - - - - - Frame 5 - ARP - - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summary 5 0005DCC9C640 Broadcast 60 0:01:26.846 0.002.954 05/07/2001 11:52:03 AM ARP: R PA=[192.168.1.2] HA=0005DCC9C640 PRO=IP DLC: ----- DLC Header ----- DLC: DLC: Frame 58 arrived at 11:52:03.8470; frame size is 60 (003C hex) bytes. DLC: Destination = BROADCAST FFFFFFFFFFFF, Broadcast DLC: Source = Station 0005DCC9C640 DLC: Ethertype = 0806 (ARP) DLC: ARP: ----- ARP/RARP frame ----- ARP: ARP: Hardware type = 1 (10Mb Ethernet) ARP: Protocol type = 0800 (IP) ARP: Length of hardware address = 6 bytes ARP: Length of protocol address = 4 bytes ARP: Opcode 2 (ARP reply) ARP: Sender's hardware address = 0005DCC9C640 ARP: Sender's protocol address = [192.168.1.2] ARP: Target hardware address = FFFFFFFFFFFF ARP: Target protocol address = [192.168.1.2] ARP: ARP: 18 bytes frame padding ARP: - - - - - - - - - - - - - - - - - - - - Frame 6 - ARP - - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summary 6 0005DCC9C640 Broadcast 60 0:01:27.355 0.508.778 05/07/2001 11:52:04 AM ARP: R PA=[192.168.1.2] HA=0005DCC9C640 PRO=IP DLC: ----- DLC Header ----- DLC: DLC: Frame 59 arrived at 11:52:04.3557; frame size is 60 (003C hex) bytes. DLC: Destination = BROADCAST FFFFFFFFFFFF, Broadcast DLC: Source = Station 0005DCC9C640 DLC: Ethertype = 0806 (ARP) DLC: ARP: ----- ARP/RARP frame ----- ARP: ARP: Hardware type = 1 (10Mb Ethernet) ARP: Protocol type = 0800 (IP) ARP: Length of hardware address = 6 bytes ARP: Length of protocol address = 4 bytes ARP: Opcode 2 (ARP reply) ARP: Sender's hardware address = 0005DCC9C640 ARP: Sender's protocol address = [192.168.1.2] ARP: Target hardware address = FFFFFFFFFFFF ARP: Target protocol address = [192.168.1.2] ARP: ARP: 18 bytes frame padding ARP:
- - - - - - - - - - - - - - - - - - - - Frame 1 - DHCPDISCOVER - - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summary 1 [0.0.0.0] [255.255.255.255] 618 0:02:05.759 0.025.369 05/31/2001 06:53:04 AM DHCP: Request, Message type: DHCP Discover DLC: ----- DLC Header ----- DLC: DLC: Frame 124 arrived at 06:53:04.2043; frame size is 618 (026A hex) bytes. DLC: Destination = BROADCAST FFFFFFFFFFFF, Broadcast DLC: Source = Station 0005DCF2C441 DLC: Ethertype = 0800 (IP) DLC: IP: ----- IP Header ----- IP: IP: Version = 4, header length = 20 bytes IP: Type of service = 00 IP: 000. .... = routine IP: ...0 .... = normal delay IP: .... 0... = normal throughput IP: .... .0.. = normal reliability IP: .... ..0. = ECT bit - transport protocol will ignore the CE bit IP: .... ...0 = CE bit - no congestion IP: Total length = 604 bytes IP: Identification = 183 IP: Flags = 0X IP: .0.. .... = may fragment IP: ..0. .... = last fragment IP: Fragment offset = 0 bytes IP: Time to live = 255 seconds/hops IP: Protocol = 17 (UDP) IP: Header checksum = B8DA (correct) IP: Source address = [0.0.0.0] IP: Destination address = [255.255.255.255] IP: No options IP: UDP: ----- UDP Header ----- UDP: UDP: Source port = 68 (BootPc/DHCP) UDP: Destination port = 67 (BootPs/DHCP) UDP: Length = 584 UDP: No checksum UDP: [576 byte(s) of data] UDP: DHCP: ----- DHCP Header ----- DHCP: DHCP: Boot record type = 1 (Request) DHCP: Hardware address type = 1 (10Mb Ethernet) DHCP: Hardware address length = 6 bytes DHCP: DHCP: Hops = 0 DHCP: Transaction id = 00001425 DHCP: Elapsed boot time = 0 seconds DHCP: Flags = 8000 DHCP: 1... .... .... .... = Broadcast IP datagrams DHCP: Client self-assigned IP address = [0.0.0.0] DHCP: Client IP address = [0.0.0.0] DHCP: Next Server to use in bootstrap = [0.0.0.0] DHCP: Relay Agent = [0.0.0.0] DHCP: Client hardware address = 0005DCF2C441 DHCP: DHCP: Host name = "" DHCP: Boot file name = "" DHCP: DHCP: Vendor Information tag = 63825363 DHCP: Message Type = 1 (DHCP Discover) DHCP: Maximum message size = 1152 DHCP: Client identifier = 00636973636F2D303065302E316566322E633434312D4574302F30 DHCP: Parameter Request List: 7 entries DHCP: 1 = Client's subnet mask DHCP: 6 = Domain name server DHCP: 15 = Domain name DHCP: 44 = NetBIOS over TCP/IP name server DHCP: 3 = Routers on the client's subnet DHCP: 33 = Static route DHCP: 150 = Unknown Option DHCP: Class identifier = 646F63736973312E30 DHCP: Option overload =3 (File and Sname fields hold options) DHCP: - - - - - - - - - - - - - - - - - - - - Frame 2 - DHCPOFFER - - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summaryr 125 [192.168.1.1] [255.255.255.255] 347 0:02:05.772 0.012.764 05/31/2001 06:53:04 AM DHCP: Reply, Message type: DHCP Offer DLC: ----- DLC Header ----- DLC: DLC: Frame 125 arrived at 06:53:04.2171; frame size is 347 (015B hex) bytes. DLC: Destination = BROADCAST FFFFFFFFFFFF, Broadcast DLC: Source = Station 003094248F71 DLC: Ethertype = 0800 (IP) DLC: IP: ----- IP Header ----- IP: IP: Version = 4, header length = 20 bytes IP: Type of service = 00 IP: 000. .... = routine IP: ...0 .... = normal delay IP: .... 0... = normal throughput IP: .... .0.. = normal reliability IP: .... ..0. = ECT bit - transport protocol will ignore the CE bit IP: .... ...0 = CE bit - no congestion IP: Total length = 333 bytes IP: Identification = 45 IP: Flags = 0X IP: .0.. .... = may fragment IP: ..0. .... = last fragment IP: Fragment offset = 0 bytes IP: Time to live = 255 seconds/hops IP: Protocol = 17 (UDP) IP: Header checksum = F8C9 (correct) IP: Source address = [192.168.1.1] IP: Destination address = [255.255.255.255] IP: No options IP: UDP: ----- UDP Header ----- UDP: UDP: Source port = 67 (BootPs/DHCP) UDP: Destination port = 68 (BootPc/DHCP) UDP: Length = 313 UDP: Checksum = 8517 (correct) UDP: [305 byte(s) of data] UDP: DHCP: ----- DHCP Header ----- DHCP: DHCP: Boot record type = 2 (Reply) DHCP: Hardware address type = 1 (10Mb Ethernet) DHCP: Hardware address length = 6 bytes DHCP: DHCP: Hops = 0 DHCP: Transaction id = 00001425 DHCP: Elapsed boot time = 0 seconds DHCP: Flags = 8000 DHCP: 1... .... .... .... = Broadcast IP datagrams DHCP: Client self-assigned IP address = [0.0.0.0] DHCP: Client IP address = [192.168.1.2] DHCP: Next Server to use in bootstrap = [0.0.0.0] DHCP: Relay Agent = [192.168.1.1] DHCP: Client hardware address = 0005DCF2C441 DHCP: DHCP: Host name = "" DHCP: Boot file name = "" DHCP: DHCP: Vendor Information tag = 63825363 DHCP: Message Type = 2 (DHCP Offer) DHCP: Server IP address = [192.168.2.2] DHCP: Request IP address lease time = 99471 (seconds) DHCP: Address Renewal interval = 49735 (seconds) DHCP: Address Rebinding interval = 87037 (seconds) DHCP: Subnet mask = [255.255.255.0] DHCP: Domain Name Server address = [192.168.10.1] DHCP: Domain Name Server address = [192.168.10.2] DHCP: NetBIOS Server address = [192.168.10.1] DHCP: NetBIOS Server address = [192.168.10.3] DHCP: Domain name = "cisco.com" DHCP: - - - - - - - - - - - - - - - - - - - - Frame 3 - DHCPREQUEST - - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summary 3 [0.0.0.0] [255.255.255.255] 618 0:02:05.774 0.002.185 05/31/2001 06:53:04 AM DHCP: Request, Message type: DHCP Request DLC: ----- DLC Header ----- DLC: DLC: Frame 126 arrived at 06:53:04.2193; frame size is 618 (026A hex) bytes. DLC: Destination = BROADCAST FFFFFFFFFFFF, Broadcast DLC: Source = Station Cisc14F2C441 DLC: Ethertype = 0800 (IP) DLC: IP: ----- IP Header ----- IP: IP: Version = 4, header length = 20 bytes IP: Type of service = 00 IP: 000. .... = routine IP: ...0 .... = normal delay IP: .... 0... = normal throughput IP: .... .0.. = normal reliability IP: .... ..0. = ECT bit - transport protocol will ignore the CE bit IP: .... ...0 = CE bit - no congestion IP: Total length = 604 bytes IP: Identification = 184 IP: Flags = 0X IP: .0.. .... = may fragment IP: ..0. .... = last fragment IP: Fragment offset = 0 bytes IP: Time to live = 255 seconds/hops IP: Protocol = 17 (UDP) IP: Header checksum = B8D9 (correct) IP: Source address = [0.0.0.0] IP: Destination address = [255.255.255.255] IP: No options IP: UDP: ----- UDP Header ----- UDP: UDP: Source port = 68 (BootPc/DHCP) UDP: Destination port = 67 (BootPs/DHCP) UDP: Length = 584 UDP: No checksum UDP: [576 byte(s) of data] UDP: DHCP: ----- DHCP Header ----- DHCP: DHCP: Boot record type = 1 (Request) DHCP: Hardware address type = 1 (10Mb Ethernet) DHCP: Hardware address length = 6 bytes DHCP: DHCP: Hops = 0 DHCP: Transaction id = 00001425 DHCP: Elapsed boot time = 0 seconds DHCP: Flags = 8000 DHCP: 1... .... .... .... = Broadcast IP datagrams DHCP: Client self-assigned IP address = [0.0.0.0] DHCP: Client IP address = [0.0.0.0] DHCP: Next Server to use in bootstrap = [0.0.0.0] DHCP: Relay Agent = [0.0.0.0] DHCP: Client hardware address = 0005DCF2C441 DHCP: DHCP: Host name = "" DHCP: Boot file name = "" DHCP: DHCP: Vendor Information tag = 63825363 DHCP: Message Type = 3 (DHCP Request) DHCP: Maximum message size = 1152 DHCP: Client identifier = 00636973636F2D303065302E316566322E633434312D4574302F30 DHCP: Server IP address = [192.168.2.2] DHCP: Request specific IP address = [192.168.1.2] DHCP: Request IP address lease time = 99471 (seconds) DHCP: Parameter Request List: 7 entries DHCP: 1 = Client's subnet mask DHCP: 6 = Domain name server DHCP: 15 = Domain name DHCP: 44 = NetBIOS over TCP/IP name server DHCP: 3 = Routers on the client's subnet DHCP: 33 = Static route DHCP: 150 = Unknown Option DHCP: Class identifier = 646F63736973312E30 DHCP: Option overload =3 (File and Sname fields hold options) DHCP: - - - - - - - - - - - - - - - - - - - - Frame 4 - DHCPACK - - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summary 4 [192.168.1.1] [255.255.255.255] 347 0:02:05.787 0.012.875 05/31/2001 06:53:04 AM DHCP: Reply, Message type: DHCP Ack DLC: ----- DLC Header ----- DLC: DLC: Frame 127 arrived at 06:53:04.2321; frame size is 347 (015B hex) bytes. DLC: Destination = BROADCAST FFFFFFFFFFFF, Broadcast DLC: Source = Station 003094248F71 DLC: Ethertype = 0800 (IP) DLC: IP: ----- IP Header ----- IP: IP: Version = 4, header length = 20 bytes IP: Type of service = 00 IP: 000. .... = routine IP: ...0 .... = normal delay IP: .... 0... = normal throughput IP: .... .0.. = normal reliability IP: .... ..0. = ECT bit - transport protocol will ignore the CE bit IP: .... ...0 = CE bit - no congestion IP: Total length = 333 bytes IP: Identification = 47 IP: Flags = 0X IP: .0.. .... = may fragment IP: ..0. .... = last fragment IP: Fragment offset = 0 bytes IP: Time to live = 255 seconds/hops IP: Protocol = 17 (UDP) IP: Header checksum = F8C7 (correct) IP: Source address = [192.168.1.1] IP: Destination address = [255.255.255.255] IP: No options IP: UDP: ----- UDP Header ----- UDP: UDP: Source port = 67 (BootPs/DHCP) UDP: Destination port = 68 (BootPc/DHCP) UDP: Length = 313 UDP: Checksum = 326F (correct) UDP: [305 byte(s) of data] UDP: DHCP: ----- DHCP Header ----- DHCP: DHCP: Boot record type = 2 (Reply) DHCP: Hardware address type = 1 (10Mb Ethernet) DHCP: Hardware address length = 6 bytes DHCP: DHCP: Hops = 0 DHCP: Transaction id = 00001425 DHCP: Elapsed boot time = 0 seconds DHCP: Flags = 8000 DHCP: 1... .... .... .... = Broadcast IP datagrams DHCP: Client self-assigned IP address = [0.0.0.0] DHCP: Client IP address = [192.168.1.2] DHCP: Next Server to use in bootstrap = [0.0.0.0] DHCP: Relay Agent = [192.168.1.1] DHCP: Client hardware address = 0005DCF2C441 DHCP: DHCP: Host name = "" DHCP: Boot file name = "" DHCP: DHCP: Vendor Information tag = 63825363 DHCP: Message Type = 5 (DHCP Ack) DHCP: Server IP address = [192.168.2.2] DHCP: Request IP address lease time = 172800 (seconds) DHCP: Address Renewal interval = 86400 (seconds) DHCP: Address Rebinding interval = 151200 (seconds) DHCP: Subnet mask = [255.255.255.0] DHCP: Domain Name Server address = [192.168.10.1] DHCP: Domain Name Server address = [192.168.10.2] DHCP: NetBIOS Server address = [192.168.10.1] DHCP: NetBIOS Server address = [192.168.10.3] DHCP: Domain name = "cisco.com" DHCP: - - - - - - - - - - - - - - - - - - - - Frame 5 - ARP - - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summary 5 Cisc14F2C441 Broadcast 60 0:02:05.798 0.011.763 05/31/2001 06:53:04 AM ARP: R PA=[192.168.1.2] HA=Cisc14F2C441 PRO=IP DLC: ----- DLC Header ----- DLC: DLC: Frame 128 arrived at 06:53:04.2439; frame size is 60 (003C hex) bytes. DLC: Destination = BROADCAST FFFFFFFFFFFF, Broadcast DLC: Source = Station Cisc14F2C441 DLC: Ethertype = 0806 (ARP) DLC: ARP: ----- ARP/RARP frame ----- ARP: ARP: Hardware type = 1 (10Mb Ethernet) ARP: Protocol type = 0800 (IP) ARP: Length of hardware address = 6 bytes ARP: Length of protocol address = 4 bytes ARP: Opcode 2 (ARP reply) ARP: Sender's hardware address = 00E01EF2C441 ARP: Sender's protocol address = [192.168.1.2] ARP: Target hardware address = FFFFFFFFFFFF ARP: Target protocol address = [192.168.1.2] ARP: ARP: 18 bytes frame padding ARP: - - - - - - - - - - - - - - - - - - - - Frame 6 - ARP - - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summary 5 Cisc14F2C441 Broadcast 60 0:02:05.798 0.011.763 05/31/2001 06:53:04 AM ARP: R PA=[192.168.1.2] HA=Cisc14F2C441 PRO=IP DLC: ----- DLC Header ----- DLC: DLC: Frame 128 arrived at 06:53:04.2439; frame size is 60 (003C hex) bytes. DLC: Destination = BROADCAST FFFFFFFFFFFF, Broadcast DLC: Source = Station Cisc14F2C441 DLC: Ethertype = 0806 (ARP) DLC: ARP: ----- ARP/RARP frame ----- ARP: ARP: Hardware type = 1 (10Mb Ethernet) ARP: Protocol type = 0800 (IP) ARP: Length of hardware address = 6 bytes ARP: Length of protocol address = 4 bytes ARP: Opcode 2 (ARP reply) ARP: Sender's hardware address = 00E01EF2C441 ARP: Sender's protocol address = [192.168.1.2] ARP: Target hardware address = FFFFFFFFFFFF ARP: Target protocol address = [192.168.1.2] ARP: ARP: 18 bytes frame padding ARP:
- - - - - - - - - - - - - - - - - - - - Frame 1 - DHCPDISCOVER - - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summary 118 [192.168.1.1] [192.168.2.2] 618 0:00:51.212 0.489.912 05/31/2001 07:02:54 AM DHCP: Request, Message type: DHCP Discover DLC: ----- DLC Header ----- DLC: DLC: Frame 118 arrived at 07:02:54.7463; frame size is 618 (026A hex) bytes. DLC: Destination = Station 0005DC0BF2F4 DLC: Source = Station 003094248F72 DLC: Ethertype = 0800 (IP) DLC: IP: ----- IP Header ----- IP: IP: Version = 4, header length = 20 bytes IP: Type of service = 00 IP: 000. .... = routine IP: ...0 .... = normal delay IP: .... 0... = normal throughput IP: .... .0.. = normal reliability IP: .... ..0. = ECT bit - transport protocol will ignore the CE bit IP: .... ...0 = CE bit - no congestion IP: Total length = 604 bytes IP: Identification = 52 IP: Flags = 0X IP: .0.. .... = may fragment IP: ..0. .... = last fragment IP: Fragment offset = 0 bytes IP: Time to live = 255 seconds/hops IP: Protocol = 17 (UDP) IP: Header checksum = 3509 (correct) IP: Source address = [192.168.1.1] IP: Destination address = [192.168.2.2] IP: No options IP: UDP: ----- UDP Header ----- UDP: UDP: Source port = 67 (BootPs/DHCP) UDP: Destination port = 67 (BootPs/DHCP) UDP: Length = 584 UDP: Checksum = 0A19 (correct) UDP: [576 byte(s) of data] UDP: DHCP: ----- DHCP Header ----- DHCP: DHCP: Boot record type = 1 (Request) DHCP: Hardware address type = 1 (10Mb Ethernet) DHCP: Hardware address length = 6 bytes DHCP: DHCP: Hops = 1 DHCP: Transaction id = 000005F4 DHCP: Elapsed boot time = 0 seconds DHCP: Flags = 8000 DHCP: 1... .... .... .... = Broadcast IP datagrams DHCP: Client self-assigned IP address = [0.0.0.0] DHCP: Client IP address = [0.0.0.0] DHCP: Next Server to use in bootstrap = [0.0.0.0] DHCP: Relay Agent = [192.168.1.1] DHCP: Client hardware address = 0005DCF2C441 DHCP: DHCP: Host name = "" DHCP: Boot file name = "" DHCP: DHCP: Vendor Information tag = 63825363 DHCP: Message Type = 1 (DHCP Discover) DHCP: Maximum message size = 1152 DHCP: Client identifier = 00636973636F2D303065302E316566322E633434312D4574302F30 DHCP: Parameter Request List: 7 entries DHCP: 1 = Client's subnet mask DHCP: 6 = Domain name server DHCP: 15 = Domain name DHCP: 44 = NetBIOS over TCP/IP name server DHCP: 3 = Routers on the client's subnet DHCP: 33 = Static route DHCP: 150 = Unknown Option DHCP: Class identifier = 646F63736973312E30 DHCP: Option overload =3 (File and Sname fields hold options) DHCP: - - - - - - - - - - - - - - - - - - - - Frame 2 - DHCPOFFER - - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summary 2 [192.168.2.2] [192.168.1.1] 347 0:00:51.214 0.002.133 05/31/2001 07:02:54 AM DHCP: Request, Message type: DHCP Offer DLC: ----- DLC Header ----- DLC: DLC: Frame 119 arrived at 07:02:54.7485; frame size is 347 (015B hex) bytes. DLC: Destination = Station 003094248F72 DLC: Source = Station 0005DC0BF2F4 DLC: Ethertype = 0800 (IP) DLC: IP: ----- IP Header ----- IP: IP: Version = 4, header length = 20 bytes IP: Type of service = 00 IP: 000. .... = routine IP: ...0 .... = normal delay IP: .... 0... = normal throughput IP: .... .0.. = normal reliability IP: .... ..0. = ECT bit - transport protocol will ignore the CE bit IP: .... ...0 = CE bit - no congestion IP: Total length = 333 bytes IP: Identification = 41 IP: Flags = 0X IP: .0.. .... = may fragment IP: ..0. .... = last fragment IP: Fragment offset = 0 bytes IP: Time to live = 255 seconds/hops IP: Protocol = 17 (UDP) IP: Header checksum = 3623 (correct) IP: Source address = [192.168.2.2] IP: Destination address = [192.168.1.1] IP: No options IP: UDP: ----- UDP Header ----- UDP: UDP: Source port = 67 (BootPs/DHCP) UDP: Destination port = 67 (BootPs/DHCP) UDP: Length = 313 UDP: Checksum = A1F8 (correct) UDP: [305 byte(s) of data] UDP: DHCP: ----- DHCP Header ----- DHCP: DHCP: Boot record type = 2 (Request) DHCP: Hardware address type = 1 (10Mb Ethernet) DHCP: Hardware address length = 6 bytes DHCP: DHCP: Hops = 0 DHCP: Transaction id = 000005F4 DHCP: Elapsed boot time = 0 seconds DHCP: Flags = 8000 DHCP: 1... .... .... .... = Broadcast IP datagrams DHCP: Client self-assigned IP address = [0.0.0.0] DHCP: Client IP address = [192.168.1.2] DHCP: Next Server to use in bootstrap = [0.0.0.0] DHCP: Relay Agent = [192.168.1.1] DHCP: Client hardware address = 0005DCF2C441 DHCP: DHCP: Host name = "" DHCP: Boot file name = "" DHCP: DHCP: Vendor Information tag = 63825363 DHCP: Message Type = 2 (DHCP Offer) DHCP: Server IP address = [192.168.2.2] DHCP: Request IP address lease time = 172571 (seconds) DHCP: Address Renewal interval = 86285 (seconds) DHCP: Address Rebinding interval = 150999 (seconds) DHCP: Subnet mask = [255.255.255.0] DHCP: Domain Name Server address = [192.168.10.1] DHCP: Domain Name Server address = [192.168.10.2] DHCP: NetBIOS Server address = [192.168.10.1] DHCP: NetBIOS Server address = [192.168.10.3] DHCP: Domain name = "cisco.com" DHCP: - - - - - - - - - - - - - - - - - - - - Frame 3 - DHCPREQUEST - - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summary 3 [192.168.1.1] [192.168.2.2] 618 0:00:51.240 0.025.974 05/31/2001 07:02:54 AM DHCP: Request, Message type: DHCP Request DLC: ----- DLC Header ----- DLC: DLC: Frame 120 arrived at 07:02:54.7745; frame size is 618 (026A hex) bytes. DLC: Destination = Station 0005DC0BF2F4 DLC: Source = Station 003094248F72 DLC: Ethertype = 0800 (IP) DLC: IP: ----- IP Header ----- IP: IP: Version = 4, header length = 20 bytes IP: Type of service = 00 IP: 000. .... = routine IP: ...0 .... = normal delay IP: .... 0... = normal throughput IP: .... .0.. = normal reliability IP: .... ..0. = ECT bit - transport protocol will ignore the CE bit IP: .... ...0 = CE bit - no congestion IP: Total length = 604 bytes IP: Identification = 54 IP: Flags = 0X IP: .0.. .... = may fragment IP: ..0. .... = last fragment IP: Fragment offset = 0 bytes IP: Time to live = 255 seconds/hops IP: Protocol = 17 (UDP) IP: Header checksum = 3507 (correct) IP: Source address = [192.168.1.1] IP: Destination address = [192.168.2.2] IP: No options IP: UDP: ----- UDP Header ----- UDP: UDP: Source port = 67 (BootPs/DHCP) UDP: Destination port = 67 (BootPs/DHCP) UDP: Length = 584 UDP: Checksum = 4699 (correct) UDP: [576 byte(s) of data] UDP: DHCP: ----- DHCP Header ----- DHCP: DHCP: Boot record type = 1 (Request) DHCP: Hardware address type = 1 (10Mb Ethernet) DHCP: Hardware address length = 6 bytes DHCP: DHCP: Hops = 1 DHCP: Transaction id = 000005F4 DHCP: Elapsed boot time = 0 seconds DHCP: Flags = 8000 DHCP: 1... .... .... .... = Broadcast IP datagrams DHCP: Client self-assigned IP address = [0.0.0.0] DHCP: Client IP address = [0.0.0.0] DHCP: Next Server to use in bootstrap = [0.0.0.0] DHCP: Relay Agent = [192.168.1.1] DHCP: Client hardware address = 0005DCF2C441 DHCP: DHCP: Host name = "" DHCP: Boot file name = "" DHCP: DHCP: Vendor Information tag = 63825363 DHCP: Message Type = 3 (DHCP Request) DHCP: Maximum message size = 1152 DHCP: Client identifier = 00636973636F2D303065302E316566322E633434312D4574302F30 DHCP: Server IP address = [192.168.2.2] DHCP: Request specific IP address = [192.168.1.2] DHCP: Request IP address lease time = 172571 (seconds) DHCP: Parameter Request List: 7 entries DHCP: 1 = Client's subnet mask DHCP: 6 = Domain name server DHCP: 15 = Domain name DHCP: 44 = NetBIOS over TCP/IP name server DHCP: 3 = Routers on the client's subnet DHCP: 33 = Static route DHCP: 150 = Unknown Option DHCP: Class identifier = 646F63736973312E30 DHCP: Option overload =3 (File and Sname fields hold options) DHCP: - - - - - - - - - - - - - - - - - - - - Frame 4 - DHCPACK - - - - - - - - - - - - - - - - - - - - Frame Status Source Address Dest. Address Size Rel. Time Delta Time Abs. Time Summary 4 [192.168.2.2] [192.168.1.1] 347 0:00:51.240 0.000.153 05/31/2001 07:02:54 AM DHCP: Request, Message type: DHCP Ack DLC: ----- DLC Header ----- DLC: DLC: Frame 121 arrived at 07:02:54.7746; frame size is 347 (015B hex) bytes. DLC: Destination = Station 003094248F72 DLC: Source = Station 0005DC0BF2F4 DLC: Ethertype = 0800 (IP) DLC: IP: ----- IP Header ----- IP: IP: Version = 4, header length = 20 bytes IP: Type of service = 00 IP: 000. .... = routine IP: ...0 .... = normal delay IP: .... 0... = normal throughput IP: .... .0.. = normal reliability IP: .... ..0. = ECT bit - transport protocol will ignore the CE bit IP: .... ...0 = CE bit - no congestion IP: Total length = 333 bytes IP: Identification = 42 IP: Flags = 0X IP: .0.. .... = may fragment IP: ..0. .... = last fragment IP: Fragment offset = 0 bytes IP: Time to live = 255 seconds/hops IP: Protocol = 17 (UDP) IP: Header checksum = 3622 (correct) IP: Source address = [192.168.2.2] IP: Destination address = [192.168.1.1] IP: No options IP: UDP: ----- UDP Header ----- UDP: UDP: Source port = 67 (BootPs/DHCP) UDP: Destination port = 67 (BootPs/DHCP) UDP: Length = 313 UDP: Checksum = 7DF6 (correct) UDP: [305 byte(s) of data] UDP: DHCP: ----- DHCP Header ----- DHCP: DHCP: Boot record type = 2 (Request) DHCP: Hardware address type = 1 (10Mb Ethernet) DHCP: Hardware address length = 6 bytes DHCP: DHCP: Hops = 0 DHCP: Transaction id = 000005F4 DHCP: Elapsed boot time = 0 seconds DHCP: Flags = 8000 DHCP: 1... .... .... .... = Broadcast IP datagrams DHCP: Client self-assigned IP address = [0.0.0.0] DHCP: Client IP address = [192.168.1.2] DHCP: Next Server to use in bootstrap = [0.0.0.0] DHCP: Relay Agent = [192.168.1.1] DHCP: Client hardware address = 0005DCF2C441 DHCP: DHCP: Host name = "" DHCP: Boot file name = "" DHCP: DHCP: Vendor Information tag = 63825363 DHCP: Message Type = 5 (DHCP Ack) DHCP: Server IP address = [192.168.2.2] DHCP: Request IP address lease time = 172800 (seconds) DHCP: Address Renewal interval = 86400 (seconds) DHCP: Address Rebinding interval = 151200 (seconds) DHCP: Subnet mask = [255.255.255.0] DHCP: Domain Name Server address = [192.168.10.1] DHCP: Domain Name Server address = [192.168.10.2] DHCP: NetBIOS Server address = [192.168.10.1] DHCP: NetBIOS Server address = [192.168.10.3] DHCP: Domain name = "cisco.com" DHCP:
Quando il server DHCP e il client si trovano sullo stesso segmento LAN o sulla stessa VLAN e il client non è in grado di ottenere un indirizzo IP da un server DHCP. Tuttavia, è improbabile che il router locale causi un problema DHCP. Il problema è relativo ai dispositivi che connettono il server DHCP e il client DHCP. Tuttavia, il problema può riguardare il server DHCP o il client stesso. Questi moduli aiutano a risolvere i problemi e a determinare quale dispositivo causa un problema.
Nota: per configurare il server DHCP in base alle singole VLAN, definire pool DHCP diversi per ciascuna VLAN che indirizzi DHCP ai client.
Quando il server e il client DHCP risiedono su segmenti LAN o VLAN diversi, il router svolge la funzione di agente di inoltro DHCP/BootP responsabile dell'inoltro di DHCPREQUEST al server DHCP. Per risolvere i problemi relativi all'agente di inoltro DHCP/BootP, nonché al server DHCP e al client, sono necessari ulteriori passaggi. Se si tiene traccia di questi moduli, è possibile determinare quale dispositivo causa i problemi.
È possibile che alcuni indirizzi siano ancora detenuti dai client, anche se vengono rilasciati dal pool. È possibile verificare questa condizione tramite l'output del conflitto show ip dhcp. Un conflitto di indirizzi si verifica quando due host utilizzano lo stesso indirizzo IP. All'assegnazione dell'indirizzo, il DHCP verifica la presenza di conflitti con il ping e l'ARP gratuito.
Se viene rilevato un conflitto, l'indirizzo viene rimosso dal pool. L'indirizzo viene assegnato finché l'amministratore non risolve il conflitto. Per risolvere il problema, configurare l'opzione no ip dhcp conflict logging.
I problemi relativi al protocollo DHCP possono essere dovuti a diversi motivi. I motivi più comuni sono i problemi di configurazione. Tuttavia, molti problemi relativi al protocollo DHCP possono essere causati da problemi software nei sistemi, nei driver delle schede di interfaccia di rete (NIC, Network Interface Card) o negli agenti di inoltro DHCP/BootP eseguiti sui router. A causa del numero di aree potenzialmente problematiche, è necessario un approccio sistematico alla risoluzione dei problemi.
Configurazione predefinita dello switch Catalyst
Configurazione agente di inoltro DHCP/BootP
Problema di compatibilità NIC o di funzionalità DHCP
Installazione errata della scheda NIC o del driver della scheda NIC
Interruzioni intermittenti della rete dovute a frequenti calcoli dello Spanning Tree
Comportamento del sistema operativo o difetto del software
Configurazione dell'ambito del server DHCP o errore software
Errore software dello switch Cisco Catalyst o dell'agente di inoltro DHCP/BootP Cisco IOS
Controllo unicast Reverse Path Forwarding (uRPF) non riuscito. L'offerta DHCP viene ricevuta su un'interfaccia diversa da quella prevista. Quando la funzione di inoltro del percorso inverso (RPF) è abilitata su un'interfaccia, un router Cisco può eliminare i pacchetti DHCP (Dynamic Host Configuration Protocol) e BOOTstrap Protocol (BOOTP) con indirizzi di origine 0.0.0.0 e indirizzi di destinazione 255.255.255.255. Il router può anche eliminare tutti i pacchetti IP che hanno una destinazione IP multicast sull'interfaccia. Questo problema è documentato nell'ID bug Cisco CSCdw31925
Nota Solo i client Cisco registrati possono accedere alle segnalazioni dei bug.
L'agente del database DHCP non viene utilizzato, ma la registrazione dei conflitti DHCP non è disabilitata
Questa procedura è applicabile a tutti i casi aziendali.
Verificare innanzitutto la connettività fisica di un client e di un server DHCP. Se la connessione è stabilita a uno switch Catalyst, verificare che il client e il server DHCP dispongano entrambi di connettività fisica. Per gli switch Cisco IOS come Catalyst 2900XL/3500XL/2950/3550, il comando equivalente per visualizzare lo stato della porta è show interface<interface>. Se lo stato dell'interfaccia è diverso da <interface> is up, il protocollo di linea è attivo, la porta non trasmette il traffico, nemmeno le richieste del client DHCP. L'output dei comandi:
Switch#show interface fastEthernet 0/1 FastEthernet0/1 is up, line protocol is up Hardware is Fast Ethernet, address is 0030.94dc.acc1 (bia 0030.94dc.acc1)
Se la connessione fisica è stata verificata e non è presente alcun collegamento tra lo switch Catalyst e il client DHCP, consultare la sezione Risoluzione dei problemi di compatibilità NIC degli switch Cisco Catalyst per risolvere i problemi di connettività del livello fisico.
Un numero eccessivo di errori di collegamento dati causa lo stato err-disabled delle porte di alcuni switch Catalyst. Per ulteriori informazioni, consultare il documento sul ripristino di una porta disabilitata a causa di un errore sulle piattaforme Cisco IOS, in cui viene descritto lo stato err-disabled, viene spiegato come ripristinare le porte disabilitate a causa di un errore e vengono forniti esempi di ripristino da questo stato.
B. Configurare la stazione di lavoro client e l'indirizzo IP statico per verificare la connettività di rete
Questa procedura è applicabile a tutti i casi aziendali.
Per risolvere i problemi relativi al protocollo DHCP, è importante configurare un indirizzo IP statico su una workstation client per verificare la connettività di rete. Se la workstation non è in grado di raggiungere le risorse di rete nonostante disponga di un indirizzo IP configurato staticamente, la causa principale del problema non è DHCP. A questo punto, è necessario risolvere i problemi relativi alla connettività di rete.
Questa procedura è applicabile a tutti i casi aziendali.
Se il client DHCP non riesce a ottenere un indirizzo IP dal server DHCP all'avvio, è possibile forzare manualmente il client a inviare una richiesta DHCP. Eseguire i passaggi successivi per ottenere manualmente un indirizzo IP da un server DHCP per il sistema operativo elencato.
Microsoft Windows 95/98/ME:
Microsoft Windows NT/2000:
Se il client DHCP è in grado di ottenere un indirizzo IP con un rinnovo manuale dell'indirizzo IP dopo che il PC ha completato il processo di avvio, è molto probabile che si tratti di un problema di avvio di DHCP. Se il client DHCP è collegato a uno switch Cisco Catalyst, il problema è probabilmente dovuto a un problema di configurazione che riguarda la portfast STP e/o il channeling e il trunking. Altre possibilità includono problemi con le schede NIC e problemi di avvio delle porte dello switch. Esaminare le fasi D ed E per escludere i problemi di configurazione della porta dello switch e della scheda NIC come causa principale del problema DHCP.
Se lo switch è un Catalyst 2900/4000/5000/6000, verificare che la porta abbia STP portfast abilitato e che il trunking/channeling disabilitato. La configurazione predefinita è STP portfast disabilitata e trunking/channeling auto, se applicabile. Per gli switch serie 2900XL/3500XL/2950/3550, l'unica configurazione richiesta è STP portfast. Queste modifiche alla configurazione risolvono i problemi più comuni dei client DHCP che si verificano con l'installazione iniziale di uno switch Catalyst.
Per ulteriori informazioni sui requisiti di configurazione delle porte dello switch affinché DHCP funzioni correttamente quando collegato agli switch Catalyst, consultare il documento sull'uso di Portfast e di altri comandi per risolvere i ritardi della connettività di avvio della workstation.
Dopo aver esaminato il documento, è possibile continuare a risolvere i problemi.
Se la configurazione dello switch Catalyst è corretta, è possibile che sullo switch Catalyst o sulla scheda NIC del client DHCP si sia verificato un problema di compatibilità software che potrebbe causare problemi con il server DHCP. Il passaggio successivo per la risoluzione dei problemi consiste nell'esaminare la risoluzione dei problemi di compatibilità NIC degli switch Cisco Catalyst e nell'escludere eventuali problemi software dello switch Catalyst o della scheda NIC che contribuiscono al problema.
Per eliminare correttamente eventuali problemi di compatibilità, è necessario conoscere il sistema operativo del client DHCP e le informazioni specifiche sulla scheda NIC, ad esempio il produttore, il modello e la versione del driver.
È importante distinguere se DHCP funziona correttamente o meno quando il client si trova sulla stessa subnet o VLAN del server DHCP. Se il protocollo DHCP funziona correttamente sulla stessa subnet o VLAN del server DHCP, il problema DHCP è causato principalmente dall'agente di inoltro DHCP/BootP. Se il problema persiste anche quando si esegue il test del protocollo DHCP sulla stessa subnet o VLAN del server DHCP, il problema potrebbe essere causato dal server DHCP.
Per verificare la configurazione:
Quando si configura il inoltro DHCP su un router, verificare che il comando ip helper-address si trovi sull'interfaccia corretta. Il comando ip helper-address deve essere presente sull'interfaccia in entrata delle workstation client DHCP e deve essere indirizzato al server DHCP corretto.
Verificare che il comando di configurazione globale no service dhcp non sia presente. Questo parametro di configurazione disabilita tutte le funzionalità del server DHCP e dell'inoltro sul router. La configurazione predefinita, service dhcp, non viene visualizzata nella configurazione ed è il comando di configurazione predefinito. Se il protocollo dhcp del servizio non è abilitato, i client non ricevono gli indirizzi IP dal server DHCP.
Nota: nei router con versioni precedenti di Cisco IOS, il comando ip bootp server gestisce la funzione agente di inoltro DHCP anziché il comando service dhcp. Per questo motivo, il comando ip bootp server deve essere abilitato in questi router se il comando ip helper-address è configurato per inoltrare i broadcast UDP DHCP e funzionare correttamente come agente di inoltro DHCP per conto del client DHCP.
- Quando si utilizzano i comandi ip helper-address per inoltrare i broadcast UDP a un indirizzo di broadcast di subnet, verificare che non sia
no ip directed-broadcast configurato su nessuna interfaccia in uscita che i pacchetti di broadcast UDP devono attraversare. Il bloccono ip directed-broadcast su qualsiasi traduzione di una trasmissione diretta a trasmissioni fisiche. Questa configurazione di interfaccia è la configurazione predefinita nelle versioni software 12.0 e successive.
-
Quando le trasmissioni DHCP vengono inoltrate all'indirizzo di broadcast della subnet del server DHCP, può verificarsi un problema software. Per risolvere i problemi relativi a DHCP, provare a inoltrare i broadcast UDP DHCP all'indirizzo IP del server DHCP:
version 12.0
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
no service dhcp
!--- This configuration command will disable all DHCP server and relay functionality on the router.
hostname router
!
!
!
interface Ethernet0
ip address 192.168.2.1 255.255.255.0
no ip directed-broadcast
!--- This configuration will prevent translation of a directed broadcast to a physical broadcast.
interface Ethernet1
!--- DHCP client workstations reside of this interface.
ip address 192.168.1.1 255.255.255.0
ip helper-address 192.168.2.255
!--- IP helper-address pointing to DHCP server's subnet.
no ip directed-broadcast
!
!
!
line con 0
exec-timeout 0 0
transport input none
line aux 0
line vty 0 4
login
!
end
H. Opzione Identificazione Abbonato (82) Attivata
La funzionalità delle informazioni dell'agente di inoltro DHCP (opzione 82) consente agli agenti di inoltro DHCP (switch Catalyst) di includere informazioni su se stesso e sul client collegato quando inoltra le richieste DHCP da un client DHCP a un server DHCP.
Il server DHCP può utilizzare queste informazioni per assegnare indirizzi IP, eseguire il controllo degli accessi e impostare criteri di qualità del servizio (QoS) e di sicurezza (o altri criteri di assegnazione dei parametri) per ogni sottoscrittore di una rete di provider di servizi. Quando lo snooping DHCP è abilitato su uno switch, attiva automaticamente l'opzione 82. Se il server DHCP non è configurato per gestire i pacchetti con l'opzione 82, cessa di allocare l'indirizzo a quella richiesta. Per risolvere il problema, disabilitare l'opzione di identificazione del sottoscrittore (82) negli switch (agenti relay) con il comando di configurazione globale,no ip dhcp relay information option.
I. Agente del database DHCP e registrazione dei conflitti DHCP
Un agente di database DHCP è un host, ad esempio un server FTP, TFTP o RCP, in cui viene archiviato il database dei binding DHCP. È possibile configurare più agenti di database DHCP e l'intervallo tra gli aggiornamenti e i trasferimenti di database per ogni agente. Utilizzare il comando ip dhcp database per configurare un agente di database e i relativi parametri.
Se si sceglie di non configurare un agente di database DHCP, disattivare la registrazione dei conflitti di indirizzi DHCP sul server DHCP. Eseguire il comando noip dhcp conflict logging per disabilitare la registrazione dei conflitti di indirizzi DHCP. Cancellare i conflitti registrati in precedenza con il conflitto clear ip dhcp.
Se non è possibile disattivare la registrazione dei conflitti, viene visualizzato il seguente messaggio di errore:
%DHCPD-4-DECLINE_CONFLICT: DHCP address conflict: client
J. Controllare CDP per le connessioni telefoniche IP
Quando la porta dello switch collegata al telefono IP Cisco ha il protocollo CDP (Cisco Discovery Protocol) disabilitato, il server DHCP non può assegnare un indirizzo IP appropriato al telefono. Il server DHCP in genere assegna l'indirizzo IP che appartiene alla VLAN dati o alla subnet della porta dello switch. Se il CDP è abilitato, lo switch può rilevare che il Cisco IP Phone richiede il DHCP e può fornire le informazioni corrette sulla subnet. Il server DHCP è quindi in grado di allocare un indirizzo IP dal pool di voci VLAN/subnet. Non è necessario eseguire alcuna procedura esplicita per associare il servizio dhcp alla voice vlan.
K. Remove Down SVI interrompe l'operazione di snooping DHCP
Sugli switch Cisco Catalyst serie 6500, viene creata automaticamente una SVI (in stato shutdown) dopo aver configurato il DHCP per lo snoop su una particolare VLAN. La presenza di questa SVI ha implicazioni dirette sul corretto funzionamento dello snooping DHCP.
Lo snooping DHCP sugli switch Cisco Catalyst serie 6500 con Cisco IOS nativo è implementato principalmente su Route Processor (RP o MSFC) e non su Switch Processor (SP o Supervisor). Cisco Catalyst serie 6500 intercetta i pacchetti nell'hardware con VACL che forniscono i pacchetti a una logica di destinazione locale (LTL) sottoscritta dall'RP. Una volta che i frame entrano nell'RP, devono prima essere associati a un IDB dell'interfaccia L3 (SVI) prima di poter essere trasmessi alla parte snooping. Senza una SVI, questo IDB non esiste, e i pacchetti vengono scartati nell'RP.
L. Indirizzo di trasmissione limitato
Quando un client DHCP imposta il bit di trasmissione in un pacchetto DHCP, il server DHCP e l'agente di inoltro inviano messaggi DHCP ai client con l'indirizzo di trasmissione all-one (255.255.255.255). Se il comando ip broadcast-address è stato configurato per inviare una trasmissione in rete, la trasmissione all-one inviata da DHCP viene ignorata. Per risolvere questa situazione, utilizzare il comando ip dhcp limited-broadcast-address per verificare che una trasmissione in rete configurata non sostituisca il comportamento DHCP predefinito.
Alcuni client DHCP possono accettare solo trasmissioni all-one e non sono in grado di acquisire un indirizzo DHCP a meno che questo comando non sia configurato sull'interfaccia del router connessa al client.
M. Debug DHCP con comandi di debug del router
Verifica che il router riceva la richiesta DHCP con i comandi di debug
Sui router che supportano il software di elaborazione dei pacchetti DHCP, è possibile verificare se un router riceve la richiesta DHCP dal client. Il processo DHCP ha esito negativo se il router non riceve richieste dal client. In questo passaggio viene configurato un elenco degli accessi per eseguire il debug dell'output. Questo elenco degli accessi viene usato solo per eseguire il debug di un comando e non è intrusivo per il router.
In modalità di configurazione globale, immettere il seguente elenco degli accessi:
access-list 100 allow ip host 0.0.0.0 host 255.255.255.255
In modalità di esecuzione, immettere il comando debug:
debug ip packet detail 100
Output di esempio
Router#debug ip packet detail 100
IP packet debugging is on (detailed) for access list 100
Router#
00:16:46: IP: s=0.0.0.0 (Ethernet4/0), d=255.255.255.255, len 604, rcvd 2
00:16:46: UDP src=68, dst=67
00:16:46: IP: s=0.0.0.0 (Ethernet4/0), d=255.255.255.255, len 604, rcvd 2
00:16:46: UDP src=68, dst=67
Da questo esempio di output è chiaro che il router riceve attivamente le richieste DHCP dal client. Questo output mostra solo un riepilogo del pacchetto e non il pacchetto stesso. Pertanto, non è possibile determinare se il pacchetto è corretto. Tuttavia, il router ha ricevuto un pacchetto di trasmissione con le porte IP e UDP di origine e di destinazione corrette per DHCP.
Verificare che il router riceva e inoltri la richiesta DHCP con il comando debug ip udp
Il comando debug ip udp può tracciare il percorso di una richiesta DHCP tramite un router. Tuttavia, questo debug è intrusivo in un ambiente di produzione, poiché tutti i pacchetti UDP commutati elaborati vengono visualizzati sulla console. Questo comando debug non deve essere utilizzato nella produzione.
Avviso: il comando debug ip udp è intrusivo e può causare un elevato utilizzo della CPU.
In modalità di esecuzione, immettere il comando debug ip udp
Output di esempio
Router#debug ip udp
UDP packet debugging is on
Router#
00:18:48: UDP: rcvd src=0.0.0.0(68), dst=255.255.255.255(67), length=584
!--- Router receiving DHCPDISCOVER from DHCP client.
00:18:48: UDP: sent src=192.168.1.1(67), dst=192.168.2.2(67), length=604
!--- Router forwarding DHCPDISCOVER unicast to DHCP server using DHCP/BootP Relay Agent source IP address.
00:18:48: UDP: rcvd src=192.168.2.2(67), dst=192.168.1.1(67), length=313
!--- Router receiving DHCPOFFER from DHCP server directed to DHCP/BootP Relay Agent IP address.
00:18:48: UDP: sent src=0.0.0.0(67), dst=255.255.255.255(68), length=333
!--- Router forwarding DHCPOFFER from DHCP server to DHCP client via DHCP/BootP Relay Agent.
00:18:48: UDP: rcvd src=0.0.0.0(68), dst=255.255.255.255(67), length=584
!--- Router receiving DHCPREQUEST from DHCP client.
00:18:48: UDP: sent src=192.168.1.1(67), dst=192.168.2.2(67), length=604
!--- Router forwarding DHCPDISCOVER unicast to DHCP server using DHCP/BootP Relay Agent source IP address.
00:18:48: UDP: rcvd src=192.168.2.2(67), dst=192.168.1.1(67), length=313
!--- Router receiving DHCPACK (or DHCPNAK) from DHCP directed to DHCP/BootP Relay Agent IP address.
00:18:48: UDP: sent src=0.0.0.0(67), dst=255.255.255.255(68), length=333
!--- Router forwarding DHCPACK (or DHCPNAK) to DHCP client via DHCP/BootP Relay Agent.
00:18:48: UDP: rcvd src=192.168.1.2(520), dst=255.255.255.255(520), length=32
!--- DHCP client verifying IP address not in use by sending ARP request for its own IP address.
00:18:50: UDP: rcvd src=192.168.1.2(520), dst=255.255.255.255(520), length=32
!--- DHCP client verifying IP address not in use by sending ARP request for its own IP address.
Verificare che il router riceva e inoltri la richiesta DHCP con il comando debug ip dhcp server packet
Se il router Cisco IOS è versione 12.0.x.T o 12.1 e supporta la funzionalità del server DHCP Cisco IOS, è possibile usare il comando debug ip dhcp server packet. Questo debug è stato progettato per essere usato con la funzionalità server DHCP Cisco IOS e per risolvere i problemi relativi all'agente di inoltro DHCP/BootP. Come per i passaggi precedenti, i debug del router non permettono di determinare con esattezza il problema, in quanto il pacchetto effettivo non può essere visualizzato. Tuttavia, i debug consentono di trarre deduzioni dall'elaborazione DHCP. In modalità di esecuzione, immettere il comando debug:
pacchetto server dhcp ip di debug
Router#debug ip dhcp server packet
00:20:54: DHCPD: setting giaddr to 192.168.1.1.
!--- Router received DHCPDISCOVER/REQUEST/INRORM and setting Gateway IP address to 192.168.1.1 for forwarding.
00:20:54: DHCPD: BOOTREQUEST from 0063.6973.636f.2d30.3065.302e.3165.6632.2e63..
!--- BOOTREQUEST includes DHCPDISCOVER, DHCPREQUEST, and DHCPINFORM.
!--- 0063.6973.636f.2d30.3065.302e.3165.6632.2e63 indicates client identifier.
00:20:54: DHCPD: forwarding BOOTREPLY to client 00e0.1ef2.c441.
!--- BOOTREPLY includes DHCPOFFER and DHCPNAK.
!--- Client's MAC address is 00e0.1ef2.c441.
00:20:54: DHCPD: broadcasting BOOTREPLY to client 00e0.1ef2.c441.
!--- Router is forwarding DHCPOFFER or DHCPNAK broadcast on local LAN interface.
00:20:54: DHCPD: setting giaddr to 192.168.1.1.
!--- Router received DHCPDISCOVER/REQUEST/INFORM and set Gateway IP address to 192.168.1.1 for forwarding.
00:20:54: DHCPD: BOOTREQUEST from 0063.6973.636f.2d30.3065.302e.3165.6632.2e63..
!--- BOOTREQUEST includes DHCPDISCOVER, DHCPREQUEST, and DHCPINFORM.
!--- 0063.6973.636f.2d30.3065.302e.3165.6632.2e63 indicates client identifier.
00:20:54: DHCPD: forwarding BOOTREPLY to client 00e0.1ef2.c441.
!--- BOOTREPLY includes DHCPOFFER and DHCPNAK.
!--- Client's MAC address is 00e0.1ef2.c441.
00:20:54: DHCPD: broadcasting BOOTREPLY to client 00e0.1ef2.c441.
!--- Router is forwarding DHCPOFFER or DHCPNAK broadcast on local LAN interface.
Esecuzione simultanea di più debug
Quando si eseguono più debug contemporaneamente, è possibile rilevare una quantità discreta di informazioni relative al funzionamento dell'agente di inoltro DHCP/BootP e del server. Se si usano le strutture precedenti per risolvere il problema, è possibile fare delle deduzioni su dove la funzionalità DHCP/BootP Relay Agent non funziona correttamente.
IP: s=0.0.0.0 (Ethernet0), d=255.255.255.255, len 604, rcvd 2
UDP src=68, dst=67
UDP: rcvd src=0.0.0.0(68), dst=255.255.255.255(67), length=584
DHCPD: setting giaddr to 192.168.1.1.
UDP: sent src=192.168.1.1(67), dst=192.168.2.2(67), length=604
IP: s=192.168.1.1 (local), d=192.168.2.2 (Ethernet1), len 604, sending
UDP src=67, dst=67
DHCPD: BOOTREQUEST from 0063.6973.636f.2d30.3030.302e.3030.3030.2e30.3030.312d.4574.30 forwarded to 192.168.2.2.
IP: s=192.168.2.2 (Ethernet1), d=192.168.1.1, len 328, rcvd 4
UDP src=67, dst=67
UDP: rcvd src=192.168.2.2(67), dst=192.168.1.1(67), length=308
DHCPD: forwarding BOOTREPLY to client 0000.0000.0001.
DHCPD: broadcasting BOOTREPLY to client 0000.0000.0001.
UDP: sent src=0.0.0.0(67), dst=255.255.255.255(68), length=328
IP: s=0.0.0.0 (Ethernet0), d=255.255.255.255, len 604, rcvd 2
UDP src=68, dst=67
UDP: rcvd src=0.0.0.0(68), dst=255.255.255.255(67), length=584
DHCPD: setting giaddr to 192.168.1.1.
UDP: sent src=192.168.1.1(67), dst=192.168.2.2(67), length=604
IP: s=192.168.1.1 (local), d=192.168.2.2 (Ethernet1), len 604, sending
UDP src=67, dst=67
DHCPD: BOOTREQUEST from 0063.6973.636f.2d30.3030.302e.3030.3030.2e30.3030.312d.4574.30 forwarded to 192.168.2.2.
IP: s=192.168.2.2 (Ethernet1), d=192.168.1.1, len 328, rcvd 4
UDP src=67, dst=67
UDP: rcvd src=192.168.2.2(67), dst=192.168.1.1(67), length=308
DHCPD: forwarding BOOTREPLY to client 0000.0000.0001.
DHCPD: broadcasting BOOTREPLY to client 0000.0000.0001.
UDP: sent src=0.0.0.0(67), dst=255.255.255.255(68), length=328.
Ottenere la traccia dello sniffer e determinare la causa principale del problema DHCP
Esaminare le sezioni Decode Sniffer Trace of DHCP Client and Server on Same LAN Segment and Decode Sniffer Trace of DHCP Client and Server Separated by Router Configurate come agente di inoltro DHCP
per decifrare le tracce dei pacchetti DHCP.
Per informazioni su come ottenere le tracce dello sniffer con la funzionalità Switched Port Analyzer (SPAN) sugli switch Catalyst, fare riferimento all'esempio di configurazione di Catalyst Switched Port Analyzer (SPAN).
Metodo alternativo di decodifica del pacchetto con debug sul router
Con il comando debug ip packet detail dump <acl> su un router Cisco, è possibile ottenere un intero pacchetto in formato esadecimale visualizzato nel log del sistema o nell'interfaccia della riga di comando (CLI). Verificare che il router riceva la richiesta DHCP con i comandi di debug e che il router riceva la richiesta DHCP e inoltri la richiesta al server DHCP con le sezioni sopra riportate dei comandi di debug insieme alla parola chiave dump aggiunta all'elenco degli accessi, per ottenere le stesse informazioni di debug, ma con i dettagli del pacchetto in formato esadecimale. Per determinare il contenuto del pacchetto, il pacchetto deve essere tradotto. Un esempio è fornito nell'Appendice A.
Appendice A: Configurazione di esempio per Cisco IOS DHCP
Il database del server DHCP è organizzato in una struttura. La radice dell'albero è il pool di indirizzi per le reti naturali, i rami sono pool di indirizzi di sottorete e le foglie sono associazioni manuali ai client. Le sottoreti ereditano i parametri di rete, mentre i client ereditano i parametri di sottorete. Pertanto, i parametri comuni, ad esempio il nome di dominio, devono essere configurati al livello più alto (rete o sottorete) della struttura.
Per ulteriori informazioni su come configurare DHCP e i comandi associati, consultare l'elenco delle attività di configurazione DHCP.
version 12.1 ! service timestamps debug uptime service timestamps log uptime no service password-encryption ! hostname Router ! enable password cisco ip subnet-zero no ip domain-lookup ip dhcp excluded-address 10.10.1.1 10.10.1.199 !--- Address range excluded from DHCP pools. ip dhcp pool test_dhcp !--- DHCP pool (scope) name is test_dhcp. network 10.10.1.0 255.255.255.0 !--- DHCP pool (address will be assigned in this range) for associated Gateway IP address. default-router 10.10.1.1 !--- DHCP option for default gateway. dns-server 10.30.1.1 !--- DHCP option for DNS server(s). netbios-name-server 10.40.1.1 !--- DHCP option for NetBIOS name server(s) (WINS). lease 0 0 1 !--- Lease time. interface Ethernet0 description DHCP Client Network ip address 10.10.1.1 255.255.255.0 no ip directed-broadcast ! interface Ethernet1 description Server Network ip address 10.10.2.1 255.255.255.0 no ip directed-broadcast ! line con 0 transport input none line aux 0 transport input all line vty 0 4 login ! end |
Nota: il comando subnet prefix-length non è essenziale per il normale funzionamento del pool DHCP. L'uso di questo comando è incentrato sugli scenari in cui sono necessari pool di allocazione subnet. Per ulteriori informazioni sul comando, consultare la sezione Operazione server di allocazione subnet nel documento relativo alla configurazione del gestore del pool di indirizzi su richiesta del server DHCP.
Informazioni correlate
Revisione | Data di pubblicazione | Commenti |
---|---|---|
2.0 |
22-Sep-2023 |
Certificazione |
1.0 |
07-Feb-2014 |
Versione iniziale |