Adresele IPv4 au o lungime de 32 de biţi (4 octeţi). Fiecare adresă identifică o reţea (network) şi o staţie de lucru (work station) din cadrul reţelei. Notaţia obişnuită este obţinută prin scrierea fiecărui octet în formă zecimală, separaţi între ei prin puncte. De exemplu, 192.168.0.1 este notaţia folosită pentru adresa 11000000.10101000.00000000.00000001.
Clase de adrese
La începuturile Internetului, adresele IPv4 se împărţeau în 5 clase de adrese, notate de la A la E. Împărţirea se făcea în funcţie de configuraţia binară a primului octet al adresei, astfel:
Adresele reţelelor au toţi biţii de staţie 0 şi nu pot fi folosite pentru o staţie. În plus, mai există şi adrese de difuzare, care au toţi biţii de staţie 1.
Pentru identificarea staţiilor se folosesc numai adresele de clasă A până la C. În plus, există două intervale de adrese de clasă A nefolosite în Internet:
- Intervalul 0.0.0.0 – 0.255.255.255 nu se foloseşte, pentru a nu fi confundat cu ruta implicită;
- Intervalul 127.0.0.0 – 127.255.255.255 este folosit numai pentru diagnosticarea nodului local (întotdeauna acesta va fi cel care va răspunde la apelul unei adrese din aceasta clasă).
Din păcate, această metodă risipea multe adrese IP, iar odată cu răspândirea Internetului a apărut pericolul epuizării spaţiului de adrese. Pentru a soluţiona această problemă, la începutul anilor ’90 au fost concepute mai multe soluţii:
- adrese private
- CIDR
- VLSM
Metodele de mai sus aveau rolul de a prelungi viaţa lui IPv4. În plus, a fost conceput şi un nou protocol, IPv6.
Adrese private
Dispozitivele neconectate la Internet nu au nevoie de o adresă IP unică. Pentru aceste dispozitive au fost standardizate adresele private. Aceste adrese nu sunt unice la nivelul Internetului şi de aceea nu sunt rutate de dispozitivele de nivel 3. În RFC 1918 au fost definite trei intervale rezervate pentru adresare privată:
- Adrese rezervate pentru clasa A: 10.0.0.0 – 10.255.255.255
- Adrese rezervate pentru clasa B: 172.16.0.0 – 172.31.255.255
- Adrese rezervate pentru clasa C: 192.168.0.0 – 192.168.255.255
Nu este obligatoriu ca fiecare bloc de adrese să fie alocat unei singure reţele. De obicei, administratorul de reţea va împărţi un bloc în subreţele; de exemplu, multe rutere pentru uz personal folosesc subreţeaua 192.168.0.0 – 192.168.0.255 (192.168.0.0/24).
Subreţele
Atât adresele IPv4 cât şi cele IPv6 folosesc subnetarea, care constă în împărţirea adresei IP în două părţi: adresa de reţea şi adresa de staţie. Folosind o mască de reţea, calculatorul poate determina unde să împartă adresa IP (conform standardului RFC 950).
Subnetarea a apărut ca soluţie pentru problema epuizării spaţiului de adrese IP. Odată cu subreţelele a apărut distincţia între adresarea “classfull” (care ţine cont de clasele de adrese) şi adresarea “classless” (care oferă suportul pentru câmpul de subreţea).
În 1992 au fost introduse şi mecanismele de rutare pentru adresarea classless. Aceste mecanisme vizau atât protocoalele de rutare (CIDR), cât şi protocoalele rutate (VLSM).
VLSM
VLSM (Variable Length Subnet Mask) este un procedeu care presupune precizarea unei măşti de reţea pentru fiecare adresă asociată unei interfeţe. Acest lucru permitea împărţirea unei clase de adrese în mai multe reţele de dimensiuni diferite, micşorând astfel irosirea de adrese IP.
De exemplu, pentru o reţea de 20 de calculatoare (staţii) se puteau folosi acum doar 32 de adrese (o reţea /27), faţă de 256 de adrese (o reţea de clasă C, /24).
CIDR
CIDR (Classless InterDomain Routing) se referă la modul de reprezentare a adreselor IP în tabela de rutare şi la modul de trimitere a mesajelor de actualizare. În notaţia CIDR, adresa IP este reţinută întotdeauna împreună cu masca de reţea. De exemplu, o adresă IP de tipul 192.0.2.1, cu masca 255.255.255.0, ar fi scrisă în notaţia CIDR ca 192.0.2.1/24, deoarece primii 24 de biţi din adresa IP indică subreţeaua.
Faptul că în tabela de rutare este precizată şi masca de reţea permite agregarea (unirea) reţelelor vecine, reducând dimensiunea tabelei de rutare. De exemplu, reţelele 192.0.2.0/24 şi 192.0.3.0/24 vor fi reţinute ca 192.0.2.0/23:


