Internet Control Message Protocol
- Aragones
- l`rby@
- B'lgarski
- Bosanski
- Catala
- Cestina
- Dansk
- Deutsch
- Ellenika
- English
- Esperanto
- Espanol
- Eesti
- Euskara
- frsy
- Suomi
- Francais
- Galego
- `bryt
- Hrvatski
- Magyar
- Bahasa Indonesia
- Italiano
- Ri Ben Yu
- hangugeo
- Lombard
- Lietuviu
- Latviesu
- Makedonski
- mlyaallN
- Nederlands
- Norsk bokmal
- Polski
- Portugues
- Romana
- Russkii
- Slovencina
- Slovenscina
- Srpski / srpski
- Svenska
- aithy
- Ukrayins'ka
- Tieng Viet
- Yoruba
- Zhong Wen
| Amac | IPv4 icin yardimci protokol[1] |
|---|---|
| Gelistirici(ler) | DARPA |
| Kullanima giris | 1981 |
| OSI katmani | Ag katmani |
| RFC(ler) | RFC 792 |
| Internet protokol takimi |
|---|
| Uygulama katmani |
| Tasima katmani |
| Internet katmani |
| Link katmani |
| Internet iletisim kurallari dizisi | ||
| Katman | Iletisim kurallari | |
| 7. | Uygulama katmani | HTTP, DNS, SMTP, FTP, TFTP, UUCP, NNTP, SSL, SSH, IRC, SNMP, SIP, RTP, Telnet, ... |
| 6. | Sunum katmani | ISO 8822, ISO 8823, ISO 8824, ITU-T T.73, ITU-T X.409, ... |
| 5. | Oturum katmani | NFS, SMB, ISO 8326, ISO 8327, ITU-T T.6299, ... |
| 4. | Ulasim katmani | TCP, UDP, SCTP, DCCP, ... |
| 3. | Ag katmani | IP, IPv4, IPv6, ICMP, Internet Grup Yonetim Protokolu, IPX,... |
| 2. | Veri baglantisi katmani | Ethernet,ARP, HDLC, Wi-Fi, Token ring, FDDI, PPP, L2TP... |
| 1. | Donanim katmani | ISDN, RS-232, EIA-422, RS-449, EIA-485, ... |
Bu madde, Vikipedi bicem el kitabina uygun degildir. Maddeyi, Vikipedi standartlarina uygun bicimde duzenleyerek Vikipedi'ye katkida bulunabilirsiniz. Gerekli duzenleme yapilmadan bu sablon kaldirilmamalidir. (Nisan 2017) |
Internet Control Message Protocol (ICMP), hata mesajlari ve TCP/IP yaziliminin bir takim kendi mesaj trafigi amaclari icin kullanilir. ICMP RFC 792'de tanimlanmis ve RFC 950'de revize edilmistir. Hatalari raporlamak icin kullanilan, kontrol amacli bir protokoldur. Bu sekilde normal kullaniminin yaninda, uzak sistem hakkinda bilgi toplamak icin sikca kullanildigindan cok onemlidir. Genel olarak sistemler arasi kontrol mesajlari IP yerine ICMP uzerinden aktarilir. ICMP, IP ile ayni duzeyde olmasina karsin aslinda kendisi de IP'yi kullanir. ICMP' nin hata raporlamak icin kullanilmasi, IP'yi guvenli yaptigi anlamina gelmez. Datagram, yerine ulasmayabilir ve bununla ilgili bir hata mesaji da gelmeyebilir. ICMP mesajlarindaki hatalari raporlamak icin ICMP kullanilmaz. ICMP, TCP/IP' nin islemesine yardimci olan bir protokoldur. Her hostta mutlaka ICMP protokolu calisir. Hata durumunda host tarafindan geri bilgilendirmeyi saglar.
ICMP ag hakkinda bazi bilgileri toplamak amaci ile de kullanilir. IP hata-raporlama veya hata-duzeltme mekanizmalarina sahip degildir. ICMP yapi olarak UDP 'ye benzer bir protokoldur. ICMP de mesajlarini sadece bir datagram icine koyar. Bununla beraber UDP'ye gore daha basit bir yapidadir. Baslik bilgisinde port numarasi bulundurmaz. Butun ICMP mesajlari ag yaziliminin kendisince yorumlanir, ICMP mesajinin nereye gidecegi ile ilgili bir port numarasina gerek yoktur.
ICMP paketleri ortamda bir geri besleme saglarlar. Bu yolla ciddi sorunlari, haberlesen birimlere bildirerek bir hata bildirim mekanizmasi olustururlar. ICMP mesaji, IP paketinin veri bolumunde tasinir. Bu yuzden ICMP paketlerinin dagitim guvenilirligi, IP paketlerinin dagitim guvenilirligi ile sinirli kalmaktadir. Buradan ICMP paketlerinin guvenilir iletilemeyecegi ve hedefe vardiginin garanti edilemeyecegi sonuclari cikarilabilir.
ICMP kullanan komutlara ornek olarak ping ve traceroute verilebilir.
ICMP paketinin yapisi ve formati
[degistir | kaynagi degistir]ICMP mesajlari IP datagraminin kullanici verisi alaninda tasinir. IP basligindaki protokol alani 1'e set edilerek ICMP'nin kullanildigi gosterilir. Tum ICMP mesajlari uc alandan olusur.
| IP Basligi |
|---|
| Tip(8) |
| Kod(8) |
| Toplamsal-Hata(16) |
| Parametreler(eger parametreler yoksa kullanilmaz) |
| Bilgi(Degisken) |
| n=( alandaki bitlerin sayisi ) |
- Tip alani: mesajin tipini tanimlar.
- Kod alani: hata veya durum bilgisi tipini tanimlar.
- Toplamsal-hata (checksum) alani: ICMP mesajinin 16-bit lik 1'e tumleyenini hesaplar.
- Parametreler: Parametrelerin daha uzun halinin belirlenmesinde kullanilir.
- Bilgi: Mesajla ilgili bilgidir.
ICMP neden kullanilir
[degistir | kaynagi degistir]ICMP su amaclarla kullanilir.
- TTL suresi doldugu zaman paketin sahibine bildirim yapmak
- Herhangi bir durumda yok edilen paket hakkinda geri bildirim saglamak
- Parcalanmasin komutu verilmis paket parcalandiginda geri bildirim saglamak
- Hata olusumlarinda geri bildirim saglamak
- Paket baska bir yoldan gidecegi zaman geri bildirim saglamak
ICMP hata ve durum raporlama prosedurleri
[degistir | kaynagi degistir]ICMP tarafindan rapor edilen hata ve durum raporlama servisleri asagida listelenmistir.
| Tip Kodu Degeri | ICMP Mesajin Tipi |
|---|---|
| 0 | Eko yanit-ping yaniti (Echo Reply) |
| 3 | Hedefe Erisilemedi (Destination Not Reachable) |
| 4 | Kaynak Kapatmak (Source Quench) |
| 5 | Yeniden Yonlendirme (Redirection Required) |
| 8 | Eko yanit-ping istegi (Echo Request) |
| 9 | Yonlendirici tanitimi |
| 10 | Yonlendirici istemi |
| 11 | Zaman asimi--traceroute kullanir (Time to Live Exceeded) |
| 12 | Parametre Problemi (Parameter Problem) |
| 13 | Timestamp Istemi (Timestamp Request) |
| 14 | Timestamp Yaniti (Timestamp Reply) |
| 15 | Bilgi Istemi (Information Request) |
| 16 | Bilgi Yaniti (Information Reply) |
| 17 | Addres Maskesi istemi (Address Mask Request) |
| 18 | Addres Maskesi yaniti (Address Mask Reply) |
ICMP mesaj tipleri ile internet uzerinde kontrol amacli bircok program yazilmasi olasidir. Ornegin timestap mesajlari kullanilarak internet uzerindeki gecikmeler olculebilir.
ICMP uygulamalari
[degistir | kaynagi degistir]Basit ve sikca kullanilan 2 tane ICMP uygulamasi vardir: Ping ve Traceroute. Daha cok ag uzerindeki sorunlari tespit edebilmek ya da cozmek icin kullanilan bu 2 uygulama ayni zamanda, hacking isleminin baslangic asamalarindan birini olusturur. Agdaki canli makineleri bulabilmek icin ping taramalari ya da agin haritasini cikartabilmek icin traceroute uygulamalari hacker'ler tarafindan sikca kullanilir.
Ping en basit TCP/IP uygulamasidir. Bir hosta ulasmanin ilk adimi ona ping cekmektir. Eger bir hosta ping ile ulasabiliyorsaniz, telnet ya da FTP ile ulasmaniz (ilgili portlar aciksa) mumkundur. Son yillarda guvenlik duvarlarinin yonlendiricilerdeki "access list"lerin ve diger guvenlik kontrol mekanizmalarinin sikca kullanilmaya baslanilmasiyla bu yargi degismeye baslamistir. Yani bir hosta ping cekemiyorsaniz, telnet ya da ftp yapamayacaginiz anlamina gelmez. Ping uygulamasi, ICMP Echo ve ICMP Reply mesajlarini kullanarak bir hostun erisilebilir olup olmadigini belirler. Ping, alici bilgisayara "echo request" paketi gonderirken, cevap olarak da "echo reply" paketini bekler. Traceroute programi ise gonderen bilgisayardan alici bilgisayara giden paket ve izledigi yolla ilgili cok onemli bilgiler verir. Bu bilgiler arasinda en cok kullanilani "paketin izledigi yol (path)" bilgisidir. Bu sayede paketin hangi yollardan gecerek alici hosta ulastigi rahatlikla izlenebilir. Traceroute programi ICMP protokolunun bir parcasidir. ICMP protokolu, iki host arasinda bilgi akisi olurken, bu esnada ortaya cikan hatalari ve diger bilgileri mesaj yoluyla raporlar.
ICMP sorgulamasi
[degistir | kaynagi degistir]Ping taramasi bir ICMP uygulamasidir ama bir sistem hakkinda ICMP sorgulamasi yapmak sadece ping paketleri ile yapilmaz. Bir sisteme bircok yoldan ICMP sorgulamasi yapilabilir ve cok degerli bilgiler elde edilebilir. Mesela, Unix tabanli sistemlerde kullanilan "icmpquery" ya da "icmppush" uygulamasi sayesinde sistemin saati(hangi zaman bolgesinde oldugu) "ICMP type 13" (TIMESTAMP) ile ogrenilebilir ya da bir hostun hangi ag maskesinde oldugu "ICMP type 17" (ADDRESS MASK REQUEST)mesaji ile elde edilebilir. Ag maskesi(Netmask) bilgisi onemlidir, cunku saldirgan sadece belli bir alt agdaki(subnet) sisteme saldirmak isteyebilir.Burada dikkat edilmesi gereken bir nokta da tum yonlendiricilerin ICMP TIMESTAMP ya da ICMP NETMASK sorgulamasina cevap vermedikleridir.
Onlemler
ICMP sorgulamasini engellemek, ilgili ICMP tiplerini (ICMP TIMESTAMP - type 13 gibi) bloke etmekle yapilabilir. Cisco yonlendiricilerde bu engelleme genisletilmis erisim listesiyle soyle yapilir:
- Access-list 101 deny icmp any any 13
Ancak ICMP paketlerini engellemek, agdaki sorunlarin cozulmesini geciktirebilir. ICMP sorgulamasi saldiri tespit programlari ile rahatlikla gozlenebilir.[2]