icmp protokol

Upload: denis-de

Post on 06-Jul-2015

133 views

Category:

Documents


1 download

TRANSCRIPT

PRIRODOSLOVNO-MATEMATI KI FAKULTET SVEU ILI TE U SPLITU

D. DERVOVI

Informatika

ICMP PROTOKOLSEMINARSKI RAD IZ PREDMETA RA UNALNE MRE E PROFESOR:MR. SC. ANTE BURILOVI

Split, 2010.

1

SADR AJ1. 2. 3. UVOD ................................ ................................ ................................ ................................ ......... 3 FORMAT ICMP PORUKE ................................ ................................ ................................ .............. 4 VRSTE ICMP PORUKA ................................ ................................ ................................ .................. 7 3.1.Source Quench Poruka ................................ ................................ ................................ ............. 7 3.2.Time Exceeded ................................ ................................ ................................ ......................... 8 3.3.Redirect Poruka................................ ................................ ................................ ........................ 9 3.4. ECHO REQUEST/REPLY................................ ................................ ................................ ........... 10 4. 5. Zaklju ak ................................ ................................ ................................ ................................ .. 12 Literatura ................................ ................................ ................................ ................................ . 13

2

1. UVODICMP (skraceno od eng. Internet Control Message Protocol) je vrlo va an protokol internet razine i sastavni dio IP protokola. Njegova osnovna namjena je osigurati kontrolu prijenosa podataka do odredi ta. Budu i da, kao i sam IP protokol, funkcionira na principu najboljeg poku aja (eng. best effort), ovaj protokol ne osigurava pouzdan prijenos podataka. To trebaju osigurati protokoli vi e razine. Same poruke se alju samo kao odgovor na poslane IP pakete, na poslane ICMP pakete odgovor se ne alje. U slu aju gubitka ICMP poruke, ne generira se nova ICMP poruka o nastaloj pogre ci. Svrha tome je da se izbjegne beskona no slanje poruka. U ovom seminaru u probati opisati svrhu ICMP protokola, kako funkcionira, format ICMP poruka, koje se sve poruke mogu generirati i na koji na in.

3

2. FORMAT ICMP PORUKEICMP poruke se alju koriste i osnovno IP zaglavlje. Prvi oktet polja podataka IP paketa definira tip ICMP poruke. Svaka poruka sadr i i IP zaglavlje poruke o ijem gubitku izvje uje, te prvih 64 bita podataka originalnog paketa.

Slika 1 - Format ICMP Paketa

y y y y y y

Type Tip ICMP poruke (poruke i njihova zna enja su navedeni u nastavku) Code Za svaki tip poruke su odre eni kodovi Checksum Kontrolni broj paketa Indentifier Identifikator paketa Sequence number Broj sekvence Address mask 32-bitna maska

Prvih 32 bita ostaju ista kod svi ICMP poruka i podjeljenja su na tip koji zauzima 8 bita, kod koji isto zauzima 8 bita i kontrolnu sumu od 16 bita. Tip odre uje format ICMP poruke, koje se nemoraju koristiti samo u svrhu dojave gre aka. Neki od tipova su dani u tablici: Type 0 - Echo Reply[3] 1 and 2 Code Description 0 Echo reply (used to ping) Reserved 0 Destination network unreachable 1 Destination host unreachable 2 Destination protocol unreachable 3 Destination port unreachable 4 Fragmentation required, and DF flag set 5 Source route failed 6 Destination network unknown 7 Destination host unknown 8 Source host isolated 9 10 11 Network administratively prohibited Host administratively prohibited Network unreachable for TOS 4

3 - Destination Unreachable[4]

4 - Source Quench

5 - Redirect Message

12 13 0 0 1 2 3

Host unreachable for TOS Communication administratively prohibited Source quench (congestion control) Redirect Datagram for the Network Redirect Datagram for the Host Redirect Datagram for the TOS & network Redirect Datagram for the TOS & host Alternate Host Address Reserved Echo request Router Advertisement Router discovery/selection/solicitation TTL expired in transit Fragment reassembly time exceeded Pointer indicates the error Missing a required option Bad length Timestamp Timestamp reply Information Request Information Reply Address Mask Request Address Mask Reply Reserved for security Reserved for robustness experiment Information Request Datagram Conversion Error Mobile Host Redirect Where-Are-You (originally meant for IPv6) Here-I-Am (originally meant for IPv6) Mobile Registration Request Mobile Registration Reply Domain Name Request Domain Name Reply SKIP Algorithm Discovery Protocol, Simple KeyManagement for Internet Protocol Photuris, Security failures ICMP for experimental mobility protocols such as Seamoby [RFC4065] 5

6 7 8 - Echo Request 9 - Router Advertisement 10 - Router Solicitation

0 0 0 0 11 - Time Exceeded[5] 1 0 12 - Parameter Problem: 1 Bad IP header 2 13 - Timestamp 0 14 - Timestamp Reply 0 15 - Information Request 0 16 - Information Reply 0 17 - Address Mask Request 0 18 - Address Mask Reply 0 19 20 through 29 30 - Traceroute 31 32 33 34 35 36 37 38 39 40 41 0

42 through 255

Reserved

Kod nam daje daljnju specifikaciju ICMP poruke. On je to no odre en za svaki tip poruke zasebno. Kontrolna suma je 16-bitni komplement od komplementa sume ICMP poruke, po ev i sa poljem CMP Type. Za ra unanje ove sume, polje checksum mora biti nula. Ako se otkrije gre ka u kontrolnom zroju, tada se cijeli datagram bri e, bez slanja ikakve poruke o gre ci. Ne mo e se u initi ni ta drugo zato jer se ne zna je li IP adresa po iljatelja korumpitana. Kao to smo napomenuli ICMP poruke se alju putem IP datagrama, na nacin da se vrijednost na mijestu protokol stavi na vrijednost 1.

Slika 2-Potpuni izgled ICMP datagrama

6

3. VRSTE ICMP PORUKANeke od naj e ih ICMP poruka su: y SOURCE QUENCH Router alje ovu poruku kada u njegovom spremniku nema dovoljno mjesta. Po iljatelj mora reagirati smanjivanjem brzine generiranja novih datagrama. y TIME EXCEEDED Generira se kada je usmjernik spustio Time To Live(TTL) na nulu ili kada host pri ponovnom sklapanju fragmentirane poruke prekora i Reasembly Timer. y DESTINATION UNREACHABLE alje se kad router ustanovi da se datagram ne mo e isporu iti na svoje odredi te. Iskazuje se razlika izme u nedostupnog hosta i nedostupne mre e. y REDIRECT Ukoliko router utvrdi da bi datagram trebao biti poslan po drugoj ruti, alje ovu poruku. Mo e zahtijevati promjenu za host ili mre u. y ECHO REQUEST/REPLY Echo request poruka mo e se slati ICMP software-u na bilo kojem voru. ICMP software mora reagirati slanjem echo reply poruke. Odgovor sdr i iste podatke kao i zahtijev. y ADDRESS MASK REQUEST/REPLY Prilikom svog boot-anja, host alje broadcast upit o adresnoj masci. Router koji primi poruku alje korektni 32-bitni broj koji sadr i adresnu masku za tu mre u.

3.1.Source Quench Poruka

Slika 3-ICMP Poruka:Source Quench

U datagramu u IP poljima su dani izvori na mre a i adresa iz originalnih podataka datagrama. Od glavnih ICMP polja, tip je postavljen na 4 i kod mu je postavljen na 0.

7

Gateway mo e odbaciti datagram ako nema dovoljno mjesta u spremniku(eng. buffer) potrebnog za proslije ivanje datagrama slijede oj mre i na putu prema odredi noj mre i. Ako gateway odbaci datagram, alje poruku Source Quench izvori nom hostu datagrama. Odredi ni host tako er mo e poslati poruku Source Quench ako datagrami sti u prebrzo da bi se mogli procesirati. U biti takva poruka je zahtijev host-u da smanji brzinu kojom alje podatke odredi nom host-u. Gateway alje poruku za svaki datagram koji je odbacio. Izvor treba tako duga smanjivati brzinu kojom alje podatke, dokle god dobiva Source Quench poruku. Izvori ni host tada polako podi e brzinu, sve dok ponovo ne po ne dobivati poruke. Gateway ili host mo e poslati Source Quench poruku kada se spremnik nije jo ispunio, ali mu je ostalo jo malo prostora. U tom slu aju e datagram koji je prouzro io slanje poruku, ipak biti isporu en.

3.2.Time Exceeded

Slika 4-ICMP Poruka:Time Exeded

U datagramu u IP poljima su dani izvori na mre a i adresa iz originalnih podataka datagrama. Od glavnih ICMP polja, tip je postavljen na 11, a kod mo e biti postavljen na 0 ako je TTL istekao u prijenosu, ili 1 ako je isteklo vrijeme sastavljanja fragmenta. Ako gateway koji procesira datagram vidi da je TTL polje nula, mora odbaciti datagram i obavijestiti izvori ni host kroz Time Exceede poruku. Tako er, ako host koji sastavlja fragmentirani datagram ne uspije zavr iti sastavljanje datagrama u danom vremenskom roku, taj datagram se odbacuje i alje se Time Exceeded poruka. Ako fragment nula nije dostupan, poruku nije potrebno slati. Kod 0 mo e biti primljen od gateway-a, a 1 od host-a.

8

3.3.Redirect Poruka

Slika 5-ICMP Poruka:Redirect

U datagramu u IP poljima su dani izvori na mre a i adresa iz originalnih podataka datagrama. Od glavnih ICMP polja, tip je postavljen na 12, a kod mo e biti postavljen na 0 (preusmjeravaju se datagrami za Mre u), 1 (preusmjeravaju se datagrami za Host-a), 2 (preusmjeravaju se datagrami za Tip Usluge(eng. Type of Service) i Mre u) i 3 (preusmjeravaju se datagrami za Tip Usluge i Host-a), Kada neki gateway G1 primi internet datagram od host-a na mre i na koju je spojen i on sam, pogleda u svoju tablicu koja sadr i adresu sllijede eg gatewaya, G2, koji je na putu do datagramove odredi ne mre e X. Ako je G2 od strane host-a definiran kao Internet adresa datagrama na samoj mre i, redirect poruka bit e poslana host-u. Takva poruka govori host-u da alje promet za mre u X direktno gatewayu G2, po to je to kra i putdo odredi ta. Za datagrame sa IP source route options i adresom gateway-a u polju destination adress, poruka redirect se ne alje, iako postoji bolji put prema odredi tu od onog navedenog. Kodovi 0, 1, 2 i 3 se mogu primiti od gateway-a.

9

3.4. ECHO REQUEST/REPLY

Slika 6-ICMP Poruka:Echo

U datagramu u IP poljima su dani izvori na mre a i adresa iz originalnih podataka datagrama. Od glavnih ICMP polja, tip je postavljen na 8 za eho poruku ili 0 za echo odgovor, kod mu je postavljen na 0. Identifikator (eng. identifier) svim echo porukama e biti postavljen na 0, budu i da je i kod 0. Ista stvar vrijedi za broj sekvence(eng. sequence number). Podatak primljen u echo poruci mora biti vra en u echo reply poruci. Identifikator i broj sekvence mo e biti upotrebljen od strane echo po iljatelja da pumogne u svajanju odgovora sa zahtijevima echo-a. Npr. Identifikator se mo e koristiti kao port u TCP-u ili UDP-u za identificirnje sesije, a broj sekvence se mo e inkrementirati kod svakog slanja echo request-a. Echo vra a te iste vrijednosti u odgovoru(echo reply-u). Kod 0 mo e biti primljen od gatevay-a ili host-a. Ova vrsta poruka se slu i u ping aplikaciji, koja se koristi za provjeru, od strane korisnika, da li je neki put u mre u operacionalan. Ping, tako er, i skuplja statistike o preformansama, tj. mjeri vrijeme putovanja paketa i pamti broji koliko puta, udaljeni stroj, nije odgovorio. Ping alje echo request paket najvi e dva puta. Ukoliko nema odgovora niti na ponovno poslani paket ili ako stigne poruka destination unreachable, ping deklarira da ne postoji put do udaljenog stroja. ICMP software po protokolu uvijek mora odgovoriti na echo request upit, me utim neki sistem in enjeri blokiraju ove odgovore iz sigurnosnih razloga.

10

Slika 7-Kori tenje ping aplikacije da se vidi da li je udaljeni stroj operacionalan

11

4. Zaklju akICMP protokol je jedan od klju nih dijelova IP kompleta protokola. Iako sam prijenos podataka putem IP-a funkcionira na principu najboljeg poku aja, ICMP protokol, putem obavijesti o gre kama, daje IP-u dovoljnu kontrolu da taj najbolji poku aj bude prili no dobar. Iz tog je razloga IP toliko koristan. Putem echo reply poruka, koje omogu uju ping i trace route aplikacije, ICMP nam je koristan za provjeru u kakvom je stanju mre a, tj. da li mo emo do i do nekog udaljenog stroja i koji je put do njega. Sve ovo navedeno ukazuje na to da je ICMP vrlo kori ten protokol i nu an stup cijele internet razine.

12

5. LiteraturaInternet: www.erg.abdn.ac.uk http://www.wikipedia.org www.lincoln.edu www.networksorcery.com www.windowsnetworking.com Marko ipek, ICMP, Internet Control Message Protocol,2004.g. Zagreb

13

14