Verkkodiagnostiikkaa Traceroute Lähettää kohdekoneelle UDP-sanomia, joissa IP- paketin TTL on 1, 2, 3,... Reititin, jolla jonkin paketin TTL tulee nollaksi, lähettää tästä ICMP-ilmoituksen - mukana on reitittimen osoite Lähettäjä saa näin n selville yksi kerrallaan reitittimet eli kuljetun reitin lähettl hettäjältä kohdekoneelle sekä voi laskea kiertoajat 91 Path MTU Discovery (RFC1191) Path MTU: suurin IP-paketin koko, joka ei vaadi pilkkomista matkalla lähdekoneelta l kohdeneelle Path MTU:n selvittämiseksi lähdekone valitsee aluksi oman ulosmenoliitänn nnän MTU:ta vastaava IP-paketin koon Asettaa IP-otsakkeen DF-bitin pääp äälle Jos reititin joutuisi pilkkomaan IP-paketin, se pudottaa paketin ja lähettl hettää ICMP-ilmotuksen (Type=3 / Code=4: Destination Unreachable / fragmentation needed and DF bit set) - Mukana mahdollisesti myös Next-Hop MTU Kun lähdekone l saa ICMP-ilmoituksen, se valitsee uuden IP-paketin koon - Next-Hop MTU -arvon perusteella tai - käyttää sopivaa algoritmia seuraavan arvon valitsemiseksi 92 Page1 1
DHCP (Dynamic Host Configuration Protocol) RFC 2131 ja RFC 2132 BOOTP-protokollan (RFC 951) pohjalta laajennus Toimii myös s BOOTP-asiakkaiden kanssa IP-osoitteen antaminen koneelle Lisäksi mm. aliverkkomaski, oletusreitittimen osoite, paikallisen DNS-palvelimen osoite, jne Tarvittaessa kaikki IP-konfigurointitiedot DHCP-palvelin antaa koneille pysyviä IP-osoitteita sekä myös s tilapäisi isiä IP-osoitteita Välittäjäagentti agentti (voi olla reititin) tuntee DHCP-palvelimen osoitteen välittää oman verkon DHCP-sanomat reititin) jokaisessa lähiverkossal sanomat DHCP-palvelimelle ja palvelimen vastaukset takaisin asiakkaalle 93 DHCP-protokollan sanomarakenne 1 8 16 24 32 op(1) htype(1) hlen(1) hops(1) secs(2) xid(4) flags(2) ciaddr(4) yiaddr(4) siaddr(4) giaddr(4) chaddr(16) sname(64) file(128) options(variable) 94 Page2 2
DHCP-sanoman kentät FIELD OCTETS DESCRIPTION op 1 message type 1 = BOOTREQUEST, 2 = BOOTREPLY htype 1 Hardware address type hlen 1 Hardware address length (e.g. '6' for 10mb ethernet). hops 1 Client sets to zero, optionally used by relay agents xid 4 Transaction ID, a random number chosen by the client, used by the client and server to associate messages and responses between a client and a server. secs 2 Filled in by client, seconds elapsed since client began address acquisition or renewal process. flags 2 Flags (client not able to receive with its hw addr before configured ciaddr 4 Client IP address; only filled in if client is in BOUND, RENEW or REBINDING state and can respond to ARP requests. yiaddr 4 'your' (client) IP address. siaddr 4 IP address of next server to use in bootstrap; returned in DHCPOFFER, DHCPACK by server. giaddr 4 Relay agent IP address, used in booting via a relay agent. chaddr 16 Client hardware address. sname 64 Optional server host name, null terminated string. file 128 Boot file name, null terminated string; "generic" name or null in DHCPDISCOVER, fully qualified directory-path name in DHCPOFFER. options var Optional parameters field (IP configuration parameters) 95 DHCP-protokollan sanomat DHCP discover message: UDP-sanoma asiakkaalta yleislähetyksen hetyksenä - Kohde: 255.255.255.255; Lähde 0.0.0.0 - Linkkikerroksella yleislähetyksen hetyksenä kaikille paikallisen verkon asemille aliverkon DHCP-palvelin saa sanoman tai välitttäjäagentti ohjaa sen DHCP-palvelimelle DHCP offer message vastauksena DHCP-palvelimelta - voi tulla useita, jos useita palvelimia! sanomassa IP-osoite (yiaddr) ja mahdollisesti muita konfigurointiparametreja (verkkomaski, jne) sekä osoitteen vuokra-aika aika (lease) Kohde: 255.255.255.255, mutta asiakkaan oma hw addr, jos mahdollista 96 Page3 3
DHCP-protokollan sanomat (jatk.) DHCP request Pyytää tarjottuja parametreja yhdeltä valitulta palvelijalta - yleislähetyksen hetyksenä tiedoksi kaikille DHCP-palvelimille - vähintään n valitun tarjouksen tehneen palvelimen osoite,, mutta myösm muuta konfigurointitietoa Myös s aiemmin allokoidun osoitetiedon vahvistuspyyntö DHCP ack: palvelimen vahvistus DHCP nak: palvelija ilmoittaa, että asiakkaan pyytämä osoite epäkelpo tai vanhentunut DHCP decline asiakas huomaa, että saatu osoite olikin jo käytk ytössä DHCP release: asiakas vapauttaa osoitteen DHCP inform: asiakas pyytää konfigurointitietoja, kun sillä jo erikseen konfiguroitu IP- osoite 97 DHCP: vaihe 1 DHCP-palvelin src: 0.0.0.0, 68 dest: 255.255.255.255,67 DHCPDISCOVER yiadd: 0.0.0.0 transaction ID (xid): 654 asiakas src: 233.1.2.5, 67 dest: 255.255.255.255,68 DHCPOFFER yiadd: 233.1.2.4 transaction ID (xid): 654 DHCP server ID: 223.1.2.5 Lifetime: 3600 sec 98 Page4 4
DHCP: vaihe 2 DHCP-palvelin src: 0.0.0.0, 68 dest: 255.255.255.255,67 DHCREQUEST yiaddr: 233.1.2.4 transaction ID: 655 DHCP server ID: 223.1.2.5 Lifetime:3600 sec asiakas src: 233.1.2.5, 67 dest: 255.255.255.255,68 DHCPACK yiaddr: 233.1.2.4 transaction ID: 655 DHCP server ID: 223.1.2.5 Lifetime:3600 sec 99 IPv4-osoiteongelmia IP-osoitteiden luokkajako osoittautui epäkäyt ytännölliseksi: B-luokassa koneita liian paljon => hukkakäytt yttöä,, B-osoitteetB olivat loppua jo 90-luvulla C-luokassa koneita liian vähän v n => useita eri verkkoja C-luokan verkkojen lisää ääntyminen kasvatti reititystauluja => laskennan monimutkaisuus, => tietojenvaihto vie paljon resursseja 32-bittiset IPv4-osoitteet eivät t ylipää äätään n riitä pidemmän päälle => CIDR: tehokkaampi osoiteavaruuden hyödynt dyntäminen => NAT: osoitteiden yhteiskäytt yttö => IPv6: pidemmät t osoitteet 100 Page5 5
CIDR (Classless Interdomain Routing) Pienentää reititystaulujen kokoa ja tehostaa verkkotunnisteiden (C-luokka) allokointia Kaksiosainen ratkaisu: Korvataan reititysalueiden välisessv lisessä reitityksessä verkkotunnisteet parilla: - < kohteen kantaosoite, verkkomaski > - Allokoidaan verkkotunisteita (verkkoja) 2, 4, 8, jne kokoisina ryppäin inä siten että ryppää ään n osoitteilla yhteinen (bittitason) etuliite, prefix,, eli ovat summautuvia Noudatetaan alueellista hierakiaa, jolloin summautumisominaisuutta voidaan toistaa edelleen ylemmillä hierarkiatasoilla 101 Luokallisessa käsittelyssk sittelyssä osoitteen luokka (A,B,C) kertoi verkkotunnisteen ja koneosoitteen pituudet (bitit) CIDR => verkkotunnisteen koko vaihtelee CIDR:n käyttk yttö vaatii maskin, joka kertoo, mitkä bitit kuuluvat verkkotunnist tunnisteeseen ja mitkä koneosoitteeseen Vastaavasti kuin aliverkko-osoitteita osoitteita käytettk ytettäessä tarvitaan aliverkkomaski (subnet mask) 102 Page6 6
CIDR esimerkki varataan C-osoitteet C peräkk kkäisinä lohkoina esim. 2000 osoitetta => varataan 8 peräkk kkäistä C- verkkoa (= 8*256 = 2048) jaetaan osoitteet neljää ään n osaan, kukin osa varataan yhdelle maanosalle (Eurooppa, Pohjois-Amerikka, Etelä-Amerikka, Aasia+Pasific) kullekin noin 32 miljoonaa osoitetta 320 miljoona jääj vielä varastoon reititetää ään n myös s maanosien mukaan osoitteet: 194.0.0.0-195.255.255.255 Eurooppaan 103 Esimerkki CIDR:n käytk ytöstä varataan osoitteet Organisaatio A: 2048 osoitetta (= 2**11 kpl) 194.24.0.0-194.24.7.255 ja maski 255.255.248.0/21 Organisaatio B: 4096 osoitetta (= 2**12 kpl) 194.24.16.0-194.24.31.255 ja maski 255.255.240.0/20 Organisaatio C: 1024 osoitetta (=2**10 kpl) 194.24.8.0-194.24.11.255 ja maski 255.255.252.0/22 talletetaan reititystauluihin jokaisesta osoitteen alku eli kantaosoite ja maski saapuva paketti esim. 194.24.17.4 AND-operaatio ensin B:n maskilla jos tuloksena B:n kantaosoite (194.24.12/22) /22),, menossa B:n verkkoon muuten yritetää ään muita Verkot A, B, C voidaan yhdistää kantaosoitteen 194.24.0.0/19 alle 104 Page7 7
IP-verkon reitityshierarkia (yksinkertaistettu näkemys) n A... C 105 NAT (Network Address Translation, RFC3022) yritykselle riittää muutama, jopa yksi IP-osoite, jolla kommunikoidaan ulkomaailmaan yrityksen sisäll llä koneilla on omat IP-osoitteet yksikäsitteisi sitteisiä vain yrityksen sisäll llä yksityiset osoitteet: - 10.0.0.0 10.255.255.255 (prefix:10/8) (16 777 216 kpl) - 172.16.0.0 172.31.255.255 (prefix: 172.16/12) (n. 1 miljoona kpl) - 192.168.0.0 192.168.255.255 (prefix: 192.168/16) (65536 kpl) 106 Page8 8
10.0.0.1 10.0.0.2 10.0.0.3 10.0.0.4 10.0.0.5 lähettäjä 10.0.0.1 lähettäjä 98.1.5.9 NAT kone, jonka kautta kulkee kaikki liikenne sisään ja ulos; ulos meneviin paketteihin NAT:n osoite (lähde) 107 10.0.0.1 10.0.0.2 10.0.0.3 10.0.0.4 10.0.0.5 vast.ottaja1 10.0.0.1 NAT kone, jonka kautta kulkee kaikki liikenne sisään ja ulos vast.ottaja1 98.1.5.9 Entä, kun tulee vastaus, miten NAT osaa ohjata sen oikealle koneelle? 108 Page9 9
10.0.0.1 10.0.0.2 10.0.0.3 10.0.0.4 10.0.0.5 vast.ottaja 10.0.0.1; portti 1026 vast.ottaja1 98.1.5.9 portti 567 vast.ottaja 10.0.0.4; portti 1026 NAT muunnostaulu NAT Ulkoverkko Sisäverkko vast.ottaja 98.1.5.9; portti 568 98.1.5.9, 567 10.0.0.1, 1026...... 98.1.5.9, 568 10.0.0.4, 1026 Käytetään TCP:n ja UDP:n porttinumeroita, joilla tunnistetaan päätepiste 109 NAT ongelmia Porttiosoitteet kuljetuspää äätepistettä (pistoke) varten Korkeintaan 65 534 yhteyttä ulos per NAT:n IP-osoite Koneella pitäisi isi olla oma ulospäin näkyvä IP-osoite osoite, jotta voisi toimia palvelijana IP-osoite sovelluksen sanomassa säilyy vääränä Ei enää tilaton => yhtä haavoittuva kuin virtuaalipiiri - Jos NAT kaatuu! Rikkoo protokollien kerrostamista - nojaa ylemmän n protokollan ominaisuuksiin Entä muut kuin TCP ja UDP? 110 Page 10 10