Antet pachet IP: Format, Câmpuri

⚡ Rezumat inteligent

Antetul IP reprezintă metadatele plasate la începutul fiecărui pachet IP, conținând câmpuri precum versiunea, lungimea antetului, lungimea totală, timpul de viață (time to live), protocolul, suma de control și adresele sursă și destinație pe care routerele le citesc pentru a livra date.

  • 🧭 Scop: Antetul IP stochează detalii de rutare și livrare, astfel încât fiecare pachet să ajungă la destinația corectă în rețele.
  • 📏 Mărimea: Un antet IPv4 are o lungime cuprinsă între 20 și 60 de octeți, fiind controlat de câmpul Internet Header Length (Lungime antet Internet).
  • 🧱 Câmpuri cheie: Câmpurile principale includ Versiunea, IHL, Tipul de serviciu, Lungimea totală, TTL, Protocolul, Suma de control și adresele.
  • 🔀 Fragmentare: Identificarea, steagurile și decalajul fragmentelor permit datagramelor mari să se divizeze și să se reasambleze corect.
  • 🆚 IPv4 vs IPv6: IPv6 înlocuiește antetul variabil cu un antet fix de 40 de octeți și elimină câmpul de sumă de control.
  • 🤖 Asistență AI: Analizatoarele de pachete bazate pe inteligență artificială analizează automat anteturile IP pentru a semnala anomalii și a accelera depanarea.

Formatul și câmpurile antetului pachetului IP

Ce este antetul IP?

Antetul IP este o metainformație de la începutul unui pachet IP. Acesta afișează informații precum versiunea IP, lungimea pachetului, sursa și destinația.

Formatul antetului IPv4 are o lungime cuprinsă între 20 și 60 de octeți și conține informațiile necesare pentru rutare și livrare. Acesta constă în câmpuri precum Versiune, Lungime antet, Lungime totală, Identificare, Indicatori, Sumă de control, adresa IP sursă și adresa IP destinație. Împreună, aceste câmpuri furnizează datele esențiale necesare pentru transmit pachetul în mod fiabil de la o gazdă la alta.

Componente/câmpuri antet IPv4

Diagrama de mai jos prezintă formatul complet al antetului IPv4, fiecare câmp fiind desenat în poziția și lățimea corecte:

Diagrama formatului antetului pachetului IPv4 care arată toate câmpurile și pozițiile lor în biți

Următoarele sunt diferitele componente/câmpuri ale antetului pachetului IP:

  • Versiune: Primul câmp din antetul IP este un indicator de versiune pe 4 biți. În IPv4, valoarea acestor patru biți este setată la 0100, ceea ce indică 4 în binar. Dacă routerul nu acceptă versiunea specificată, pachetul este abandonat.
  • Lungimea antetului internetului: Lungimea antetului Internetului, cunoscută pe scurt ca IHL, are o dimensiune de 4 biți. Se mai numește și HELEN (Lungimea antetului). Această componentă IP arată câte cuvinte pe 32 de biți sunt prezente în antet.
  • Tip de serviciu: Tipul de serviciu se mai numește și servicii diferențiate Code Punct de transfer sau DSCP. Acest câmp oferă caracteristici legate de calitatea serviciului pentru fluxul de date sau apelurile VoIP. Primii 3 biți sunt biții de prioritate. De asemenea, specifică modul în care ar trebui gestionată o datagramă.
  • Lungimea totală: Lungimea totală se măsoară în octeți. Dimensiunea minimă a unei datagrame IP este de 20 de octeți, iar cea maximă este de 65,535 de octeți. HELEN și Lungimea Totală pot fi utilizate pentru a calcula dimensiunea sarcinii utile. Toate gazdele trebuie să poată citi datagrame de 576 de octeți. Cu toate acestea, dacă o datagramă este prea mare pentru gazdele din rețea, metoda fragmentării este utilizată pe scară largă.
  • Identificare: Identificarea este un câmp folosit pentru a identifica în mod unic fragmentele unei datagrame IP. Unii au recomandat utilizarea acestui câmp și în alte scopuri, cum ar fi adăugarea de informații pentru pachete. tracING.
  • Indicatori IP: „Flags” este un câmp pe trei biți care vă ajută să controlați și să identificați fragmentele. Configurațiile posibile sunt: ​​Bitul 0 este rezervat și trebuie setat la zero; Bitul 1 înseamnă că nu se fragmentează; iar Bitul 2 înseamnă mai multe fragmente.
  • Offset fragment: Decalajul fragmentului reprezintă numărul de octeți de date dinaintea unui anumit fragment din datagrama specifică. Este specificat în unități de 8 octeți și are o valoare maximă de 65,528 octeți.
  • Timpul sa traiesti: Acesta este un câmp de 8 biți care indică timpul maxim în care datagrama poate trăi în sistemul internet. De fiecare dată când o datagramă este procesată, valoarea sa TTL este redusă cu unu. Când valoarea TTL ajunge la zero, datagrama este eliminată, astfel încât pachetele să nu fie livrate la nesfârșit. Valoarea TTL poate varia de la 0 la 255.
  • Protocol: Acest câmp din antetul IPv4 indică protocolul internet transportat în ultima porțiune a datagramei. De exemplu, numărul 6 este folosit pentru a indica TCP, iar 17 este folosit pentru a desemna protocolul UDP.
  • Sumă de verificare antet: Următoarea componentă este un câmp de sumă de control pe 16 biți pentru antet, care este utilizat pentru a verifica dacă există erori în antet. Antetul IP este comparat cu valoarea sumei sale de control. Când suma de control a antetului nu se potrivește, pachetul este eliminat.
  • Sursa adresei: Adresa sursă este o adresă de 32 de biți a sursei utilizate pentru pachetul IPv4.
  • Adresa de destinatie: Adresa destinație are, de asemenea, o dimensiune de 32 de biți și stochează adresa receptorului.
  • Opțiuni IP: Acesta este un câmp opțional al antetului IPv4, utilizat atunci când valoarea IHL (Internet Header Length - Lungimea antetului Internet) este setată la o valoare mai mare de 5. Conține valori și setări legate de securitate, ruta de înregistrare, marcaj temporal și opțiuni similare. Lista de opțiuni se termină de obicei cu un marker de sfârșit al listei de opțiuni (EOL).
  • Date: Acest câmp stochează datele de la nivelul protocolului care a transmis datele către nivelul IP.

Cum se calculează lungimea antetului IPv4

Câmpul Internet Header Length (IHL) indică unui router exact lungimea antetului, astfel încât acesta să știe unde se termină antetul și unde încep datele. Deoarece câmpul are o lățime de doar 4 biți, nu stochează lungimea direct în octeți. În schimb, numără antetul în cuvinte de 32 de biți, unde fiecare cuvânt este egal cu 4 octeți.

Pentru a converti valoarea IHL în octeți, înmulțiți-o cu 4:

  • Minim: Cea mai mică valoare legală IHL este 5, deci 5 × 4 = 20 octeți. Acesta este un antet fără opțiuni.
  • Maxim: Cea mai mare valoare IHL este 15, deci 15 × 4 = 60 de octeți. Cei 40 de octeți suplimentari conțin câmpuri opționale.

Să luăm în considerare un exemplu practic. Dacă un pachet sosește cu o valoare IHL de 6, lungimea antetului este de 6 × 4 = 24 octeți, ceea ce înseamnă că sunt prezenți 4 octeți de opțiuni după antetul standard de 20 de octeți. Pentru a găsi dimensiunea sarcinii utile, subtract lungimea antetului din câmpul Lungime totală. Dacă Lungimea totală este de 1,500 de octeți, iar antetul este de 24 de octeți, atunci sarcina utilă este de 1,500 − 24 = 1,476 octeți.

Acest calcul este important în timpul fragmentării, deoarece un router trebuie să cunoască dimensiunea antetului pentru a calcula câte date poate transporta fiecare fragment fără a depăși limita maximă a rețelei. Transmission Unitate (MTU).

Antetul IPv4 vs. IPv6

Antetul IPv6 a fost reproiectat pentru a fi mai simplu și mai rapid de procesat decât antetul IPv4. Acesta folosește o lungime fixă ​​și mută opțiunile rar utilizate în anteturi de extensie separate, astfel încât routerele să poată transmite pachete la rata de linie. Tabelul de mai jos compară cele două anteturi câmp cu câmp:

Caracteristică Antet IPv4 Antet IPv6
Dimensiunea antetului 20 până la 60 de octeți (variabil) 40 de octeți (fix)
Numărul de câmpuri 13 câmpuri plus opțiuni 8 de câmpuri
Lungimea adresei Sursă și destinație pe 32 de biți Sursă și destinație pe 128 de biți
Suma de control a antetului Prezent îndepărtat
Câmpuri de fragmentare În antetul de bază (Identificare, Steaguri, Decalaj) Mutat într-un antet de extensie Fragment
Opţiuni Purtat în interiorul antetului Transportat în anteturile de extensie
Câmp de lungime Lungime totală (antet plus date) Lungimea sarcinii utile (doar sarcina utilă)

Deoarece IPv6 elimină suma de control și opțiunile de lungime variabilă, antetul său conține mai puține câmpuri și poate fi procesat în hardware fără recalculare per-hop.

De ce este important antetul IP

Fiecare câmp din antetul IP există astfel încât routerele și gazdele să poată muta un pachet prin mai multe rețele fără o conexiune permanentă între ele. Antetul este cel care face ca comutarea pachetelor să funcționeze.

  • rutare: Adresa de destinație indică fiecărui router unde să redirecționeze pachetul, în timp ce adresa sursă permite returnarea răspunsurilor și a mesajelor de eroare.
  • Prevenirea buclelor: Câmpul Time to Live (Timp de viață) este decrementat la fiecare salt, astfel încât un pachet rutat greșit este eliminat în loc să înconjoare internetul la nesfârșit.
  • Livrare conform protocolului corect: Câmpul Protocol îi spune gazdei receptor dacă să predea sarcina utilă către TCP, UDP sau un alt protocol.
  • Integrity și reasamblare: Suma de control protejează antetul împotriva coruperii, iar câmpurile Identificare, Steaguri și Decalaj fragment permit reconstruirea unei datagrame fragmentate în ordinea corectă.

Pentru inginerii de rețea, citirea acestor câmpuri într-un TCP / IP Captura este adesea cea mai rapidă metodă de a diagnostica pachetele pierdute, buclele de rutare și configurațiile greșite Adresele IP.

Întrebări frecvente

Lungimea antetului (IHL) măsoară doar antetul, în cuvinte pe 32 de biți și variază de la 20 la 60 de octeți. Lungimea totală măsoară întreaga datagramă - antet plus date - în octeți, până la 65,535. SubtracSepararea unul de celălalt rezultă dimensiunea sarcinii utile.

Fragmentarea împarte o datagramă care este mai mare decât valoarea maximă a unei legături. Transmission Unitatea în bucăți mai mici. Câmpurile Identificare, Steaguri și Decalaj Fragment permit destinației să reasambleze piesele în ordine. Acest lucru se întâmplă ori de câte ori un pachet trebuie să traverseze o rețea cu un MTU mai mic.

Un antet IPv4 are 13 câmpuri fixe — Versiune, IHL, Tip de serviciu, Lungime totală, Identificare, Indicatori, Decalaj fragment, TTL, Protocol, Sumă de control, Adresă sursă, Adresă destinație, plus un câmp opțional Opțiuni. Secțiunea Date care urmează este sarcina utilă, nu un câmp de antet.

Nu. Suma de control a antetului IPv4 acoperă doar câmpurile antetului, nu și sarcina utilă. Protocoalele de nivel superior, cum ar fi TCP și UDP, au propriile sume de control pentru a proteja datele. Deoarece TTL se modifică la fiecare hop, routerele recalculează suma de control a antetului la fiecare redirecționare.

Când TTL ajunge la zero, routerul elimină pachetul și returnează un mesaj ICMP Time Exceeded către sursă. Acest lucru previne pierderea pachetelor.ping pentru totdeauna într-o buclă de rutare. traceroute Instrumentul se bazează pe acest comportament pentru a mapa fiecare salt de-a lungul unei căi.

Câmpul Protocol identifică protocolul de nivel superior care ar trebui să primească sarcina utilă la destinație. Valorile comune sunt 6 pentru TCP, 17 pentru UDP și 1 pentru ICMP. Gazda receptoră citește acest număr pentru a transmite datele către handler-ul corect.

Instrumentele de inteligență artificială și învățare automată analizează anteturile IP capturate pentru a detecta anomalii precum adrese sursă falsificate, valori TTL anormale sau atacuri de fragmentare. Acestea clasifică traficul și semnalează amenințările mai rapid decât inspecția manuală, deși un inginer confirmă în continuare constatările înainte de a acționa.

Copilotul GitHub poate redacta Python sau cod C care despachetează câmpurile antetului IP, decodează steagurile și validează sumele de control dintr-un comentariu scurt. RevPriviți cu atenție logica de mascare a biților generată, deoarece decalajele de unu sunt o sursă comună de erori de analiză.

Rezumați această postare cu: