19
Protocoalele ARP, RARP, DHCP 1. NOŢIUNI INTRODUCTIVE Pentru a reduce din complexitatea proiectării, majoritatea reţelelor sunt organizate sub forma unei serii de straturi sau niveluri, fiecare dintre ele construit peste cel de dedesubt. Numărul de niveluri, numele fiecărui nivel, conţinutul şi funcţia sa variază de la reţea la reţea. Oricum, în toate reţelele, scopul fiecărui nivel este să ofere anumite servicii nivelurilor superioare, protejându-le totodată de detaliile privitoare la implementarea efectivă a serviciilor oferite. Nivelul n de pe o maşină conversează cu nivelul n de pe altă maşină. Regulile şi convenţiile utilizate în conversaţie sunt cunoscute sub numele de protocolul nivelului n. În principal, un protocol reprezintă o înţelegere între părţile care comunică, asupra modului de realizare a comunicării. În figura 1 este ilustrată o reţea cu cinci niveluri. Entităţile care conţin niveluri corespunzătoare de pe maşini diferite se numesc egale. Cu alte cuvinte, entităţile egale sunt cele care comunică folosind protocolul. Fig. 1 – Niveluri, protocoale şi interfeţe 1 Nivel 5 Nivel 5 Protocolul nivelului 5 Nivel 4 Nivel 4 Protocolul nivelului 4 Nivel 3 Nivel 3 Protocolul nivelului 3 Nivel 2 Nivel 2 Protocolul nivelului 2 Nivel 1 Nivel 1 Protocolul nivelului 1 Interfaţ a 1/2 Interfaţ a 2/3 Interfaţ a 3/4 Interfaţ a 4/5 Mediu fizic Gazda 1 Gazda 2

Protocoalele Arp, Rarp, Dhcp

Embed Size (px)

Citation preview

Page 1: Protocoalele Arp, Rarp, Dhcp

Protocoalele ARP, RARP, DHCP

1. NOŢIUNI INTRODUCTIVE

Pentru a reduce din complexitatea proiectării, majoritatea reţelelor sunt organizate sub forma unei serii de straturi sau niveluri, fiecare dintre ele construit peste cel de dedesubt. Numărul de niveluri, numele fiecărui nivel, conţinutul şi funcţia sa variază de la reţea la reţea. Oricum, în toate reţelele, scopul fiecărui nivel este să ofere anumite servicii nivelurilor superioare, protejându-le totodată de detaliile privitoare la implementarea efectivă a serviciilor oferite.

Nivelul n de pe o maşină conversează cu nivelul n de pe altă maşină. Regulile şi convenţiile utilizate în conversaţie sunt cunoscute sub numele de protocolul nivelului n. În principal, un protocol reprezintă o înţelegere între părţile care comunică, asupra modului de realizare a comunicării.

În figura 1 este ilustrată o reţea cu cinci niveluri. Entităţile care conţin niveluri corespunzătoare de pe maşini diferite se numesc egale. Cu alte cuvinte, entităţile egale sunt cele care comunică folosind protocolul.

Fig. 1 – Niveluri, protocoale şi interfeţe

În realitate, nici un fel de date nu sunt transferate direct de pe nivelul n al unei maşini pe nivelul n al altei maşini. Fiecare nivel transferă datele şi informaţiile de control nivelului imediat inferior, până când se ajunge la nivelul cel mai de jos. Sub nivelul 1 se află mediul fizic prin care se produce comunicare efectivă. În fig. 1, comunicarea virtuală este reprezentată prin linii punctate, iar comunicarea fizică prin linii continue.

O mulţime de niveluri şi protocoale este numită arhitectură de reţea. Există mai multe arhitecturi de reţea: modelul ISO/OSI/RM, modelul TCP/IP, modelul Netware/Novell şi modelul Xerox Network System. Protocoalele ARP, RARP şi DHCP sunt folosite în cadrul modelului TCP/IP (vezi anexa 1).

1

Nivel 5 Nivel 5Protocolul nivelului 5

Nivel 4 Nivel 4Protocolul nivelului 4

Nivel 3 Nivel 3Protocolul nivelului 3

Nivel 2 Nivel 2Protocolul nivelului 2

Nivel 1 Nivel 1Protocolul nivelului 1

Interfaţa 1/2

Interfaţa 2/3

Interfaţa 3/4

Interfaţa 4/5

Mediu fizic

Gazda 1 Gazda 2

Page 2: Protocoalele Arp, Rarp, Dhcp

Protocoalele ARP, RARP, DHCP

2. MODELUL TCP/IP

Modelul de referinţă utilizat în strămoşul tuturor reţelelor de calculatoare a fost ARPANET-ul, o reţea de cercetare sponsorizată de către DoD (U.S. Department of Defense). Reţeaua a ajuns să conecteze între ele, utilizând linii telefonice închiriate, sute de reţele universitare şi guvernamentale. Atunci când au fost adăugate, mai târziu, reţele prin satelit şi radio, interconectarea acestora cu protocoalele existente a pus diferite probleme. Era nevoie de o nouă arhitectură de referinţă. De aceea, posibilitatea de a interconecta fără probleme mai multe tipuri de reţele a reprezentat de la bun început un obiectiv de proiectare major. Această arhitectură a devenit cunoscută mai târziu sub denumirea de modelul de referinţă TCP/IP, dată după numele celor două protocoale fundamentale utilizate. Un alt obiectiv major a fost ca reţeaua să poată supravieţui pierderii echipamentelor din subreţea fără a fi întrerupte conversaţiile existente. DoD dorea ca, atâta timp cât funcţionau maşina sursă şi maşina destinaţie, conexiunile să rămână intacte, chiar dacă o parte din maşini sau din liniile de transmisie erau brusc scoase din funcţiune. Mai mult, era nevoie de o arhitectură flexibilă, deoarece se aveau în vedere aplicaţii cu cerinţe divergente, mergând de la transferul de fişiere până la transmiterea vorbirii în timp real.

Numărul reţelelor, maşinilor şi utilizatorilor conectaţi la ARPANET a crescut rapid după ce TCP/IP a devenit, la 1 ianuarie 1983, unicul protocol oficial. Când au fost conectate NSFNET şi ARPANET, creşterea a devenit exponenţială. S-au alăturat multe reţele regionale şi s-au realizat legături cu reţele din Canada, Europa şi Pacific. Pe la mijlocul anilor 80,

lumea a început să vadă colecţia de reţele ca fiind un internet, iar apoi ca fiind Internet-ul. Creşterea a continuat Exponenţial şi în 1990 Internet-ul ajunsese să cuprindă 3000 de reţele şi 200.000 de calculatoare. În 1992 a fost ataşată gazda cu numărul 1.000.000. În 1995 existau mai multe coloane vertebrale (backbone-uri), sute de reţele de nivel mediu (adică regionale), zeci de mii de LAN-uri, milioane de gazde şi zeci de milioane de utilizatori. Mărimea Internet-ului se dublează arpoximativ la fiecare an (Paxxon, 1994).

Substanţa care ţine legat Internet-ul este modelul de referinţă TCP/IP şi stiva de protocoale TCP/IP. O maşină „este pe internet” dacă foloseştre stiva de protocoale TCP/IP, are o adresă IP şi are posibilitatea de a trimite pachete IP către toate celelalte maşini de pe Internet.

Dată fiind creşterea exponenţială, vechiul mod informal de funcţionare a Internet-ului nu mai este acceptabil. În ianuarie 1992 a fost înfiinţată Societatea Internet, cu scopul de a promova utilizarea Internet-ului şi, probabil, de a prelua în cele din urmă administrarea sa.

Tradiţional, Internet-ul a avut patru aplicaţii principale, după cum urmează:1. Poşta electronică;2. Ştiri;3. Conectare la distanţă;4. Transfer de fişiere.

Până la începutul anilor 1990 Internet-ul a fost foarte populat cu cercetări din domeniul academic, guvernamental şi industrial. O aplicaţie nouă, WWW (World Wide Web), a schimbat toată situaţia şi a adus în reţea milioane de noi utilizatori care nu fac parte din mediul academic. Această aplicaţie, inventată de fizicianul Tim Berners Lee de la CERN, nu a modificat nici una din

2

Page 3: Protocoalele Arp, Rarp, Dhcp

Protocoalele ARP, RARP, DHCP

facilităţile existente, în schimb le-a făcut mai uşor de folosit. Împreună cu programul de navigare Mosaic, scris la Centrul Naţional pentru Aplicaţiile Supercalculatoarelor, WWW-ul a făcut posibil ca un sit să pună la dispoziţie un număr de pagini de informaţii conţinând text, poze, sunet şi chiar video, în fiecare pagină existând legături către alte pagini.

Clienţii, serverele, imprimantele, bazele de date relaţionale, dispozitivele de interconectare formează componentele unei reţele locale. Acestea realizează încapsularea şi decapsularea datelor pentru a-şi îndeplini toate sarcinile (transmitere e-mail-uri, editare texte, scanare, acces la baze de date).

Pentru a asigura o comunicare efectivă între dispozitivele din reţea, routerele, dispozitivile care dirijeaza traficul din retea, trebuie să lucreze împreună. Trebuie să existe deci un set de reguli prin care routerele şi alte dispozitive din reţea să se înţeleagă în privinţa dirijării, direcţionării pachetelor. Aceste reguli sunt concretizate prin existenţa unor protocoale (ARP, RARP, protocoale de rutare).

2.1. Nivelul reţea – determinarea căii de urmat

Un router este un dispozitiv care asigură comunicarea între două sau mai multe reţele distincte. Routerul foloseşte schema de adresă pentru nivel 3 (adrese logice – adrese IP, IPX) pentru a dirija pachetele între diversele reţele, căutând calea cea mai bună pentru aceste pachete. Când un router forward-ează un pachet, îi înlocuieşte informaţia de nivel 2 cu propria adresă, deci adresarea de nivel 2 rămâne foarte importantă.

Comunicarea într-o reţea (bazată pe comutarea de pachete!) este echivalentă cu alegerea unui drum într-un graf. Există nenumaraţi algoritmi care tratează acest gen de probleme, dar pentru cazul mai special al unei reţele (un graf dinamic, în care anumite legături între noduri pot fi inaccesibile pentru o perioadă de timp (mai mică, mai mare sau chiar definitiv) se potrivesc foarte bine doi algorimi. Aceştia stau la baza implementării celor două tipuri de protocoale de rutare folosite: link-state, respectiv distance-vector.

Chiar dacă vom trata în continuare aspecte legate de adresarea la nivelul 3, vom vedea că practic rămâne foarte importantă şi adresarea la nivelul 2. Una din problemele ce apar este faptul că trebuie făcută o trecere de la adresarea de nivel 2 la adresarea de nivel 3 şi invers. Aceste probleme sunt rezolvate şi ele cu ajutorul unor protocoale specifice (ARP, RARP).

Fig. 2 – Fiecare interfaţă a unui router are propria adresă IP şi propria adresă MAC

3

Page 4: Protocoalele Arp, Rarp, Dhcp

Protocoalele ARP, RARP, DHCP

Una din necesităţile pe care trebuie să le aibă un dispozitiv ce face parte dintr-o reţea este să aibă un identificator care să fie unic. Dacă această condiţie nu este îndeplinită, adică există două dispozitive într-o reţea cu acelaşi identificator, comunicarea între cele două dispozitive, precum şi între oricare dintre ele şi oricare alt dispozitiv nu va mai putea fi făcută corect, pentru că există ambiguităţi. Cine ar trebui să primească informaţia?

Am spus că un router asigură interconectarea mai multor reţele. Aceasta implică că routerul face parte din toate reţelele pe care le interconectează. Cum fiecare dispozitiv dintr-o reţea trebuie să aibă un identificator unic în reţeaua respectivă, înseamna că routerul va avea identificatori diferiţi pentru fiecare din reţelele din care face parte.

Practic fiecare interfaţă a routerului („partea” din router care aparţine unei reţele, atât fizică cât şi logică – ethernet, seriale) va avea o adresă proprie atât la nivel 3 (IP) cât şi la nivel 2 (MAC).

Fig. 3 – Interfeţele unui router trebuie să aibă adrese din reţele diferite

De asemenea, adresele logice ale interfeţelor trebuie să aparţină unor reţele diferite, întrucât interfeţele sunt părţi ale routerului ce aparţin unor reţele diferite.

2.2. Cum se asignează adresele IP ?

Ajungând la problematica adresării de nivel 3, trebuie să reamintim că aceste adrese sunt adrese logice. Spre deosebire de nivelul 2, unde adresele MAC erau înscrise în ROM-ul plăcii de reţea de către producătorul acesteia, la nivelul 3 adresele trebuiesc asignate de către administratorul de reţea.

Există două metode de alocare a acestor adrese: alocare statică şi alocare dinamică. Numele lor sunt destul de sugestive.

Prima dintre ele constă în atribuirea de adrese pentru fiecare dispozitiv din reţea, explicit, de către administratorul de reţea.

Avantajul acestei metode de alocare a adreselor este simplitatea, securitatea şi overhead-ul practic inexistent. Este o soluţie bună pentru reţele de dimensiuni mici sau pentru reţele mai mari, dar care nu îşi schimbă foarte mult configuraţia.

Dezatantajele se materializează prin multă muncă de administrare şi o ţinere strictă a evidenţei (tot de către administratorul de reţea).

Alocarea dinamică de adrese este de preferat în cazul reţelelor de dimensiune mare sau a reţelelor care îşi schimbă configuraţia frecvent. În acest caz, administratorul de reţea

4

Page 5: Protocoalele Arp, Rarp, Dhcp

Protocoalele ARP, RARP, DHCP

instruieşte un server care va distribui adresele logice staţiilor din retea, în coloborare cu acestea.

Cele mai cunoscute protocoale pentru asignarea de adrese IP în mod dinamic sunt următoarele: BOOTP, RARP, DHCP.

2.3. Căutarea adreselor

Protocolul Ethernet identificã gazdele printr-un numãr pe 6 octeţi, care nu are nimic în comun cu o adresã IP. Din cauza aceasta este nevoie de un mecanism pentru a face legătura între adrese IP şi adrese Ethernet. Acesta este aşa numitul Adress Resolution Protocol (ARP) - protocol de căutare al adreselor. De fapt, ARP nu este legat de Ethernet neapărat, ci este folosit şi la alte tipuri de reţele, ca de exemplu la reţelele radio. Ideea care stă la baza ARP este ceea ce fac cei mai mulţi oameni când vor să-l găseascã pe dl X între 150 de oameni: merg şi îl strigă pe nume, fiind sigur că acesta va răspunde dacă este acolo.

Când ARP vrea să găsească adresa Ethernet corespunzãtoare unei adrese IP, foloseşte o proprietate a protocolului Ethernet numită „rãspândire” (broadcasting), când o datagramă este adresată simultan tuturor staţiilor din reţea. Diagrama aceasta conţine o întrebare pentru a afla adresa IP. Fiecare gazdã din reţea compară adresa IP din datagrama primită cu propria adresã IP şi dacă se potrivesc, îi întoarce un răspuns ARP gazdei care a făcut cererea. Această gazdă poate extrage acum, din rãspuns, adresa Ethernet.

Desigur ne putem întreba cum poate şti o gazdă care din milioanele de maşini cu Ethernet din lume este gazda căutată şi cum poate şti că aceasta posedã interfaţă Ethernet. Aceste întrebări îşi află răspunsul în ceea ce se numeşte rutare (routing), care se ocupã cu găsirea locaţiei fizice a unei gazde într-o reţea. Acesta va fi subiectul următoarelor secţiuni.

Odatã ce o gazdã a descoperit o adresã Ethernet, o va ţine minte astfel încât să nu mai trebuiască să întrebe din nou data viitoare când va vrea să trimită o datagramă gazdei cu pricina. Însă nu este bine să păstreze acestă informaţie totdeauna; de exemplu, gazda de la distanţă îşi poate schimba placa de reţea din cauza problemelor tehnice, deci intrarea ARP devine invalidă. Pentru a forţa altă întrebare, intrările în memoria ARP trebuiesc şterse din când în când.

Câteodatã este necesarã găsirea adresei IP asociate unei adrese Ethernet date. Aceasta se întâmplă când o maşină fără disc vrea să booteze de pe un server din reţea, situaţie des întâlnită în reţelele locale. Un client fãrã disc nu are nici o informaţie despre el însuşi - în afară de adresa Ethernet! Aşa că va trimite un mesaj răspândit (broadcast) conţinând o rugăminte către serverul de boot pentru a-i spune adresa sa IP. Pentru aceasta există alt protocol numit Reverse Adress Resolution Protocol (RARP). Împreunã cu protocolul BOOTP, el defineşte metoda prin care clienţii fără disk pot boota de pe un server din reţea.

2.4. La ce nivel se verifică o adresă MAC ?

Problema adresării prin adrese fizice (adrese MAC) apare la nivelul legatură de date, mai exact atunci când nivelurile superioare (transport/TCP şi reţea/IP) trimit nivelului legatură de date un pachet cu o adresă IP destinaţie şi o adresă IP sursă cunoscute. Sarcina nivelului legatură de date (sau acces la reţea în modelul TCP/IP) este acela de a completa corect adresele MAC pentru sursă şi destinaţie astfel încât comunicarea să aiba loc în mod corect. Pentru a se putea transmite date între două staţii, sunt neaparat necesare atât adresa MAC, cât şi adresa IP.

5

Page 6: Protocoalele Arp, Rarp, Dhcp

Protocoalele ARP, RARP, DHCP

3. PROTOCOLUL ARP – Address Resolution Protocol

Pentru ca două dispozitive dintr-o reţea locală să poată comunica, dispozitivul care transmite trebuie să cunoască atât adresa MAC, cât şi adresa IP a dispozitivului destinaţie. Atunci când se doreşte comunicarea cu un dispozitiv a cărui adresă IP este cunoscută, trebuie aflată adresa sa MAC. Suita de protocoale TCP/IP dispune de un protocol, numit ARP, care poate obţine în mod automat adresa MAC a unei staţii cu un IP cunoscut.

Există o multitudine de moduri în care nodurile din reţea pot determina adresa MAC pe care o vor folosi ca adresă destinaţie în încapsularea de nivel 2. Fiecare staţie va ţine o tabelă cu toate adresele IP şi MAC ale calculatoarelor din aceeaşi reţea locală. Aceste tabele se numesc tabele ARP şi cu ajutorul lor se mapează adrese IP la adrese MAC. Tabelele ARP sunt reţinute în RAM, ceea ce înseamnă că trebuie refăcute la fiecare rebootare a staţiei.

Administratorul de reţea poate modifica manual intrările din această tabela prin mijloace puse la dispoziţie de către sistemul de operare, însă aceste modificari sunt complet excepţionale şi în marea majoritate a cazurilor, tabelele sunt gestionate exclusiv de către dispozitivul care le menţine.

3.1. Cereri ARP

Când un calculator sursă află adresa IP a destinatiei cu care doreşte să comunice, va căuta adresa de MAC a acestuia în tabela ARP proprie. Dacă nu poate găsi adresa în această tabelă, staţia va iniţia o procedură numită cerere ARP. Un pachet special de cerere ARP este trimis prin broadcast de adresa MAC (ff-ff-ff-ff-ff-ff ) în reţeaua locală pentru a fi recepţionat de toate dispozitivele. Datorită faptului că pachetul a fost trimis pe adresa de broadcast, toate staţiile din reţeaua locală îl vor primi şi îl vor trimite nivelului reţea pentru a fi analizat. Dacă adresa IP a dispozitivului corespunde adresei destinaţie din pachet, dispozitivul va răspunde. În caz contrar, pachetul este ignorat.

Sursa nu ştie adresa MAC a destinaţiei, dar îi ştie adresa IP. Cadrul cu cererea ARP este trimis prin broadcast MAC tuturor staţiilor din reţeaua locală.

Realizarea broadcastului de nivel 2 înseamnă că se setează adresa destinaţie din cadrul headerului adăugat de către nivelul legatură de date în procesul de încapsulare la valoarea ff-ff-ff-ff-ff-ff. Ori de câte ori o staţie primeşte un cadru în care adresa destinaţie are această valoare, acest cadru este tratat ca şi cum ar fi fost destinat staţiei care l-a primit şi este deci trimis mai departe nivelului reţea. Acest mecanism ne asigură că orice pachet de broadcast de nivel 2 va fi recepţionat şi transmis nivelului reţea de către toate staţiile la care ajunge.

3.2. Cadrul ARP

Fig. 4

6

Header MACDestinatieFf-ff-ff-ff-ff-ffSursa00-00-BC-12-34-56

Headerul cadruluiHeaderul MAC DestinaţieFf-ff-ff-ff-ff-ffSursa00-00-BC-12-34-56

Headerul IPDestinaţie192.168.1.100Sursa192.168.1.205

Mesaj de cerere ARPCare este adresa ta MAC?

Page 7: Protocoalele Arp, Rarp, Dhcp

Protocoalele ARP, RARP, DHCP

Pachetele de cerere ARP au un format special, a cărui structură este prezentată în figura de mai sus. Un astfel de pachet are o dimensiune a header-ului de 28 de octeţi şi conţine, în afară de informaţiile adăugate la încapsulare de nivelurile legătură de date şi reţea, doar informatiile necesare recunoaşterii faptului că este o cerere ARP.

Toate dispozitivele din segmentul local de reţea vor investiga cadrul şi vor verifica dacă adresa proprie de IP este aceeaşi cu adresa IP destinaţie.

Fig. 5

Pentru că pachetul este trimis având ca adresă destinaţie adresa de broadcast pe adrese MAC, toate staţiile din reţeaua locală îl primesc şi îl analizează. Nivelul reţea verifică adresa IP destinaţie înscrisă în headerul IP şi o compară cu adresa proprie.

– Dacă nu – ignoră cadrul;– Dacă da:

– Citeşte restul pachetului– Trimite raspuns ARP

– Răspunsul ARP:– Ofera adresa MAC a dispozitivului

Fig. 6

Dacă o staţie determină că adresa IP destinaţie din cadrul pachetului de cerere ARP este egală cu adresa proprie IP, aceasta va pregăti un pachet de răpuns ARP. Acest pachet va avea ca adresă IP destinaţie adresa IP a staţiei care a iniţiat cererea ARP. Adresa sursă încapsulată la nivelul reţea va fi egală cu adresa IP pentru care se dorea găsirea adresei MAC corespunzătoare, deci cea a staţiei care trimite pachetul de răspuns ARP. Cadrul care încapsulează acest pachet va fi adresat către adresa MAC a calculatorului care a făcut cererea ARP şi, în cadrul câmpului pentru adresa MAC, sursa va completa practic răspunsul la cererea ARP făcută, adică adresa MAC a staţiei care răspunde.

3.3. Durata de viaţă a cache-ului ARP

Pentru a gasi adresa MAC mapată unei adrese IP către care se doreşte transmiterea unui pachet, un dispozitiv din reţea îşi va verifica mai întâi tabela ARP proprie şi numai dacă nu găseşte adresa dorită în această tabelă va face o cerere ARP. Această procedură introduce necesitatea ca tabelele de ARP să conţină informaţii actuale, altfel pachetele vor fi trimise la adrese greşite. Pe baza tabelei ARP se trimite un pachet către o placă de reţea destinaţie sau

7

IP HeaderDestinatie192.168.1.100Sursa192.168.1.205

EU ?

Sursa: cerere ARPIP-ul propriu se potriveşte!!!

Adresa mea de MAC

nunu

Page 8: Protocoalele Arp, Rarp, Dhcp

Protocoalele ARP, RARP, DHCP

alta, deci corespondeţa adresă IP – adresă MAC reţinută în această tabelă trebuie să fie corectă la orice moment dat.

Însă adresele IP nu sunt fixe şi sunt asignate diverselor dispozitive de către administratorul de reţea, ceea ce înseamnă că ele se pot schimba între două momente de timp. Dacă tabelele ARP nu ar fi din când în când înnoite, s-ar putea ajunge la o situaţie când o mapare între o adresă IP şi una MAC reţinută într-un cache ARP să nu mai corespundă realităţii, făcând astfel comunicarea imposibilă. Pentru a evita această problemă, dispozitivele de reţea stabilesc un timp de viaţa pentru o intrare în cache-ul ARP. După expirarea acestui interval de timp, intrarea în tabelă va fi invalidată. Procesul de înlăturare a intrărilor vechi din tabelele ARP poartă numele de îmbătrânire.

Pentru o flexibilitate sporită şi pentru a reduce overhead-ul cauzat de cererile ARP, s-a adăugat un mecanism prin care, ori de câte ori o staţie primeşte un pachet cu informaţii noi despre un dispozitiv din reţea, adaugă aceste informaţii la tabela ARP proprie.

4. PROTOCOLUL RARP – Reverse Address Resolution Protocol

RARP (Reverse Adress Resolution Protocol) este un protocol simplu care are ca efect alocarea automată a adreselor logice staţiilor din reţea. Staţiile îşi cunosc adresele proprii MAC şi doresc să afle adresa lor de IP. Acestea trimit o cerere RARP în reţea. Serverul RARP din reţea va răspunde cererii şi va asigna o adresă IP staţiei respective.

Acest protocol este folosit de către dispozitivele care au o dependenţă mare de reţea (terminale fără disc) şi de obicei partea din protocol ce ţine de client este „arsă” în ROM-ul dispozitivului.

Protocolul Reverse ARP este asemănător cu ARP, în sensul că are acelasi scop: asocierea unei adrese MAC cu o adresă IP.

RARP este folosit mai ales de către staţiile fără discuri. Aceste staţii îşi cunosc la momentul bootării numai adresa fizică MAC, fără a şti care este adresa IP proprie. Prin RARP, un calculator îşi poate afla adresa IP pe baza adresei MAC a plăcii sale de reţea.

Staţiile fără disc nu dispun de suport magnetic pe care să-şi poată salva configuraţia IP, pentru a-şi putea reface setările de reţea după ce au fost scoase de sub tensiune. În consecinţă, aceste statii trebuie să-şi afle adresa IP la fiecare bootare.

Configuratia IP pentru fiecare staţie ce foloseste protocolul RARP pentru a-şi afla această configuraţie este stocată pe serverul RARP. În timpul bootării, staţiile fără disc au rutine speciale în EPROM care le permit să afle, printr-o cerere RARP, care le este adresa IP.

4.1. Cadrul RARP vs. ARP

8

Page 9: Protocoalele Arp, Rarp, Dhcp

Protocoalele ARP, RARP, DHCP

Fig. 7

Atât protocolul ARP, cât şi RARP, folosesc acelaşi tip de pachet, numit pachet cerere ARP, pentru a face o cerere. Ambele pachete de cerere sunt trimise prin broadcast de adresa MAC. Deosebirile între cele două cereri constau în încapsularea de la nivel reţea, mai exact cerererea ARP se transmite direcţionat (se cunoaste IP-ul destinatie şi se doreşte aflarea adresei MAC), pe când cererea RARP se trimite prin broadcast IP pe adresa 255.255.255.255, fără să se completeze câmpul adresă IP sursă, acesta se iniţializează la valoarea 0.

4.2. Clientul RARP

Atunci cand un client RARP primeşte un răspuns la o cerere făcută, va desfăşura următoarea procedură:– îşi setează adresa IP proprie la adresa destinaţie primită în răspunsul RARP;– îşi copiază această adresă proprie în RAM şi o foloseşte din acest moment înainte ca adresă proprie în toate încapsulările şi verificările de nivel 3 realizate;– începe să funcţioneze ca o staţie normală în reţeaua locală cu noile setări efectuate;.

9

Headerul cadrului

Headerul MAC

DestinatieFf-ff-ff-ff-ff-ffSursa00-00-8C-12-34-56

IP HeaderDestinatie255.255.255.255Sursa0.0.0.0

Mesaj cerere ARPCare este adresa MEA de IP?

Headerul cadrului

Headerul MACDestinatieFf-ff-ff-ff-ff-ffSursa00-00-8C-12-34-56

IP HeaderDestinatie192.168.1.100Sursa192.168.1.205

Mesaj cerere ARPCare este adresa TA de MAC?

Page 10: Protocoalele Arp, Rarp, Dhcp

Protocoalele ARP, RARP, DHCP

– la orice scoatere de sub tensiune, aceste setări sunt pierdute şi trebuie refăcute la rebootare prin aceeaşi procedură.

4.3. Comparatie ARP & RARP

Similarităţi:– ambele se ocupă cu maparea adreselor IP la adrese MAC– ambele folosesc acelaşi tip de pachet;– ambele folosesc adrese de broadcast pentru a-şi îndeplini scopul.

Similarităţile principale între ARP şi RARP sunt legate de faptul că folosesc acelaşi format de pachet pentru a trimite cereri şi de faptul că se ocupă de aceeaşi problemă şi anume maparea adreselor IP la adrese MAC.

Ambele protocoale folosesc un broadcast pentru a trimite cererile făcute.Diferenţe:

ARP - obţine adresa MAC a altor staţii folosind o adresă IP;RARP – obţine adresa proprie IP folosind adresa proprie MAC;Pachetele ARP folosesc broadcast pe adrese MAC (ff-ff-ff-ff-ff-ff);RARP foloseşte adresa IP de broadcast (255.255.255.255), precum şi adresa MAC de broadcast (ff-ff-ff-ff-ff-ff);Tabelele ARP sunt menţinute local;Tabelele RARP sunt menţinute de către serverul RARP;Răspunsul ARP este folosit de staţia locală pentru a-şi înnoi cache-ul ARP;Răspunsul RARP este folosit de o staţie pentru a-şi configura parametrii locali IP.

Deosebirile între ARP şi RARP sunt legate în primul rând de scopul utilizării celor două: în timp ce ARP este folosit pentru aflarea adresei MAC a unei alte staţii cu o adresă IP cunoscută, pe când RARP este utilizat pentru găsirea adresei IP proprii în cazul cunoaşterii adresei MAC. Pe când pentru o cerere ARP, broadcastul este exclusiv pe adrese MAC, pachetul RARP este trimis atât pe o adresă de broadcast de nivel 2, cât şi printr-un broadcast general IP.

În timp ce tabelele ARP sunt menţinute local de către fiecare nod din retea, tabelele RARP sunt ţinute centralizat pe serverul RARP.

O ultimă diferenţă constă în modul de folosire a pachetului răspuns. Cu ajutorul pachetului de răspuns ARP se înnoieşte cache-ul ARP local, pe cand pachetul de răspuns RARP este utilizat de către o staţie pentru a-şi configura proprii parametri de reţea IP.

5. PROTOCOLUL BOOTP – BOOTstrap Protocol

BOOTP (BOOTstrap Protocol) este un protocol care are aceeaşi funcţionalitate ca şi RARP. Modalitatea de obţinere a aceluiaşi efect diferă însă.

Clientul, un dispozitiv ce doreste să îşi afle adresa de IP, primeşte o datagramă UDP în care sunt incluse o adresă MAC şi o adresă de IP. Dacă adresa MAC îi corespunde, îşi asignează adresa IP din pachetul UDP recepţionat.

Serverul BOOTP ţine o tabelă în care pentru fiecare MAC este asociată o adresa de IP. Această tabela este construită de administratorul de reţea, de unde concluzia că în acest caz avem o administrare semi-statică (statică dat centralizată).

6. PROTOCOLUL DHCP – Dinamic Host Configuration Protocol

10

Page 11: Protocoalele Arp, Rarp, Dhcp

Protocoalele ARP, RARP, DHCP

DHCP (Dinamic Host Configuration Protocol) este o îmbunătăţire a BOOTP-ului, fiind mai rapid si mai dinamic. Serverul va conţine un domeniu de adrese IP care pot fi alocate staţiilor. Aceste adrese vor fi alocate dinamic, pe măsura solicitării lor de către clienţi.

La bootare, clientul DHCP intră în starea de iniţializare, în care trimite un mesaj broadcast (destinat tuturor staţiilor din reţea) -- DHCP-DISCOVER, sub forma unui pachet UDP cu portul destinaţie BOOTP. După acest pas, clientul intră într-o stare de aşteptare şi asteaptă răspunsuri la cererea lui, care vin sub forma unor DHCP-OFFER din partea serverului. Clientul va selecta primul răspuns primit, după care va negocia cu serverul timpul cât poate păstra adresa logică asignată (lease time). Procesul se încheie cu o confirmare din partea serverului (DHCP-ACK).

La server trebuie configurat doar un domeniu de valori pentru adresele IP care pot fi asignate staţiilor care fac cereri DHCP.

DHCP este utilizat la obţinerea informaţiilor de reţea (adresă IP, server-e DNS, Gateway, etc) de la un server DHCP. Aceasta înseamnă că, dacă există un server DHCP ce rulează în reţeaua dvs., trebuie doar să-i specificaţi fiecărui client să utilizeze DHCP, iar acesta setează reţeaua singur. Bineînţeles, va trebui să configuraţi alte opţiuni, cum ar fi cele de wireless, ppp şi altele, dacă este necesar, înainte de a putea utiliza DHCP.

DHCP poate fi oferit de dhclient, dhcpcd, pump sau udhcpc. Fiecare modul DHCP are argumentele sale pro şi contra - iată un sumar.

Dynamic Host Configuration Protocol (DHCP – Protocol de configurare dinamică a gazdei) este un nou protocol pentru obţinerea unei adrese IP şi a altor instrucţiuni TCP/IP într-o retea IP. DHCP este mai flexibil decât RARP şi automatizează multe sarcini care trebuiau realizate manual în cazul RARP.7. CONCLUZII

Nivelul reţea furnizează servicii nivelului transport. El se poate baza fie pe circuite virtuale, fie pe datagrame. În ambele cazuri, sarcina sa principală este dirijarea pachetelor de la sursă la destinaţie. În subreţele bazate pe circuite virtuale, o decizie de dirijare se ia când este stabilit circuitul. În subreţele bazate pe datagrame, decizia este luată pentru fiecare pachet.

În reţelele de calculatoare sunt folosiţi mulţi algoritmi de dirijare. Dirijarea este calea cea mai scurtă, inundarea sau dirijarea bazată pe flux sunt algoritmi statici. Dirijarea după vectorul distanţelor şi dirijarea după starea legăturii sunt algoritmi dinamici. Cele mai noi reţele folosesc unul dintre aceşti algoritmi.

Subreţelele pot deveni congestionate, mărind întârzierea şi micşorând productivitatea pentru pachete. Proiectanţii reţelelor încearcă să evite congestia printr-o proiectare adecvată.

11

Fig. 8 – Protocolul DHCP

Page 12: Protocoalele Arp, Rarp, Dhcp

Protocoalele ARP, RARP, DHCP

Tehnicile includ modelarea traficului, specificaţi fluxului şi rezervarea lărgimii de bandă. Dacă apare congestia, ea trebuie tratată. Pot fi trimise înapoi pachete de şoc, încărcarea poate fi eliminată sau se pot aplica alte metode.

Reţelele diferă prin multe caracteristici, aşa că atunci când se conectează mai multe reţele, pot să apară probleme. Uneori problemele pot fi evitate prin trecerea ca prin tunel a unui pachet printr-o reţea ostilă, dar dacă reţeaua sursă şi cea destinaţie diferă, această abordare eşuează. Atunci când reţele diferite au dimensiunile maxime ale pachetelor diferite, se poate produce fragmentarea.

Internet-ul posedă o mare varietate de protocoale legate de nivelul reţea. Acestea includ protocolul de transport al datelor, IP, dar şi protocoale de control ICMP, ARP, RARP şi protocoalele de dirijare OSPF şi BGF. Internet-ul rămâne foarte repede fără adrese IP, şa că s-a dezvoltat o nouă versiune de IP, Ipv6.

BIBLIOGRAFIE

1. Andrew S. Tanenbaum – Reţele de calculatoare, Ediţia a treia, Pag. 16, 17, 26, 32-33 Editura Computer Press Agora, Tg-Mureş, 1998

2. Adrian Munteanu, – Reţele locale de calculatoare, proiectare şi administrare, Valerică Greavu Şerban Ediura Polirom, 2003, pag. 27 3. Site-uri Web:– www.rau.ro/cursuri/im_retele/Documentatie%20suplimentara/Protocoalele%20Nivelul%203%20% 96%20RETEA.doc

12

Page 13: Protocoalele Arp, Rarp, Dhcp

Protocoalele ARP, RARP, DHCP

– http:// co.pub.ro/curs_retele/radu/5_Nivelul_3_ protocoale .doc – http://thor.info.uaic.ro/~stefan/NavigareInternet/textCursuri/curs3.html – www.geocities.com/media_h/Romanian_Doc/Networking/Inpartirea_in_nivele.doc – www.cs.ubbcluj.ro/~rlupsa/edu/retele-2003/c11.html – http://telecom.etc.tuiasi.ro/telecom/staff/lscripca/CursRC.html – www.fotosearch.com

13