Precum am menționat în capitolul precedent, adresele folosite în protocolul IP sunt numere pe 32 de biți. Fiecare mașonă trebuie să aibă un număr unic. Dacă aveți o rețea locală ce nu are conexiune TCP/IP cu alte rețele puteți să vă alegeți numere după cum doriți. Insă, pentru mașini legate la Internet, numerele sunt date de către o organizație centrală, și anume NIC (Network Information Center).
Pentru citirea mai ușoară, adresele IP sunt împărțite în patru numere de 8 biți numite octeți. De exemplu, quark.physics.groucho.edu are adresa IP 0x954C0C04 care este scrisă ca 149.76.12.4. Acest format este deseori numit ????dotted quad notation?????.
Alt motiv pentru care se folosește această notație este că adresele IP sunt împărțite in numere de rețea, care sunt conținute in octeții din față, și numere de gazde, care reprezintă restul. Când cereți de la NIC adrese IP, nu veți obține câte o adresă pentru fiecare gazdă pe care veți vrea să o folosiți ci veți obține un număr de rețea și veți putea folosi toate adresele IP valide în cadrul acestui rețele.
In funcție de dimensiunea rețelei, partea din adresa IP care reprezintă numărul de gazdă (host number) poate fi mic sau mare. Pentru diferitele nevoi, există câteva clase de rețele, definind diferite impărțiri ale adreselor IP:
Clasa A cuprinde rețelele de la 1.0.0.0 până la 127.0.0.0. Numărul de rețea este conținut în primul octet. Aceasta oferă un 24 de biți pentru numărul gazdei, permițănd în jur de 1,6 milioane de gazde.
Clasa B conține rețelele de la 128.0.0.0 pâna la 191.255.0.0; numărul de rețea este în primii doi octeți. Aceasta permite 16320 rețele cu câte 65024 gazde fiecare.
Clasa C conține rețelele de la 192.0.0.0 până la 223.255.255.0 cu numărul de rețea fiind conținut în primii trei octeți. Aceasta permite existența a aproape 2 milioane de rețele cu câte 254 de gazde fiecare.
Clasele D,E și F conțin adrese între 224.0.0.0 pâna la 254.0.0.0 și sunt fie experimentale fie sunt rezervate pentru viitor și nu specifică nici o rețea.
Dacă ne întoarcem la exemplul din capitolul precedent, vedem că 149.76.12.4, adresa lui quark, este o adresa de clasă B.
Poate că ați observat că nu toate valorile din listele de mai sus se puteau folosi ca adrese de gazde. Aceasta este pentru că numerele de gazde cu toți octeții 0 sau 255 sunt rezervate pentru scopuri speciale. O adresă unde toate părțile corespunzătoare gazdei sunt zero se numește adresă de rețea iar dacă toate părțile corespunzătoare gazdei sunt 1 se numește adresă broadcast????. Aceasta din urmă se referă simultan la toate gazdele dintr-o anumită rețea. Astfel 149.76.255.255 nu este o adresă de gazdă validă, dar se referă la toate gazdele rețelei 149.76.0.0.
Există două adrese de rețea ce sunt rezervate, și anume 0.0.0.0 și 127.0.0.0. Prima se numește ruta implicită (default route), iar cea din urmă se numește adresa loopbak????. Ruta implicită are legătură cu felul în care IP-ul rutează datagramele, despre care vom vorbi mai jos.
Rețeaua 127.0.0.0 este rezervată pentru traficul IP local către gazda locală. De obicei, adresa 127.0.0.1 va fi asociată unei interfețe speciale numită interfață loopback , care se comportă ca un circuit închis. Orice pachet IP trimis prin această interfață, va fi returnat ca și cum ar fi venit de la o mașină din rețea. Acesta vă oferă posibilitatea să dezvoltați și să testați software de rețea fară să folosiți o rețea reală. Altă aplicație folositoare este când vreți să folosiți software de rețea pe o mașină care nu este în rețea. Aceasta nu este atât de neobișnuit pe cât sună; de exemplu multe gazde UUCP nu au conectivitate IP de loc, însă vor rula serverul de news INN. Pentru a funcționa bine, INN cere interfața loopback.