Masalah jaringan selalu datang di waktu yang paling sibuk: server tidak bisa dihubungi, nama domain seperti menghilang, atau aplikasi menolak terhubung ke database. Dalam situasi seperti itu kita butuh meja rujukan, bukan bab teori yang panjang. Chapter ini mengumpulkan perintah pemeriksaan jaringan yang paling sering dipakai, nomor port yang biasa muncul di output ss dan log firewall, rentang alamat IP privat, serta file konfigurasi jaringan yang penting di keluarga Debian. Pembahasan mendalam tiap topik tetap tinggal di Section Networking — chapter ini dirancang untuk dibuka cepat saat sedang mendiagnosis.

Perintah Jaringan untuk Pemeriksaan Harian #

Tujuh perintah berikut menutup hampir seluruh kebutuhan pemeriksaan jaringan sehari-hari, dan semuanya tersedia secara bawaan di distro server umum. Tabel ini merangkum bentuk pemakaian yang paling sering kita butuhkan. Contoh alamat memakai blok dokumentasi 192.0.2.x — di komputer pembaca, ganti dengan alamat nyata jaringan masing-masing.

PerintahContoh pemakaianInformasi yang diberikan
ip addrip addr showAlamat IP dan status tiap interface
ip routeip routeTabel routing beserta default gateway
ip linkip link set enp3s0 upMelihat dan mengubah status interface
ssss -tlnpPort TCP yang sedang mendengar beserta proses pemiliknya
pingping -c 3 192.0.2.1Konektivitas dan latensi ke satu host
digdig +short example.comHasil resolusi DNS untuk sebuah nama
curlcurl -I https://example.com/Header respons HTTP dari satu URL

Perintah ip dan ss berasal dari paket iproute2, pengganti resmi tool lama ifconfig, route, dan netstat yang masih sering muncul di tutorial lawas. Pola diagnosisnya adalah memisahkan lapisan masalah: ping membuktikan konektivitas IP, sedangkan dig membuktikan resolusi nama. Bila ping 192.0.2.1 berhasil tetapi ping example.com gagal, masalahnya hampir pasti ada di DNS, bukan di kabel atau routing. Pembahasan lengkap tiap perintah ada di chapter ip dan routing , ss dan netstat , serta curl dan wget ; opsi lengkapnya tercantum di halaman manual ip(8) dan ss(8) .

Port dan Layanan yang Sering Muncul #

Nomor port adalah alamat pintu tempat sebuah layanan mendengarkan koneksi. Saat membaca output ss -tlnp, aturan firewall, atau pesan error aplikasi, kita perlu segera mengenali port mana milik layanan apa. Tabel berikut memuat port yang paling sering muncul di server dan di kehidupan sehari-hari administrator.

PortProtokolKapan muncul
20–21FTPTransfer file ke server FTP lama; kini jarang karena lalu lintasnya tidak terenkripsi
22SSHLogin remote terenkripsi; ssh, scp, dan rsync lewat sini
25SMTPMail server menerima kiriman dari server lain
53DNSResolusi nama, berjalan di atas TCP dan UDP
80HTTPWeb tanpa TLS; umumnya hanya untuk redirect ke 443
443HTTPSWeb terenkripsi, port utama internet modern
3306MySQLKlien menghubungi server database MySQL atau MariaDB
5432PostgreSQLKlien menghubungi server database PostgreSQL
5900VNCRemote desktop VNC untuk display :0
631CUPSAntrean printer dan halaman administrasi CUPS
3389RDPRemote desktop Windows; di Linux diwakili xrdp

Sistem menyimpan pemetaan ini di file /etc/services, sehingga pencarian dua arah tetap bisa dilakukan tanpa jaringan. Potongan berikut mencari nama layanan untuk beberapa port TCP, lalu memakai getent untuk arah sebaliknya — mencari port dari nama layanan:

bash
awk '$2 ~ /^(22|53|443|3306|5432)\/tcp$/ {printf "%-8s %s\n", $2, $1}' /etc/services
getent services ssh domain

Output yang Dihasilkan:

text
22/tcp   ssh
53/tcp   domain
443/tcp  https
3306/tcp mysql
5432/tcp postgresql
ssh                   22/tcp
domain                53/tcp

Mari kita bedah baris per barisnya:

  1. Baris 1 (awk ...): memindai /etc/services baris demi baris. Kolom kedua file itu berisi gabungan port/protokol seperti 22/tcp, sehingga pola ^(22|53|443|3306|5432)\/tcp$ hanya meloloskan baris TCP pada kelima port tersebut, lalu printf mencetak port dan nama layanannya berdampingan.
  2. Baris 2 (getent services ssh domain): bertanya ke database layanan sistem lewat mekanisme name service switch, lalu mencetak port untuk dua nama layanan — bentuk yang berguna saat menulis aturan firewall berdasarkan nama, bukan angka.

Perhatikan bahwa awk membaca teks file secara langsung, sedangkan getent bertanya lewat jalur yang dikendalikan /etc/nsswitch.conf — file yang kita bahas sebentar lagi. Satu fakta tambahan yang berguna: port di bawah 1024 disebut port istimewa dan hanya bisa didengari oleh proses root, itulah sebabnya web server bisa memakai 80 dan 443 tanpa konfigurasi tambahan.

Rentang Alamat IP Privat RFC 1918 #

Dokumen RFC 1918 menyisihkan tiga blok alamat khusus untuk jaringan privat — alamat yang tidak di-route di internet publik dan dipakai di balik NAT. Mengenali ketiganya membantu kita cepat menyimpulkan posisi sebuah alamat: 10.2.1.5 hampir pasti server internal, sedangkan 203.0.113.5 adalah alamat publik.

BlokRentang alamatJumlah alamatPemakaian tipikal
10.0.0.0/810.0.0.0 – 10.255.255.25516.777.216Jaringan korporat besar
172.16.0.0/12172.16.0.0 – 172.31.255.2551.048.576Jaringan menengah; jaringan bawaan Docker ada di 172.17.x.x
192.168.0.0/16192.168.0.0 – 192.168.255.25565.536Rumah dan kantor kecil, default router konsumen

Dua rentang lain juga penting dikenali. Alamat 127.0.0.1 (loopback) selalu berarti “komputer ini sendiri” — service yang hanya mendengarkan di 127.0.0.1 tidak bisa dihubungi dari mesin lain. Rentang 169.254.0.0/16 (link-local) lebih sering muncul sebagai gejala: bila sebuah interface mendapat alamat 169.254.x.x, hampir pasti permintaan DHCP gagal dan interface tidak mendapat konfigurasi. Adapun alamat contoh 192.0.2.x yang dipakai di seluruh course ini berasal dari blok dokumentasi TEST-NET-1 yang tidak pernah di-route.

File Konfigurasi Jaringan yang Penting #

Empat file berikut mengendalikan bagaimana sistem memandang nama dan alamat. Semuanya berupa teks polos yang bisa dibaca dengan cat dan diperiksa dengan grep, dan tiga di antaranya berpengaruh langsung pada urutan lookup nama.

FileIsiEfek ketika berubah
/etc/hostsPemetaan nama ke IP secara statisLookup nama lokal memeriksa file ini lebih dulu
/etc/resolv.confDaftar DNS server yang dipakaiMenentukan ke mana query DNS dikirim
/etc/nsswitch.confUrutan sumber lookup namaMengatur apakah files atau dns yang menang
/etc/hostnameNama komputerIdentitas mesin di prompt dan jaringan

Baris hosts: files dns di nsswitch.conf berarti /etc/hosts diperiksa sebelum query DNS dikirim — trik lama untuk mengarahkan sebuah nama ke alamat lain saat menguji service. Baris services: pada file yang sama adalah jalur yang dipakai getent services pada demo di atas.

Perintah umum di luar jaringan dirangkum di chapter Referensi Command , sedangkan tabel permission ada di Referensi Permissions . Dengan sisi jaringan terpetakan, chapter berikutnya memetakan sisi otomasi: rujukan sintaks Bash mulai dari variabel spesial, operator test, ekspansi parameter, hingga idiom skrip yang sudah teruji.