TDCTF Academy Logo TDCTF ACADEMY

DHCP Server

Definisi dan Peran DHCP Server

DHCP server (Dynamic Host Configuration Protocol server) adalah server yang secara otomatis memberikan konfigurasi jaringan kepada perangkat klien saat mereka terhubung ke jaringan. Tanpa DHCP, administrator harus mengonfigurasi setiap perangkat secara manual - sebuah proses yang tidak praktis dalam jaringan berskala besar.

Alokasi alamat IP oleh DHCP server mengurangi kesalahan konfigurasi, mencegah duplikasi alamat, dan menyederhanakan manajemen jaringan. Protokol ini bekerja berdasarkan model client-server dan menggunakan port UDP 67 (server) dan 68 (client).

Implementasi DHCP Server

1. ISC DHCP Server (isc-dhcp-server)

ISC DHCP Server adalah implementasi DHCP server standar yang dikembangkan oleh Internet Systems Consortium. Stabil, fitur lengkap, dan banyak digunakan di lingkungan enterprise. Mendukung konfigurasi subnet, pool dinamis, static reservation, failover antar server, dan logging terperinci.

2. Dnsmasq

Dnsmasq adalah daemon ringan yang menggabungkan fungsi DNS forwarder dan DHCP server. Ideal untuk jaringan rumah dan kantor kecil. Dnsmasq mendukung DHCP dengan konfigurasi sederhana, distribusi alamat otomatis, static lease, dan integrasi dengan DNS-nya sendiri sehingga nama host klien otomatis terdaftar.

Cara Kerja DHCP - DORA Process

Proses alokasi alamat IP oleh DHCP server mengikuti urutan DORA:

  1. Discover - Klien mengirimkan broadcast DHCPDISCOVER untuk menemukan server DHCP di jaringan.
  2. Offer - Server merespons dengan DHCPOFFER berisi alamat IP yang tersedia, subnet mask, gateway, dan parameter lainnya.
  3. Request - Klien merespons dengan DHCPREQUEST untuk menerima tawaran tersebut.
  4. Ack - Server mengirimkan DHCPACK sebagai konfirmasi final; klien sekarang dapat menggunakan alamat IP.

Klien akan memperbarui lease (masa sewa) secara periodik dengan DHCPREQUEST sebelum masa berlaku habis.

Konfigurasi Subnet dan Range Pool

Konfigurasi DHCP melibatkan pendefinisian subnet dan kumpulan alamat (pool) yang akan didistribusikan.

Contoh Konfigurasi ISC DHCP Server

File /etc/dhcp/dhcpd.conf:

# Global option
option domain-name "lan.contoh.com";
option domain-name-servers 192.168.1.10, 8.8.8.8;
default-lease-time 600;
max-lease-time 7200;
authoritative;

# Subnet definition
subnet 192.168.1.0 netmask 255.255.255.0 {
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;

# Dynamic pool
pool {
range 192.168.1.100 192.168.1.200;
option domain-name-servers 192.168.1.10;
}

# Static reservation
host printer-cetak {
hardware ethernet AA:BB:CC:DD:EE:FF;
fixed-address 192.168.1.50;
}

host server-file {
hardware ethernet 11:22:33:44:55:66;
fixed-address 192.168.1.10;
}
}

Contoh Konfigurasi Dnsmasq

File /etc/dnsmasq.conf:

interface=eth0
dhcp-range=192.168.1.100,192.168.1.200,12h
dhcp-option=3,192.168.1.1
dhcp-option=6,192.168.1.10
dhcp-host=AA:BB:CC:DD:EE:FF,192.168.1.50
dhcp-host=11:22:33:44:55:66,192.168.1.10

Opsi DHCP Penting

Selain alamat IP, DHCP server mengirimkan option untuk mengonfigurasi parameter klien:

Opsi Kode Deskripsi
Subnet Mask 1 Netmask yang digunakan klien
Router (Gateway) 3 Alamat IP default gateway
DNS Server 6 Alamat DNS server untuk resolusi nama
Domain Name 15 Nama domain lokal
Lease Time 51 Durasi masa sewa alamat IP

Static Reservation

Static reservation (atau static lease) adalah mekanisme untuk memastikan perangkat tertentu selalu mendapatkan alamat IP yang sama, berdasarkan alamat MAC. Ini berguna untuk server, printer, dan perangkat infrastruktur lainnya yang membutuhkan alamat tetap tanpa harus dikonfigurasi manual.

Pada ISC DHCP Server, static reservation dibuat menggunakan blok host seperti pada contoh di atas. Pada Dnsmasq, gunakan direktif dhcp-host.

Logging dan Troubleshooting

Log DHCP sangat berguna untuk memecahkan masalah alokasi IP. Pada ISC DHCP Server, log dikirim ke syslog dengan facility daemon. Untuk memonitor:

tail -f /var/log/syslog | grep dhcpd

Log menunjukkan setiap langkah DORA, termasuk alamat yang dialokasikan, MAC address klien, dan masa lease. Jika klien tidak mendapatkan IP, periksa:

  1. Apakah server DHCP aktif? systemctl status isc-dhcp-server
  2. Apakah ada konflik alamat? Periksa log untuk pesan DHCPDECLINE.
  3. Apakah pool habis? Hitung jumlah alamat yang tersedia.
  4. Apakah firewall memblokir port UDP 67-68?
PADA HALAMAN INI