Introduzione
Questo documento fornisce le informazioni di base necessarie per configurare il router per il routing IP, ad esempio come vengono suddivisi gli indirizzi e come funziona il subnetting. Si impara come assegnare ad ogni interfaccia del router un indirizzo IP con una sottorete univoca. Ci sono esempi inclusi per aiutare a legare tutto insieme.
Prerequisiti
Requisiti
Cisco consiglia di avere una conoscenza di base dei numeri binari e decimali.
Componenti utilizzati
Questo documento non è limitato a specifiche versioni software e hardware.
Le informazioni contenute in questo documento sono state create dai dispositivi in un ambiente di laboratorio specifico. Tutti i dispositivi utilizzati in questo documento sono stati avviati con una configurazione (predefinita) cancellata. Se la tua rete è attiva, assicurati di aver compreso il potenziale impatto di qualsiasi comando.
Informazioni aggiuntive
Se le definizioni ti sono utili, usa questi termini del vocabolario per iniziare:
-
Indirizzo-L’ID numero univoco assegnato a un host o interfaccia in una rete.
-
Subnet – Una porzione di una rete che condivide un particolare indirizzo di sottorete.
-
Subnet mask-Una combinazione a 32 bit utilizzata per descrivere quale parte di un indirizzo si riferisce alla sottorete e quale parte si riferisce all’host.
-
Interfaccia-Una connessione di rete.
Se avete già ricevuto il vostro indirizzo legittimo(i) da Internet Network Information Center (InterNIC), si è pronti per iniziare. Se si prevede di non connettersi a Internet, Cisco consiglia vivamente di utilizzare gli indirizzi riservati da RFC 1918 .
Capire Indirizzi IP
Un indirizzo IP è un indirizzo utilizzato per identificare in modo univoco un dispositivo su una rete IP. L’indirizzo è composto da 32 bit binari, che possono essere divisibili in una porzione di rete e una porzione host con l’aiuto di una subnet mask. I 32 bit binari sono suddivisi in quattro ottetti (1 ottetto = 8 bit). Ogni ottetto viene convertito in decimale e separato da un punto (punto). Per questo motivo, si dice che un indirizzo IP sia espresso in formato decimale punteggiato (ad esempio, 172.16.81.100). Il valore in ogni ottetto varia da 0 a 255 decimali, o 00000000-11111111 binario.
Ecco come gli ottetti binari si convertono in decimali: il bit più a destra, o il bit meno significativo, di un ottetto ha un valore di 20. Il bit appena a sinistra di quello ha un valore di 21. Questo continua fino al bit più a sinistra, o bit più significativo, che contiene un valore di 27. Quindi se tutti i bit binari sono uno, l’equivalente decimale sarebbe 255 come mostrato qui:
1 1 1 1 1 1 1 1 128 64 32 16 8 4 2 1 (128+64+32+16+8+4+2+1=255)
Ecco una conversione di ottetto di esempio quando non tutti i bit sono impostati su 1.
0 1 0 0 0 0 0 1 0 64 0 0 0 0 0 1 (0+64+0+0+0+0+0+1=65)
E questo esempio mostra un indirizzo IP rappresentato sia in binario che decimale.
10. 1. 23. 19 (decimal) 00001010.00000001.00010111.00010011 (binary)
Questi ottetti sono suddivisi per fornire uno schema di indirizzamento che può ospitare reti grandi e piccole. Ci sono cinque diverse classi di reti, da A a E. Questo documento si concentra sulle classi da A a C, poiché le classi D ed E sono riservate e la discussione su di esse va oltre lo scopo di questo documento.
Nota: Si noti inoltre che i termini “Classe A, Classe B” e così via sono utilizzati in questo documento al fine di facilitare la comprensione di indirizzamento IP e subnetting. Questi termini sono usati raramente nel settore più a causa dell’introduzione di classless interdomain routing (CIDR).
Dato un indirizzo IP, la sua classe può essere determinata dai tre bit di ordine superiore (i tre bit più a sinistra nel primo ottetto). Figura 1 mostra il significato nei tre bit di ordine elevato e l’intervallo di indirizzi che rientrano in ogni classe. A scopo informativo, vengono mostrati anche gli indirizzi di Classe D e Classe E.
Figura 1
In un indirizzo di classe A, il primo ottetto è la porzione di rete, quindi l’esempio di Classe A nella Figura 1 ha un indirizzo di rete principale di 1.0.0.0 – 127.255.255.255. Gli ottetti 2, 3 e 4 (i successivi 24 bit) sono per il gestore di rete da dividere in sottoreti e host come meglio crede. Gli indirizzi di classe A vengono utilizzati per le reti che hanno più di 65.536 host (in realtà, fino a 16777214 host!).
In un indirizzo di classe B, i primi due ottetti sono la porzione di rete, quindi l’esempio di Classe B in Figura 1 ha un indirizzo di rete principale di 128.0.0.0 – 191.255.255.255. Gli ottetti 3 e 4 (16 bit) sono per sottoreti e host locali. Gli indirizzi di classe B vengono utilizzati per le reti che hanno tra 256 e 65534 host.
In un indirizzo di classe C, i primi tre ottetti sono la porzione di rete. L’esempio di classe C in Figura 1 ha un indirizzo di rete principale di 192.0.0.0 – 223.255.255.255. Octet 4 (8 bit) è per subnet locali e host-perfetto per le reti con meno di 254 host.
Maschere di rete
Una maschera di rete consente di sapere quale parte dell’indirizzo identifica la rete e quale parte dell’indirizzo identifica il nodo. Classe A, B, e C sono reti di default maschere, noto anche come maschere naturali, come indicato di seguito:
Class A: 255.0.0.0Class B: 255.255.0.0Class C: 255.255.255.0
Un indirizzo IP su una rete di Classe a, che non ha ancora subnet avrebbe un indirizzo/maschera coppia di simile a: 8.20.15.1 255.0.0.0. Per vedere come la maschera consente di identificare le parti di rete e nodo dell’indirizzo, convertire l’indirizzo e la maschera in numeri binari.
8.20.15.1 = 00001000.00010100.00001111.00000001255.0.0.0 = 11111111.00000000.00000000.00000000
Una volta che hai l’indirizzo e la maschera rappresentati in binario, quindi l’identificazione della rete e host ID è più facile. Tutti i bit di indirizzo che hanno BIT di maschera corrispondenti impostati su 1 rappresentano l’ID di rete. Qualsiasi bit di indirizzo con bit di maschera corrispondenti impostati su 0 rappresenta l’ID del nodo.
8.20.15.1 = 00001000.00010100.00001111.00000001255.0.0.0 = 11111111.00000000.00000000.00000000 ----------------------------------- net id | host id netid = 00001000 = 8hostid = 00010100.00001111.00000001 = 20.15.1
Comprendere il Subnetting
Il Subnetting consente di creare più reti logiche esistenti all’interno di una singola rete di classe A, B o C. Se non si esegue la subnet, è possibile utilizzare solo una rete dalla rete di classe A, B o C, il che non è realistico.
Ogni collegamento dati su una rete deve avere un ID di rete univoco, con ogni nodo su quel collegamento essere un membro della stessa rete. Se si interrompe una rete principale (classe A, B o C) in sottoreti più piccoli, è possibile creare una rete di sottoreti interconnesse. Ogni collegamento dati su questa rete avrebbe quindi un ID di rete/sottorete univoco. Qualsiasi dispositivo, o gateway, che connette n reti / sottoreti ha n indirizzi IP distinti, uno per ogni rete / sottorete che interconnette.
Al fine di sottorete una rete, estendere la maschera naturale con alcuni dei bit dalla porzione ID host dell’indirizzo al fine di creare un ID subnetwork. Ad esempio, data una rete di classe C di 204.17.5.0 che ha una naturale mask 255.255.255.0, è possibile creare sottoreti in questo modo:
204.17.5.0 - 11001100.00010001.00000101.00000000255.255.255.224 - 11111111.11111111.11111111.11100000 --------------------------|sub|----
estendendo la mask 255.255.255.224, avete preso tre bit (indicato da “sub”) dall’originale parte host dell’indirizzo e usato per fare subnet. Con questi tre bit, è possibile creare otto sottoreti. Con i restanti cinque BIT ID host, ogni sottorete può avere fino a 32 indirizzi host, 30 dei quali possono essere effettivamente assegnati a un dispositivo poiché gli ID host di tutti gli zeri o tutti quelli non sono consentiti (è molto importante ricordarlo). Quindi, con questo in mente, queste sottoreti sono state create.
204.17.5.0 255.255.255.224 host address range 1 to 30204.17.5.32 255.255.255.224 host address range 33 to 62204.17.5.64 255.255.255.224 host address range 65 to 94204.17.5.96 255.255.255.224 host address range 97 to 126204.17.5.128 255.255.255.224 host address range 129 to 158204.17.5.160 255.255.255.224 host address range 161 to 190204.17.5.192 255.255.255.224 host address range 193 to 222204.17.5.224 255.255.255.224 host address range 225 to 254
Nota: ci sono due modi per indicare queste maschere. Innanzitutto, poiché si utilizzano tre bit in più rispetto alla maschera di classe C “naturale”, è possibile indicare questi indirizzi come una subnet mask a 3 bit. O, in secondo luogo, la maschera di 255.255.255.224 può anche essere indicato come /27 in quanto ci sono 27 bit impostati nella maschera. Questo secondo metodo viene utilizzato con CIDR. Con questo metodo, una di queste reti può essere descritta con il prefisso notazione/lunghezza. Ad esempio, 204.17.5.32/27 denota la rete 204.17.5.32 255.255.255.224. Se appropriato, la notazione prefisso / lunghezza viene utilizzata per indicare la maschera per tutto il resto del documento.
Lo schema di sottoreti di rete in questa sezione consente otto sottoreti e la rete potrebbe apparire come:
Figura 2
Si noti che ciascuno dei router in Figura 2 è collegato a quattro sottoreti, una sottorete è comune a entrambi i router. Inoltre, ogni router ha un indirizzo IP per ogni sottorete a cui è collegato. Ogni sottorete potrebbe potenzialmente supportare fino a 30 indirizzi host.
Questo fa apparire un punto interessante. Più bit host vengono utilizzati per una subnet mask, più sottoreti sono disponibili. Tuttavia, più sottoreti sono disponibili, meno indirizzi host disponibili per sottorete. Ad esempio, una rete di classe C di 204.17.5.0 e una maschera di 255.255.255.224 (/27) consente di avere otto sottoreti, ciascuna con 32 indirizzi host (30 dei quali potrebbero essere assegnati ai dispositivi). Se si utilizza una maschera di 255.255.255.240 (/28), la suddivisione è:
204.17.5.0 - 11001100.00010001.00000101.00000000255.255.255.240 - 11111111.11111111.11111111.11110000 --------------------------|sub |---
Poiché ora hai quattro bit con cui creare sottoreti, hai solo quattro bit per l’host indirizzi. Quindi in questo caso puoi avere fino a 16 sottoreti, ognuna delle quali può avere fino a 16 indirizzi host (14 dei quali possono essere assegnati ai dispositivi).
Dai un’occhiata a come una rete di classe B potrebbe essere subnetted. Se si dispone di rete 172.16.0.0, quindi sai che la sua maschera naturale è 255.255.0.0 o 172.16.0.0 / 16. Estendere la maschera a qualsiasi cosa oltre 255.255.0.0 significa che stai subnetting. Puoi vedere rapidamente che hai la possibilità di creare molte più sottoreti rispetto alla rete di classe C. Se si utilizza una maschera di 255.255.248.0 (/21), quante sottoreti e host per sottorete consente questo?
172.16.0.0 - 10101100.00010000.00000000.00000000255.255.248.0 - 11111111.11111111.11111000.00000000 -----------------| sub |-----------
Si utilizzano cinque bit dai bit host originali per le sottoreti. Ciò consente di avere 32 sottoreti (25). Dopo aver utilizzato i cinque bit per il subnetting, si sono lasciati con 11 bit per gli indirizzi host. Ciò consente a ciascuna sottorete di avere 2048 indirizzi host (211), 2046 dei quali potrebbero essere assegnati ai dispositivi.
Nota: In passato, c’erano limitazioni all’uso di una sottorete 0 (tutti i bit di sottorete sono impostati su zero) e di tutte le sottorete (tutti i bit di sottorete impostati su uno). Alcuni dispositivi non consentirebbero l’uso di queste sottoreti. I dispositivi Cisco Systems consentono l’utilizzo di queste sottoreti quando viene configurato il comando ip subnet zero.
Esempi
Esempio di esercizio 1
Ora che hai una comprensione del subnetting, metti questa conoscenza da usare. In questo esempio, vengono fornite due combinazioni indirizzo / maschera, scritte con la notazione prefisso / lunghezza, che sono state assegnate a due dispositivi. Il tuo compito è determinare se questi dispositivi si trovano sulla stessa sottorete o su sottoreti diverse. È possibile utilizzare l’indirizzo e la maschera di ciascun dispositivo per determinare a quale sottorete appartiene ciascun indirizzo.
DeviceA: 172.16.17.30/20DeviceB: 172.16.28.15/20
Determina la sottorete per DeviceA:
172.16.17.30 - 10101100.00010000.00010001.00011110255.255.240.0 - 11111111.11111111.11110000.00000000 -----------------| sub|------------subnet = 10101100.00010000.00010000.00000000 = 172.16.16.0
Guardando i bit di indirizzo che hanno un bit di maschera corrispondente impostato su uno e impostando tutti gli altri bit di indirizzo a zero (questo equivale a eseguire un “AND” logico tra la maschera e l’indirizzo), si mostra a quale sottorete appartiene questo indirizzo. In questo caso, DeviceA appartiene alla sottorete 172.16.16.0.
Determina la sottorete per DeviceB:
172.16.28.15 - 10101100.00010000.00011100.00001111255.255.240.0 - 11111111.11111111.11110000.00000000 -----------------| sub|------------subnet = 10101100.00010000.00010000.00000000 = 172.16.16.0
Da queste determinazioni, DeviceA e DeviceB hanno indirizzi che fanno parte della stessa sottorete.
Esempio Esercizio 2
Data la rete di Classe C di 204.15.5.0 / 24, sottorete la rete al fine di creare la rete in Figura 3 con i requisiti host mostrati.
Figura 3
Guardando la rete mostrata in Figura 3, è possibile vedere che è necessario creare cinque sottoreti. La sottorete più grande deve supportare 28 indirizzi host. È possibile con una rete di classe C? e se sì, allora come?
Puoi iniziare guardando il requisito della sottorete. Per creare le cinque sottoreti necessarie è necessario utilizzare tre bit dai bit host di classe C. Due bit ti consentirebbero solo quattro sottoreti (22).
Poiché hai bisogno di tre bit di sottorete, questo ti lascia con cinque bit per la porzione host dell’indirizzo. Quanti host supporta questo? 25 = 32 (30 utilizzabile). Questo soddisfa il requisito.
Pertanto è stato stabilito che è possibile creare questa rete con una rete di classe C. Un esempio di come è possibile assegnare le sottoreti è:
netA: 204.15.5.0/27 host address range 1 to 30netB: 204.15.5.32/27 host address range 33 to 62netC: 204.15.5.64/27 host address range 65 to 94netD: 204.15.5.96/27 host address range 97 to 126netE: 204.15.5.128/27 host address range 129 to 158
Esempio VLSM
In tutti gli esempi precedenti di sottoreti, si noti che la stessa subnet mask è stata applicata per tutte le sottoreti. Ciò significa che ogni sottorete ha lo stesso numero di indirizzi host disponibili. Puoi averne bisogno in alcuni casi, ma, nella maggior parte dei casi, avere la stessa subnet mask per tutte le sottoreti finisce per sprecare spazio negli indirizzi. Ad esempio, nella sezione di esempio Esercizio 2, una rete di classe C è stata suddivisa in otto sottoreti di dimensioni uguali; tuttavia, ogni sottorete non ha utilizzato tutti gli indirizzi host disponibili, il che si traduce in uno spazio di indirizzi sprecato. Figura 4 illustra questo spazio di indirizzo sprecato.
Figura 4
Figura 4 illustra che delle sottoreti che vengono utilizzati, NetA, NetC, e NetD hanno un sacco di spazio di indirizzo host inutilizzato. È possibile che si sia trattato di una progettazione deliberata che tiene conto della crescita futura, ma in molti casi si tratta solo di uno spazio di indirizzamento sprecato a causa del fatto che la stessa subnet mask viene utilizzata per tutte le sottoreti.
Variabile Lunghezza Subnet Masks (VLSM) consente di utilizzare diverse maschere per ogni sottorete, quindi utilizzando lo spazio degli indirizzi in modo efficiente.
VLSM Esempio
Data la stessa rete e requisiti come nel campione Esercizio 2 sviluppare uno schema di subnetting con l’uso di VLSM, dato:
netA: must support 14 hostsnetB: must support 28 hostsnetC: must support 2 hostsnetD: must support 7 hostsnetE: must support 28 host
Determinare quale maschera consente il numero di ospiti.
netA: requires a /28 (255.255.255.240) mask to support 14 hostsnetB: requires a /27 (255.255.255.224) mask to support 28 hostsnetC: requires a /30 (255.255.255.252) mask to support 2 hostsnetD*: requires a /28 (255.255.255.240) mask to support 7 hostsnetE: requires a /27 (255.255.255.224) mask to support 28 hosts* a /29 (255.255.255.248) would only allow 6 usable host addresses therefore netD requires a /28 mask.
Il modo più semplice per assegnare le sottoreti è quello di assegnare prima il più grande. Ad esempio, è possibile assegnare in questo modo:
netB: 204.15.5.0/27 host address range 1 to 30netE: 204.15.5.32/27 host address range 33 to 62netA: 204.15.5.64/28 host address range 65 to 78netD: 204.15.5.80/28 host address range 81 to 94netC: 204.15.5.96/30 host address range 97 to 98
Questo può essere rappresentato graficamente come mostrato in Figura 5:
Figura 5
la Figura 5 illustra come l’utilizzo di VLSM contribuito a salvare più di metà dello spazio di indirizzamento.
CIDR
Classless Interdomain Routing (CIDR) è stato introdotto al fine di migliorare sia l’utilizzo dello spazio di indirizzamento e scalabilità di routing in Internet. Era necessario a causa della rapida crescita di Internet e della crescita delle tabelle di routing IP tenute nei router Internet.
CIDR si sposta dalle classi IP tradizionali (Classe A, Classe B, Classe C e così via). In CIDR, una rete IP è rappresentata da un prefisso, che è un indirizzo IP e qualche indicazione della lunghezza della maschera. Lunghezza indica il numero di bit di maschera contigui più a sinistra impostati su uno. Quindi la rete 172.16.0.0 255.255.0.0 può essere rappresentata come 172.16.0.0 / 16. CIDR descrive anche un’architettura Internet più gerarchica, in cui ogni dominio prende i suoi indirizzi IP da un livello superiore. Ciò consente di riassumere i domini al livello più alto. Ad esempio, se un ISP possiede la rete 172.16.0.0/16, l’ISP può offrire 172.16.1.0/24, 172.16.2.0/24 e così via ai clienti. Eppure, quando la pubblicità ad altri fornitori, l’ISP ha solo bisogno di pubblicizzare 172.16.0.0 / 16.
Per ulteriori informazioni sul CIDR, vedere RFC 1518 e RFC 1519 .
Appendix
Sample Config
Routers A and B are connected via serial interface.
Router A
hostname routera ! ip routing ! int e 0 ip address 172.16.50.1 255.255.255.0 !(subnet 50) int e 1 ip address 172.16.55.1 255.255.255.0 !(subnet 55) int s 0 ip address 172.16.60.1 255.255.255.0 !(subnet 60) int s 0 ip address 172.16.65.1 255.255.255.0 (subnet 65) !S 0 connects to router B router rip network 172.16.0.0
Router B
hostname routerb ! ip routing ! int e 0 ip address 192.1.10.200 255.255.255.240 !(subnet 192) int e 1 ip address 192.1.10.66 255.255.255.240 !(subnet 64) int s 0 ip address 172.16.65.2 (same subnet as router A's s 0) !Int s 0 connects to router A router rip network 192.1.10.0 network 172.16.0.0
Host/Subnet Quantities Table
Class B Effective Effective# bits Mask Subnets Hosts------- --------------- --------- --------- 1 255.255.128.0 2 32766 2 255.255.192.0 4 16382 3 255.255.224.0 8 8190 4 255.255.240.0 16 4094 5 255.255.248.0 32 2046 6 255.255.252.0 64 1022 7 255.255.254.0 128 510 8 255.255.255.0 256 254 9 255.255.255.128 512 126 10 255.255.255.192 1024 62 11 255.255.255.224 2048 30 12 255.255.255.240 4096 14 13 255.255.255.248 8192 6 14 255.255.255.252 16384 2Class C Effective Effective# bits Mask Subnets Hosts------- --------------- --------- --------- 1 255.255.255.128 2 126 2 255.255.255.192 4 62 3 255.255.255.224 8 30 4 255.255.255.240 16 14 5 255.255.255.248 32 6 6 255.255.255.252 64 2 *Subnet all zeroes and all ones included. These might not be supported on some legacy systems.*Host all zeroes and all ones excluded.