Alamat IP dan Port: Cara Komputer Saling Menemukan dan Bicara

Alamat IP itu lokasi sebuah komputer di jaringan; port itu pintu spesifik di komputer tersebut tempat sebuah layanan menunggu. Pahami sebenarnya keduanya itu apa, beda IPv4 dan IPv6, apa itu socket, dan kenapa localhost:3000 bekerja seperti itu — dijelaskan dari nol.

Diterbitkan 6 September 20268 menit bacaOleh ACY Partner Indonesia
Alamat IP dan port — alamat mesin dan pintu tempat layanan menunggu
300 × 250Slot Iklan TersediaPasang iklan Anda di sini

Kamu pasti pernah mengetik sesuatu seperti localhost:3000 di browser, atau melihat pesan error yang bunyinya “connection refused on port 5432”, lalu kamu cuma manggut-manggut saja. Angka-angka itu bukan asal comot. Mereka adalah dua sisi dari pertanyaan paling mendasar di seluruh dunia jaringan: mesin yang mana, dan pintu mana di mesin itu? Jawabannya adalah alamat IP plus sebuah port, dan begitu kamu paham bagaimana keduanya nyambung, banyak sekali perilaku server yang tadinya bikin pusing langsung jadi masuk akal.

Bayangkan kamu mengirim surat. Alamat IP itu alamat jalan yang mengantar suratmu ke gedung yang benar. Port itu nomor kamar yang mengantarnya ke orang yang tepat di dalam gedung. Salah satu meleset, pesannya nyasar entah ke mana. Kita bahas satu per satu dulu, baru lihat bagaimana keduanya bekerja sama.

Alamat IP itu apa

Alamat IP adalah label yang menandai sebuah perangkat di dalam jaringan. “IP” itu singkatan dari Internet Protocol — sekumpulan aturan yang sudah disepakati supaya komputer bisa mengarahkan pesan satu sama lain. Setiap perangkat yang ikut bicara di jaringan, entah itu laptop, ponsel, server di data center, atau kulkas pintarmu, punya minimal satu alamat IP selama dia tersambung. Tanpa itu, jaringan sama sekali tidak tahu harus mengantar apa pun ke mana.

Alamatnya bukan nama seperti “laptop John”. Dia berupa angka, ditulis dalam format khusus supaya mesin dan router bisa membacanya dengan cara yang sama setiap kali. Ketika browser-mu mau sebuah halaman web, dia tidak teriak ke kekosongan — dia mengirim permintaan ke alamat IP yang spesifik, lalu perangkat jaringan di antaranya memakai alamat itu untuk meneruskan permintaan, lompat demi lompat, sampai tiba di mesin yang benar.

Alamat IP itu buat mesin, bukan buat manusia

Kamu hampir tidak pernah mengetik alamat IP secara langsung. Kamu mengetik nama seperti example.com, lalu sistem diam-diam mencarikan IP di baliknya untukmu. Proses pencarian itu adalah bagian terpisah dari teka-teki ini — mengubah nama yang ramah manusia menjadi alamat yang ramah mesin — dan itu layak dibahas tersendiri nanti. Untuk sekarang, cukup ingat ini: di balik setiap nama domain ada sebuah alamat IP yang mengerjakan pekerjaan pengantaran yang sebenarnya.

IPv4 dan IPv6: dua rasa alamat

Ada dua versi alamat IP yang dipakai sekarang, dan kamu bakal ketemu dua-duanya.

IPv4 adalah yang lebih tua dan jauh lebih akrab. Bentuknya empat angka yang dipisah titik, masing-masing dari 0 sampai 255:

192.168.1.10
93.184.216.34
8.8.8.8

Tiap potongan dari empat itu adalah satu byte (8 bit), jadi satu alamat IPv4 totalnya 32 bit. Hitungan itu menghasilkan sekitar 4,3 miliar alamat yang mungkin — angka yang terdengar seluas samudra di tahun 1980-an, tapi ternyata cuma seukuran genangan begitu seluruh planet ikut online. Dunia benar-benar kehabisan stok alamat IPv4 yang baru.

IPv6 adalah jawaban untuk kelangkaan itu. Dia jauh lebih panjang — 128 bit — dan ditulis sebagai kelompok angka heksadesimal yang dipisah titik dua:

2001:0db8:85a3:0000:0000:8a2e:0370:7334

Supaya tetap enak dibaca, IPv6 membolehkanmu meringkas deretan nol yang panjang dengan ::, jadi alamat yang sama tadi bisa muncul sebagai 2001:db8:85a3::8a2e:370:7334. Jumlah alamat IPv6 yang mungkin saking besarnya boleh dibilang tak terbatas untuk keperluan praktis apa pun — cukup untuk memberi setiap butir pasir di Bumi alamatnya sendiri dan masih sisa banyak. Kedua versi ini berjalan berdampingan di internet sekarang, dan kebanyakan sistem menangani dua-duanya secara otomatis.

Port itu apa

Nah, ini hal yang tidak bisa diberitahu oleh alamat IP sendirian: satu mesin biasanya menjalankan banyak layanan jaringan sekaligus. Satu server bisa saja melayani halaman web, menerima login secure shell, dan menjawab query database, semuanya berbarengan. Mereka semua berbagi alamat IP yang sama. Lalu bagaimana sebuah pesan masuk tahu dia ditujukan untuk layanan yang mana?

Di situlah tugas port. Port adalah angka — dari 0 sampai 65535 — yang menandai sebuah layanan atau koneksi spesifik di sebuah mesin. Kalau alamat IP mengantar pesan ke gedung yang benar, nomor port mengantarnya ke ruangan yang tepat di dalam.

        SATU SERVER  (IP: 203.0.113.5)
   ┌─────────────────────────────────────┐
   │  port 22   → SSH (login jarak jauh)  │
   │  port 80   → web (HTTP)              │
   │  port 443  → web (HTTPS, aman)       │
   │  port 5432 → database                │
   └─────────────────────────────────────┘
        ▲           ▲           ▲
      login      browser     app server

Setiap permintaan masuk membawa alamat IP sekaligus port. IP mengantarnya ke mesin; port memberi tahu mesin program mana yang harus menerimanya. Sebuah program yang diam dan menunggu koneksi di port tertentu disebut sedang listening (menyimak) di port itu.

Port terkenal vs. sisanya

Karena ada layanan yang sangat umum, dunia menyepakati nomor port standar untuk mereka supaya software tidak perlu menebak-nebak. Inilah yang disebut well-known port, yaitu nomor 0 sampai 1023. Beberapa yang perlu kamu kenali:

  22   SSH        (login jarak jauh yang aman)
  53   DNS        (pencarian nama)
  80   HTTP       (trafik web biasa)
  443  HTTPS      (trafik web terenkripsi)
  25   SMTP       (mengirim email)

Inilah persisnya kenapa kamu bisa mengetik https://example.com tanpa pernah menyebut port — browser-mu sudah tahu HTTPS tinggal di port 443 berdasarkan kesepakatan, jadi dia mengisinya sendiri untukmu. http:// biasa juga otomatis ke port 80 dengan cara yang sama.

Di atas 1023, kamu masuk ke wilayah yang dipakai segala hal lain: aplikasimu sendiri, server development, dan koneksi-koneksi sementara. Inilah kenapa server dev lokal sering hidup di angka seperti 3000, 5173, atau 8080 — angkanya tinggi, gampang diingat, dan kecil kemungkinannya bentrok dengan layanan sistem yang standar.

Sekarang localhost:3000 jadi masuk akal

Pecah jadi dua bagiannya. localhost adalah nama khusus yang selalu berarti mesin ini juga (dia mengarah ke IP 127.0.0.1, alamat “loopback” yang berputar balik ke dirimu sendiri). :3000 adalah port yang dipilih server development-mu untuk disimak. Jadi localhost:3000 secara harfiah dibaca sebagai: “sambung ke sebuah layanan di komputerku sendiri, di pintu nomor 3000”. Mesin yang sama bisa menjalankan server dev kedua di :3001 pada saat bersamaan tanpa konflik sama sekali — pintu beda, tidak bentrok.

Menyatukan keduanya: socket

Ketika kamu menggabungkan alamat IP dan port, hasilnya punya nama: socket. Ditulis lengkap, bentuknya seperti 203.0.113.5:443 — alamat, titik dua, port. Socket adalah titik ujung yang presisi dari sebuah percakapan jaringan. Satu koneksi yang utuh sebenarnya didefinisikan oleh dua socket: milik client (mesinmu plus port sementara) dan milik server (IP-nya plus port layanan).

Pasangan itulah yang memungkinkan satu server menangani ribuan koneksi sekaligus tanpa tertukar. Sekalipun seribu orang sama-sama menyambung ke web server yang sama di port 443, tiap koneksi dikenali unik dari kombinasi kedua ujungnya — IP dan port sementaramu di satu sisi, IP server dan port 443 di sisi lain. Tidak ada dua koneksi yang berbagi sidik jari empat-bagian yang persis sama, jadi jawaban selalu menemukan jalan kembali ke peminta yang benar.

IP publik vs. IP privat

Satu pembeda lagi yang sering bikin orang tersandung. Tidak semua alamat IP bisa dijangkau dari internet terbuka. Ada rentang tertentu yang dipesan khusus untuk jaringan privat — jaringan di dalam rumah atau kantormu:

  10.0.0.0    – 10.255.255.255
  172.16.0.0  – 172.31.255.255
  192.168.0.0 – 192.168.255.255

Alamat 192.168.x.x yang dipakai laptopmu di rumah itu? Itu privat. Dia cuma bermakna di dalam jaringan lokalmu. Internet yang lebih luas tidak bisa menjangkaunya secara langsung. Saat laptopmu bicara ke dunia luar, router-mu menerjemahkan alamat privat tadi menjadi satu IP publik yang diberikan penyedia internetmu — trik yang namanya NAT (Network Address Translation). Inilah kenapa semua perangkat di rumahmu bisa berbagi satu alamat publik, dan kenapa orang di internet tidak bisa begitu saja “menelepon” 192.168.1.10 lalu mendarat di laptop spesifikmu.

Untuk server yang ingin kamu jangkaukan ke seluruh dunia, kebalikannya yang berlaku: dia butuh alamat IP publik, yang unik secara global dan bisa diarahkan, supaya client mana pun di mana pun bisa menemukannya. Alamat publik itu, dipasangkan dengan sebuah port, adalah pintu depan yang dibuka aplikasimu ke internet.

Kenapa ini penting saat kamu membangun sesuatu

Ini bukan sekadar pengetahuan iseng — dia muncul terus-menerus begitu kamu menjalankan server sungguhan. Saat sebuah layanan “can’t bind to port 80”, artinya program lain sudah lebih dulu merebut pintu itu. Saat firewall “memblokir port 22”, dia sedang memutuskan pintu mana yang boleh diketuk orang asing. Saat kamu menyetel server dev ke 0.0.0.0 alih-alih localhost, kamu menyuruhnya menyimak di semua alamat mesin itu, bukan cuma yang loopback. Tiap situasi itu cuma logika alamat-IP-dan-port yang sedang berjalan.

Ini juga menjadi pondasi keamanan. Bagian besar dari mengamankan server adalah menutup setiap port yang tidak perlu terbuka, supaya makin sedikit pintu yang bisa dicoba penyerang. Kamu tidak bisa berpikir soal itu sama sekali sebelum “alamat IP” dan “port” terasa konkret — yang, semoga, sekarang sudah.

Penutup

Ini gambaran utuhnya dalam satu tempat:

  • Alamat IP menandai sebuah perangkat di jaringan. Ini sisi “mesin yang mana” dari pertanyaannya.
  • Alamat IPv4 bentuknya 192.168.1.10 (32 bit, sekitar 4,3 miliar, sekarang sudah habis); alamat IPv6 bentuknya 2001:db8::1 (128 bit, praktis tak terbatas). Dua-duanya berjalan berdampingan sekarang.
  • Port (0–65535) menandai sebuah layanan di mesin itu. Ini sisi “pintu yang mana”.
  • Well-known port (0–1023) sudah distandarkan — 22 SSH, 80 HTTP, 443 HTTPS — itu sebabnya kamu jarang mengetik port untuk layanan yang umum.
  • IP plus port adalah sebuah socket (203.0.113.5:443); satu koneksi utuh adalah sepasang socket, dan itulah cara satu server menangani ribuan koneksi dengan rapi.
  • Rentang IP privat (192.168.x.x dan kawan-kawan) hidup di dalam jaringan lokal; server yang ingin dijangkau dunia butuh IP publik.

Dengan “mesin yang mana” dan “pintu yang mana” sudah jelas, pertanyaan lanjutan yang wajar adalah bagaimana kita berangkat dari sebuah nama seperti example.com menuju alamat IP itu sejak awal — sistem pencarian yang diam-diam menggerakkan setiap alamat yang bakal kamu ketik. Di sanalah dunia domain dan DNS mengambil peran, dan itu jadi bahasan berikutnya.

Tag:serverdasarjaringanipportpemula
728 × 90Slot Iklan TersediaPasang iklan Anda di sini

Artikel Terkait

Lihat Semua Artikel

Artikel yang Mungkin Kamu Suka

SSL dan enkripsi at rest — data terlindungi saat berjalan dan saat tersimpan di disk
Server / Keamanan Server

SSL dan Enkripsi at Rest: Melindungi Data Saat Berjalan dan Saat Tersimpan

Enkripsi melindungi data di dua tempat: saat data lewat di jaringan (in transit) dan saat data nganggur di disk (at rest). Pahami bedanya, kenapa kamu butuh keduanya, bagaimana TLS, enkripsi disk, dan pengelolaan kunci sebenarnya saling melengkapi, plus kesalahan praktis yang sering bikin sia-sia.

9 Nov 202612 menit baca
Mengamankan port dan service — menutup pintu di server yang tidak kamu pakai
Server / Keamanan Server

Mengamankan Port dan Service: Menutup Pintu yang Tidak Kamu Pakai

Setiap port yang terbuka di server adalah satu pintu yang bisa dicoba orang lain. Pahami port dan service itu sebenarnya apa, kenapa service yang terekspos jadi risiko terbesarmu, dan kebiasaan sederhana menutup semua yang tidak kamu butuhkan — dijelaskan dari nol.

8 Nov 202610 menit baca
Prinsip least privilege — memberi hanya akses minimum yang dibutuhkan tiap user dan proses
Server / Keamanan Server

Prinsip Least Privilege: Beri Setiap Hal Hanya Akses yang Benar-Benar Dibutuhkan

Least privilege adalah aturan diam-diam di balik hampir semua setup keamanan yang solid: setiap user, proses, dan kunci hanya dapat akses minimum untuk menjalankan tugasnya, tidak lebih.

7 Nov 202612 menit baca
Fail2ban dan dasar intrusi — mengawasi log dan mem-banned otomatis pelaku yang menggedor berulang kali
Server / Keamanan Server

Fail2ban dan Dasar Intrusi: Mem-banned Otomatis Bot yang Terus Menggedor Server-mu

Penyerang tidak berhenti setelah sekali salah tebak — mereka terus menggedor, ribuan kali sehari. Pahami seperti apa sebenarnya percobaan intrusi, apa yang dikerjakan fail2ban, bagaimana ia mengawasi log dan mem-banned pelaku otomatis, dan cara menyetelnya dengan masuk akal tanpa mengunci dirimu.

6 Nov 202612 menit baca
Menjaga software tetap update — menutup lubang keamanan yang sudah diketahui sebelum penyerang memakainya
Server / Keamanan Server

Menjaga Software Tetap Update: Kebiasaan Membosankan yang Mencegah Sebagian Besar Pembobolan Server

Kebanyakan server tidak dibobol lewat serangan baru yang canggih — tapi lewat lubang lama yang sudah diketahui, yang sebenarnya cukup ditutup dengan update. Pelajari kenapa update itu penting, apa saja yang harus di-update, cara melakukannya dengan aman tanpa merusak apa pun, dan cara.

5 Nov 20269 menit baca
Konfigurasi firewall — aturan default-deny yang hanya membuka port yang kamu butuhkan
Server / Keamanan Server

Konfigurasi Firewall: Menyusun Aturan Default-Deny Tanpa Mengunci Diri Sendiri

Tahu apa itu firewall dan benar-benar mengonfigurasinya dengan rapi adalah dua keterampilan berbeda. Pelajari cara menyusun aturan default-deny, mengurutkan aturan dengan benar, membuka akses sendiri lebih dulu, menangani IPv6 dan security group cloud, lalu mengujinya sebelum dipakai — panduan.

4 Nov 202614 menit baca