Esercizio - inizio di un blocco e blocco di un indirizzo CIDR
In questa pagina 6
Testo.
- Quali dei seguenti indirizzi possono essere il primo indirizzo di un blocco di indirizzi? ; ; ; .
- Quali possono essere il primo indirizzo di un blocco di indirizzi? ; ; ; .
- Trovare il blocco se uno degli indirizzi è e mostrare una configurazione di rete per quel blocco.
Teoria usata: Livello di rete e indirizzamento IPIl livello di rete (network layer) porta i datagrammi da host a host attraverso i router: incapsula (framing), sceglie il percorso (routing) e sposta il pacchetto da un ingresso a un'uscita del router (forwarding); in Internet lascia ai livelli superiori controllo d'errore, di flusso e di congestione. Un indirizzo IPv4 è di 32 bit, diviso in prefisso (rete, $n$ bit) e suffisso (host, $32-n$ bit). L'indirizzamento a classi (A, B, C, D, E) è obsoleto; oggi si usa quello senza classi (CIDR): data una notazione $a.b.c.d/n$ si ricavano $N=2^{32-n}$ indirizzi, indirizzo di rete (suffisso tutto 0) e di broadcast (suffisso tutto 1), oppure con la netmask: rete $=$ indirizzo AND maschera, broadcast $=$ indirizzo OR (NOT maschera).Livello di rete e indirizzamento IP → (regole di assegnazione dei blocchi), Subnetting e supernettingIl subnetting divide un blocco di indirizzi in sottoblocchi più piccoli allungando la maschera ($n_{\text{sub}}=n_{\text{rete}}+s$, con $2^s$ sottoreti); il supernetting (aggregazione CIDR) fa l'opposto, accorciando il prefisso per unire blocchi contigui in uno più grande. Regole di progetto: ogni sottorete ha un numero di indirizzi potenza di 2 ($M=2^k\ge$ host richiesti $+2$), prefisso $n=32-k$, indirizzo iniziale multiplo di $M$; si assegnano prima le sottoreti più grandi. Per aggregare $2^j$ blocchi di prefisso $n$ servono blocchi contigui il cui primo indirizzo sia multiplo della dimensione dell'aggregato, e il nuovo prefisso è $n-j$.Subnetting e supernetting →.
Regola da usare nei punti 1 e 2
Un blocco CIDR ha indirizzi e il suo primo indirizzo (indirizzo di rete) ha gli ultimi bit a : equivalentemente, il primo indirizzo, letto come numero intero a 32 bit, è un multiplo di . Il perché è il funzionamento dei sistemi posizionaliin base 2 un numero che finisce con k zeri è multiplo di 2 elevato a k, come in base 10 un numero che finisce con k zeri è multiplo di 10 elevato a kSistemi di numerazione posizionali →; il numero di bit di host è (Esponenziale e logaritmoLa funzione esponenziale a^x (base positiva diversa da 1) e la sua inversa, il logaritmo in base a, con grafici e proprietà.Esponenziale e logaritmo →), per esempio e . Si guardano quindi solo i byte coinvolti: se basta l'ultimo byte (deve essere multiplo di ); se l'ultimo byte deve essere e il penultimo multiplo di .
Punto 1: blocco di 16 indirizzi
: gli ultimi 4 bit devono essere , cioè l'ultimo byte deve essere un multiplo di .
| indirizzo | ultimo byte | multiplo di 16? | esito |
|---|---|---|---|
| sì | valido | ||
| (, ultimi 4 bit ) | no | no | |
| sì | valido | ||
| , ultimi 4 bit | no | no |
Risposta: e .
Punto 2: blocco di 1024 indirizzi
: gli ultimi bit devono essere . Sono i bit dell'ultimo byte e i meno significativi del penultimo. Quindi: ultimo byte e penultimo byte multiplo di .
| indirizzo | ultimo byte ? | penultimo multiplo di 4? | esito |
|---|---|---|---|
| no () | : no | no | |
| sì | (, ultimi 2 bit ) | no | |
| sì | valido | ||
| no () | sì | no (l'ultimo byte non è ) |
Risposta: solo (è il blocco , che arriva a ).
Punto 3: il blocco di
Un lascia bit di host: indirizzi. Si lavora sull'ultimo byte, con la maschera (cinque bit a ):
- ; AND . Primo indirizzo (rete): .
- Ultimo indirizzo (broadcast diretto): si mettono a i 3 bit di host, , cioè . Equivalente: (la distanza tra primo e ultimo è ). Con la maschera: , e .
- Netmask: .
- Host utilizzabili: , da a .
Configurazione di rete (esempio). Rete , maschera ; il router (default gateway) prende l'ultimo indirizzo utilizzabile ; gli altri sono per cinque host, per esempio –, tutti con maschera e gateway . L'indirizzo identifica la rete e è il broadcast: nessuno dei due si assegna.
Confronto con la soluzione ufficiale
Coincide: nel punto 1 sono eleggibili e ; nel punto 2 solo ; nel punto 3 il blocco è –, indirizzi. (Nella slide ufficiale l'ultimo indirizzo è scritto per errore "": è .) Verifiche fatte con Python.
Errori comuni
- Controllare solo che l'indirizzo "finisca per zero": è valido per indirizzi ma non per .
- Nel punto 2 limitarsi all'ultimo byte: serve anche la divisibilità del penultimo per .
- Contare indirizzi utilizzabili invece di .
Versione ripasso
Dati. Primo indirizzo valido di un blocco di e di indirizzi tra alcuni candidati; blocco di e configurazione. Teoria: Livello di rete e indirizzamento IPIl livello di rete (network layer) porta i datagrammi da host a host attraverso i router: incapsula (framing), sceglie il percorso (routing) e sposta il pacchetto da un ingresso a un'uscita del router (forwarding); in Internet lascia ai livelli superiori controllo d'errore, di flusso e di congestione. Un indirizzo IPv4 è di 32 bit, diviso in prefisso (rete, $n$ bit) e suffisso (host, $32-n$ bit). L'indirizzamento a classi (A, B, C, D, E) è obsoleto; oggi si usa quello senza classi (CIDR): data una notazione $a.b.c.d/n$ si ricavano $N=2^{32-n}$ indirizzi, indirizzo di rete (suffisso tutto 0) e di broadcast (suffisso tutto 1), oppure con la netmask: rete $=$ indirizzo AND maschera, broadcast $=$ indirizzo OR (NOT maschera).Livello di rete e indirizzamento IP →, Subnetting e supernettingIl subnetting divide un blocco di indirizzi in sottoblocchi più piccoli allungando la maschera ($n_{\text{sub}}=n_{\text{rete}}+s$, con $2^s$ sottoreti); il supernetting (aggregazione CIDR) fa l'opposto, accorciando il prefisso per unire blocchi contigui in uno più grande. Regole di progetto: ogni sottorete ha un numero di indirizzi potenza di 2 ($M=2^k\ge$ host richiesti $+2$), prefisso $n=32-k$, indirizzo iniziale multiplo di $M$; si assegnano prima le sottoreti più grandi. Per aggregare $2^j$ blocchi di prefisso $n$ servono blocchi contigui il cui primo indirizzo sia multiplo della dimensione dell'aggregato, e il nuovo prefisso è $n-j$.Subnetting e supernetting →.
- Regola: blocco di indirizzi: primo indirizzo multiplo di (ultimi bit a ).
- (ultimo byte multiplo di ): () sì; () no; () sì; () no.
- (ultimo byte e penultimo multiplo di ): no; no (); sì (, blocco fino a ); no.
- : bit di host, , maschera ; , AND : rete , broadcast , host (–). Configurazione: gateway , host –, maschera .
- Errori: guardare solo l'ultimo byte per ; host utilizzabili invece di .