Come configurare il DHCP sui router Cisco (con esempi di comandi)

DHCP sta per Dynamic Host Configuration Protocol. Fondamentalmente è un meccanismo che assegna indirizzi IP ai computer dinamicamente. Di solito DHCP è un servizio che gira su una macchina server nella rete per assegnare indirizzi IP dinamici agli host.

configurare il dhcp sui router cisco

configurare il dhcp sui router cisco

Comunque, I router Cisco (e altri dispositivi come i firewall ASA ecc.) possono funzionare anche come server DHCP sostituendo così una macchina dedicata a questo compito.

Uno dei pezzi più eccitanti di configurazione all’interno di Cisco IOS, secondo me, è IP DHCP Pools. Con questa funzione è possibile configurare uno switch o un router Cisco per agire come server DHCP.

Questa funzione è utile in diversi casi tra cui alcuni dei seguenti: sever DHCP per le piccole imprese, server DHCP per il disaster recovery o per aiutare a configurare dispositivi con indirizzi IP statici. Vediamo ogni caso in modo più dettagliato.

I pool DHCP di Cisco IOS possono essere configurati per le piccole imprese dove l’acquisto di un DHCP autonomo non è economicamente valido. Le piccole imprese devono “lavorare con quello che hanno” e utilizzare un router o uno switch Layer 3 che è già presente nell’ambiente di rete è un ottimo modo per farlo.

Avere un piano di disaster recovery è fondamentale per la continuità aziendale. Avere un router DHCP Cisco nella tasca posteriore può renderti un eroe alla fine di una giornata inaspettata. Utilizzando questa tecnologia è possibile avere un modello di configurazione di backup nell’arsenale per un brutto giorno.

Sono sempre più numerosi i dispositivi di rete con DHCP abilitato di default in questi giorni. Alcuni dispositivi come telecamere IP, stampanti, access point wireless e altri dispositivi. Using a configured DHCP pool makes it much easier to remotely access these devices and assign static IP addresses as desired.

Lets take a closer look at the configuration and design.

Steps:

1- Create DHCP Pool

2- Specify the following:

  • Network (Subnet Address with Network Mask)
  • Default Router (Better known as “Default Gateway”)
  • DNS Servers
  • DHCP Options (Optional)

3- Exclude any addresses reserved for static address assignment, including the default gateway.

IOS DHCP

IOS DHCP

DHCP Configuration Commands:

Router(config)# ip dhcp pool VLAN_10
Creates a DHCP Pool named VLAN_10. All’interno di questo pool specificheremo gli elementi menzionati sopra.

Router(dhcp-config)# network 172.16.10.0 255.255.255.0
Specifica la rete per il pool DHCP VLAN_10 come la rete 172.16.10.0/24.

Router(dhcp-config)# default-router 172.16.10.1
Specifica che il “default gateway” per i client dhcp sarà 172.16.10.1.

Router(dhcp-config)# dns-server 172.16.2.10
Specifica che il server DNS sarà 172.16.2.10

Router(config)# ip dhcp excluded-address 172.16.10.1 172.16.10.20
Il comando precedente dice al router di escludere gli indirizzi da 172.16.10.1 a 172.16.10.20 dall’assegnazione DHCP. Questi indirizzi non saranno distribuiti ai client. Il primo indirizzo da usare sarà 172.16.10.21.

Opzionale

Router(dhcp-config)# option 150 ip 172.16.2.20
Specifica le opzioni DHCP opzionali necessarie. Sopra l’opzione DHCP 150 per il server TFTP è stata impostata su 172.16.2.20.

Verifica:

Show ip dhcp binding
Il comando qui sopra mostrerà tutti gli indirizzi IP DHCP assegnati e il loro tempo di locazione.

Forwarding delle richieste DHCP usando il comando ip helper address

DHCP, come tutti sappiamo, è un protocollo broadcast (vergognati se non lo sai già :)!!!) che normalmente funziona solo sullo stesso dominio broadcast Layer 2.

Questo significa che devi avere il tuo server DHCP connesso alla stessa subnet di rete dei client DHCP? Se questo fosse il caso, non sarebbe affatto flessibile o economico.

Che cosa succede se hai segmentato la tua rete interna in molte sottoreti diverse e hai client DHCP in tutte queste sottoreti. Questo significherebbe che dovete avere un server DHCP per ogni sottorete?

Fortunatamente, non è necessario avere questa situazione. Con il comando “ip helper-address” di Cisco configurato sull’interfaccia Layer3 che riceve il broadcast DHCP del client, è possibile trasformare la richiesta di broadcast in un unicast e inviarla a un server DHCP centralizzato che può essere situato in una sottorete diversa della vostra rete.

La richiesta DHCP unicast sarà instradata normalmente al server DHCP di destinazione all’interno della rete, anche se il server è lontano dal client DHCP.

Il server DHCP deve avere un appropriato IP Pool scope configurato per la subnet specifica da cui proviene la richiesta DHCP.

Usando questo IP scope, il server assegnerà un indirizzo IP appropriato al client richiedente. Per esempio, se la subnet del client DHCP è 192.168.1.0/24, allora il server DHCP remoto deve avere un IP Pool configurato per assegnare indirizzi all’interno dell’intervallo 192.168.1.0/24.

La subnet del client DHCP di origine è determinata dall’indirizzo IP assegnato all’interfaccia Layer3 che ha l’ip helper-address configurato.

Vediamo un esempio di scenario qui sotto con uno snapshot di configurazione.

Dallo schema di rete sopra, due PC client DHCP si trovano dietro il router A.

L’interfaccia Fe0/0 del router ha indirizzo IP 192.168.1.1/24.

I client DHCP cominceranno a trasmettere delle richieste DHCP per ottenere l’assegnazione dei loro indirizzi IP da un server.

Per default, queste richieste di trasmissione DHCP saranno confinate all’interno dello Switch A e non raggiungeranno mai nessun’altra subnet oltre il Router A.

Configurando un “ip helper-address 10.10.10.1” sotto l’interfaccia Fe0/0 del Router A, diciamo al router di trasformare il DHCP broadcast in un DHCP unicast e di inviarlo al server DHCP di destinazione 10.10.10.1.

Il server vedrà che la richiesta DHCP proviene dalla subnet sorgente 192.168.1.0/24 e quindi assegnerà un indirizzo IP appropriato da uno scope IP pool configurato nell’intervallo 192.168.1.0.

Configurazione su Router A

RouterA# conf t
RouterA(config)# interfaccia fastethernet0/0
RouterA(config-if)# indirizzo ip 192.168.1.1 255.255.255.0
RouterA(config-if)# ip helper-address 10.10.10.1

Alcune altre importanti considerazioni per ip helper-address

Di default, il comando ip helper-address inoltra anche alcuni altri protocolli broadcast oltre al protocollo DHCP (BOOTP). Esso inoltra di default i seguenti otto protocolli di trasmissione UDP:

  • UDP 37 (Time protocol)
  • UDP 49 (TACACS)
  • UDP 53 (DNS)
  • UDP 67 (DHCP Server)
  • UDP 68 (DHCP Client)
  • UDP 69 (TFTP)
  • UDP 137 (NetBios)
  • UDP 138 (NetBios Datagram service)

Se vuoi aggiungere altri protocolli broadcast da inoltrare, o anche rimuovere alcuni dei protocolli inoltrati di default, puoi usare il comando “ip forward-protocol” in modalità configurazione globale.

Esempio: Rimuovete i protocolli NetBios (137,138) dall’essere inoltrati di default, e aggiungete il protocollo NTP 123 per essere inoltrati da ip helper-address.

RouterA(config)# no ip forward-protocol udp 137
RouterA(config)# no ip forward-protocol udp 138
RouterA(config)# ip forward-protocol udp 123

Esempio di configurazione del DHCP sui router Cisco

Tutti i modelli della serie Cisco hanno la capacità di lavorare come server DHCP, assegnando così gli indirizzi agli host interni della LAN. Senza un server DHCP nella rete, si dovrebbero assegnare manualmente gli indirizzi IP ad ogni host. Questi indirizzi assegnati manualmente sono anche chiamati “indirizzi IP statici”.

Nella sezione seguente vi mostrerò come configurare un router Cisco 851 o 871 per lavorare come server DHCP. La stessa configurazione vale anche per altri modelli di serie di router.

Router> enable

Router# config t

! definire un nome di pool di indirizzi IP e un range
Router(config)# ip dhcp pool LANPOOL

! definire un intervallo di rete per gli indirizzi che verranno assegnati
Router(dhcp-config)# network 192.168.1.0 255.255.255.0

! definire un nome dns da assegnare ai client
Router(dhcp-config)# domain-name mycompany.com

definire un gateway predefinito per i client
Router(dhcp-config)# default-router 192.168.1.1

! definire il server dns per i client
Router(dhcp-config)# dns-server 100.100.100.1

! Definisci un server WINS se ne hai uno
Router(dhcp-config)# netbios-name-server 192.168.1.2
Router(dhcp-config)# exit

!I seguenti indirizzi non saranno dati ai client
Router(config)# ip dhcp excluded-address 192.168.1.1 192.168.1.10

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.