Cyber RoadmapINDONESIA

Fondasi · Fase 1

TCP/IP, UDP, dan ICMP: Perbedaan dan Kapan Digunakan

TCP pasti sampai, UDP cepat, ICMP melaporkan masalah. Pelajari cara kerja three-way handshake, perbedaan TCP dan UDP, peran ICMP di balik ping dan traceroute, port yang paling sering ditemui, serta kaitannya dengan pemindaian port dan serangan DDoS.

Di materi sebelumnya kamu sudah mengenal peta tujuh layer model OSI. Sekarang kita mampir ke dua layer yang paling sering dibicarakan di dunia keamanan jaringan: layer 3 (Network) dan layer 4 (Transport). Di sana bekerja tiga protokol yang akan kamu temui hampir setiap hari: TCP, UDP, dan ICMP.

Ketiganya punya tugas yang berbeda. TCP mengutamakan data sampai dengan utuh. UDP mengutamakan kecepatan. ICMP tidak membawa data aplikasi sama sekali, tapi bertugas melaporkan kondisi jaringan. Memahami perbedaannya akan membantumu membaca hasil pemindaian port, menganalisis lalu lintas di Wireshark, sampai mengenali jenis serangan.

Apa itu TCP/IP?

Istilah TCP/IP sebenarnya punya dua arti. Pertama, nama kumpulan protokol yang menjadi dasar internet, yang di materi sebelumnya kita lihat sebagai model empat layer. Kedua, gabungan dua protokol terpenting di dalamnya:

  • IP (Internet Protocol) di layer 3, bertugas memberi alamat dan mengantarkan paket dari satu jaringan ke jaringan lain. IP tidak menjamin paket sampai, ia hanya berusaha sebaik mungkin.
  • TCP (Transmission Control Protocol) di layer 4, bertugas memastikan data yang diantar IP sampai dengan lengkap dan berurutan.

Analoginya, IP adalah truk pengangkut yang tahu alamat tujuan, sedangkan TCP adalah petugas yang menghitung barang, meminta tanda terima, dan mengirim ulang barang yang hilang. Di samping TCP, ada UDP yang juga menumpang di atas IP tapi tanpa pemeriksaan sebanyak itu. ICMP juga dibawa oleh IP dan bekerja di layer 3 sebagai "petugas pelapor".

TCP: pasti sampai, berurutan

TCP disebut protokol berbasis koneksi. Sebelum mengirim data, kedua pihak harus "bersalaman" dulu. Proses ini disebut three-way handshake.

Diagram TCP three-way handshake antara klien dan server: SYN, SYN-ACK, lalu ACK
Diagram TCP three-way handshake antara klien dan server: SYN, SYN-ACK, lalu ACK

Setelah koneksi terbentuk, data dipotong-potong menjadi segmen yang diberi nomor urut. Penerima membalas setiap segmen dengan tanda terima. Kalau ada segmen yang tidak dibalas dalam waktu tertentu, pengirim mengirimnya lagi. TCP juga mengatur kecepatan pengiriman supaya penerima dan jaringan tidak kewalahan.

Hasilnya, data yang kamu terima lewat TCP dijamin utuh dan sesuai urutan. Itulah kenapa halaman web, email, file unduhan, dan sesi SSH memakai TCP. Satu byte yang hilang saja bisa membuat file rusak atau perintah salah.

UDP: cepat, tanpa basa-basi

UDP (User Datagram Protocol) bekerja sebaliknya. Tidak ada salam pembuka, tidak ada tanda terima, dan tidak ada pengiriman ulang. Data langsung dikirim dalam bentuk datagram. Kalau ada yang hilang di jalan, ya sudah.

Perbandingan TCP yang berbasis koneksi, andal, dan berurutan dengan UDP yang tanpa koneksi, cepat, dan tidak menjamin sampai
Perbandingan TCP yang berbasis koneksi, andal, dan berurutan dengan UDP yang tanpa koneksi, cepat, dan tidak menjamin sampai

Kedengarannya buruk, tapi justru itu kelebihannya. Pada video call atau game online, data yang telat sama saja tidak berguna. Lebih baik satu potongan gambar hilang sekejap daripada seluruh panggilan tersendat menunggu pengiriman ulang. DNS juga memakai UDP karena pertanyaannya pendek dan butuh jawaban cepat. Kalau jawabannya tidak datang, aplikasi cukup bertanya ulang.

ICMP: petugas pelapor jaringan

ICMP (Internet Control Message Protocol) tidak dipakai untuk mengirim data aplikasi dan tidak punya nomor port. Tugasnya mengirim pesan kendali dan laporan kesalahan, misalnya "tujuan tidak bisa dijangkau" atau "paket sudah terlalu lama di jalan".

Paket melewati dua router menuju server dengan TTL yang berkurang, beserta pesan ICMP Echo, Time Exceeded, dan Destination Unreachable
Paket melewati dua router menuju server dengan TTL yang berkurang, beserta pesan ICMP Echo, Time Exceeded, dan Destination Unreachable

Dua alat paling terkenal yang memanfaatkan ICMP adalah:

  • ping, untuk mengecek apakah sebuah perangkat bisa dijangkau dan berapa lama waktu bolak-baliknya.
  • traceroute (di Windows: tracert), untuk melihat router mana saja yang dilewati menuju tujuan. Caranya dengan sengaja mengirim paket ber-TTL kecil, lalu mencatat router yang mengirim balik pesan Time Exceeded. Di Linux, traceroute biasanya mengirim paket UDP, tapi jawaban dari setiap router tetap berupa ICMP.

Perbandingan ketiganya

TCP, UDP, dan ICMP dalam satu tabel
AspekTCPUDPICMP
Layer OSI4 · Transport4 · Transport3 · Network
KoneksiAda, lewat handshakeTidak adaTidak ada
Menjamin sampaiYa, dengan pengiriman ulangTidakTidak
Menjamin urutanYaTidakTidak relevan
Nomor portYaYaTidak, memakai tipe pesan
KecepatanLebih lambatCepatPesan kecil dan singkat
Dipakai untukWeb, email, SSH, transfer fileDNS, video call, game, streaming, VPNping, traceroute, laporan kesalahan

Port populer dan protokolnya

Nomor port memberi tahu komputer aplikasi mana yang harus menerima data. Beberapa port sudah punya "alamat tetap" yang disepakati bersama. Hafalkan pelan-pelan, karena angka-angka ini akan terus muncul di hasil pemindaian dan log.

Port yang paling sering ditemui
PortProtokolLayanan
22TCPSSH, akses terminal jarak jauh
25, 587TCPSMTP, pengiriman email
53UDP (dan TCP untuk jawaban besar)DNS
67, 68UDPDHCP, pembagian alamat IP otomatis
80TCPHTTP, web tanpa enkripsi
123UDPNTP, sinkronisasi jam
443TCP (dan UDP untuk HTTP/3)HTTPS
3389TCPRDP, remote desktop Windows

Kaitannya dengan keamanan siber

Sifat ketiga protokol ini dimanfaatkan baik oleh penyerang maupun pembela.

  • Pemindaian port. Alat seperti nmap mengirim paket SYN ke banyak port. Kalau dibalas SYN-ACK, port itu terbuka. Memindai port UDP lebih lambat dan kurang pasti, karena UDP tidak membalas apa-apa ketika port terbuka.
  • SYN flood. Penyerang mengirim ribuan SYN tanpa pernah menyelesaikan handshake. Server menyimpan setiap koneksi setengah jadi itu sampai kehabisan tempat dan tidak bisa melayani pengguna asli. Salah satu pertahanannya adalah fitur SYN cookies.
  • Serangan amplifikasi UDP. Karena UDP tidak memakai handshake, alamat pengirim mudah dipalsukan. Penyerang mengirim pertanyaan kecil ke server DNS atau NTP yang terbuka dengan alamat korban sebagai pengirim, lalu server mengirim jawaban besar ke korban. Ini salah satu bentuk DDoS.
  • Ping sweep dan ICMP tunneling. ping dipakai untuk mencari perangkat yang aktif di sebuah jaringan. Pesan ICMP juga bisa disalahgunakan untuk menyelundupkan data keluar secara diam-diam.

Ringkasan

  • TCP/IP adalah kumpulan protokol dasar internet. IP mengantar paket, TCP memastikan data sampai utuh.
  • TCP berbasis koneksi lewat three-way handshake (SYN, SYN-ACK, ACK), andal, dan berurutan. Cocok untuk web, email, dan SSH.
  • UDP tanpa koneksi, tidak menjamin sampai, tapi cepat. Cocok untuk DNS, video call, game, dan streaming.
  • ICMP bekerja di layer 3 tanpa nomor port, dipakai untuk pesan kendali dan laporan kesalahan, termasuk oleh ping dan traceroute.
  • Sifat-sifat ini dimanfaatkan dalam pemindaian port, SYN flood, serangan amplifikasi, dan penyalahgunaan ICMP.

Tonton dan baca juga

Materi berikutnya kembali ke alamat IP, kali ini lebih dalam: cara membagi jaringan dengan subnetting dan notasi CIDR, lengkap dengan latihan sampai mahir. Buka di roadmap untuk melanjutkan.

Bermanfaat? Dukung konten berikutnya

Semua materi di sini gratis. Dukunganmu dipakai untuk membeli alat lab untuk praktik, eksplorasi, dan riset konten keamanan siber berikutnya.

Traktir di Trakteer ↗
Sampul course Cyber Security Fundamental

Pelajari lebih dalam

Cyber Security Fundamental di WPU Course

Lihat course ↗

Materi terkait di roadmap

Artikel lainnya

Artikel ini bersifat edukatif. Praktikkan teknik ofensif hanya di lingkungan yang kamu miliki izinnya. Baca Disclaimer.