Apa Itu Internet Control Message Protocol (ICMP) & Bagaimana Cara Kerjanya?

Internet Control Message Protocol – ICMP adalah protokol untuk menentukan ketersediaan jaringan dan mengatur aliran dan kontrol kesalahan pada lapisan jaringan. Tapi apa artinya itu dalam praktik?

Internet Control Message Protocol (ICMP) adalah protokol lapisan ketiga (lapisan jaringan) dalam model tujuh lapisan OSI. Protokol mendiagnosis konektivitas jaringan atau masalah transmisi data antar perangkat. Ini membantu dengan mengirim, menerima, dan memproses pesan ICMP untuk melaporkan masalah konektivitas ke perangkat jaringan sumber.

Bacaan Lainnya

Oleh karena itu, tujuan utama dari protokol ICMP adalah untuk melaporkan kesalahan pada lapisan jaringan. Namun, aktor jahat dapat memanipulasi fungsinya untuk meluncurkan serangan seperti Distributed Denial of Service (DDoS) dan serangan Ping of Death. Di sini, Anda akan belajar tentang protokol ICMP, kasus penggunaannya, dan parameter yang penting untuk memahami pesan ICMP.

Bagaimana ICMP Bekerja?

Router menggunakan protokol ICMP untuk melakukan manajemen jaringan dan diagnosis masalah. Ini menghasilkan dan mengirim pesan kesalahan ke perangkat pengirim ketika jaringan menonaktifkan pengiriman paket ke perangkat tujuan. Pesan kesalahan ini termasuk waktu terlampaui, masalah parameter, tujuan tidak dapat dijangkau, kemacetan jaringan, dll.

Misalnya, ketika pengirim mengirim data dari satu perangkat ke perangkat tujuan dalam bentuk datagram IP, ia melakukan perjalanan melalui beberapa router atau perangkat perantara. Terkadang, ada kesalahan dalam meneruskan datagram IPV4 itu. Oleh karena itu, pesan ICMP dibagi menjadi dua kategori besar: pesan kesalahan, dan pesan kueri.

Pesan Pelaporan Kesalahan

Ini adalah pesan yang mungkin dihadapi router atau host perantara dalam pemrosesan datagram:

  1. Time Exceeded: Paket ICMP memiliki parameter time-to-live yang ketika mencapai 0, router atau host membuang datagram dan mengirimkan pesan kesalahan waktu terlampaui. Pesan juga dikirim ketika tujuan tidak menerima semua fragmen data.
  2. Destination Unreachable: Perangkat yang memulai koneksi menerima pesan kesalahan tujuan yang tidak dapat dijangkau ketika router atau host perantara gagal mengirimkannya. Akibatnya, perangkat membuang datagram.
  3. Source Quench: Ketika perangkat gagal mengirimkan datagram karena kemacetan jaringan, mereka mengirim “pesan sumber quench” ICMP ke pengirim pesan. Pesan pelaporan kesalahan menambahkan kontrol aliran di lapisan jaringan dengan menginformasikan perangkat sumber tentang kemacetan di jalur dan memperlambat proses pengiriman data.
  4. Redirection: Sebuah router di jalur non-optimal mengarahkan ulang paket ke router dengan jalur yang optimal antara sumber dan tujuan. Dengan demikian, ia memperbarui sumber tentang perubahan rutenya.
  5. Masalah Parameter: Perangkat sumber menerima pesan ini ketika ada nilai yang hilang di header datagram. Misalnya, perbedaan dalam checksum yang dihitung di tujuan dari sumber menghasilkan pesan kesalahan ICMP ini.

Pesan Kueri

Pesan kueri terjadi berpasangan dan memberikan informasi spesifik dari perangkat perantara ke perangkat sumber.

  1. Pesan Echo-Request dan Echo-Reply: Pesan -pesan ini membantu menyelesaikan masalah diagnostik jaringan.
  2. Permintaan stempel waktu dan Balasan: Permintaan stempel waktu dan pesan balasan ini membantu menentukan waktu pulang pergi antar perangkat.

Memahami Parameter ICMP

Data pesan ICMP dienkapsulasi di bawah header IP, yang berarti header datagram ICMP muncul setelah informasi IPv4/v6. Bagian pertama dari header paket ICMP berisi parameter yang membantu perangkat jaringan menentukan kesalahan atau pesan kueri.

Di antara 32 bit pertama, 8 bit pertama menentukan jenis pesan, 8 bit berikutnya menentukan kode pesan, dan bit sisanya berisi informasi yang terkait dengan integritas data. Oleh karena itu, tiga bidang informasi adalah: jenis ICMP, kode ICMP, dan Checksum.

Jenis ICMP

Jenis menentukan tujuan dari paket ICMP. Karena secara singkat menjelaskan mengapa perangkat sumber menerima pesan itu. Ada 0-255 jenis pesan ICMP sehingga setiap jenis memberikan informasi yang berbeda. Beberapa jenis ICMP yang penting adalah:

0: Echo Request

3: Destination Unreachable

4: Source Quench

5: Redirect

8: Echo Reply

11: Time Exceeded

12: Parameter Problem

30: Traceroute

Kode ICMP

Kode ICMP memberikan informasi tambahan tentang pesan. Misalnya, ICMP tipe 3 dengan kode 0-15 menentukan mengapa tujuan tidak dapat dijangkau; yaitu, jika kodenya 0, maka itu karena jaringan tidak tersedia. Demikian pula, untuk tipe 3 kode 1, pesan tersebut menetapkan bahwa host tidak dapat dijangkau.

Selain itu, ketik 8 kode 0 dan ketik 0 kode 0 mewakili pesan echo-request dan echo reply. Oleh karena itu, setiap jenis pesan dengan nilai kode yang sama memberikan informasi jaringan yang berbeda.

Checksum

Checksum adalah mekanisme deteksi kesalahan yang menentukan integritas data. Nilai checksum mewakili bit dalam pesan transmisi. Pengirim menghitung dan memasukkan checksum data, dan penerima menghitung ulang nilainya dan membandingkannya dengan yang asli untuk menentukan perubahan apa pun pada pesan asli selama transmisi.

Bagian kedua dari header menunjuk ke nilai byte yang menjadi penyebab masalah dalam pesan asli. Terakhir, bagian akhir dari paket ICMP adalah datagram yang sebenarnya.

Contoh ICMP yang Digunakan

Berikut adalah beberapa contoh kerja protokol ICMP di berbagai manajemen jaringan dan utilitas administratif .

ping

Ping adalah utilitas baris perintah yang mengandalkan pesan echo-request dan echo-reply ICMP untuk menguji ketersediaan jaringan dan latensi antar perangkat. Utilitas hanya menentukan ketersediaan server tujuan dengan memperkirakan total paket yang dikirim atau diterima dan persentase kehilangan paket. Ini juga membantu menentukan ukuran total unit transmisi maksimum (MTU).

Gunakan ping <ip_address> untuk menentukan google . ketersediaan com :

Traceroute

Traceroute adalah utilitas baris perintah lain yang menggunakan pesan echo-request dan echo-reply dengan variabel TTL untuk memetakan jalur antara perangkat sumber dan tujuan. Ini juga berguna dalam menentukan penundaan respons dan memastikan akurasi dengan menanyakan setiap hop beberapa kali.

Bagaimana ICMP Bekerja Tanpa Port?

Dari penjelasan di atas, ICMP adalah protokol connectionless yang mengirimkan data secara independen sebagai datagram, dan header-nya muncul setelah detail IPv4. Namun, Anda juga dapat melihat tidak adanya nomor port yang menimbulkan pertanyaan tentang bagaimana perangkat menerima data ICMP atau mengetahui adanya koneksi?

Jawabannya cukup sederhana. Protokol ICMP dirancang untuk bekerja pada lapisan jaringan Model OSI dan berkomunikasi antara router dan host untuk berbagi informasi. Nomor port adalah bagian dari Transport Layer, dan ICMP bukanlah protokol TCP atau UDP. Terakhir, jenis ICMP dan kombinasi kode membantu perangkat menentukan pesan dan mendapatkan semua informasi tentang jaringan.

Error and Flow Control ICMP

Rincian di atas tentang protokol ICMP menunjukkan bagaimana memastikan kontrol aliran dan kontrol kesalahan data pada lapisan tiga model OSI. Pesan protokol dan parameter di bagian pertama header paket ICMP mencakup semua aspek manajemen jaringan dan masalah diagnosis.

Penting untuk diketahui bahwa pengaturan firewall yang tidak tepat dapat memungkinkan penyerang melakukan ping menyapu jaringan organisasi dan membuatnya rentan terhadap DDOS, ping kematian, dan serangan banjir ICMP. Anda dapat menggunakan Wireshark untuk menangkap paket dari internet dan melakukan analisis rinci dari paket ICMP untuk pemahaman yang lebih baik.

Pos terkait