Laboratorio DHCP su router Cisco

DHCP centralizzato, relay e rotte statiche

R1 assegna indirizzi a quattro LAN, anche attraverso R2 e R3
Topologia e obiettivo

Lo scenario usa tre router collegati in catena. Il router a sinistra, R1 DHCP Server, svolge il ruolo di server DHCP centralizzato. I client delle LAN collegate a R2 e R3 non possono raggiungere direttamente R1 con un broadcast DHCP, quindi sulle interfacce LAN dei router remoti si configura ip helper-address.

Topologia Packet Tracer con R1 DHCP Server, R2, R3 e quattro LAN
Topologia: R1 fornisce DHCP alle LAN locali e remote; R2 e R3 inoltrano le richieste DHCP verso R1.
Obiettivo: configurare i pool DHCP su R1, attivare il DHCP relay sulle LAN remote e inserire le rotte statiche necessarie per permettere sia l'andata sia il ritorno dei pacchetti.
Piano di indirizzamento

Le LAN derivano dalla rete 192.168.0.0/24 con sottoreti di dimensione diversa. I link seriali tra router usano reti /30, adatte ai collegamenti punto-punto.

Rete Network Broadcast Gateway Router/interfaccia
LAN1 192.168.0.0/25 192.168.0.127 192.168.0.126 R1 Fa0/0
LAN2 192.168.0.128/26 192.168.0.191 192.168.0.190 R2 Fa0/0
LAN3 192.168.0.192/27 192.168.0.223 192.168.0.222 R3 Fa0/0
LAN4 192.168.0.224/27 192.168.0.255 192.168.0.254 R3 Fa1/0
Regola per i link punto-punto /30: leggendo la topologia da sinistra verso destra, assegna il primo indirizzo utile al router di sinistra e il secondo indirizzo utile al router di destra.
Link Rete /30 Router sinistro Router destro
R1 - R2 50.100.200.0/30 R1 Se2/0: 50.100.200.1 R2 Se2/0: 50.100.200.2
R2 - R3 50.100.250.0/30 R2 Se3/0: 50.100.250.1 R3 Se2/0: 50.100.250.2
R1: server DHCP centralizzato

Su R1 si configurano gli indirizzi esclusi e i quattro pool DHCP. Gli indirizzi esclusi servono a non consegnare ai client gli IP riservati per gateway, apparati di rete o indirizzi che vuoi mantenere statici.

Configurazione DHCP su R1 con excluded-address e quattro pool
Lista comandi: excluded IP e pool DHCP
R1> enable
R1# configure terminal

R1(config)# ip dhcp excluded-address 192.168.0.1 192.168.0.10
R1(config)# ip dhcp excluded-address 192.168.0.129 192.168.0.139
R1(config)# ip dhcp excluded-address 192.168.0.193 192.168.0.203
R1(config)# ip dhcp excluded-address 192.168.0.225 192.168.0.235

R1(config)# ip dhcp pool Lan1
R1(dhcp-config)# network 192.168.0.0 255.255.255.128
R1(dhcp-config)# default-router 192.168.0.126
R1(dhcp-config)# dns-server 8.8.8.8
R1(dhcp-config)# exit

R1(config)# ip dhcp pool Lan2
R1(dhcp-config)# network 192.168.0.128 255.255.255.192
R1(dhcp-config)# default-router 192.168.0.190
R1(dhcp-config)# dns-server 8.8.8.8
R1(dhcp-config)# exit

R1(config)# ip dhcp pool Lan3
R1(dhcp-config)# network 192.168.0.192 255.255.255.224
R1(dhcp-config)# default-router 192.168.0.222
R1(dhcp-config)# dns-server 8.8.8.8
R1(dhcp-config)# exit

R1(config)# ip dhcp pool Lan4
R1(dhcp-config)# network 192.168.0.224 255.255.255.224
R1(dhcp-config)# default-router 192.168.0.254
R1(dhcp-config)# dns-server 8.8.8.8
R1(dhcp-config)# exit
Da notare nell'immagine: il comando network indica la subnet del pool, mentre default-router indica il gateway che i PC riceveranno insieme all'indirizzo IP. Per ogni LAN il gateway deve essere l'interfaccia del router dentro quella stessa subnet.
Spiegazione: excluded IP

Il comando ip dhcp excluded-address dice al router quali indirizzi non deve assegnare automaticamente ai PC.

  • 192.168.0.1 192.168.0.10: riserva i primi IP della LAN1.
  • 192.168.0.129 192.168.0.139: riserva i primi IP utilizzabili della LAN2.
  • 192.168.0.193 192.168.0.203: riserva i primi IP utilizzabili della LAN3.
  • 192.168.0.225 192.168.0.235: riserva i primi IP utilizzabili della LAN4.
Spiegazione: DHCP pool

Ogni ip dhcp pool descrive una rete servita dal DHCP. In questo laboratorio R1 ha quattro pool, uno per ogni LAN.

  • network: rete e subnet mask da cui assegnare gli IP.
  • default-router: gateway che il client usera' per uscire dalla LAN.
  • dns-server: server DNS consegnato ai client insieme all'indirizzo IP.
  • exit: chiude la configurazione del pool e torna in modalita' globale.
R2 e R3: DHCP relay con ip helper-address

I messaggi DHCP Discover partono in broadcast. Un router non inoltra normalmente i broadcast da una LAN all'altra: per questo sulle interfacce LAN remote si usa ip helper-address, che trasforma la richiesta in un inoltro verso il server DHCP indicato.

R2: relay per LAN2
Configurazione ip helper-address su R2
R2> enable
R2# configure terminal
R2(config)# interface FastEthernet0/0
R2(config-if)# ip address 192.168.0.190 255.255.255.192
R2(config-if)# ip helper-address 192.168.0.126
R2(config-if)# no shutdown
R2(config-if)# exit
R3: relay per LAN3 e LAN4
Configurazione ip helper-address su R3
R3> enable
R3# configure terminal
R3(config)# interface FastEthernet0/0
R3(config-if)# ip address 192.168.0.222 255.255.255.224
R3(config-if)# ip helper-address 192.168.0.126
R3(config-if)# no shutdown
R3(config-if)# exit

R3(config)# interface FastEthernet1/0
R3(config-if)# ip address 192.168.0.254 255.255.255.224
R3(config-if)# ip helper-address 192.168.0.126
R3(config-if)# no shutdown
R3(config-if)# exit
Attenzione: in questo scenario l'indirizzo helper e' 192.168.0.126, cioe' l'indirizzo di R1 nella LAN1. R1 e' il router che contiene i pool DHCP.
Rotte statiche tra router

Configurare DHCP non basta: i router devono anche sapere come raggiungere le reti non direttamente collegate. In pratica bisogna scrivere le rotte statiche sui router, altrimenti la richiesta DHCP puo' partire ma la risposta o il traffico successivo non trovano la strada corretta.

Default route: la sintassi Cisco e' ip route 0.0.0.0 0.0.0.0 <next-hop>. Significa: "per tutte le reti che non conosco, manda il traffico a questo prossimo router".
R1
R1> enable
R1# configure terminal
R1(config)# ip route 192.168.0.128 255.255.255.192 50.100.200.2
R1(config)# ip route 192.168.0.192 255.255.255.224 50.100.200.2
R1(config)# ip route 192.168.0.224 255.255.255.224 50.100.200.2
R2
R2> enable
R2# configure terminal
R2(config)# ip route 192.168.0.0 255.255.255.128 50.100.200.1
R2(config)# ip route 192.168.0.192 255.255.255.224 50.100.250.2
R2(config)# ip route 192.168.0.224 255.255.255.224 50.100.250.2
R3
R3> enable
R3# configure terminal
R3(config)# ip route 192.168.0.0 255.255.255.128 50.100.250.1
R3(config)# ip route 192.168.0.128 255.255.255.192 50.100.250.1
Variante con default route

In una topologia lineare si puo' semplificare sui router di estremita' usando una default route verso il router centrale.

! su R1, tutto cio' che non e' locale va verso R2
R1> enable
R1# configure terminal
R1(config)# ip route 0.0.0.0 0.0.0.0 50.100.200.2

! su R3, tutto cio' che non e' locale va verso R2
R3> enable
R3# configure terminal
R3(config)# ip route 0.0.0.0 0.0.0.0 50.100.250.1
Verifica del laboratorio
Sui PC
  1. Imposta ogni PC su DHCP.
  2. Controlla che riceva un IP nella subnet corretta.
  3. Esegui un ping verso il proprio gateway.
  4. Esegui un ping verso un PC di un'altra LAN.
Sui router
Router> enable
Router# show ip interface brief
Router# show running-config
Router# show ip route
Router# show ip dhcp binding
Router# show ip dhcp pool
Se un PC remoto non riceve l'IP: controlla prima ip helper-address sull'interfaccia LAN del router remoto, poi le rotte statiche di andata e ritorno. Il DHCP relay ha bisogno che il router remoto sappia raggiungere R1 e che R1 sappia rispondere verso la rete del client.
Riepilogo rapido
  • R1 contiene i pool DHCP per LAN1, LAN2, LAN3 e LAN4.
  • ip dhcp excluded-address riserva gli indirizzi che non devono essere assegnati automaticamente.
  • ip dhcp pool definisce rete, default gateway e DNS consegnati ai client.
  • Sulle LAN remote si usa ip helper-address 192.168.0.126 per inoltrare le richieste a R1.
  • I link /30 si indirizzano da sinistra a destra: primo IP utile al router sinistro, secondo IP utile al router destro.
  • Le rotte statiche sono indispensabili: senza routing corretto il DHCP relay e la connettivita' tra LAN non funzionano.