Salta al contenuto
Note per Studenti Esercizio - indirizzamento di LAN A e LAN B e tabella di router 1

Esercizio - indirizzamento di LAN A e LAN B e tabella di router 1

In questa pagina 5

Testo. Rete in figura. LAN A (14.22.4.0/2614.22.4.0/26) contiene Host 1\text{Host 1} e Host 2\text{Host 2}, collegati con uno switch a router 1\text{router 1}. LAN B (123.67.64.0/18123.67.64.0/18) contiene Host 3\text{Host 3}, collegato a router 2\text{router 2}. I router sono collegati così: router 1\text{router 1}-router 2\text{router 2}, router 1\text{router 1}-router 3\text{router 3}, router 2\text{router 2}-router 3\text{router 3}; router 3\text{router 3} è collegato a router 4\text{router 4}, che sta in Internet.

  1. Assegnare indirizzi IP e maschere a tutti i dispositivi da configurare, con queste regole: maschera più lunga possibile; gli indirizzi di LAN A vanno presi dal blocco 14.22.4.0/2614.22.4.0/26; quelli di LAN B dal blocco 123.67.64.0/18123.67.64.0/18; indirizzi privati quando possibile (senza NAT/NAPT o proxy).
  2. Scrivere la tabella di instradamento di router 1\text{router 1} (rete di destinazione, maschera, prossimo salto o interfaccia) con queste regole: il numero di righe deve essere minimo; tutto il traffico da LAN A a LAN B deve passare per router 3\text{router 3}.
  3. Dividere il blocco di LAN B in due sottoblocchi, di cui uno deve contenere almeno 19501950 host. Definire un piano di indirizzamento per questa sottorete: indirizzo di rete, maschera, broadcast diretto e massimo numero di host.

Teoria usata: 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 →, Instradamento e inoltroL'inoltro (forwarding) mette il pacchetto sulla strada verso la destinazione, un salto alla volta (hop by hop). Se la destinazione è nella stessa rete del mittente l'inoltro è diretto (si usa l'ARP per il MAC del destinatario), altrimenti è indiretto: il pacchetto va al router successivo (next hop) indicato dalla tabella di instradamento, o al default gateway. Con le netmask: l'inoltro è diretto attraverso l'interfaccia $x$ se $\text{IP(dst)}\ \text{AND}\ \text{NM}(x)=\text{IP}(x)\ \text{AND}\ \text{NM}(x)$; altrimenti si scorre la tabella dalla maschera più lunga (longest prefix match) e si usa il primo match. La riga con rete $0.0.0.0$ e maschera $0.0.0.0$ (default route) corrisponde sempre. L'aggregazione di rotte (route aggregation) riduce la tabella, e nell'inoltro con etichette (MPLS) la tabella si consulta per indice.Instradamento e inoltro → (rotta di default, rotte minime), NAT e indirizzi privatiUna rete privata (intranet) usa il protocollo TCP/IP con indirizzi privati ($10.0.0.0/8$, $172.16.0.0/12$, $192.168.0.0/16$), riutilizzabili da intranet diverse ma da non instradare in Internet: i router di bordo scartano i pacchetti con indirizzi privati. Per accedere a Internet servono un proxy applicativo (uno per applicazione) o il NAT (Network Address Translation): un router che traduce indirizzi privati in indirizzi pubblici di un pool, con una tabella NAT e un'associazione dinamica per sessione. Il NAT tradizionale è outbound: Basic NAT traduce solo l'IP (uno a uno, quindi servono tanti indirizzi pubblici quante le sessioni contemporanee), NAPT traduce anche la porta ([IP privato, porta] $\to$ [IP pubblico, porta del NAT]) e permette a molte sessioni di condividere un solo IP pubblico. Il Twice NAT permette sessioni anche dall'esterno, con un DNS interno e associazioni statiche.NAT e indirizzi privati →.

Punto 1: indirizzi

Regola della "maschera più lunga". Per ogni rete si sceglie il blocco più piccolo che contiene i nodi da configurare più i due indirizzi riservati (rete e broadcast).

dispositivo interfaccia indirizzo/maschera
Host 1 LAN A 14.22.4.1/2914.22.4.1/29
Host 2 LAN A 14.22.4.2/2914.22.4.2/29
router 1 LAN A (verso switch) 14.22.4.3/2914.22.4.3/29
router 1 verso router 2 10.0.0.1/3010.0.0.1/30
router 1 verso router 3 10.0.1.1/3010.0.1.1/30
router 2 verso router 1 10.0.0.2/3010.0.0.2/30
router 2 LAN B 123.67.64.2/30123.67.64.2/30
router 3 verso router 1 10.0.1.2/3010.0.1.2/30
Host 3 LAN B 123.67.64.1/30123.67.64.1/30

Gateway degli host: Host 1\text{Host 1} e Host 2\text{Host 2} usano 14.22.4.314.22.4.3; Host 3\text{Host 3} usa 123.67.64.2123.67.64.2.

Punto 2: tabella di router 1\text{router 1}

Le reti a cui router 1\text{router 1} è direttamente collegato (LAN A, 10.0.0.0/3010.0.0.0/30, 10.0.1.0/3010.0.1.0/30) si raggiungono con l'inoltro diretto, descritto dalla configurazione delle interfacce. Le destinazioni lontane sono due: LAN B e Internet.

  • Traffico verso LAN B: per il vincolo deve passare per router 3\text{router 3}: riga 123.67.64.0/18→10.0.1.2123.67.64.0/18\to10.0.1.2.
  • Traffico verso Internet: si raggiunge anch'esso tramite router 3\text{router 3} (collegato a router 4\text{router 4}): rotta di default 0.0.0.0/0→10.0.1.20.0.0.0/0\to10.0.1.2.

Le due righe hanno lo stesso prossimo salto: la riga per LAN B è contenuta nella rotta di default (la default ha maschera 0.0.0.00.0.0.0, quindi l'AND dà sempre 0.0.0.00.0.0.0 e corrisponde a qualunque destinazione: Instradamento e inoltroL'inoltro (forwarding) mette il pacchetto sulla strada verso la destinazione, un salto alla volta (hop by hop). Se la destinazione è nella stessa rete del mittente l'inoltro è diretto (si usa l'ARP per il MAC del destinatario), altrimenti è indiretto: il pacchetto va al router successivo (next hop) indicato dalla tabella di instradamento, o al default gateway. Con le netmask: l'inoltro è diretto attraverso l'interfaccia $x$ se $\text{IP(dst)}\ \text{AND}\ \text{NM}(x)=\text{IP}(x)\ \text{AND}\ \text{NM}(x)$; altrimenti si scorre la tabella dalla maschera più lunga (longest prefix match) e si usa il primo match. La riga con rete $0.0.0.0$ e maschera $0.0.0.0$ (default route) corrisponde sempre. L'aggregazione di rotte (route aggregation) riduce la tabella, e nell'inoltro con etichette (MPLS) la tabella si consulta per indice.Instradamento e inoltro →) e sarebbe ridondante (nella figura ufficiale è cancellata). Con la regola del minimo numero di righe resta:

indirizzo di rete maschera prossimo salto
14.22.4.014.22.4.0 2929 (255.255.255.248255.255.255.248) diretto
0.0.0.00.0.0.0 00 (0.0.0.00.0.0.0) 10.0.1.210.0.1.2

Il vincolo "via router 3\text{router 3}" è rispettato proprio dal fatto che non esiste una riga più specifica che mandi verso router 2\text{router 2}: con la longest prefix match qualunque indirizzo di LAN B cade nella sola riga che lo contiene, la default, che punta a router 3\text{router 3}. (Le righe delle reti /30/30 collegate direttamente a router 1\text{router 1} stanno nella configurazione delle interfacce.)

Punto 3: un sottoblocco da almeno 19501950 host in LAN B

1950+2=19521950+2=1952: la potenza di 22 successiva è 211=20482^{11}=2048 (210=10242^{10}=1024 non basta; ⌈log⁡21952⌉=11\lceil\log_2 1952\rceil=11, 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 →). Servono 1111 bit di host, quindi prefisso 32−11=2132-11=21, maschera 255.255.248.0255.255.248.0. Il blocco 123.67.64.0/18123.67.64.0/18 ha 214=16 3842^{14}=16\,384 indirizzi (/18/18 lascia 1414 bit di host): contiene 221−18=82^{21-18}=8 blocchi /21/21.

Il primo è 123.67.64.0/21123.67.64.0/21 (il terzo byte 6464 è multiplo di 88, la dimensione in terzi byte di un /21/21): maschera 255.255.248.0255.255.248.0, broadcast 123.67.71.255123.67.71.255 (64+8−1=7164+8-1=71), 2048−2=20462048-2=\mathbf{2046} host, ≥1950\ge1950 ✓.

Per l'altro sottoblocco (non richiesto dettagliatamente) resta libero l'intervallo 123.67.72.0123.67.72.0–123.67.127.255123.67.127.255, che si può descrivere con 123.67.72.0/21123.67.72.0/21, 123.67.80.0/20123.67.80.0/20 e 123.67.96.0/19123.67.96.0/19. Se invece si intende dividere il /18/18 in due metà, i due blocchi sono 123.67.64.0/19123.67.64.0/19 e 123.67.96.0/19123.67.96.0/19 (81908190 host ciascuno), e il /21/21 sopra è contenuto nel primo.

Confronto con la soluzione ufficiale

Coincidono: Host 1=14.22.4.1/29\text{Host 1}=14.22.4.1/29, Host 2=14.22.4.2/29\text{Host 2}=14.22.4.2/29, Host 3=123.67.64.1/30\text{Host 3}=123.67.64.1/30, router 2\text{router 2} lato LAN B 123.67.64.2/30123.67.64.2/30, collegamenti 10.0.0.1/3010.0.0.1/30-10.0.0.2/3010.0.0.2/30 e 10.0.1.1/3010.0.1.1/30-10.0.1.2/3010.0.1.2/30; tabella di router 1\text{router 1} con 14.22.4.0/2914.22.4.0/29 diretta e default 10.0.1.210.0.1.2 (riga di LAN B cancellata); blocco 123.67.64.0/21123.67.64.0/21 con broadcast 123.67.71.255123.67.71.255. Discrepanza: nella figura ufficiale l'interfaccia di router 1\text{router 1} verso lo switch è scritta 14.22.4.3/2614.22.4.3/26, mentre gli host sono /29/29: nella stessa rete tutti devono avere la stessa maschera e "maschera più lunga" porta a /29/29, quindi qui si usa 14.22.4.3/2914.22.4.3/29. Verificato con Python.

Errori comuni

  • Dare a un'interfaccia di router 1\text{router 1} una maschera diversa da quella degli host della stessa rete.
  • Contare lo switch tra i nodi da indirizzare.
  • Lasciare nella tabella la riga per LAN B: ha lo stesso prossimo salto della default e va eliminata per minimizzare le righe.
  • Dimensionare il blocco senza i due indirizzi riservati (1950→20481950\to2048, non 1950→10241950\to1024).

Versione ripasso

Dati. LAN A 14.22.4.0/2614.22.4.0/26 (Host 1, Host 2, switch, router 1); LAN B 123.67.64.0/18123.67.64.0/18 (Host 3, router 2); router 1-2, 1-3, 2-3; router 3 verso Internet. Maschera più lunga, indirizzi privati dove possibile, tabella di router 1 minima con A→\toB via router 3.

Punto 1. Blocco più piccolo che contiene i nodi più i due riservati (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 →, NAT e indirizzi privatiUna rete privata (intranet) usa il protocollo TCP/IP con indirizzi privati ($10.0.0.0/8$, $172.16.0.0/12$, $192.168.0.0/16$), riutilizzabili da intranet diverse ma da non instradare in Internet: i router di bordo scartano i pacchetti con indirizzi privati. Per accedere a Internet servono un proxy applicativo (uno per applicazione) o il NAT (Network Address Translation): un router che traduce indirizzi privati in indirizzi pubblici di un pool, con una tabella NAT e un'associazione dinamica per sessione. Il NAT tradizionale è outbound: Basic NAT traduce solo l'IP (uno a uno, quindi servono tanti indirizzi pubblici quante le sessioni contemporanee), NAPT traduce anche la porta ([IP privato, porta] $\to$ [IP pubblico, porta del NAT]) e permette a molte sessioni di condividere un solo IP pubblico. Il Twice NAT permette sessioni anche dall'esterno, con un DNS interno e associazioni statiche.NAT e indirizzi privati →); lo switch non ha IP.

rete nodi blocco assegnazione
LAN A 3 (3+2=5→8)3\ (3+2=5\to8) 14.22.4.0/2914.22.4.0/29 Host 1 .1.1, Host 2 .2.2, router 1 .3.3 (gateway)
LAN B 2 (2+2=4)2\ (2+2=4) 123.67.64.0/30123.67.64.0/30 Host 3 .1.1, router 2 .2.2 (gateway)
R1-R2 22 10.0.0.0/3010.0.0.0/30 R1 .1.1, R2 .2.2
R1-R3 22 10.0.1.0/3010.0.1.0/30 R1 10.0.1.110.0.1.1, R3 10.0.1.210.0.1.2

R2-R3 analogo (per esempio 10.0.2.0/3010.0.2.0/30).

Punto 2 (Instradamento e inoltroL'inoltro (forwarding) mette il pacchetto sulla strada verso la destinazione, un salto alla volta (hop by hop). Se la destinazione è nella stessa rete del mittente l'inoltro è diretto (si usa l'ARP per il MAC del destinatario), altrimenti è indiretto: il pacchetto va al router successivo (next hop) indicato dalla tabella di instradamento, o al default gateway. Con le netmask: l'inoltro è diretto attraverso l'interfaccia $x$ se $\text{IP(dst)}\ \text{AND}\ \text{NM}(x)=\text{IP}(x)\ \text{AND}\ \text{NM}(x)$; altrimenti si scorre la tabella dalla maschera più lunga (longest prefix match) e si usa il primo match. La riga con rete $0.0.0.0$ e maschera $0.0.0.0$ (default route) corrisponde sempre. L'aggregazione di rotte (route aggregation) riduce la tabella, e nell'inoltro con etichette (MPLS) la tabella si consulta per indice.Instradamento e inoltro →). Tabella di router 1: 14.22.4.0/2914.22.4.0/29 diretto; 0.0.0.0/0→10.0.1.20.0.0.0/0\to10.0.1.2 (router 3). La riga 123.67.64.0/18→10.0.1.2123.67.64.0/18\to10.0.1.2 ha lo stesso prossimo salto della default: ridondante, si elimina. Il vincolo "via router 3" vale perché nessuna riga più specifica manda verso router 2.

Punto 3. 1950+2=1952→211=20481950+2=1952\to2^{11}=2048 (2102^{10} non basta): 1111 bit di host, /21/21, 255.255.248.0255.255.248.0. Il /18/18 contiene 221−18=82^{21-18}=8 blocchi /21/21. Primo: 123.67.64.0/21123.67.64.0/21, broadcast 123.67.71.255123.67.71.255 (64+8−164+8-1), 2048−2=20462048-2=2046 host. Due metà del /18/18: .64.0/19.64.0/19 e .96.0/19.96.0/19 (81908190 host).

Nota. Il testo ufficiale scrive router 1 verso lo switch come 14.22.4.3/2614.22.4.3/26, ma gli host sono /29/29: la maschera di una rete è unica, quindi /29/29.

Errori: maschere diverse nella stessa LAN; contare lo switch; tenere la riga per LAN B; dimensionare senza i due riservati (1950→20481950\to2048, non 10241024).

Teoria collegata