Basics of Internet Protocol
Table of Contents
Indirizzo IPv4 #
Indirizzo assegnato dal sistema operativo ad ogni scheda di rete (NIC).
NIC #
Le schede di rete possono essere:
- Reali (eth0, wlo1, …);
- Virtuali (lo [loopback], virbr0, …).
loopback #
La scheda lo
è sempre associata a 127.0.0.1/8
.
Tutti gli indirizzi che iniziano con 127 sono loopback.
Protocollo internet #
Il protocollo internet (internet protocol [IP]) permette la comunicazioni di macchine in reti più reti.
Struttura dell’indirizzo #
È composto da un numero a 32 bit, 4 byte, con un totale di $2^{23}$ indirizzi.
HOST: computer dotato di indirizzo IP.
Carrellata storica #
All’inizio i primi bit rappresentavano una rete, mentre i successivi rappresentavano l’host all’interno della rete stessa.
Per permettere di distinguere le due parti di è creata la subnet mask.
Subnet mask #
La subnet mask (maschera di sottorete) è un metodo per definire gli indirizzi ip appartenenti ad una rete.
È possibile esprimerla in 2 modi:
In base ai bit che non cambiano nella rete:
Nella rete con ip
192.168.1.0 - 192.168.1.255
, i bit dell indirizzo che non cambiano sono255.255.255.0
.Contando i bit che non cambiano:
La stessa rete è possibile esprimerla come
192.168.1.0/24
, perchè i primi 24 byte non cambiano (questo metodo viene chiamato CIDR).
Classi #
- Classe A:
/255.0.0.0
-/8
- Classe B:
/255.255.0.0
-/16
- Classe C:
/255.255.255.0
-/24
Inizialmente le maschere non erano connesse agli IP e venivano utilizzati i primi due bit dell’ip.
IP -> 1 1 0 0 0 1 1 0 /3
SUBMA -> 1 1 1 0 0 0 0 0
RETE (and) 1 1 0 0 0 0 0 0 (indirizzo della rete)
BROADCAST 1 1 0 1 1 1 1 1 (mettendo tutti i bit dell'host a 1)
HOST 0 0 0 0 0 1 1 0 (indirizzo dell'host)
IP -> 174 152 78 25
SUBMA -> 255 255 0 0 (classe B)
RETE (and) 174 152 0 0 (indirizzo della rete)
BROADCAST 174 152 255 255 (mettendo tutti i bit dell'host a 1)
HOST 0 0 78 25 (indirizzo dell'host)
Classificazioni sottoreti IP #
Privati #
Servono per costruire le reti locali (LAN).
10.0.0.0/8
: unica rete di classe A privata;172.16.0.0/12
[172.16.0.0/16
<->172.31.0.0/16
]: reti di classe B private;192.168.0.0/16
[192.168.0.0/2
<->192.168.255.0/24
]: reti di classe C private.
Riservati #
127.0.0.0/8
;0.0.0.0/8
;169.254.0.0/16
: Riservata da win per collegamenti in link-local.
Pubblici #
Tutti gli altri indirizzi. Sono raggiungibili da qualsiasi punto di internet.
CIDR table #
cidr | std | dim |
---|---|---|
32 | 255.255.255.255 | $2^{0}$ |
31 | 255.255.255.254 | $2^{1}$ |
30 | 255.255.255.252 | $2^{2}$ |
29 | 255.255.255.248 | $2^{3}$ |
28 | 255.255.255.240 | $2^{4}$ |
27 | 255.255.255.224 | $2^{5}$ |
26 | 255.255.255.192 | $2^{6}$ |
25 | 255.255.255.128 | $2^{7}$ |
24 | 255.255.255.0 | $2^{8}$ |
23 | 255.255.254.0 | $2^{9}$ |
22 | 255.255.252.0 | $2^{10}$ |
21 | 255.255.248.0 | $2^{11}$ |
20 | 255.255.240.0 | $2^{12}$ |
19 | 255.255.224.0 | $2^{13}$ |
18 | 255.255.192.0 | $2^{14}$ |
17 | 255.255.128.0 | $2^{15}$ |
16 | 255.255.0.0 | $2^{16}$ |
15 | 255.254.0.0 | $2^{17}$ |
14 | 255.252.0.0 | $2^{18}$ |
13 | 255.248.0.0 | $2^{19}$ |
12 | 255.240.0.0 | $2^{20}$ |
11 | 255.224.0.0 | $2^{21}$ |
10 | 255.192.0.0 | $2^{22}$ |
9 | 255.128.0.0 | $2^{23}$ |
8 | 255.0.0.0 | $2^{24}$ |
7 | 254.0.0.0 | $2^{25}$ |
6 | 252.0.0.0 | $2^{26}$ |
5 | 248.0.0.0 | $2^{27}$ |
4 | 240.0.0.0 | $2^{28}$ |
3 | 224.0.0.0 | $2^{29}$ |
2 | 192.0.0.0 | $2^{30}$ |
1 | 128.0.0.0 | $2^{31}$ |
0 | 0.0.0.0 | $2^{32}$ |
Indirizzo IPv6 #
È composto da 128 bit.
Rappresentazione #
È composto da 8 gruppi da 4 cifre esadecimali ciascuno.
Se all’inizio di un gruppo sono presenti 0, posso essere omessi.
Un solo insieme di 0 può essere rappresentato con ::
.
Esempio: ACB0:013B::215
<-> ACB0:013B:00...00:0215
Loopback #
L’indirizzo di lo è ::1/128
.
CIDR #
Ogni sottorete può essere un multiplo di 4:
- 128
- 124
- 120
- 116
- …