Menguasai jaringan dasar yang wajib dikuasai System Engineer: IP address dan subnetting, DNS, DHCP, serta konfigurasi host di Linux dan Windows agar server bisa saling terhubung dan berkomunikasi dengan benar

Di episode 3 dan 4 kita mengelola OS — Linux dan Windows — sebagai entitas terpisah. Padahal, di dunia nyata, server tidak pernah berjalan sendirian: ia terhubung ke server lain, database, load balancer, dan internet. Episode 5 ini adalah fondasi yang menghubungkan semuanya: networking.
Mengapa penting? Karena mayoritas insiden yang ditangani System Engineer bermula dari jaringan: aplikasi tidak bisa diakses, server tidak bisa saling berkomunikasi, atau DNS yang tidak resolve. Kalian tidak perlu jadi network engineer — tetapi wajib menguasai lapisan dasar ini sampai bisa menyandarkan server ke jaringan dengan benar dan mendiagnosis masalahnya.
Setiap perangkat di jaringan membutuhkan IP address unik. Dua versi yang berlaku: IPv4 (32-bit, seperti 10.0.0.15) dan IPv6 (128-bit, fd00::15). Dalam praktik System Engineer, IPv4 dengan CIDR notation adalah yang paling sering ditemui:
| Notasi | Arti | Jumlah Host Usable |
|---|---|---|
10.0.0.0/24 | Netmask 255.255.255.0 | 254 |
10.0.0.0/16 | Netmask 255.255.0.0 | 65.534 |
192.168.1.0/30 | 4 alamat total | 2 (point-to-point) |
Bacaan praktis: angka setelah garis miring (/24) adalah jumlah bit jaringan. Semakin besar prefix, semakin kecil jaringan dan semakin sedikit host.
Di dalam data center, kalian akan bertemu private range standar:
10.0.0.0/8 — jaringan besar antar site.172.16.0.0/12 — jaringan menengah.192.168.0.0/16 — jaringan kecil/lokal.Pisahkan tiap layer dengan subnet berbeda, misalnya 10.0.1.0/24 untuk web, 10.0.2.0/24 untuk aplikasi, 10.0.3.0/24 untuk database. Segmentasi ini memudahkan firewall dan troubleshooting — dan menjadi dasar security groups di cloud (episode 13).
ip addr show
ip route show
ping -c 3 10.0.2.10Get-NetIPAddress -AddressFamily IPv4
Get-NetRoute -DestinationPrefix 0.0.0.0/0Tip
Ketika server "tidak bisa akses internet", periksa dengan urutan: (1) ip addr — apakah IP terkonfigurasi, (2) ip route — apakah ada default gateway, (3) ping 8.8.8.8 — apakah routing jalan, (4) nslookup google.com — apakah DNS resolve. Langkah ke-3 dan ke-4 gagal menunjukkan masalah yang berbeda: jaringan vs DNS.
DNS menerjemahkan nama (db.prod.corp.local) menjadi IP address. Di lingkungan produksi, jangan pernah memakai IP mentah di konfigurasi — selalu nama. Alasannya: saat server dipindah atau diperbarui, hanya perlu mengubah catatan DNS, bukan konfigurasi seluruh aplikasi.
Tool verifikasi yang wajib dikuasai:
nslookup api.example.com
dig api.example.com +short
dig @8.8.8.8 api.example.com # tanya resolver spesifikUntuk layanan internal, dua pendekatan umum:
/etc/hosts — untuk kebutuhan kecil atau override darurat.127.0.0.1 localhost
10.0.3.10 db.prod.corp.local
10.0.1.10 web.prod.corp.local/etc/hosts diproses sebelum DNS, sehingga berguna untuk emergency override saat DNS internal sedang bermasalah — tetapi gunakan sebagai pengecualian, bukan kebiasaan.
DHCP membagikan konfigurasi IP secara otomatis: address, netmask, gateway, dan DNS. Di data center, server bisa memakai DHCP atau static IP (via netplan/cloud-init). Server kritis (database, domain controller) lebih baik memakai reservasi DHCP atau static agar alamatnya tidak berubah.
Konfigurasi static di Ubuntu dengan netplan:
network:
version: 2
ethernets:
enp1s0:
dhcp4: false
addresses:
- 10.0.2.10/24
routes:
- to: default
via: 10.0.2.1
nameservers:
addresses: [10.0.0.10, 10.0.0.11]
search: [corp.local]Terapkan dengan sudo netplan apply. Untuk interface yang memang harus fleksibel, biarkan dhcp4: true dan andalkan DHCP.
Skenario: kalian menambahkan server aplikasi baru ke data center dan ingin memastikan semuanya terhubung benar.
# 1. Atur IP static di netplan (seperti di atas) lalu terapkan
sudo netplan apply
# 2. Verifikasi IP, route, dan resolusi
ip -br addr
ip route
resolvectl status
# 3. Uji konektivitas ke gateway, database, dan internet
ping -c 3 10.0.2.1
ping -c 3 db.prod.corp.local
curl -s -o /dev/null -w "%{http_code}\n" https://api.example.com
# 4. Cek port yang sedang listen
ss -tulpnOutput ss -tulpn menampilkan port yang terbuka di server — memastikan service mendengarkan di interface yang benar (jangan sampai aplikasi hanya listen di 127.0.0.1 padahal seharusnya di 0.0.0.0).
ping hanya menguji ICMP — cek port dengan nc -zv host port atau ss -tulpn./etc/hosts sebagai pola utama. Gunakan hanya untuk override darurat; DNS server untuk skala.nslookup gagal = nameserver tidak diatur di netplan/resolv.conf.Inti yang harus dibawa pulang:
ss -tulpn dan nc.Di episode 6 selanjutnya kita beralih ke storage & filesystem — LVM, ext4/XFS, quota, dan mount management — karena data adalah aset paling berharga yang kalian jaga. Sampai jumpa di episode 6!