ITKP104 Tietoverkot
Ari Viinikainen
Verkkokerros
Verkkokerroksen palvelut
- Data oikealle laitteelle
- Pitää selvittää reitti: Reititysprotokollat
- Pitää kuljettaa data: IP protokolla
- Virhetilanteet ja verkon diagnostiikka: ICMP protokolla
- Laite: Reititin
- Reititys (routing): selvitetään reitit IP osoitteisiin
- Välitys (forwarding): lähetetään dataa eteenpäin reititysinformaation perusteella
- Reititysalgoritmi (protokolla): määrittää reitit ja ylläpitää reititystaulua
- Kun pakettia välitetään, katsotaan reititystaulusta seuraava laite jolle paketti lähetetään
IP osoite kertoo laitteen sijainnin?
- IP osoite ei kerro sijaintia maapallolla! Vain sen kuinka paketit reititetään kohteeseen
- IP osoitteiden sijainnista voi olla tietoa: Sijaintitieto joudutaan keräämään esim. seuraamalla reittejä
- Sijainnin voi piilottaa proxy palvelimella
- Etsi ensin jokin proxy palvelin google haku
- Katso optioista että scriptien suoritus sallitaan
- Mene sitten kurssin kotisivulle kopiomalla ao. osoite proxy sivustolle
- http://users.jyu.fi/~arjuvi/opetus/itkp104/2014/
- Toivottavasti edes toinen vasemmassa reunassa olevista skripteistä näyttää "sijaintisi"
- Sen jälkeen mene ao. sivustolle, joka kerää tietoa siitä mistä päin maailmaa vierailijat tulevat
- http://users.jyu.fi/~arjuvi/opetus/itkp104/2014/ITKP104_proxy_hits_2014.html
- Jos intoa riittää niin kokeile eri maissa sijaitsevia proxy palvelimia
IP osoite
- "A name indicates what we seek. An address indicates where it is. A route indicates how to get there." (RFC 791)
- Kertoo laitteen sijainnin verkkohierarkiassa (ei fyysistä sijaintipaikkaa)
- Osoite on hierarkinen - prefix-osa ja laiteosa (aiemmin oli verkko-osa, aliverkko-osa, ja laiteosa)
- Prefix-osan perusteella paketti välitetään oikeaan verkkoon
- IP osoitteen koko
- IPv4: 32 bittiä (binääriluku - 4 294 967 296 (232) osoitetta), joka koostuu neljästä tavusta
- Ihmisystävällinen merkintä tapa, muutetaan tavut positiivisiksi kokonaisluvuiksi ja erotetaan ne pisteillä
- esim. 173.194.32.63 (10101101.11000010.00100000.00111111)
- IPv6: 128 bittiä (binääriluku - noin 3.4×1038 (2128) osoitetta)
- Ihmisystävällinen merkintä tapa, jaetaan kahdeksaan neljän heksadesimaaliluvun ryhmään
- esim. 2a00:1450:400f:801::1017, joka on lyhennys
- osoitteesta 2a00:1450:400f:8010:0000:0000:0000:1017
- (0010101000000000
0001010001010000
0100000000001111
1000000000010000
0000000000000000
0000000000000000
0000000000000000
0001000000010111)
IP osoitetyypit
- Unicast - täsmälähetys (esim. Yle Areena, Nettiradiot, yms.)
- Yleisin osoitetyyppi, "yhden" laitteen osoite, voidaan käyttä lähettämiseen sekä vastaanottamiseen
- Broadcast - yleislähetys (TV ja radio -ohjelmat radio/kaapeliverkosta)
- Yleislähetysosoite, voidaan lähettää (ali)verkon kaikille laitteille sama paketti
- 255.255.255.255 kaikille lähiverkon laitteille (ei mene reitittimen läpi)
- tai esim. aliverkkoon 192.0.2.0/24 yleislähetysosoite on 192.0.2.255
- IPv6:ssa ei mahdollista, hoidetaan Multicast:llä
- Multicast - ryhmälähetys (näin 'pitäisi' Yle Areena yms. toimia!!!)
- Monilähetysosoite, laitteet voivat liittyä Multicast ryhmään (IGMP protokolla), jossa paketit välitetään kaikille jäsenille
- Varattu osoitteet väliltä 224.0.0.0 - 239.255.255.255 (IPv4) ja ff00::/8 (IPv6)
- Reitittimet hoitavat paketin kopiomisen ja välittämisen kaikille ryhmän jäsenille
- Anycast - 'Jokulähetys' (...)
- Paketti voidaan välittää monelle vastaanottajalle, mutta valitaan se joka on fyysisesti lähimpänä
- Käytetään kuorman tasaukseen palvelimilla sekä esim. DSN juurinimipalvelinten hajauttamiseen
- IPv4:ssa ei suoraa tukea, hoidetaan yleensä AS:ien välisellä reititysprotokollalla (BGP)
- IPv6:ssa osa spesifikaatiota
IP aliverkotus
- Aluksi ensimmäiset 8 bittiä oli verkko-osa (ja loput 'muuta' osaa), sitten kehitettiin luokallinen osoitteistus
Class |
Leading
bits |
Size of network
number bit field |
Size of rest
bit field |
Number
of networks |
Addresses
per network |
Start address |
End address |
A |
0 |
8 |
24 |
128 (27) |
16,777,216 (224) |
0.0.0.0 |
127.255.255.255 |
B |
10 |
16 |
16 |
16,384 (214) |
65,536 (216) |
128.0.0.0 |
191.255.255.255 |
C |
110 |
24 |
8 |
2,097,152 (221) |
256 (28) |
192.0.0.0 |
223.255.255.255 |
- D = Multicast, E = Varattu
- Lopulta: Classless Inter-Domain Routing (CIDR)
- Luokaton verkkotunnusten (domain) välinen reititys
IP aliverkotus - CIDR
- Aliverkkomaski
- Kertoo kuinka monta bittiä IP osoitteesta on prefix osaa (loput on sitten laitteille)
- Esim. /8 tarkoittaa että 8 ensimmäistä bittiä on prefix osaa
- Tällöin siis aliverkkomaskissa kahdeksalla ensimmäisellä bitillä on arvo 1 (ja lopuilla arvo 0)
- esim. 11111111 00000000 00000000 00000000
- yo. voidaan merkitä myös 255.0.0.0
- Tai esim. /23 jota vastaa maski
- 11111111 11111111 11111110 00000000
- eli 255.255.254.0
IPv4 Route Table
Windows tietokone: netstat -rn
tai route print
===========================================================================
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 130.234.169.1 130.234.169.82 276
130.234.169.0 255.255.255.128 On-link 130.234.169.82 276
130.234.169.82 255.255.255.255 On-link 130.234.169.82 276
===========================================================================
- Koneen osoite: 130.234.169.82
- Aliverkon osoite: 130.234.169.0/25
- Aliverkkomaski: 255.255.255.128
IPv4 reititys - kohde samassa verkossa
===========================================================================
Aliverkkomaskit Verkko-osoite
11111111 11111111 11111111 11111111 130.234.169.82
11111111 11111111 11111111 10000000 130.234.169.0
00000000 00000000 00000000 00000000 0.0.0.0
===========================================================================
- Lähetetään osoitteeseen: 130.234.169.47 (10000010 11101010 10101001 00101111)
- Käydään reititystaulun kaikki rivit läpi
- Tehdään binäärinen AND operaatio kohdeosoitteen ja tarkasteltavan rivin maskin kanssa
- Verrataan yllä saatua tulosta tarkasteltavan rivin verkko-osoitteeseen
- Reititys bittien vastaavuuden perusteella
- Jos usealla verkko-osoitteella sama määrä, valitaan se jonka maskissa on eniten ykkösiä
IPv4 reitin valinta - kohde samassa verkossa
===========================================================================
11111111 11111111 11111111 11111111 255.255.255.255
AND 10000010 11101010 10101001 00101111 130.234.169.47
10000010 11101010 10101001 00101111 130.234.169.47
verrataan 10000010 11101010 10101001 01010010 130.234.169.82
---> 26 bittiä samoja
===========================================================================
===========================================================================
11111111 11111111 11111111 10000000 255.255.255.128
AND 10000010 11101010.10101001 00101111 130.234.169.47
10000010 11101010.10101001 00000000 130.234.169.0
verrataan 10000010 11101010.10101001 00000000 130.234.169.0
---> 32 bittiä (kaikki) samoja
===========================================================================
===========================================================================
00000000 00000000 00000000 00000000 0.0.0.0
AND 10000010 11101010 10101001 00101111 130.234.169.47
00000000 00000000 00000000 00000000 0.0.0.0
verrataan 00000000 00000000 00000000 00000000 0.0.0.0
---> 32 bittiä (kaikki) samoja
===========================================================================
IPv4 reitin valinta - kohde samassa verkossa
===========================================================================
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 130.234.169.1 130.234.169.82 276
130.234.169.0 255.255.255.128 On-link 130.234.169.82 276
130.234.169.82 255.255.255.255 On-link 130.234.169.82 276
===========================================================================
- Paketti lähetetään 130.234.169.0 verkkoon (koska sen maskissa enemmän ykkösiä edellisellä kalvolla)
- Koska kyseisellä rivillä ei ole gateway sarakkeessa IP osoitetta, on kohde siis samassa verkossa
- Seuraavaksi selvitetään kohteen (130.234.169.47) linkkikerroksen osoite (MAC osoite)
- Linkkikerroksen osoite selvitetään ARP protokollalla
- Ja kapsuloidaan verkkokerroksen paketti linkkikerroksen kehykseen
IPv4 reititys - kohde eri verkossa
===========================================================================
Aliverkkomaskit Verkko-osoite
11111111 11111111 11111111 11111111 130.234.169.82
11111111 11111111 11111111 10000000 130.234.169.0
00000000 00000000 00000000 00000000 0.0.0.0
===========================================================================
- Lähetetään osoitteeseen: 130.234.169.147 (10000010 11101010 10101001 10010011)
- Koska meillä on 130.234.169/25 verkko, niin 147 on eri verkossa kuin 47
- Laite 'tietää' ylläolevan aliverkkomaskin perusteella
IPv4 reitin valinta - kohde eri verkossa
===========================================================================
11111111 11111111 11111111 11111111 255.255.255.255
AND 10000010 11101010 10101001 10010011 130.234.169.147
10000010 11101010 10101001 10010011 130.234.169.147
verrataan 10000010 11101010 10101001 01010010 130.234.169.82
---> 29 bittiä samoja
===========================================================================
===========================================================================
11111111 11111111 11111111 10000000 255.255.255.128
AND 10000010 11101010.10101001 10010011 130.234.169.147
10000010 11101010.10101001 10000000 130.234.169.128
verrataan 10000010 11101010.10101001 00000000 130.234.169.0
---> 31 bittiä samoja
===========================================================================
===========================================================================
00000000 00000000 00000000 00000000 0.0.0.0
AND 10000010 11101010 10101001 10010011 130.234.169.147
00000000 00000000 00000000 00000000 0.0.0.0
verrataan 00000000 00000000 00000000 00000000 0.0.0.0
---> 32 bittiä (kaikki) samoja
===========================================================================
IPv4 reitin valinta - kohde eri verkossa
===========================================================================
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 130.234.169.1 130.234.169.82 276
130.234.169.0 255.255.255.128 On-link 130.234.169.82 276
130.234.169.82 255.255.255.255 On-link 130.234.169.82 276
===========================================================================
- Paketti lähetetään 0.0.0.0 verkkoon, eli oletusreittiin (koska sen vertailussa eniten samoja bittejä edellisellä kalvolla)
- Koska kyseisellä rivillä on gateway sarakkeessa oletusreitittimen osoite, on kohde siis eri verkossa
- Seuraavaksi selvitetään reitittimen (130.234.169.1) linkkikerroksen osoite (MAC osoite)
- Linkkikerroksen osoite selvitetään ARP protokollalla
- Ja kapsuloidaan verkkokerroksen paketti linkkikerroksen kehykseen
Tutki mitä tietoja löydät
Esimerkki hierarkisesta reitityksestä
Hierarkinen reititys - jos sitä ei olisi...
- Skaalautuvuus
- Jokaisen reitittimen täytyisi ylläpitää tietoa koko Internetin rakenteesta, jos ei olisi hierarkiaa
- Internet ruuhkautuisi reitittimien päivitysviesteistä
- Reititysalgoritmitmien laskenta kestäisi kauan
- Autonomia
- Kaikki maailman verkot joutuisivat käyttämään samaa reititys protokollaa
- Yritykset/organisaatiot eivät pystyisi piilottamaan oman verkkonsa toteutusta ulkopuolisilta
- Oman verkon hallinta olisi maailmanlaajuisen reititysprotokollan vastuulla, eikä itsellä
Hierarkinen reititys - Toteutus
- IP osoite on hierarkinen (CIDR)
- Autonomous System (AS)
- Reitittimet organisoidaan kuuluvaksi tiettyyn AS:ään
- Yleensä yksi operaattori on yksi AS (isoilla operaattoreilla on useita AS tunnuksia)
- AS:n sisällä
- operaattori hallitsee verkkoaan ja käyttää haluamaansa reititysprotokollaa
- reitittimet osaavat välittää sisäisen liikenteen
- ulosmenevästä liikenteestä tiedetään reunareititin, joka vastaa AS:n ulkoisesta liikenteestä
- AS:stä ulos
- Mainostetaan mitkä osoiteavaruudet kuuluvat AS:n verkkoon, ei yksittäisiä osoitteita
- Mainostetaan myös mitä muita AS:iä voidaan kyseisen verkon kautta saavuttaa
- ulosmenevä liikenne lähetetään sellaiseen AS:ään joka mainostaa reittiä
- ulosmenevän liikenteen kohde-AS;ään vaikuttaa myös tiedonsiirron hinta
Mistä niitä IPv4 osoitteita saa?
- IANA jakaa osoitelohkot alueellisille rekistereille
- jakoi viimeiset viisi IPv4 osoitelohkoa (Last /8) 3.2.2011
- /8 lohko sisältää noin 16 miljoona osoitetta
- Alueelliset rekisterit - Regional Internet Registry (RIR)
- RIPE Network Coordination Centre (RIPE NCC)
- Käytti osoitelohkonsa toisena loppuun (14.9.2012)
- Jakaa nyt (rajoitetusti) osoitteita viimeisestä /8 lohkostaan
- American Registry for Internet Numbers (ARIN)
- Lähestyy vaihetta jossa joudutaan jakamaan osoitteita viimeisestä /8 lohkosta
- Asia-Pacific Network Information Centre (APNIC)
- Käytti osoitelohkonsa ensimmäisenä loppuun (15.4.2011)
- Jakaa nyt (rajoitetusti) osoitteita viimeisestä /8 lohkostaan
- Latin American and Caribbean Internet Address Registry (LACNIC)
- Jakaa osoitteita normaalisti kunnes n. 8 miljoonaa osoitetta jäljellä (last /9)
- African Network Information Centre (AfriNIC)
- vuonna 2014 vielä 50+ miljoona osoitetta jaettavissa
Saako euroopassa enää IPv4 osoitteita?
- RIPE Network Coordination Centre (RIPE NCC)
- Käytti vapaat osoitteensa loppuun alkamalla allokoimaan osoitteita viimeisestä /8 lohkosta
- Jakaa vain yhden /22 (1024 IPv4 osoitetta) kullekin LIR (Local Internet registry):lle
- Myönnetään vain jos hakijalla on olemassa oleva IPv6 allokaatio
- Enää ei ole mahdollista (uuden) operaattorin olla yhteydessä Internettiin vain IPv4 tekniikalla
- Yksi /16 lohko varataan IPv4 -> IPv6 siirtymistä varten
- Kaikkien operaattoreiden tulisi ottaa IPv6 käyttöön
IPv4 vs IPv6
- Erot
- osoite
- kehysrakenne yksinkertaistettu
- poistettu harvoin käytettyjä kenttiä
- Vähentää pakettien käsittelyaikaa reitittimillä
- ei DHCP:tä
- IPv6 kykenee automaattisesti generoimaan itselleen osoitteen
- ei erillisiä yleislähetysosoitteita