Astăzi vom studia protocolul IPv6. Versiunea anterioară a cursului CCNA nu necesita o familiarizare detaliată cu acest protocol, însă în a treia versiune 200-125, studiul său aprofundat este obligatoriu pentru a trece examenul. Protocolul IPv6 a fost dezvoltat cu ceva timp în urmă, însă mult timp nu a fost utilizat pe scară largă. Este foarte important pentru dezvoltarea ulterioară a internetului, deoarece este destinat eliminării dezavantajelor protocolului IPv4, extrem de răspândit.
Deoarece protocolul IPv6 este un subiect destul de amplu, l-am împărțit în două lecții video: Ziua 24 și Ziua 25. În prima zi ne vom dedica conceptelor de bază, iar în a doua vom analiza configurarea adreselor IP conform protocolului IPv6 pentru dispozitivele Cisco. Astăzi, așa cum facem de obicei, vom discuta trei teme: necesitatea IPv6, formatul adreselor IPv6 și tipurile de adrese IPv6.

Până acum, în lecțiile noastre am folosit adrese IP conform protocolului v4, și te-ai obișnuit cu faptul că acestea arată destul de simplu. Când ai văzut adresa afișată pe acest diapozitiv, ai înțeles perfect despre ce este vorba.
Însă adresele IP v6 arată complet diferit. Dacă nu ești familiarizat cu principiul de formare a adreselor în această versiune a protocolului de internet, în primul rând te va surprinde faptul că o adresă IP de acest tip ocupă foarte mult spațiu. În versiunea a patra a protocolului, aveam doar 4 numere zecimale, iar cu ele era totul simplu, dar imaginează-ți că va trebui să îi spui domnului X noua sa adresă IP de tip 2001:0db8:85a3:0000:0000:8a2e:0370:7334.

Dar nu te îngrijora – la sfârșitul acestei lecții video ne vom afla într-o poziție mult mai bună. Să analizăm mai întâi de ce a apărut necesitatea utilizării IPv6.

Astăzi, cea mai mare parte a oamenilor folosește IPv4 și este destul de mulțumită. De ce ar fi fost necesar să trecem la o nouă versiune? În primul rând, adresele IP din versiunea 4 sunt compuse din 32 de biți. Aceasta permite crearea a aproximativ 4 miliarde de adrese pe internet, adică numărul exact de adrese IP este 2^32. La momentul creării IPv4, dezvoltatorii considerau că un astfel de număr de adrese este mai mult decât suficient. Dacă vă amintiți, adresele acestei versiuni sunt împărțite în 5 clase: clasele active A, B, C și clasele rezervate D (multicast) și E (cercetare). Astfel, deși numărul de adrese IP funcționale reprezenta doar 75% din cele 4 miliarde, creatorii protocolului erau convinși că vor fi suficiente pentru întreaga umanitate. Totuși, în ceea ce privește dezvoltarea rapidă a internetului, din ce în ce mai mult s-a resimțit lipsa adreselor IP disponibile, iar dacă nu ar fi fost utilizarea tehnologiei NAT, adresele libere IPv4 s-ar fi terminat de mult. De fapt, NAT a devenit salvatorul acestui protocol de internet. De aceea a apărut necesitatea de a crea o nouă versiune a protocolului de internet, lipsită de deficiențele versiunii 4. Puteți întreba de ce s-a trecut direct de la versiunea a patra la a șasea. Aceasta se datorează faptului că versiunea 5, la fel ca versiunile 1, 2 și 3, au fost experimentale.
Așadar, adresele IP v6 au un spațiu de adresare de 128 de biți. Ce credeți, de câte ori s-a mărit numărul adreselor IP posibile? Probabil veți spune: „de 4 ori!”. Dar nu este așa, deoarece 234 este deja de 4 ori mai mult decât 232. Așadar, valoarea 2^128 este incredibil de mare – este egală cu 340282366920938463463374607431768211456. Aceasta este numărul de adrese IP disponibile prin protocolul IPv6. Aceasta înseamnă că puteți aloca o adresă IP oricărui lucru doriți: mașinii dvs., telefonului, ceasului de mână. Omul modern poate avea un laptop, câteva smartphone-uri, ceasuri inteligente, o casă inteligentă – un televizor conectat la internet, o mașină de spălat conectată la internet, întreaga casă, conectată la rețeaua Internet. Această cantitate de adrese permite realizarea conceptului de „internet al lucrurilor”, susținut de Cisco. Aceasta înseamnă că în viața dumneavoastră toate lucrurile sunt conectate la internet, iar fiecare dintre ele are nevoie de propria adresă IP. Cu IPv6, acest lucru este posibil! Fiecare om de pe Pământ poate utiliza milioane de adrese din această versiune pentru dispozitivele sale, și totuși vor rămâne prea multe adrese libere. Nu putem prognoza cum vor evolua tehnologiile, totuși putem spera că omenirea nu va ajunge în acea perioadă când pe Pământ va mai rămâne un singur computer. Se poate presupune că IPv6 va exista încă mult și bine. Să analizăm cum arată formatul unei adrese IP de a șasea versiune.

Aceste adrese sunt reprezentate sub forma a 8 grupuri de cifre hexadecimale. Aceasta înseamnă că fiecare semn al adresei are o lungime de 4 biți, astfel că fiecare grup de 4 astfel de semne constă din 16 biți, iar întreaga adresă are o lungime de 128 de biți. Fiecare grup de 4 semne este separat de grupul următor printr-o două puncte, spre deosebire de adresele IPv4, unde grupurile erau separate prin puncte, deoarece punctul este forma zecimală de reprezentare a numerelor. Deoarece este greu de reținut o astfel de adresă, există câteva reguli care permit scurtarea acesteia. Prima regulă spune că grupurile formate doar din zerouri pot fi înlocuite cu o dublă două puncte. O astfel de operațiune poate fi efectuată asupra fiecărei adrese IP doar o dată. Să vedem ce înseamnă acest lucru.
După cum puteți observa, în exemplul dat de adrese sunt trei grupuri de câte 4 zerouri. Numărul total de două puncte care separă aceste grupuri 0000:0000:0000 este 2. Astfel, dacă folosim două puncte ::, aceasta va indica că în acel loc al adresei se află grupuri de zerouri. Cum putem ști câte grupuri de zerouri reprezintă acest două puncte? Dacă privim forma scurtată a adresei, putem număra 5 grupuri de câte 4 caractere. Dar, având în vedere că știm că adresa completă este formată din 8 grupuri, înseamnă că două puncte indică 3 grupuri de câte 4 zerouri. Aceasta este prima regulă a formei scurtate a adresei.

A doua regulă stipulează că putem elimina zerourile inițiale din fiecare grup de caractere. De exemplu, grupul 6 din forma completă a adresei arată ca 04FF, iar forma sa scurtată va arăta ca 4FF, deoarece am eliminat zeroul inițial. Astfel, scrierea 4FF nu înseamnă decât 04FF.
Folosind aceste reguli, putem scurta orice adresă IP. Cu toate acestea, chiar și după scurtare, această adresă nu pare cu adevărat scurtă. Mai târziu vom discuta despre ce se poate face în acest sens, dar pentru moment rețineți aceste 2 reguli.
Să analizăm ce reprezintă anteturile adreselor versiunii IPv4 și IPv6.

Această imagine, pe care am preluat-o de pe internet, explică foarte bine diferența dintre cele două antete. După cum putem observa, antetul adresei IPv4 este mult mai complex și conține mai multe informații decât antetul IPv6. Dacă antetul este complex, routerul cheltuie mai mult timp procesându-l pentru a lua decizii de rutare, astfel încât utilizarea adreselor IP mai simple de versiune șase face ca routerele să funcționeze mai eficient. De aceea, IPv6 este mult mai bun decât IPv4.
Lungimea antetului IPv4, de la 0 la 31 de biți, ocupă 32 de biți. Fără a lua în considerare ultima linie Options și Padding, adresa versiunii 4 reprezintă o adresă de 20 de octeți, ceea ce înseamnă că dimensiunea sa minimă este de 20 de octeți. Lungimea adresei versiunii șase nu are o dimensiune minimă, iar o astfel de adresă are o lungime fixă de 40 de octeți.
În encabezamentul IPv4, înainte apare versiunea, urmată de lungimea encabezamentului IHL. În mod implicit, aceasta este de 20 de octeți, dar dacă în encabezament se specifică informații suplimentare, Opțiuni, aceasta poate avea o lungime mai mare. Dacă se folosește Wireshark, se poate citi valoarea Versiunii, care este 4, și valoarea IHL, care este 5, ceea ce înseamnă cinci blocuri verticale de 4 octeți (32 de biți) fiecare, fără a conta blocul Opțiuni.

Tipul serviciului Type of Service indică natura pachetului – de exemplu, pachet vocal sau pachet de date, deoarece traficul vocal are prioritate față de celelalte tipuri de trafic. Pe scurt, acest câmp indică prioritatea traficului. Lungimea totală Total Length reprezintă suma lungimii encabezamentului de 20 de octeți plus lungimea încărcăturii utile, care reprezintă datele transmise. Dacă acestea sunt 50 de octeți, atunci lungimea totală va avea valoarea de 70 de octeți. Identificarea pachetului Identification este folosită pentru a verifica integritatea pachetului, utilizând parametrul de control al sumelor encabezament Header Checksum. Dacă pachetul este fragmentat în 5 părți, fiecare dintre acestea trebuie să aibă același identificator – deplasarea fragmentului Fragment Offset, care poate avea valori de la 0 la 4, fiecare fragment având aceeași valoare a deplasării. Flagurile indică dacă deplasarea fragmentelor este permisă. Dacă nu doriți ca datele să fie fragmentate, setați flagul DF – don’t fragment. Există un flag MF – more fragment. Aceasta înseamnă că, dacă primul pachet este fragmentat în 5 părți, pentru al doilea pachet va fi setat 0, care înseamnă – fără alte fragmente! Astfel, ultimul fragment al primului pachet va fi marcat cu 4, astfel încât dispozitivul receptor să poată dezasambla ușor pachetul, adică să aplice defragmentarea.
Observați culorile utilizate în această diapozitiv. Cu roșu sunt indicate câmpurile care au fost excluse din encabezamentul IPv6. Cu albastru sunt prezentate parametrii care au trecut de la a patra la a șasea versiune a protocolului, într-o formă modificată. Câmpurile galbene au rămas neschimbate în ambele versiuni. Cu verde este arătat câmpul care a apărut pentru prima dată doar în IPv6.
Câmpurile Identification, Flags, Fragment Offset și Header Checksum au fost excluse deoarece, în condițiile actuale de transmitere a datelor, fragmentarea nu mai are loc și verificarea sumei de control nu este necesară. Cu mulți ani în urmă, când transmiterea datelor era lentă, fragmentarea era un fenomen destul de frecvent, dar astăzi se utilizează pe larg Ethernet conform standardului IEEE 802.3 cu un MTU de 1500 de octeți, iar fragmentarea nu mai apare.
TTL, sau timpul de viață al pachetului, este un contor cu numărătoare inversă – când timpul de viață ajunge la 0, pachetul este abandonat. De fapt, acesta reprezintă numărul maxim de salturi care pot fi efectuate în această rețea. Câmpul Protocol arată ce protocol, TCP sau UDP, este utilizat în rețea.
Header Checksum este un parametru depășit, așa că a fost exclus din noua versiune a protocolului. Urmează câmpurile cu adresa sursă de 32 de biți și adresa destinație de 32 de biți. Dacă avem vreo informație în linia Options, atunci valoarea IHL se schimbă de la 5 la 6, arătând că în antet există un câmp suplimentar.
În antetul IPv6 se folosește de asemenea versiunea Version, iar clasa de trafic Traffic Class corespunde câmpului Type of Service din antetul IPv4. Eticheta fluxului Flow Label este similară cu Traffic Class și este destinată simplificării rutării unui flux uniform de pachete. Payload Length indică lungimea sarcinii utile, sau dimensiunea câmpului de date situat în câmpul de sub antet. Lungimea propriu-zisă a antetului de 40 de octeți este constantă și, prin urmare, nu este menționată nicăieri.
Câmpul „următorul antet”, Next Header, indică ce tip de antet va avea următorul pachet. Aceasta este o funcție foarte utilă, care stabilește tipul următorului protocol de transport – TCP, UDP etc., și care va fi foarte solicitată în tehnologiile viitoare de transmisie a datelor. Chiar dacă folosești un protocol propriu, vei putea afla ce protocol va urma.
Numărul maxim de salturi sau Hop Limit este analog cu TTL din antetul IPv4, acesta fiind un mecanism de prevenire a ciclării rutării. Urmează câmpurile cu adresa sursă de 128 de biți și adresa destinație de 128 de biți. Întregul antet are o dimensiune de 40 de octeți. Așa cum am spus, IPv6 este mult mai simplu decât IPv4 și mult mai eficient pentru luarea deciziilor de rutare de către router.
Să examinăm tipurile de adrese IPv6. Știm că unicastul este o transmisie direcționată, când un dispozitiv este conectat direct cu altul și ambele dispozitive pot comunica doar între ele. Multicastul reprezintă o transmisie difuzată și înseamnă că mai multe dispozitive pot comunica simultan cu un singur dispozitiv, care, la rândul său, poate menține la rândul său conexiunea cu mai multe dispozitive. În acest sens, multicastul este similar cu o stație de radio, ale cărei semnale se propagă peste tot. Dacă doriți să auziți un canal specific, trebuie să vă setați radio-ul pe o frecvență specifică. Dacă vă amintiți lecția video despre protocolul RIP, știți că acest protocol folosește domeniul de difuzare 255.255.255.255 pentru a trimite actualizări, la care sunt conectate toate subrețelele. Dar aceste actualizări vor fi primite doar de acele dispozitive care utilizează protocolul RIP.
O altă formă de difuzare, care nu a fost întâlnită în IPv4, se numește Anycast. Acesta este utilizat atunci când aveți mai multe dispozitive cu aceeași adresă IP și permite trimiterea pachetelor către cel mai apropiat destinatar din grupul de receptori.

În ceea ce privește Internetul, unde avem rețele CDN, putem aduce exemplul serviciului YouTube. Acest serviciu este folosit de foarte multe persoane din diferite colțuri ale lumii, dar asta nu înseamnă că toți se conectează direct la serverul companiei din California. Serviciul YouTube are numeroase servere în întreaga lume; de exemplu, serverul meu indian YouTube este situat în Singapore. În mod similar, protocolul IPv6 are un mecanism încorporat pentru a realiza transmisia prin tehnologia CDN folosind o structură de rețea distribuită geografic, adică folosește Anycast.
Așa cum ați observat, aici lipsește un alt tip de difuzare, Broadcast, deoarece protocolul IPv6 nu îl folosește. Dar Multicast în acest protocol acționează similar cu Broadcast în IPv4, doar într-un mod mai eficient.
A șasea versiune a protocolului folosește trei tipuri de adrese: Link Local, Unique Site Local și Global. Reamintim că, în IPv4, o interfață are doar o adresă IP. Să presupunem că avem două routere conectate între ele, astfel fiecare interfață de conectare va avea doar 1 adresă IP. Când se folosește IPv6, fiecare interfață primește automat o adresă IP de tip Link Local. Aceste adrese încep cu FE80::/64.

Aceste adrese IP sunt folosite doar pentru conexiuni locale. Persoanele care lucrează cu Windows cunosc adrese asemănătoare de tip 169.254.X.X - aceste adrese sunt configurate automat prin protocolul IPv4.
Dacă un computer se adresează unui server DHCP pentru a obține o adresă IP, dar din anumite motive nu poate stabili o conexiune cu acesta, dispozitivele Microsoft au un mecanism care permite computerului să își aloce o adresă IP singur. În această situație, adresa va fi aproximativ 169.254.1.1. O situație similară va apărea dacă avem un computer, un switch și un router. Să presupunem că routerul nu a obținut o adresă IP de la serverul DHCP și și-a alocat automat o adresă IP de 169.254.1.1. După aceea, va trimite prin switch o solicitare ARP de tip broadcast în rețea, în care va întreba dacă un dispozitiv de rețea are această adresă. Primind cererea, computerul îi va răspunde: „Da, am exact aceeași adresă IP!”, după care routerul își va aloca o nouă adresă aleatoare, de exemplu, 169.254.10.10, și va trimite din nou o solicitare ARP în rețea.

Dacă nimeni nu va anunța că are aceeași adresă, atunci el va păstra adresa 169.254.10.10 pentru sine. Astfel, dispozitivele din rețeaua locală pot să nu folosească deloc serverul DHCP, beneficiind de mecanismul de auto-alocare a adreselor IP pentru a se conecta între ele. Aceasta este autoconfigurarea adreselor IP, cu care ne-am întâlnit de multe ori, dar nu am folosit-o niciodată.
În mod similar, protocolul IPv6 are un mecanism pentru atribuirea adreselor IP locale Link Local, care încep cu FE80::. Slash 64 indică separarea adreselor de rețea și a adreselor de host. Așadar, primele 64 reprezintă rețeaua, iar celelalte 64 reprezintă hostul.

FE80:: înseamnă o adresă de tip FE80.0.0.0/, unde, după slash, se află partea adreselor gazdelor. Aceste adrese nu sunt identice pentru dispozitivul nostru și interfața conectată și sunt configurate automat. În acest context, partea gazdelor folosește adresa MAC. Așa cum se știe, adresa MAC constă într-o adresă IP de 48 de biți, formată din 6 blocuri de câte 2 cifre hexadecimale. Această sistemă este utilizată de Microsoft, iar Cisco folosește 3 blocuri de câte 4 cifre hexadecimale.

În exemplul nostru, vom folosi secvența Microsoft de tip 11:22:33:44:55:66. Cum este atribuită adresa MAC dispozitivului? Această secvență de numere din adresa gazdei, reprezentând adresa MAC, este împărțită în două părți: pe partea stângă se află trei grupuri 11:22:33, pe partea dreaptă trei grupuri 44:55:66, iar între ele se adaugă FF și FE. Astfel, se creează un bloc de 64 de biți din adresa IP a gazdei.

Așa cum se știe, secvența de tip 11:22:33:44:55:66 reprezintă o adresă MAC, unică pentru fiecare dispozitiv. Stabilind între cele două grupuri de numere ale adresei MAC FF:FE, obținem o adresă IP unică pentru acest dispozitiv. În acest mod se creează o adresă IP de tip Local Link, care este folosită doar pentru stabilirea unei conexiuni între vecini fără configurare specială și servere dedicate. Această adresă IP poate fi utilizată doar în interiorul unui singur segment de rețea și nu poate fi folosită pentru comunicații externe în afara acestui segment.
Următorul tip de adresă este Unique Site Local Scope, care corespunde adreselor IP private IPv4 de tip 10.0.0.0/8, 172.16.0.0/12 și 192.168.0.0/16. Motivul pentru care se folosesc adrese IP private interne și publice externe este tehnologia NAT, despre care am discutat în lecțiile anterioare. Unique Site Local Scope este o tehnologie care generează adrese IP interne. Puteți spune: „Imran, ai spus că fiecare dispozitiv poate avea propria adresă IP, de aceea am trecut la IPv6”, și veți avea dreptate. Dar unii oameni preferă să folosească conceptul de adrese IP interne din motive de securitate. În acest caz, NAT este utilizat ca un firewall, iar dispozitivele externe nu pot comunica liber cu dispozitivele aflate în rețea, deoarece acestea au adrese IP locale, inaccesibile din rețeaua externă Internet. Cu toate acestea, NAT creează o mulțime de probleme legate de VPN, cum ar fi pentru protocoalele ESP. Pentru a asigura securitatea, protocolul IPv4 a folosit IPSec, dar în protocolul IPv6 există un mecanism de securitate încorporat, astfel încât comunicarea între adresele IP interne și externe se stabilește foarte simplu.
Pentru aceasta, IPv6 are două tipuri diferite de adrese: în timp ce adresele Unique Local corespund adreselor IP interne IPv4, adresele Global corespund adreselor externe IPv4. Mulți oameni preferă să nu folosească deloc adrese de tip Unique Local, alții nu pot trăi fără ele, deci acesta este un subiect de dispute constante. Consider că veți obține mult mai multe avantaje folosind doar adrese IP externe, în primul rând în ceea ce privește mobilitatea. De exemplu, dispozitivul meu va avea aceeași adresă IP indiferent de locul în care mă aflu - în Bangalore sau New York, așa că mă voi putea folosi fără probleme de oricare dintre dispozitivele mele din orice colț al lumii.
Așa cum am spus deja, IPv6 are un mecanism de securitate încorporat care permite crearea unui tunel VPN securizat între locul unde este biroul dvs. și dispozitivele dvs. Anterior, aveam nevoie de un mecanism extern pentru a crea un astfel de tunel VPN, dar în IPv6 acesta este un mecanism standard încorporat.
Având în vedere că astăzi am discutat suficiente subiecte, întrerup lecția noastră pentru a continua discuția despre cea de-a șasea versiune a protocolului IP în următorul video. Ca temă pentru acasă, vă rog să studiați bine ce reprezintă sistemul numeric hexazecimal, deoarece pentru înțelegerea IPv6 este foarte important să înțelegeți conversia între sistemul binar și cel hexazecimal și invers. De exemplu, trebuie să știți că 1111=F și așa mai departe, doar consultați Google pentru a clarifica acest aspect. În următoarea lecție video voi încerca să practicăm împreună această conversie. Vă recomand să revedeți lecția video de astăzi de câteva ori, astfel încât să nu aveți întrebări rămase cu privire la teme abordate.

Vă mulțumim că rămâneți cu noi. Vă plac articolele noastre? Doriți să vedeți mai multe materiale interesante? Susțineți-ne făcând o comandă sau recomandându-ne prietenilor. 30% reducere pentru utilizatorii Habr pentru un server entry-level unic, creat special pentru tine: (sunt disponibile opțiuni cu RAID1 și RAID10, până la 24 nuclee și până la 40GB DDR4).
Dell R730xd la jumătate de preț? Numai la noi în Olanda! Dell R420 — 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB — de la 99 $! Citiți despre
Sursa: habr.com
