Interneta protokols (IP) ir viens no galvenajiem interneta protokolu komplekta sakaru protokols, kas nosaka, kā dati tiek adresēti un sūtīti pāri dažādiem tīkliem. Kopā ar pārraides kontroles protokols (TCP tas veido pamatu mūsdienu interneta darbībai — tā saukto TCP/IP komplektu. IP rūpējas par datu paketu maršrutēšanu no sūtītāja līdz saņēmējam, savukārt TCP nodrošina uzticamību, secību un kļūdu pārbaudi.

Kā darbojas IP — pamattēma

Varīgi iedomāties IP kā pasta sistēmu: katra ierīce tīklā saņem savu adresi, un datu paketes tiek "nofrankētas" ar mērķa adresi. IP neveido pastāvīgu savienojumu starp sūtītāju un saņēmēju — paketes ceļo caur vairākiem maršrutētājiem (router), kur katrs pieņem lēmumu, kurā virzienā nosūtīt paketi tālāk, līdz tā sasniedz galamērķi.

IP adrešu veidi un formāti

  • IPv4 — 32 bitu adreses, parasti rakstītas kā četri decimālie okteti (piem., 192.0.2.1). IPv4 izmanto tīkla prefiksus (piem., /24) un ir visizplatītākā versija, bet tās adrešu telpa ir ierobežota.
  • IPv6 — 128 bitu adreses, rakstītas heksadecimālā formā ar koloniem (piem., 2001:0db8::1). IPv6 nodrošina daudz lielāku adrešu telpu un papildu iespējas, piemēram, iebūvētu adresācijas un drošības atbalstu.

IP paketes struktūra (augstākā līmeņa pārskats)

  • Galvene (header) — satur informāciju, kas nepieciešama maršrutēšanai: avota un mērķa IP adreses, protokola identifikators (lai noteiktu, kurš transporta protokols apstrādās datu daļu), laika-to-live (TTL) lauks (lai ierobežotu paketes dzīves ilgumu) un citi lauki.
  • Payload — transporta slāņa dati (piem., TCP vai UDP datagrāmma) un pats lietotāja saturs.

Galvenās IP funkcijas un mehānismi

  • Maršrutēšana: maršrutētāji izmanto maršruta tabulas, lai izlemtu, kur sūtīt paketi tālāk; lēmumu pamatā var būt galamērķa adrese un saņēmēju tīkla prefikss.
  • Fragmentācija: ja paketes izmērs pārsniedz tīkla MTU (maksimālo pārraides vienību), IP var sadalīt paketi fragmentos, kas pēc tam tiek salikti galapunktā. Fragmentācija var palēnināt pārraidi un radīt problēmas, tāpēc to bieži izvairās.
  • NAT (Network Address Translation): ļauj vairākām iekšējām ierīcēm dalīt vienu publisku IPv4 adresi, mainot adreses un portus paketēs; tas palīdz pārvarēt IPv4 adrešu trūkumu, bet var sarežģīt tiešas ienākošas savienojuma izveidi.
  • ARP un ND: lokālajos tīklos IPv4 izmanto ARP (Address Resolution Protocol) IP adrešu saistīšanai ar MAC adresēm; IPv6 izmanto Neighbor Discovery (ND) līdzīgai funkcionalitātei.
  • ICMP: Interneta vadības ziņojumu protokols (ICMP) ziņo par kļūdām un tīkla stāvokli (piem., "destination unreachable", "time exceeded"); to bieži izmanto rīki kā ping un traceroute.

IP un TCP — kā tie sadarbojas

IP darbojas kā interneta slānis — tas piegādā paketes no viena tīkla uz citu, bet negarantē piegādi. TCP, kas darbojas transporta slānī, izmanto IP paketes, lai izveidotu uzticamu, orientētu uz savienojumu datu straumi:

  • Trīs posmu "handshake": TCP savieno datorus, izmantojot SYN, SYN-ACK, ACK apmaiņu, kas izveido savienojumu pirms datu pārsūtīšanas.
  • Sekvences numuri un apstiprinājumi: TCP pievieno secības numurus datiem un gaida ACK, lai pārliecinātos, ka dati ir saņemti pareizi.
  • Atkārtota pārraide un šķidrumu kontrole: ja pakete nefiksē ACK, TCP pārsūta datus atkārtoti; TCP arī regulē pārsūtīšanas ātrumu atkarībā no tīkla noslodzi (congestion control).

Atšķirība starp TCP un UDP

  • TCP nodrošina uzticamību, secību un plūsmas kontroli — piemērots pārlūkprogrammas sesijām, FTP, e-pastam u.c.
  • UDP ir viegls, bez savienojuma protokols — tas nesniedz garantijas par piegādi vai secību; piemērots reāllaika lietojumprogrammām (VoIP, video straumēšana, DNS pieprasījumi) kur zemā latentuma svarīgāka par pilnīgu uzticamību.

Drošība un ierobežojumi

  • IP spoofing: ļaunprātīgas puses var vilkt avota IP adresi, lai maskētu identitāti vai veiktu uzbrukumus; tam pretstatā izmanto dažādas aizsardzības — ugunsmūrus, maršrutētāju filtrēšanu un IPsec.
  • IPsec: standarts drošai IP sakaru šifrēšanai un autentifikācijai, plaši izmantots VPN risinājumos.
  • Privātās adreses: IPv4 telpā ir definētas privātas adrešu zonas (RFC1918), kuras nav maršrutējamas publiskajā internetā un bieži tiek kombinētas ar NAT.
  • MTU un fragmentācijas riski: dažādu tīklu MTU atšķirības var izraisīt fragmentāciju vai paketes noraidīšanu; pareiza MTU konfigurācija palīdz izvairīties no problēmām.

Praktiski piemēri un lietošanas situācijas

  • Kad sērfojat tīmeklī, jūsu dators izmanto IP, lai nosūtītu pieprasījumu uz tīmekļa serveri; servera atbilde sastāvēs no IP paketēm ar mērķi — jūsu adresi.
  • Strādājot ar mājas tīklu, maršrutētājs izmanto NAT, lai iekšējās ierīces varētu piekļūt internetam, daloties ar vienu publisku IPv4 adresi.
  • Migrējot uz IPv6, tiek atvērta iespēja piešķirt unikālas publiskas adreses daudzām ierīcēm bez NAT nepieciešamības.

IP ir fundamentāla tehnoloģija, kas nodrošina datu piegādi tīklos un starp tīkliem. Lai gan IP pats par sevi neuzņemas datu uzticamības garantēšanu, tas darbojas kopā ar transporta protokoliem (piem., TCP vai UDP), lai nodrošinātu nepieciešamo funkcionalitāti dažādām interneta lietojumprogrammām.