Förelasning3

Download Report

Transcript Förelasning3

NÄTVERKSPROTOKOLL

Föreläsning 3 - 7.9.2010

INNEHÅLL  Mera om IPv4  CIDR  IP-paket  I Pv6  Routing

IPv4 – CIDR

 CIDR står för (Classless Inter-Domain Routing)  Introducerades 1993 och är den senaste förbättringen i sättet hur IP-adresser skall tolkas  Klassinedelningen slopas och man använder i stället nätverksprefix för att dela upp nätverk  Ger flexibilitet när större block av IP-adresser skall delas upp i mindre nät  Den största fördelen har att göra med routingen (går inte in på detta i det här skedet)

IPv4 – CIDR

 CIDR använder nätverksprefix för att beteckna vilken del av IP adressen som anger nätverksadressen och vilken del som anger värdadressen  Prefixet är helt enkelt en nummer som betecknar hur många bitar i IP adressen som representerar nätverksadressen  T.ex. 172.200.0.0/16 betyder att de 16 första bitarna representerar nätverksadrssen och de resterande 16 bitarna representerar värdadressen: Nätmasken blir: 11111111 11111111 00000000 00000000 255.255.0.0

Maximala antalet datorer = 2^16-2 = 65534

IPv4 paket

 På nätverkskiktet bryter IPv4 protokollet ner en dataström, från en högre nivå i OSI-modellen, i paket (brukar även kallas datagram)  Dessa paket klarar sedan routrar av att föredela sinsemellan  Ett Ipv4 paket kan teoretiskt sett vara maximalt 64kbyte  I praktiken är IPv4 paketen dock endast ca. 1500 bytes stora för att undvika överbelastning av nät med små bandbredder  Om en ström av Ipv4 paket på större än 1500 bytes kommer in t.ex. till en router för ett ADSL nät, blir routern tvungen att bryta ner paketen mindre delar.

IPv4 paket

IPv4 paket

Version

– Anger versionen på protokollet. Fältet behövs eftersom olika noder kan använda olika protokoll 

Huvudets längd

minimivärdet är 5 – Anger längden på IP huvudet I 32 bitars ord, 

Servicetyp

– Här kan en applikation ange önskemål om servicenivån (snabbhet, felfrihet osv.) 

Total längd

- Paketets totala storlek (huvud + data) 

Fragment ID

Anger en ID nummer för datauppdelningen (fragmenteringen) ifall man har blivit tvungen att dela upp ett datapaket på vägen. Fragment som från början hört till samma paket får samma ID.

IPv4 paket

Flaggor

– Första biten är alltid 0. Andra biten anger om paketet får fragmenteras: 1 = ja, 0 = nej. Den sista biten anger om flera paket är på kommande (1 ) eller om ifrågavarande paket är det sista (0) 

Fragmentposition

– Berättar var i ett ursprungligt datagram ett fragmenterat (senare uppdelat) paket hör hemma.

Livslängd

– Anger paketets livslängd. Största möjliga värde är 255. För varje router paketet går förbi minskas värdet med ett. Om en router tar emot ett IP paket vars livslängd är 0 förkastas paketet av routern. 

Protokoll Nr.

– Anger vilket transportprotokoll som skall användas (alltså vilket protokoll som skall användas på följande nivå I OSI modellen) t.ex. TCP eller UDP.

IPv4 paket

Huvudets checksumma

identifiera om ett IP pakets huvud har ändrats någonstans på vägen vilket är viktigt av säkerhetsskäl.

– En checksumma behövs för att kunna 

Källadress

– Anger avsändarens 32 bitar långa Ipv4 adress 

Destinationsadress

– Anger mottagarens 32 bitar långa IPv4 adress      

Optioner

– Plats för extra optioner för ett IP-huvud. Används nuförtiden ganska sällan men missbrukas ofta av hackers för att försöka manipulera routingen av peketet. Alternativa optioner är: säkerhet (security), berättar hur säker informationen bör vara (kan undvika vissa adresser och länder) strikt ruttval (strict source routing), komplett rutt ges som IP adresser.

löst ruttval (loose source routing), bör gå via vissa routrar adressuppsamling (record route), ruttens routrar ger sina IP adresser till optionsfältet tidsmärke (timestamp), förutom IP-adresser ges också tidpunkten till optionsfältet

IPv6

 Avsikten med protokollet är att det ska ta över efter Ipv4  Utvecklades p.g.a. Antalet möjliga adresser i Ipv4 är begränsade.  I Ipv6 används 128 bitar (i stället för 32 bitar i Ipv4) för att representera adresser  Detta ger teoretiskt möjlighet för 3,4 x 10^38 adresser  Används idag för det mesta i en del mobila applikationer och i en del privata ntäverk  Det förutspås att IPv4 kommer att stödas ända fram till 2025

IPv6 adresser

 Största skillnaden mellan Ipv4 och Ipv6 är längden på adresserna  En Ipv6 adress är 128 bitar lång omch skrivs normalt med 32 hexadecimala tecken.  Varje hexadecimalt tecken han ha 16 olika värden, vilket ger totalt 16^32 adresser  Är vanligen indelade i två logiska delar:  64 bitars nätverksprefix  64 bitars lokal del (värdadress)  Värdadressen genereras ofta automatiskt m.h.a. Nätkortetets MAC-adress

IPv6 adresser

 Adresser skrivs som åtta grupper om fyra hexadecimala tecken  Adressen avslutas ofta av ett snedsträck vartefter längden på prefixet kommer  Exempel på en gilig Ipv6 adress: 2001:0db8:85a3:08d3:1319:8a2e:0370:7334/64  Om en teckengruppp består av 4 nollor kan nollorna förkortas:  2001:0DB8:0000:0000:0000:0000:1428:57ab/64  2001:0DB8:0000:0000:0000::1428:57ab/64  2001:0DB8:0:0:0:0:1428:57ab/64  2001:0DB8:0::0:1428:57ab/64  2001:0DB8::1428:57ab/64

IPv6 - Adresstyper

 En annan viktig skillnad mellan Ipv4 och Ipv6 är de adresstyper som stöds  Ipv4 har stöd för tre adresstyper:  Unicast adresser – En “vanlig” adress för en ända värd  Multicast adresser – En adressgrupp  Broadcast adresser – Alla enheter inom ett subnät (sista addr.)  Ipv6 stöder följande adresstyper  Unicast adresser – Samma som i Ipv4  Multicast adresser – Samma som inom Ipv4  Anycast Adress – Nytt inom IPv6!

IPv6 - Adresstyper

 Anycast adresser  Används när ett meddelande måste sändas till någon (vilken som helst) medlem av en grupp, behöver ej sändas till alla  Meddelandet skickas vanligen till den medlemmen av gruppen som är lättast att nå  Ett praktiskt exempel på där ”anycast-addressing” kunde användas är om man vill dela på belastningen av en grupp routrar inom en organisation  Anycast uppnås genom att tilldela samma IP adress till flera enheter  Enheter måste specifikt “informeras” om att de delar på en anycast adress med andra enheter.

 Strukturellt ser en anycast adress precis lika ut som en unicast

IPv6 - Prefix

 Liksom inom Ipv4 delas Ipv6 adresser upp i:  Nätverksadress  Värdadress  Nätverksadrssen kallas för “prefix” och nummern som anger antalet bitar som används för prefixet kallas för “prefixlängd” (ingen subnet mask används inom IPv6)  Prefixlängden anges i slutet av adressen med /nummer på samma sätt som inom CIDR modellen i Ipv4  Exempel: i följande adress används de 48 första bitarna för att representera nätverksadressen (prefixet): 805B:2D9D:DC28::FC57:D4C8:1FFF/48

IPv6 - Specialadresser

 Finns en del specialadresser färdigt definierade prefix, bl.a:  Link local  Site local  Global  Link local  Används för kommunikation på länk-nivå. Exempelvis för att ta reda på om det finns några andra datorer på samma nätverk eller om det finns en tillgänglig router. Prefixet är fe80::/10  Används för loopback (motsvarande 127.0.0.1 i Ipv4). Prefixet är ::1/128

IPv6 - Prefix

 Site local  Liknande som lokala ip adresser i Ipv4  “routningsbara” endast inom ett antal samarbetande subnät  En stor fördel med Ipv6 är att man kan tilldela ett interface flere adresser. M.a.o. Kan samma interface ha både en lokal och en global adress  Prefixet är: fc00::/7  Global  Unicast adresser med global prefix är sådana som används ut på Internet  Prefixet vanligen: 2001:

IPv6 - Adresser

 Det vanligaste sättet att dela upp en 128 bitars global unicast adress är enligt följande:  Global Routing Prefix – En global nätverksadress använd för routing  Subnet ID – Identifierar ett subnät bakom en global nätverksadress  Interface Identifieer – En unik identiferare för ett interface, skall vara unikt inom det specifika prefixet och subnätet

IPv6 paket

 Ett Ipv6 paket är liksom ett Ipv4 paket indelat i två huvudsakliga delar: huvud och data (header and payload)

IPv6 paket

Version –

protokollversionen 

Traffic class –

paketets prioritet 

Flow label –

Från början tänkt för real-time applikationer för specialle optioner men är förtillfället onvänd 

Payload length –

Storleken på sälva datafältet angivet I byte 

Next header –

Specificerar vilket protokoll som skall användas på transportnivå (samma som I Ipv4) 

Hop limit –

Ersätter livslängd (time to live) I Ipv4 dvs definierar hur många routrar paketet får gå igenom innan det förkastas

IPv6 – Andra nya egenskaper

 “Stateless address autoconfiguration”  En Ipv6 dator kan konfigurera sej själv automatiskt när den ansluts till ett routat Ipv6 nätverk  En Ipv6 dator skickar ett “link-local multicast” meddelande och begär konfigurationsparametrar på vilket en router svarar med ett “router advertisement” paket innehållande alla behövliga konfigurationsparametrar på nätverksnivå  Integrerad säkerhet  Internet Protocol Security (IPSec) är en del av protokollet i Ipv6 (i Ipv4 är det endast en option som kan användas om man installerar extra programvara)

Routing

 Är en process där en enhet, router, väljer en väg för ett paket som skall tranporteras över ett internätverk  Routingprocessen innebär att skicka ett inkommet datapaket vidare till nästa router, eller fram till destinationen I ett nätverk  En router skickar ett paket vidare till en destination som finns definierad I routerns routingtabell  En routingtabell är en typ av schema I en router som upprätthåller en lista över olika rutter till en mängd olika nätverksdestinationer.

Routing

 Det finns olika routing scheman.

 Scheman för olika typer av transporttyper:  Unicast  Broadcast  Multicast  Anycast  Unicast är den mest dominanta

Routing

 Man kan dela upp routingtekniker I:  Statisk routing (Static routing)  Dynamisk routing (Adaptive routing)  Statisk routing  I system med statisk routing specificeras olika rutter statiskt I routing-tabeller  Rutterna konfigureras vanligtvis manuellt in på en router (I routingtabeller) av en systemadministrator  I princip kan ett stort nätverk konfigureras med statiska rutter men problemet är att systemet faller om t.ex. En router går sönder (ett paket kan inte då välja ny rutt) eller om en IP adress ändras någonstans

Statisk routing

 En stor fördel med statisk routing är enkelheten  En statisk rutt definerar en destination och en möjlig väg att ta för att nå destinationen  Utnyttjar ofta s.k. ”default routs”  När rutten till slutdestinationen är okänd, sänds data paketena till default rotuern och låter den routern reda ut hur paketet därifrån skall gå vida till rätt destination  Lämpar sig för små nätverk

Dynamisk routing

 Utför samma funktion som statisk routimg fast är ”smartare” och mycket mera pålitligt  Routingtabellerna konfigureras inte manuellt utan automatiskt m.h.a routingprotokoll  Exempel på routingprotokoll är:  OSPF (Open Shortest Path First)  IS-IS (Intermediate System to Intermediate System)  RIP (Routing Information Protocol)