IPv4

Fra IT2
Hopp til: navigasjon, søk

IPv4 (Internet Protocol version 4) er versjon 4 av Internett-protokollen. IPv4 var den første versjonen som oppnådde vidstrakt bruk.

IPv4 opererer på nettverkslaget i OSI-modellen for datanett og er en forbindelsesløs og upålitelig pakkeleveringstjeneste.

IPv4 bruker 32-bit adresser. Dette betyr at antallet unike adresser er begrenset til 4 294 967 296 og flere av disse adressene er reservert for spesielle formål som lokale nettverk.

Det har etterhvert blitt mangel på IP-adresser og dette er noe av motivasjonen bak neste versjon av IP protokollen, IPv6.

IPv4 Adresser

IPv4 adresser skrives vanligvis i dotted decimal notasjon. Og hvert tall er ikke høyere enn 255.

208.143.116.245

IP-pakke

IP-pakker(IPV4) består av faste deler. det består av en pakkeheader på 20 byte og resten er nyttelaseten(pakkens innhold) og annen tilleggsinformasjon. Pakke headeren består av dette:

Versjonnummer(4 bit):
  • Her står det hvilken ip versjon dette er. for eksempel IPv4 eller IPv6. I dette eksempelet beskriver vi IPv4.
IPv4 pakke
Headerlengde(4 bit):
  • header lengde forteller hvor mange 32-bits-grupper som er i pakkeheader, medregnet tilleggsinformasjons feltet (som kan variere). Ut fra denne informasjonen er finner man ut hvor nyttelasten skal begynne.
Type of service - TOS(8 bit):
  • TOS-feltet skiller mellom ulike typer IP-pakker. Hovedoppgaven til TOS er for å skille mellom følgende tjenestekvaliteter: minimere forsinkelse, maksimere gjennomsnittstrømning, maksimere pålitelighet, minimere kostnader. Bare en av bittene kan være satt til 1 resten må være 0. Når alle er 0 vil det si normal operasjon. Det finnes få implementeringer som bruker TOS.
Totallengde(16 bit):
  • Inneholder lengden til hele IP-pakken i byte(f.eks 1500 byte). Kombinert med feltet headerlengde kan lengden og starten på nyttelastfeltet regnes ut. maksimal lengde på en IP-pakke er 65 535 byte. Men det er ikke vanlig med denne størrelsen. de vanligste lenkelagsprotokollene har rammelengde på ca 1500 byte.
Identifikasjon(16 bit), flagg(3 bit), fragmentering(13 bit):
  • Disse feltene brukes i forbindelse med fragmentering av IP-pakker. Feltet identifikasjon inneholder en entydig ID for hver IP-pakke. Flagg brukes for å fortelle at pakkene er fragmentert, og når siste IP-pakkefragment kommer. Feltet fragmentering identifiserer hvert enkelt pakkeframent.
Time to live - TTL (8 bit):
  • Dette feltet inneholder maksimum hopp som pakken kan mellom rutere før den dør ut. Den blir oppdatert for hver ruter den er innom. Dersom verdien blir 0 sendes en ICMP tilbake til senderen ("TTL exceeded"). vanlige startverdier for TLL er 64 og 128.
Protokoll(8 bit):
  • Feltet inneholder en kodeverdi som forteller hvilken protokoll nyttelasten i IP-pakken bruker. F.eks kodeverdi 6 betyr at nyttelasten inneholder TCP og verdi 17 er UDP. Da slipper mottaker å studere hva pakken inneholder. Dette kalles demutipleking.
Headersjekksum(16 bit):
  • Dette feltet inneholder en sjekksum som er kalkulert på bakgrunn av de ulike feltene i en IP-Pakkeheader. Siden IP ikke kan detektere bitfeil i datafeltet, må eventuelle feilkontroller av dataene overlates til protokollene på lagene lenger opp. Formålet er å stanse pakker med feil i IP-adressene. Skike pakker kan belaste ruterne kraftig dersom de blir mange. Ved eventuell bitfeil blir sjekksummen feil, og pakken blir forkastet. Sjekksummen blir også oppdatert for hver ruter den er innom siden TTL også blir oppdatert.
Avsenders IP-adresse(32 bit):
  • Inneholder oprinnelige senders ip adresse. for eksempel 10011110 11000011 00011011 00101101 (158.195.27.45)
Mottakers IP-adresse(32 bit):
  • Inneholder ip adresse til den endelige mottakeren. for eksempel 10100101 00100010 00010111 00000100 (167.34.23.4)
Tilleggsinformasjon(32 bit/lite brukt):
  • Dette feltet kan brukes til operasjoner som trygghet, kartlegging av rute, tidsstempling og ruting. Feltet er lite benyttet.
Nyttelast:
  • Her ligger selve pakken. Dette feltet har for eksempel for Ethernet vanligvis en størrelse på ca 1460 byte.