Un indirizzo IPv4 è un numero di 32 bit, scritto in notazione decimale puntata (dotted decimal notation): quattro numeri da 0 a 255 separati da un punto.
Tutti gli host sulla stessa rete condividono il Network Prefix e hanno Host Portion diversa.
🏷️ 2. Indirizzamento Classful (Classi A, B, C, D, E)
Nel sistema classful, la classe è determinata dai bit più significativi del primo ottetto. Ogni classe ha una subnet mask predefinita.
Classe
Bit iniziali
Intervallo 1° ottetto
Subnet mask
Rete / Host bits
Max host/rete
A
0
1 – 126
255.0.0.0 /8
8 / 24
16.777.214
B
10
128 – 191
255.255.0.0 /16
16 / 16
65.534
C
110
192 – 223
255.255.255.0 /24
24 / 8
254
D
1110
224 – 239
—
Multicast (nessun host)
E
1111
240 – 255
—
Riservati (uso futuro)
⚠️ L'indirizzo 127.x.x.x è riservato al loopback (localhost) e NON appartiene alla classe A utilizzabile.
🎭 3. Subnet Mask
La subnet mask indica al dispositivo quali bit dell'indirizzo identificano la rete e quali l'host. Ha tutti 1 nella parte di rete e tutti 0 nella parte host.
Indirizzo: 172.16.112.10 10101100.00010000.01110000.00001010Subnet mask: 255.255.255.0 11111111.11111111.11111111.00000000= /24AND bit a bit: 10101100.00010000.01110000.00000000Rete: 172.16.112.0
Per calcolare il Network Address, si applica l'AND bit a bit tra l'indirizzo IP e la subnet mask. I bit a 1 nella mask "mantengono" i bit della rete; i bit a 0 "azzerano" la parte host.
💡 La notazione CIDR (es. /24) indica semplicemente quanti bit della subnet mask sono a 1, partendo da sinistra.
📡 4. Indirizzi speciali in una rete
Per una rete 192.168.1.0/24:
Tipo
Indirizzo
Descrizione
Network Address
192.168.1.0
Parte host tutta a 0. Identifica la rete. Non assegnabile a host.
Host Minimo
192.168.1.1
Primo host assegnabile.
Host Massimo
192.168.1.254
Ultimo host assegnabile.
Broadcast
192.168.1.255
Parte host tutta a 1. Inviato a tutti gli host della rete.
Formula: su una rete /n, il numero di host indirizzabili è 2^(32−n) − 2 (si sottraggono l'indirizzo di rete e il broadcast).
🔒 5. Indirizzi Privati e Pubblici
Gli indirizzi privati sono riservati all'uso nelle reti interne. Non sono raggiungibili direttamente da Internet (si usa il NAT per la comunicazione con l'esterno).
Blocco
Intervallo
N° indirizzi
Classe
10.0.0.0/8
10.0.0.0 – 10.255.255.255
16.777.216
A
172.16.0.0/12
172.16.0.0 – 172.31.255.255
1.048.576
B
192.168.0.0/16
192.168.0.0 – 192.168.255.255
65.536
C
⚠️ Attenzione: 172.16.x.x – 172.31.x.x sono privati, ma 172.32.x.x in poi sono pubblici! Il blocco privato finisce a 172.31.255.255.
📨 6. Tipi di Indirizzamento
Unicast
Comunicazione uno-a-uno. Il pacchetto contiene l'IP del singolo destinatario. Tipo normale di traffico IP.
Broadcast
Uno-a-tutti. L'IP di destinazione ha la parte host tutta a 1. Es: 192.168.1.255 oppure 255.255.255.255 (limited broadcast).
Multicast
Uno-a-molti. Inviato a un gruppo di host iscritti. Usa indirizzi di Classe D: 224.0.0.0 – 239.255.255.255.
Loopback
Blocco 127.0.0.0/8. Usato per comunicare col dispositivo stesso. Il più famoso è 127.0.0.1 (localhost).
⚖️ 7. Classful vs Classless (CIDR)
Classful: La subnet mask è fissa e determinata dalla classe (A=/8, B=/16, C=/24). Spreca molti indirizzi.
Classless (CIDR): La subnet mask può avere qualsiasi lunghezza del prefisso. Permette di assegnare blocchi su misura, senza sprechi.
Come determinare la classe di un indirizzo guardando il primo ottetto.
10.250.1.1 → 1° ottetto = 10 → tra 1-126 → Classe A → mask 255.0.0.0150.10.15.0 → 1° ottetto = 150 → tra 128-191 → Classe B → mask 255.255.0.0192.14.2.0 → 1° ottetto = 192 → tra 192-223 → Classe C → mask 255.255.255.0230.230.45.58 → 1° ottetto = 230 → tra 224-239 → Classe D → (multicast)
249.240.80.78 → 1° ottetto = 249 → tra 240-255 → Classe E → (riservato)
Esempio 3 — Porzione di Rete e Host (Classful)
Dato un indirizzo classful, separare il network prefix dall'host portion.
Indirizzo: 177.100.18.41° ottetto = 177 → Classe B → i primi 16 bit sono la RETENetwork: 177.100.0.0 (i primi 2 ottetti)
Host: 18.4 (gli ultimi 2 ottetti)
─────────────────────────────────────
Indirizzo: 209.240.80.781° ottetto = 209 → Classe C → i primi 24 bit sono la RETENetwork: 209.240.80.0 (i primi 3 ottetti)
Host: 78 (l'ultimo ottetto)
Esempio 4 — Privato o Pubblico?
Classificare gli indirizzi come privati o pubblici.
192.168.255.253 → blocco 192.168.0.0/16 → PRIVATO10.100.11.103 → blocco 10.0.0.0/8 → PRIVATO172.20.18.1 → blocco 172.16.0.0/12 → PRIVATO(172.16–172.31)172.32.255.255 → NON nel blocco privato → PUBBLICO(172.32 > 172.31)192.68.0.0 → NON 192.168.x.x → PUBBLICO64.104.0.11 → nessun blocco privato → PUBBLICO
⚠️ Errore comune: confondere 192.68.x.x con 192.168.x.x. Solo il blocco 192.168.0.0 – 192.168.255.255 è privato!
Esempio 5 — Subnetting: creare 2 sottoreti da 192.168.0.0/24
Prendendo in prestito 1 bit dalla parte host, si ottengono 2 sottoreti /25.
I protocolli che collegano gli indirizzi IP agli indirizzi fisici e che assegnano la configurazione di rete automaticamente.
🔗 1. ARP — Address Resolution Protocol
ARP (RFC 826) è un protocollo del livello Data Link (livello 2 ISO/OSI) che mette in collegamento gli indirizzi IPv4 con i corrispondenti indirizzi fisici MAC.
Un pacchetto IP, per essere inviato, deve essere imbustato in una trama del livello Data Link che ha come indirizzo MAC di destinazione quello del dispositivo di rete a cui è destinato. ARP associa l'indirizzo IP al corrispondente indirizzo MAC da inserire nell'intestazione della trama.
IP Address (32 bit)
ARP →
Ethernet MAC Address (48 bit)
La corrispondenza IP ↔ MAC è mantenuta in una ARP table presente in ogni dispositivo di rete. Le voci hanno un campo TTL (Time To Live, da 2 a 20 minuti): quando scadono, vengono cancellate.
🏠 2. ARP — Mittente e destinatario sulla stessa rete
Quando un host vuole comunicare con un altro host della stessa rete:
Scenario: PC4 (222.2.2.2/24) vuole inviare a PC5 (222.2.2.3/24)PASSO 1 — Controllo ARP table
PC4 cerca 222.2.2.3 nella propria ARP table.
• Se trovato → usa il MAC direttamente.
• Se NON trovato → invia un ARP Request.
PASSO 2 — ARP Request (broadcast)
PC4 manda in broadcast (FF:FF:FF:FF:FF:FF):
IP mittente: 222.2.2.2MAC mittente: 47-90-0F-0B-A9-A0IP destinatario: 222.2.2.3MAC destinatario: FF:FF:FF:FF:FF:FF(sconosciuto)PASSO 3 — ARP Reply (unicast)
Solo PC5 risponde (riconosce il proprio IP):
IP mittente: 222.2.2.3MAC mittente: 44-66-CF-AB-A4-88← MAC comunicato!IP destinatario: 222.2.2.2MAC destinatario: 47-90-0F-0B-A9-A0PASSO 4 — Aggiornamento ARP table
PC4 aggiorna la propria ARP table con la nuova voce:
222.2.2.3 → 44-66-CF-AB-A4-88
💡 Solo il nodo interessato risponde all'ARP Request. Tutti gli altri host ricevono il broadcast ma lo ignorano.
Esempio di ARP table (su PC4 — 222.2.2.2/24):
Indirizzo IP
Indirizzo MAC
TTL
222.2.2.1
A5-08-9F-AA-B4-C2
13:45:00
222.2.2.2
47-90-0F-0B-A9-A0
13:52:00
222.2.2.3
44-66-CF-AB-A4-88
14:06:00
222.2.2.4
77-68-AF-AB-94-AA
14:13:00
🌐 3. ARP — Mittente e destinatario su reti diverse
Quando l'host di destinazione si trova su una rete diversa, il pacchetto deve passare per il default gateway (router). Il mittente non cerca il MAC del destinatario finale, ma il MAC del gateway.
Scenario: PC1 (111.1.1.2/24) vuole inviare a PC5 (222.2.2.2/24)Le due reti sono connesse da Router0: interfaccia lato 111.1.1.0: IP 111.1.1.1 — MAC A3-45-46-EE-A3-56 interfaccia lato 222.2.2.0: IP 222.2.2.1 — MAC 44-56-F7-55-AC-CFPASSO 1 — PC1 capisce che 222.2.2.2 NON è nella sua rete.
Deve usare il default gateway.
PASSO 2 — PC1 cerca 111.1.1.1 (gateway) nella propria ARP table.
Se non c'è → ARP Request per il MAC del gateway.
Risposta: MAC del router = A3-45-46-EE-A3-56PASSO 3 — PC1 invia la trama con:
IP sorgente: 111.1.1.2 | IP dest: 222.2.2.2
MAC sorgente: 4-52-6F-AE-A2-51 | MAC dest: A3-45-46-EE-A3-56PASSO 4 — Il router riceve, consulta la routing table,
trova 222.2.2.2 nella propria ARP table:
MAC = 47-90-0F-0B-A9-A0
Invia il pacchetto a PC5 dalla sua interfaccia 222.2.2.1.
⚠️ L'indirizzo IP di destinazione nel pacchetto rimane sempre 222.2.2.2 (l'IP finale), mentre l'indirizzo MAC cambia ad ogni hop (salto) tra router.
⚙️ 4. DHCP — Dynamic Host Configuration Protocol
DHCP è un protocollo che assegna in modo automatico una configurazione di rete ai dispositivi di una LAN. La configurazione comprende:
Assegnato automaticamente
• Indirizzo IPv4
• Subnet mask
• Indirizzo del default gateway
• Indirizzo del server DNS (opzionale)
Caratteristiche tecniche
• Protocollo client-server
• Livello Applicazione, usa UDP
• Porta 67 lato server
• Porta 68 lato client
Il funzionamento si basa su un processo di "leasing": il server "affitta" l'indirizzo IP al client per un certo tempo. Particolarmente utile per reti con molti dispositivi mobili (tablet, smartphone, notebook).
🔄 5. Le 4 fasi del processo DHCP (DORA)
─── DORA: Discover → Offer → Request → Acknowledge ───────────────FASE 1 — DHCP DISCOVER (scoperta)
Il client non ha ancora un IP. Manda in broadcast:
IP sorgente: 0.0.0.0(non ha ancora un IP)
IP destinazione: 255.255.255.255(broadcast)
MAC destinazione: FF:FF:FF:FF:FF:FF
Messaggio: "C'è un server DHCP in rete?"
FASE 2 — DHCP OFFER (offerta)
Il server DHCP risponde con un'offerta:
→ IP proposto per il client
→ Subnet mask
→ Gateway, DNS
→ Durata del lease
FASE 3 — DHCP REQUEST (richiesta)
Il client accetta l'offerta e manda in broadcast
la propria scelta (utile se ci sono più server DHCP).
FASE 4 — DHCP ACKNOWLEDGE (conferma)
Il server conferma l'assegnazione.
Il client configura la propria interfaccia con i parametri ricevuti.
💡 Il processo DORA viene usato anche per il rinnovo del lease, quando il tempo di noleggio sta per scadere.
📊 6. Confronto ARP vs DHCP
ARP
DHCP
Scopo
Trovare il MAC a partire dall'IP
Assegnare automaticamente IP e config
Livello OSI
Data Link (Livello 2)
Applicazione (Livello 7)
Protocollo trasporto
—
UDP (porte 67/68)
Tipo messaggio
Broadcast → Unicast
Broadcast → Unicast
RFC
RFC 826
RFC 2131
Quando è usato
Ogni volta che si deve inviare un pacchetto
Al primo collegamento o scadenza lease
Verifica di Teoria
Domande stile compito scritto. Rispondi, poi clicca per vedere la risposta corretta.
🎯 Argomenti: Livello Rete (compiti, commutazione) · Protocollo IPv4 (caratteristiche, intestazione) · Indirizzamento classful e classless · Protocollo ARP
A — Il Livello Rete e la Commutazione
1
Quali sono i 4 compiti principali del protocollo IP (livello Rete)?
I quattro compiti del protocollo IP sono: 1. Indirizzamento — ogni dispositivo in Internet deve essere identificato da un indirizzo IP univoco. 2. Imbustamento (encapsulation) — lato mittente, al segmento del livello Trasporto viene aggiunta l'intestazione IP (livello 3). 3. Routing — determinare il percorso migliore per far giungere i pacchetti a destinazione. 4. Spacchettamento (decapsulation) — lato destinazione, l'intestazione IP viene rimossa e i dati passano al livello Trasporto.
2
Spiega la differenza tra commutazione di circuito e commutazione di pacchetto.
Commutazione di circuito (Circuit Switching): viene stabilita una connessione fisica dedicata tra mittente e destinatario per tutta la durata della comunicazione. La linea è riservata ai due utenti e nessun altro può usarla. Tipica delle reti telefoniche tradizionali. Svantaggio: spreco di risorse durante i silenzi/pause.
Commutazione di pacchetto (Packet Switching): il messaggio viene diviso in pacchetti (PDU) che viaggiano in modo autonomo e indipendente attraverso la rete. Ogni router sceglie il percorso migliore hop per hop. Il canale viene usato solo per il tempo strettamente necessario. È la tecnica usata da IP/Internet.
3
Nella commutazione di pacchetto, qual è la differenza tra connection oriented e connectionless? Fai un esempio per ciascuna.
Connection oriented: prima di trasmettere dati viene stabilito un circuito virtuale, una strada logica che tutti i pacchetti dello stesso messaggio devono seguire. Garantisce ordine e affidabilità. Esempio: la rete X.25.
Connectionless: non esiste un percorso prestabilito. Ogni pacchetto (datagramma) viene instradato autonomamente dai router hop per hop. Non è garantito l'ordine di arrivo né la consegna. Esempio: il protocollo IP. I problemi di ordine e perdita sono gestiti dal livello superiore (TCP).
B — Protocollo IPv4: Caratteristiche e Intestazione
4
IP è definito connectionless e media independent. Spiega cosa significa ciascuna caratteristica.
Connectionless: IP non stabilisce alcuna connessione logica tra mittente e destinatario prima di inviare i pacchetti. Ogni router riceve un pacchetto e lo inoltra verso il prossimo hop senza sapere se arriverà correttamente. IP fa del suo meglio (best effort) ma non garantisce la consegna, l'ordine, né la correzione degli errori — questi compiti spettano a TCP (livello Trasporto).
Media independent: IP è indipendente dal mezzo fisico di trasmissione. Funziona su rame (Ethernet), fibra ottica, Wi-Fi, ecc. Non dipende dalle caratteristiche del livello fisico sottostante.
5
Descrivi i seguenti campi dell'intestazione IPv4: TTL, Protocol, Flags (DF e MF), Fragment Offset.
TTL (Time to Live, 8 bit): contatore che limita la "vita" del pacchetto in rete. Viene decrementato di 1 ad ogni hop (router). Quando arriva a 0, il pacchetto è scartato e viene inviato un messaggio ICMP al mittente. Evita che i pacchetti girino all'infinito in caso di loop di routing.
Protocol (8 bit): indica il protocollo del livello Trasporto contenuto nel payload. Ad esempio: TCP = 6, UDP = 17. Permette al destinatario di sapere a chi consegnare i dati.
Flag DF (Don't Fragment): se DF = 1, il pacchetto non può essere frammentato. Se è troppo grande per un link, viene scartato. Flag MF (More Fragments): se MF = 1, il frammento fa parte di un pacchetto più grande e ci sono altri frammenti. MF = 0 sull'ultimo frammento.
Fragment Offset (13 bit): indica la posizione del frammento all'interno del pacchetto originale (in unità di 8 byte). Permette al destinatario di riassemblare i frammenti nell'ordine corretto.
6
Cos'è la frammentazione IPv4? Quando avviene e quali campi dell'intestazione vengono usati?
La frammentazione avviene quando un pacchetto IP è troppo grande per il collegamento da attraversare (supera il MTU — Maximum Transmission Unit, imposto dal livello 2). Il pacchetto viene suddiviso in frammenti di dimensione adeguata.
Campi usati per la frammentazione:
• Identification: stesso valore in tutti i frammenti dello stesso pacchetto.
• Flag MF: 1 su tutti i frammenti tranne l'ultimo.
• Fragment Offset: posizione del frammento nel pacchetto originale (÷8).
Il riassemblaggio avviene solo a destinazione.
C — Indirizzamento IPv4 Classful e Classless
7
Come si riconosce la classe di un indirizzo IPv4 classful? Indica i range del 1° ottetto per le classi A, B, C, D, E e la relativa subnet mask per A, B, C.
La classe è determinata dai bit più significativi del primo ottetto:
Classe A — 1° ottetto: 1–126 (bit iniziale: 0) — Subnet mask: 255.0.0.0 (/8) — 8 bit rete, 24 bit host Classe B — 1° ottetto: 128–191 (bit iniziali: 10) — Subnet mask: 255.255.0.0 (/16) — 16 bit rete, 16 bit host Classe C — 1° ottetto: 192–223 (bit iniziali: 110) — Subnet mask: 255.255.255.0 (/24) — 24 bit rete, 8 bit host Classe D — 1° ottetto: 224–239 — Multicast (nessun host assegnabile) Classe E — 1° ottetto: 240–255 — Riservati per usi futuri
Nota: 127.x.x.x è riservato al loopback (localhost) e non appartiene alla classe A utilizzabile.
8
Cos'è la subnet mask e come si usa per calcolare il Network Address? Spiega con un esempio concreto.
La subnet mask è una sequenza di 32 bit con tutti 1 nella parte di rete e tutti 0 nella parte host. Indica al dispositivo quali bit dell'indirizzo identificano la rete e quali l'host.
Per calcolare il Network Address si applica l'AND bit a bit tra l'indirizzo IP e la subnet mask:
La notazione CIDR (es. /24) indica il numero di bit a 1 nella subnet mask, da sinistra.
9
Qual è la differenza tra indirizzamento classful e classless (CIDR)? Perché è stato introdotto CIDR?
Classful: la subnet mask è fissa e dipende dalla classe (A=/8, B=/16, C=/24). Non è flessibile: una rete di 50 host deve usare una Classe C con 254 indirizzi disponibili, sprecandone 204.
Classless (CIDR — Classless Inter-Domain Routing): introdotto con RFC 1519 nel 1993, permette una subnet mask di qualsiasi lunghezza. Per 50 host si usa /26 (62 host disponibili), ottimizzando l'uso degli indirizzi.
CIDR è stato introdotto per rallentare l'esaurimento degli indirizzi IPv4 (avvenuto nel 2011) e ridurre le dimensioni delle tabelle di routing.
10
Quali sono i tre blocchi di indirizzi privati IPv4? Perché esistono e come vengono usati su Internet?
I tre blocchi di indirizzi privati (RFC 1918) sono:
• 10.0.0.0/8 — da 10.0.0.0 a 10.255.255.255 (Classe A)
• 172.16.0.0/12 — da 172.16.0.0 a 172.31.255.255 (Classe B)
• 192.168.0.0/16 — da 192.168.0.0 a 192.168.255.255 (Classe C)
Esistono per risparmiare indirizzi pubblici: più LAN possono usare gli stessi indirizzi privati senza conflitti, poiché non sono routable su Internet. Per comunicare con l'esterno, si usa il NAT (Network Address Translation), che traduce l'indirizzo privato in uno pubblico al confine della rete.
D — Protocollo ARP
11
A cosa serve il protocollo ARP? Perché è necessario?
ARP (Address Resolution Protocol, RFC 826) serve a tradurre un indirizzo IP (32 bit) nel corrispondente indirizzo MAC fisico (48 bit).
È necessario perché: un pacchetto IP, per essere trasmesso su una LAN Ethernet, deve essere incapsulato in una trama del livello Data Link. La trama richiede come indirizzo di destinazione il MAC del dispositivo. Poiché le applicazioni conoscono solo gli indirizzi IP, ARP colma il divario tra il livello Rete (IP) e il livello Data Link (MAC).
12
Descrivi il funzionamento di ARP quando mittente e destinatario sono sulla stessa rete. Cosa contengono ARP Request e ARP Reply?
1. Controllo ARP table: l'host mittente cerca l'IP del destinatario nella propria ARP table. Se c'è, usa direttamente il MAC. Se non c'è, avvia la procedura ARP.
2. ARP Request (broadcast): inviato a FF:FF:FF:FF:FF:FF, contiene: IP e MAC del mittente + IP del destinatario cercato + MAC destinatario = FF:FF:FF:FF:FF:FF (sconosciuto).
3. ARP Reply (unicast): solo il nodo con l'IP cercato risponde. Contiene: il proprio indirizzo MAC. La risposta è unicast direttamente al mittente.
4. Aggiornamento ARP table: il mittente aggiunge la nuova corrispondenza IP→MAC nella propria tabella (con TTL da 2 a 20 minuti).
13
Come funziona ARP quando mittente e destinatario sono su reti diverse? Qual è il ruolo del default gateway?
Quando il destinatario è su una rete diversa, il mittente non può raggiungere direttamente il MAC finale. Il percorso deve passare per il default gateway (router).
Il mittente cerca nella propria ARP table il MAC dell'interfaccia del gateway (non del destinatario finale). Se non lo trova, invia un ARP Request per l'IP del gateway.
La trama viene inviata con: IP destinazione = IP finale (invariato), MAC destinazione = MAC del gateway. Il router riceve la trama, consulta la sua routing table, usa la propria ARP table per trovare il MAC del passo successivo e invia il pacchetto. L'indirizzo IP rimane invariato lungo tutto il percorso, mentre il MAC cambia ad ogni hop.
Esercizi
Esercizi pratici sugli argomenti della verifica. Compila, verifica, e usa "Mostra soluzioni" se sei bloccato.
Esercizio 1 — Classe e Subnet Mask
8 indirizzi
Per ogni indirizzo indica la classe (A/B/C/D/E) e la subnet mask classful (oppure — se non applicabile).
INDIRIZZOCLASSESUBNET MASK
Esercizio 2 — Calcolo Network Address
6 calcoli
Calcola il Network Address con l'AND bit a bit tra indirizzo e subnet mask.
INDIRIZZO IPv4SUBNET MASKNETWORK ADDRESS
Esercizio 3 — Privato o Pubblico?
7 indirizzi
Per ogni indirizzo scrivi Privato o Pubblico.
INDIRIZZOPRIVATO / PUBBLICO
Esercizio 4 — Completa la sequenza ARP
ARP stessa rete
Scenario: PC-A ha IP 192.168.1.10 e MAC AA-BB-CC-11-22-33. Vuole comunicare con PC-B (IP 192.168.1.20) ma non ha il suo MAC in ARP table. Completa i campi del messaggio ARP Request e del Reply.
ARP REQUEST (inviato da PC-A)
IP mittente
MAC mittente
IP destinatario
MAC destinatario
ARP REPLY (inviato da PC-B, MAC: DD-EE-FF-44-55-66)