IP ADRESSERING

 

Lab 3.Nayeb Maleki

Datakommunikation 3p

Arbetet utarbetat av:

Marcus Carlsson

Anders Holms

 

Översikt:

Vad är IP?

IP Paketet2

IP Adressering (IPv4)

Subnet mask

Subnet mask annan än 255

IPv6 protokollet

Introduktion

IPV6 adressen

Stegvis övergång till Ipv6

 

Vad är IP?

 

IP (the Internet Protocol) : en förbindelselös och opålitlig metod för data-transport som man på engelska kallar för ”best-efforts delivery system”.

Med detta menas att data-paketet inte kommer att godtyckligt kastas bort utan en väldigt bra orsak.

 

Internet protokollet (ip) är den vanligaste metoden för data-transport inom och mellan olika nätverk.

 

Att IP beskrivs som opålitligt är inget man behöver skrämmas av eftersom ansvaret för pålitligheten ligger hos andra protokoll av högre nivå tex:

TCP (Transmission Control Protocol). Med opålitlig leverans menas att data-paket kan försvinna, försenas, dupliceras, skadas och-eller komma fram i omkastad ordning.

 

IP kallas för förbindelselös eftersom det liknar post-service mer än ett telefon system. När en nod som använder sig av IP önskar sända ett paket till en annan liknande nod, skickar den helt enkelt paketet, korrekt adresserat, precis som att posta ett brev. Ett telefon system däremot, upprättar kontakt mellan två användare som uppehålls under informations-växlingen. Inom IP´s förbindelse-lösa design så behandlas varje paket helt oberoende av varandra.

 

För att använda IP till mer komplicerade uppgifter så krävs tillämpning av s.k  ”higher level protocols” som TCP eller UDP (User Datagram Protocol).  Ofta nämns IP tillsammans med andra protokoll, t.ex: TCP/IP.

 

IP Paketet

 

 


IP använder sig av konceptet ”paket” (kallas ibland även för datagram). Paketet kan I sin tur delas upp I två stora delar: Header och Payload (data del).

 


Paketets header består i stora drag av följande delar:

·        Versions nummer ( ex: IPv4 eller IPv6 )

·        Storlek (Datagrammets storlek inkl. header)

·        Käll & Destinations adress

·        Räknare som kontrollerar paketets livstid

·        Service typ

·        Etc. (en grupp mindre viktiga komponenter)

 

Paketets Payload (data del) bär på informationen som skall skickas.

Max size = 216 (65536) bytes.

 

IP Adressering (IPv4)

 

En IP-adress (i version4) består av 4 bytes (32-bit) där varje byte är en siffra mellan 0 & 255. IP-adresserna är indelade i 5 st olika s.k IP-klasser (klass A, B, C, D, E) men klass a,b & c är de klasser som huvudsakligen används, klass D används för Multicast adresser och klass E  är reserverad för framtida bruk.

 

 

Klass

8 bits

8 bits

8 bits

8 bits

A

 Nätverks nr.

                           Host nr.

 

B

                   Nätverks nr.

                      Host nr.

C

                                 Nätverks nr.

      Host nr.

D.v.s för klass A tar nätverksadressen upp 1 byte, för B 2 bytes & C 3 bytes

 

En typisk IP adress kan se ut så här:

            220.0.0.80      

 

Klass:

Nätverks ID:

Host ID:

Exempel:

A

1-126

x.x.x

124.x.x.x

B

128-191.f

x.x

140.f.x.x

C

192-223.f.f

x

210.f.f.x

D

224-239.f.f.f

 

230.f.f.f

E

240-247.f.f.f

 

245.f.f.f

 

( f )     = Fast adress nummer som inte kan ändras (mellan 0 & 255)

( x )      = Ett värde mellan 0 & 255 (Host adress)

 

Som ni ser är IP adressen ovan av klass C.

 

Denna klass delning ger:

 

Klass:

antal Nätverk

antal Hosts:

A

128

16 miljoner

B

ca 16 000

64 000

C

ca 2 miljoner

254

 

Ett stort problem med IPv4 (32-bit) är det det börjar ta slut på IP-adresser.

En orsak till det är hur ineffektivt IPv4 hanskas med adresser.

T.ex: Hela klass A adress 127.x.x.x är reserverad för loopback (16 miljoner adresser down the drain) när endast en adress hade behövts.

Vis av tidigare erfarenheter har man nu utvecklat en ny version av IP (IPv6) som har plats för mångdubbelt fler adresser.

 

Omvandling av decimal adress till Binär

 

I vissa fall kan det vara värdefullt att veta den binära motsvarigheten till en

IP-adress (t.ex: när man skall hantera en subnet-mask, beskrivs senare).

 

Omvandling mellan decimal-form och binär-form kan utföras på olika sätt.

Här följer 2st metoder för att omvandla 16810 till bin2:

 

·        Med hjälp av binär-tabell:

 

128

64

32

16

8

4

2

1

1

0

1

0

1

0

0

0

 

Detta ger bin2 = 10101000

 

·        Med hjälp av divisions metoden:

 

decimaltal

rest

 

168/2

0

minst signifikant bit

84/2

0

 

42/2

0

 

21/2

1

 

10/2

0

 

5/2

1

 

2/2

0

 

1

1

mest signifikant bit

 

Detta ger bin2 = 10101000 (alltså samma som ovan)

 

När du ser en binär-omvandlad IP adress kan du snabbt avgöra vilken klass den tillhör.

 

Klass

Bit-mönster

IP-adress (decimal)

A

01111000.00000001.00000001.00000001

120.1.1.1

B

10000001.00000001.00000001.00000001

129.1.1.1

C

11000001.00000001.00000001.00000001

193.1.1.1

D

11100001.00000001.00000001.00000001

225.1.1.1

E

11110001.00000001.00000001.00000001

241.1.1.1

 

Subnet mask

 

Introduktion:

Din dator vet inte vilken sort av ip-adress som du har. Om det är klass A, B eller C. Därför måste du tala om för din mjukvara hur den med hjälp av din ip-adress får reda på vilket nätverks-id du har. T.ex. att med ip-adressen  128.32.10.1 så är ditt nätverks-id 128.32.x.x.

Detta löser du genom att ange en s.k. subnet mask. En typisk subnetmask kan se ut så här: 255.255.255.0. Denna mask berättar att vi använder en Klass C ip-adress eftersom de tre talen 255 visar att de här individuella numren inte kan ändras. 0 säger oss att denna siffra är den enda siffra som vi kan använda för att adressera noder i ditt nät.

Om vi hade haft en ip-adress som lydde 128.10.11.23 och en subnet mask på 255.255.0.0 då kan vi snabbt se att vi har en Klass B ip-adress.

 

Hela syftet med en subnet mask är att berätta för datorn vilka siffror i ip-adressen som är  nätverks-id och vilka som är host-id.

En subnet mask kan också hjälp oss att ”avmaska” så att vi kan ange hur många subnät vi vill ha och hur många tillgängliga hosts (noder) under varje subnät. Utåt mot internet kommer det fortfarande se ut som om du hade ett enda stort nät med EN nätverksadress men internt kommer ditt nät att vara uppdelat i s.k. subnät.

 

Subnet mask för att identifiera nätverk
Ip-addressen 128.10.11.23 subnet mask 255.255.0.0 säger oss att 128.10 är nätverks-id. Om subnet mask hade varit 255.255.255.0,då hade vi kunnat dra slutsatsen att nätverks-id var 128.10.11.

 

Ip-adress

Subnet mask

Nätverks-id

126.10.11.23

255.0.0.0

128 - Klass A

128.10.11.23

255.255.0.0

128.10 – Klass B

192.10.11.23

255.255.255.0

128.10.11 – Klass C

 

Du kan använda subnet mask för att identifiera nätverk.

Tänk dig scenariot:

Ditt företag består av fem separata kontor. Ett i Umeå, ett i Ö-vik, ett i Sundsvall, ett i Ånge och ett i Gävle.

Det första nätverket som du bygger är för kontoret i Sundsvall. När du byggde så använde du 128.1.1.x som ip-adresser där x är ett nummer mellan 1 och 255. Eftersom ip-adressen börjar med 128 så vet du att det är ett Klass B nätverk. Eftersom du har ett Klass-B nätverk så kan du nu bygga ditt nästa nätverk i Umeå genom att använda ip-adressen 128.1.2.x. Du kan inkrementera den tredja siffran i ip-adressen tills du har byggt nätverk för alla dina kontor. När du är klar så skulle din struktur av ip-adresser se ut som följer.

 

Nätverk

Ip-adress

Sundsvall

128.1.1.x

Umeå

128.1.2.x

Ö-vik

128.1.3.x

Ånge

128.1.4.x

Gävle

128.1.5.x

 

Vart och ett av dina kontor skulla kunna ha 254 stationer med olika interna ip-adresser. (255 är reserverad som en s.k. broadcast-adress när en station vill sända till alla andra stationer i sitt nätverk, och 0 är reserverad för att representera huvudnätet)

Så länge som du ser till att din subnet mask är 255.255.0.0 så kommer du kunna kommunicera framgångsrikt i ditt nätverk.

Om du fick för dig att ändra på på subnet masken till 255.255..255.0 då skulle du bara kunna kommunicera inom ditt kontors nätverk men inte mellan dem.

T.ex. om vi är på kontoret i Sundsvall och har subnet mask 255.255.255.0 så kan vi fortfarande kommunicera inom nätverket med ip-adressen 128.1.1.x. Men om vi försöker kommunicera med kontoret i Umeå, Ånge, Ö-vik eller Gävle så kommer vi inte att lyckas eftersom vår subnet mask säger till vår PC att vi är endast uppkopplad till ett Klass-C nätverk. (även fast vi egentligen har en Klass-B ip-adress)

 

Subnet mask annan än 255

 

De flesta subnet masker är antagligen 255.255.0.0 (Klass-B nätverk) eller 255.255.255.0 (Klass-C nätverk) men ibland kan du se subnet masker som t.ex. 255.255.128.0.

För att kunna se vad som händer då är det bäst att titta på den binära representationen av ip-adressen.

 

Den binära sekvensen av 128 är:

128

64

32

16

8

4

2

1

1

0

0

0

0

0

0

0

 

När vi ser en subnet mask som 255.255.128.0 så vet vi att en del av adresserna nu är reserverade för subnätet. T.ex. ip-adressen 128.1.16.1 skulle vara ok eftersom den tredje siffran 16 inte är reserverad av subnätet. Subnätet reserverar endast adressen 128. Vi skulle t.ex. inte kunna använda ip-adressen 128.1.128.1.

 

Om vi hade en subnet mask av 192 så skulle vår binära sekvens se ut så här:

 

128

64

32

16

8

4

2

1

1

1

0

0

0

0

0

0

 

I detta exempel så reserverar vi den 7:e och 8:e biten. Alla ip-adresser som inte använder dessa bitar är riktiga. T.ex. 128.1.32.1 är riktig om vår subnetmask är 255.255.192.0. Men om vi skulle försöka använda 128.1.64.1 så skulle vi få ett fel eftersom 64 är reserverad för subnätet.

 

Men varför då använda en subnet mask på detta sätt?

Tänk dig att du har bestämt dig för att alla kontor behöve delas upp i s.k. subnät. Du behöver alltså minst 5 subnät och dina kontor har nu blivit så stora att du vill kunna använda minst 1000 adresser till noderna under varje kontor.

 

Du skulle kunna gå tillväga på följande sätt:

För att täcka framtida behov (t.ex. nya kontor i andra städer) så vill jag kunna ha tillgång till minst 10 subnät (därför reserverar jag 4 bitar för subnetadresser) med vardera minst 1000 noder.

 

Subnet mask:

255

255

240

0

Binär motsvarighet

11111111

11111111

11110000

00000000

 

Detta ger mig:

16 subnät-adresser

4094 noder under varje subnät

 

Huvudnät:   10000000.00000001 .00000000.00000000 = 128.1.0.0/16
Subnät #0:   10000000.00000001 .00000000.00000000 = 128.1.0.0/20
Subnät #1:   10000000.00000001 .00010000.00000000 = 128.1.16.0/20
Subnät #2:   10000000.00000001 .00100000.00000000 = 128.1.32.0/20
Subnät #3:   10000000.00000001 .00110000.00000000 = 128.1.48.0/20
Subnät #4:   10000000.00000001 .01000000.00000000 = 128.1.64.0/20
Subnät #5:   10000000.00000001 .01010000.00000000 = 128.1.80.0/20
Subnät #6:   10000000.00000001 .01100000.00000000 = 128.1.96.0/20
Subnät #7:   10000000.00000001 .01110000.00000000 = 128.1.112.0/20
Subnät #8:   10000000.00000001 .10000000.00000000 = 128.1.128.0/20
Subnät #9:   10000000.00000001 .10010000.00000000 = 128.1.144.0/20
Subnät #10: 10000000.00000001 .10100000.00000000 = 128.1.160.0/20

Subnät #15: 10000000.00000001 .11110000.00000000 = 128.1.240.0/20

Vilka adresser skulle jag då kunna ge noderna i varje subnät:

Subnät #0:         128.1.0.1 till 128.1.15.254 = 4094 adresser

Subnät #1:         128.1.16.1 till 128.1.31.254 = 4094     “”

Subnät #2          128.1.32.1 till 128.1.47.254 = 4094       “”

 

Detta borde ge vårt företag lite och växa i eller hur?

 

IPv6 protokollet

 

Introduktion

 

Internet Protokol Next Generation (IPng) eller IP version 6 (IPv6) som det nu heter är det nya internet protokollet som skall ersätta föregångaren IP version 4. Tillväxten av internet har vuxit med en hastighet som inte togs i beaktandet när det ursprungliga internet protokollet, IPv4 designades i början av 80-talet. Under åren har man varit efterklok på många punkter och hittat på alternativa lösningar för internetprotokollet och alternativa protokoll till det. I IPv6 har man kombinerat ideerna från dessa alternativa protokoll och skapat ett nytt internet protokoll. Ändringarna från IPv4 till IPv6 kan delas in i följande kategorier:

 

- Expanderade adressmöjligheter. IPv6 ökar internetprotokollets adresstorlek från 32 bitar till 128 bitar, för att kunna understödja fler nivåer av adresshierarki och får därigenom fler adresserbara noder.

- Multicasting routing har blivit förbättrad genom att man lagt till ett fält med multicast adresser. Och en ny typ av adress som kallas "anycast adress" är definierad, för att kunna sända paket till vilken som helst av en grupp noder.

- Enklare header format. Några av Ipv4 headers fält har kastats eller optimerats, för att minska processkostnader för paketbehandling och att begränsa bandbreddskostnaden för IPv6 headern.

- Förbättrad understödd utbredning (Extensions) och options. Man har ingen övre gräns när det gäller längden av options och det ökar flexibiliteten i framtiden för att kunna introducera nya.

- Flow Labeling Capability. För att kunna etikettera paket som tillhör en viss ström där sändaren begär speciell behandling, t.ex. "real-time" tjänster.

- Säkerhet. Externa headers som stödjer datasäkerhet och dataintegritet. T.ex. kryptering.

 

IPV6 adressen

 

Bristen på adresser i IPv4 var det största problemet som korrigerades med IPv6.

IPv6 introducerar 128 bitars adresser istället för IPv4:as 32 bitars.

Teoretiskt så skulle man kunna ha 665,985,621,475,071,937 ip-addresser per kvadratmillimeter av jordens yta. Det verkar som om problemet med bristen på ip-adresser är löst. J

Emellertid så kommer denna gigantiska adressrymd att bli uppdelad i en mera hierarkisk struktur än i Ipv4.

Sättet att välja väg mellan routrar och gateways har fått flera nivåer. I IPv4 hade man en nätnivå och en nodnivå. Hur stor del av adressen som utgjorde vilkendera nivån bestämdes av klassen av nät (A, B eller C).

 

IPv6 har 64 bitar för att identifiera nätet och 64 bitar för att identifiera noden. IPv6 adressens arkitektur kan ses på följande bild:


Här tänker man sig att efter de tre första bitarna som utgör formatets prefix, kommer högsta nivån av ruttval, TLA (=Top-Level Aggregation).

En TLA router kan då välja mellan 16 miljoner NLA (=Next-Level Aggregation) nätverk (224).

 

En NLA router i sin tur kan kan allokera 65536 (216)nätverk på SLA-nivå (=Site-Level Aggregation). Då har ännu varje Site-enhet möjlighet att välja bland 18 miljoner biljoner (264) möjliga noder.

 

Adresseringsutdelningen skulle vara global, så att de första bitarna visar att IP paketet skall t.ex till Europa och paketet skickas till en router i Europa. Där börjar routern analysera följande bitar och märker att paketet skall till Sverige. Där upptäcks att paketet skall till Swipnets nät och först där ser man vilken nod det var fråga om.

Denna topologi skulle leda till mindre ruttvalstabeller, vilket också var ett problem i IPv4.

Ipv6-adresser kommer inte att skrivas med decimala tal utan hexadecimalt i grupper om åtta.

 

Ex. på två adresser:

FEDC : BA98 : 7654 : 3210 : FEDC : BA98 : 7654 : 3210

FE80 : 0000 : 0000 : 0000 : 0200 : F8FF : FE22 : 26C8

 

Stegvis övergång till Ipv6

1.      De flesta är överens om att den första åtgärden som krävs är att man byter ut sin domänserver (DNS) och ger den möjlighet att hantera IPv6-adressering.

 

2.      Nästa steg är att uppgradera sitt routernät till att kunna hantera såväl IPv4 som IPv6.

 

3.      Det tredje steget är att utrusta alla datorer i nätet med möjlighet att kommunicera via IPv6. Detta ligger en bit framåt i tiden.

För att få tillgång till alla nya funktioner hos IPv6 krävs alltså en total övergång till det nya protokollet.