vuoi
o PayPal
tutte le volte che vuoi
FRAMMENTAZIONE DEI PACCHETTI IP
Un pacchetto viene frammentato da ogni router se la sua lunghezza è superiore alla MTU della
linea di uscita; sarà poi il nodo ricevente a ricostruire il pacchetto utilizzando i singoli frammenti.
Si definisce MTU (Maximum Transmission Unit), la massima dimensione che può avere il payload a
livello data-link. La MTU, quindi, limita la dimensione del datagramma IP.
INDIRIZZAMENTO IP Un indirizzo IP è composto da 32 bit e si
esprime in forma decimale puntata, a.b.c.d
(es. 193.204.49.40). Esso è suddiviso in una
porzione dedicata all’identificativo della rete (bit più significativi) e una dedicata all’identificativo
degli host (bit meno significativi). Il riconoscimento dipende dal tipo di indirizzamento IP usato:
1. Classful. È un approccio basato su cinque classi di indirizzi IP, dove i primi due individuano
indirizzi unicast, il terzo individua indirizzi multicast, mentre il quinto è riservato. Analizziamoli
nel dettaglio:
➢ Gli indirizzi di classe A vengono individuati dal primo bit del primo byte, perché settato a 0. Di
conseguenza il primo byte va da 0 a 127, dove però gli indirizzi con 0 e 127 sono riservati.
Quindi, per gli host sono disponibili gli indirizzi da 1 a 126. Un indirizzo di classe A
corrisponde ad un CIDR con maschera 8.
➢ Gli indirizzi di classe B vengono individuati dai primi due bit del primo byte, settatati a 10. Di
conseguenza il primo byte va da 128 a 191. Un indirizzo di classe B corrisponde ad un CIDR
con maschera 16.
➢ Gli indirizzi di classe C vengono individuati dai primi tre bit del primo byte, settatati a 110. Di
conseguenza il primo byte va da 192 a 223. Un indirizzo di classe C corrisponde ad un CIDR
con maschera 24.
➢ Gli indirizzi di classe D vengono individuati dai primi quattro bit del primo byte, settatati a
1110. Di conseguenza il primo byte va da 224 a 239. In questo caso, siccome identifica
indirizzi multicast, non ha senso parlare di host e di rete
➢ Gli indirizzi di classe E vengono individuati dai primi quattro bit del primo byte, settatati a
1111. Di conseguenza il primo byte va da 240 a 255. Si tratta di indirizzi riservati per usi
futuri.
2. Classless. Noto anche come CIDR (Classless InterDomain Routing) è più usato rispetto al classful.
In questa tipologia di indirizzamento, l’indirizzo è del tipo a.b.c.d/x dove x, noto come maschera
di rete, stabilisce il numero di bit dell’indirizzo che rappresentano la rete. I restanti bit
rappresentano l’host. La maschera può anche essere rappresentata in forma decimale puntata
L’assegnazione degli indirizzi è compito dell’Internet Assigned Number Authority (IANA) gestita
dall’ICANN (Internet Corporation for Assigned Names and Numbers).
PARTICOLARI INDIRIZZI IP Un indirizzo di rete è un indirizzo individuato
ponendo a 0 tutti i bit della porzione di host.
Assegnato un indirizzo di rete, è possibile partizionare tale rete in sottoreti modificando la
maschera. Una parte dei bit adibiti all’identificazione dell’host sono dedicati alla
definizione di una sottorete (subnet-id). È importante osservare che la suddivisione in sottoreti è
“invisibile” all’esterno della rete.
Un altro indirizzo particolare è quello con tutti 1 nella parte di host. Tale indirizzo è detto indirizzo
di broadcast e serve per identificare una comunicazione con tutti gli host della rete.
CLASSIFICAZIONE DEGLI INDIRIZZI IP
Gli indirizzi IP possono essere Pubblici o Privati:
• Gli indirizzi Pubblici sono assegnati dalla IANA e sono usati per instradare pacchetti in Internet.
Non possono esistere indirizzi IP pubblici uguali.
• Gli indirizzi Privati servono per comunicare internamente ad una rete privata. Non si possono
instradare pacchetti con tali indirizzi in Internet. Utili per motivi di sicurezza e/o per risolvere il
problema della saturazione dello spazio di indirizzamento con indirizzi IPv4. Gli indirizzi di rete
privati previsti dalla IANA sono: 10.0.0.0/8; 172.16.0.0/12 – 172.31.0.0/12; 192.168.0.0/16 –
192.168.255.0/16.
Gli indirizzi IP possono essere statici (non cambiano nel tempo) o dinamici (cambiano nel tempo).
INDIRIZZI IP SPECIALI INDIRIZZO DI INDIRIZZO DI
NET ID HOST ID DESCRIZIONE
SOURCE DESTINAZIONE
Tutti 0 Tutti 0 Si No Questo host su questa rete
Specifico
Tutti 0 Si No Host specifico su questa rete
Host id Indirizzo usato per verificare che la
127 Qualunque Si Si pila protocollare funzioni. Noto
come indirizzo di loopback perché
il pacchetto arriva al livello tre e
torna indietro
255 255 No Si L’host non conosce la sua rete
VARIABLE LENGTH SUBNET MASK
Il meccanismo classico di subnetting prevede di creare delle sottoreti a maschera di lunghezza
fissa. Questo approccio risulterebbe svantaggioso nel momento in cui esistessero più sottoreti con
un numero di host molto differente. Questo perché si avrebbero delle sottoreti con una maschera
che permetterebbe di indirizzare tanti host ma con un numero effettivo molto piccolo.
Il VLSM permette di definire maschere di lunghezza diversa nella stessa rete, al costo di una
maggiore complessità delle tabelle di instradamento. Il VLSM si effettua seguendo questo
approccio:
1. Si ordinano le reti da quella con più host a quella con meno host;
2. Si sceglie un indirizzo IP di partenza che possa indirizzare tutti gli host della rete
3. Si iniziano ad assegnare, in ordine, gli indirizzi di rete in base al numero di host che le reti
richiedono;
4. Se per il numero di host richiesti è possibile usare una rete con una maschera di rete più grande,
la si utilizza. Questo aumento lo si può effettuare andando, però, a modificare la maschera di
sottorete per ognuna delle sottoreti e prendendo più bit destinati agli host;
5. Ciò lo si fa fino a quando tutte le sottoreti sono state assegnate.
ADDRESS RESOLUTION PROTOCOL
L’ARP è un protocollo utilizzato per conoscere il MAC address (indirizzo di livello 2) corrispondente
ad un determinato indirizzo IP destinatario. Conoscere il MAC address è utile per sapere come
incapsulare il pacchetto e conoscere a chi destinare il pacchetto a livello fisico.
Siano A l’host mittente e B l’host destinatario di cui non si conosce il MAC e supponiamo che si
trovino nella stessa rete:
• A invia un ARP Request in Broadcast indicando l’indirizzo IP dell’host B.
• B, riconoscendo il suo indirizzo IP, risponderà ad A con una ARP Reply (unicast) in cui sarà
presente il MAC di B sottoforma di Source Address.
Per rendere più efficiente l’associazione tra MAC address e indirizzi IP, ogni nodo memorizza in
memorie cache le coppie di indirizzi ricavate. Questa memorizzazione non è permanente, perché
se, ad esempio, si manda un pacchetto e non si riceve risposta il MAC address viene cancellato.
Il MAC address più importante è quello del router, perché altrimenti non si potrebbe comunicare
all’esterno della propria rete.
TRASFERIMENTO DI PACCHETTI TRA RETI DIVERSE
Supponiamo che A e B non siano nella stessa rete e che A conosca l’IP di B. Prima di trasferire il
pacchetto, A verifica che B sia nella sua stessa
rete facendo una AND fra la sua maschera di rete
e l’indirizzo IP di B e verificando che il risultato
sia uguale all’indirizzo di rete di cui A.
Riconoscendo che B è in una rete diversa, A si
deve rivolgere al proprio default gateway. Se A
non conosce il MAC Address di R1, invia una richiesta ARP in broadcast indicando l’indirizzo IP di
R1, a cui seguirà una reply unicast da parte di R1 con il proprio MAC address. Noto il MAC Address
del router, sarà possibile inoltrare il pacchetto a R1 e successivamente ai default gateway di altre
reti, fino a quando non si raggiunge il router finale (es. R4). Se il router finale non conosce il MAC
Address di B, invia una richiesta ARP con target address l’indirizzo IP di B. Una volta appreso
l’indirizzo MAC di B, invia il pacchetto utilizzando il proprio MAC address come source address e
quello di B come destination address. Infine, B legge i livelli 2 e 3 e riconosce i propri indirizzi MAC
e IP e passa il payload ai livelli superiori.
È importante sottolineare che a livello IP l’indirizzo mittente è sempre quello di A e il destinatario
quello di B.
TRASFERIMENTO DI PACCHETTI NELLA STESSA RETE
Supponiamo che A e B siano nella stessa rete e che A conosca l’IP di B. A verifica che B sia nella sua
stessa rete facendo una AND fra la sua maschera di rete e l’indirizzo IP di B e verificando che
questo risultato sia uguale all’indirizzo di rete di cui A fa parte. Se A riconosce che B è nella sua
stessa rete:
• Se A non conosce il MAC address di B, invia una richiesta ARP con target address l’indirizzo IP di
B, a cui seguirà una ARP Reply unicast da parte di B con il proprio MAC address; A può farlo in
quanto è nella stessa rete di B;
• A, avendo ricavato il MAC Address di B, invia il pacchetto IP a B (a livello MAC il destinatario è
sempre B). La comunicazione sta avvenendo sul livello 2.
DYNAMIC HOST CONFIGURATION PROTOCOL
Il DHCP è un protocollo che permette di assegnare indirizzi IP dinamicamente. L’assegnazione
avviene grazie alla presenza di uno o più DHCP server all’interno della rete; in tal caso, il client
sceglierà la risposta che riterrà migliore. Esso fornisce ad un host le seguenti informazioni:
1. Indirizzo IP
2. Netmask
3. Indirizzo IP del default gateway
4. Indirizzo IP del server DNS (Domain Name System)
5. Lease time, ossia l’intervallo di tempo in cui si può usare l’indirizzo assegnato
Il suo funzionamento è descritto in questa tabella:
SERVER SULLA STESSA RETE SERVER SU DIVERSA RETE
• •
L’host che vuole un indirizzo IP invia un L’host che vuole un indirizzo IP invia un
messaggio DHCPDISCOVER incapsulandolo messaggio DHCPDISCOVER incapsulandolo
in UDP (source port: 68; destination port: in UDP (source port: 68; destination port:
67). La richiesta viene inviata in broadcast 67). La richiesta viene inviata in broadcast
sulla rete locale: sulla rete locale:
➢ Source IP = 0.0.0.0: indica che l’host ➢ Source IP = 0.0.0.0: indica che l’host
non ha un indirizzo IP non ha un indirizzo IP
➢ Dest IP= 255.255.255.255: indica che ➢ Dest IP= 255.255.255.255: indica che
l’host non conosce la sua rete l’host non conosce la sua rete
• tutti i server DHCP presenti nella rete • Se non è disponibile alcun server DHCP
rispondono in broadcast con un messaggio nella rete locale, la richiesta può essere
DHCPOFFER
• inoltrata verso un'altra rete esterna
<