1. Review Model OSI: Fondasi Jaringan
Sebelum mendalami VLAN dan DHCP, mari kita kembali mengingat model OSI (Open Systems Interconnection) yang menjadi fondasi komunikasi jaringan. Model ini membagi proses komunikasi data menjadi tujuh lapisan, masing-masing dengan peran spesifik dalam mengirim dan menerima data.
- β Layer 1 β kabel, sinyal, konektor
- β Layer 2 β MAC address, frame Ethernet
- β VLAN beroperasi di Layer 2
- β Switch adalah perangkat Layer 2
- β IP addressing & subnetting
- β Routing antar subnet
- β Router beroperasi di Layer 3
- β Inter-VLAN routing di layer ini
- β Layer 4 β TCP/UDP port
- β Layer 7 β HTTP, DHCP, DNS
- β DHCP beroperasi di Layer 7
- β Firewall filter di Layer 3-7
VLAN bekerja di Layer 2 (Data Link) β membagi satu switch fisik menjadi beberapa switch logis. DHCP bekerja di Layer 7 (Application) tetapi membutuhkan Layer 3 untuk menentukan subnet. Memahami layer membantu Anda menentukan di mana konfigurasi diterapkan dan bagaimana data mengalir antar VLAN.
| Layer OSI | Nama | Perangkat | Relevansi VLAN/DHCP |
|---|---|---|---|
| Layer 1 | Physical | Kabel, Hub, NIC | Koneksi fisik antar perangkat |
| Layer 2 | Data Link | Switch, Bridge | VLAN tagging (802.1Q), MAC forwarding |
| Layer 3 | Network | Router | IP addressing, inter-VLAN routing |
| Layer 4 | Transport | Firewall | UDP port 67/68 (DHCP) |
| Layer 7 | Application | DHCP Server | Proses DHCP Discover/Offer/Request/Ack |
2. Dasar-Dasar Subnetting
Subnetting adalah teknik membagi jaringan IP besar menjadi beberapa jaringan kecil (subnet). Setiap VLAN biasanya ditempatkan pada subnet yang berbeda, sehingga perangkat di VLAN berbeda memiliki range IP yang terpisah dan memerlukan routing untuk berkomunikasi.
Konsep Subnet Mask
Subnet mask menentukan bagian network dan host dari alamat IP. Semakin panjang prefix subnet mask, semakin sedikit host yang tersedia dalam subnet tersebut.
# Subnet /24 = 255.255.255.0 β 254 host (2^8 - 2)
Network: 192.168.10.0/24
Range : 192.168.10.1 - 192.168.10.254
Broadcast: 192.168.10.255
# Subnet /25 = 255.255.255.128 β 126 host (2^7 - 2)
Network: 192.168.10.0/25
Range : 192.168.10.1 - 192.168.10.126
Broadcast: 192.168.10.127
# Subnet /26 = 255.255.255.192 β 62 host (2^6 - 2)
Network: 192.168.10.0/26
Range : 192.168.10.1 - 192.168.10.62
Broadcast: 192.168.10.63
Perencanaan Subnet untuk VLAN
Berikut adalah contoh perencanaan subnet untuk tiga VLAN berbeda dalam satu gedung perkantoran:
| VLAN | Nama VLAN | Subnet | Gateway | DHCP Range |
|---|---|---|---|---|
| VLAN 10 | Karyawan | 192.168.10.0/24 | 192.168.10.1 | 192.168.10.10 - .200 |
| VLAN 20 | Tamu | 192.168.20.0/24 | 192.168.20.1 | 192.168.20.10 - .200 |
| VLAN 30 | Server | 192.168.30.0/24 | 192.168.30.1 | Static (tanpa DHCP) |
Selalu alokasikan lebih banyak IP dari yang dibutuhkan saat ini. Gunakan /24 untuk
VLAN kantor umum. Hindari menggunakan VLAN 1 sebagai VLAN produksi karena
VLAN 1 adalah default dan sering menjadi target serangan.
3. Konsep VLAN (Virtual LAN)
VLAN (Virtual Local Area Network) adalah teknologi yang memungkinkan administrator jaringan membagi satu jaringan fisik menjadi beberapa jaringan logis yang terisolasi. Perangkat dalam VLAN yang sama dapat berkomunikasi langsung, sementara perangkat di VLAN berbeda memerlukan router (Layer 3) untuk berkomunikasi.
Mengapa VLAN Penting?
- β Isolasi trafik antar departemen
- β Tamu tidak bisa akses server internal
- β Broadcast domain terpisah
- β Kontrol akses lebih granular
- β Broadcast domain lebih kecil
- β Mengurangi trafik broadcast
- β Bandwidth lebih efisien
- β Kemacetan jaringan berkurang
- β Grup berdasarkan fungsi, bukan lokasi
- β Perubahan tanpa rewiring fisik
- β Mudah ditambah/diubah via software
- β Konsisten di berbagai switch
Access Port vs Trunk Port
Dalam konfigurasi VLAN, terdapat dua jenis port utama yang harus dipahami:
IEEE 802.1Q VLAN Tagging
Standar IEEE 802.1Q mendefinisikan cara menambahkan tag VLAN (4 byte) ke dalam header frame Ethernet. Tag ini berisi VLAN ID (12 bit) yang memungkinkan hingga 4094 VLAN (2-4094). Saat frame melewati trunk port, tag ini ditambahkan; saat sampai di access port, tag dihapus.
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 802.1Q VLAN Tag (4 bytes) β
ββββββββββββββββββββ¬ββββββββββββ¬ββββββββββββββββββββββββββββ€
β TPID (2 bytes) β PCP βCFIβ VLAN ID (12 bits) β
β 0x8100 β 3 bitsβ1btβ 0 - 4094 β
ββββββββββββββββββββ΄ββββββββββββ΄ββββββββββββββββββββββββββββ€
β TPID = Tag Protocol Identifier (0x8100) β
β PCP = Priority Code Point (QoS, 0-7) β
β CFI = Canonical Format Indicator β
β VID = VLAN Identifier (angka VLAN) β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
VLAN 1 adalah VLAN default pada semua switch dan tidak bisa dihapus. Semua port secara default termasuk dalam VLAN 1. Sebaiknya tidak menggunakan VLAN 1 untuk trafik produksi karena menjadi target serangan VLAN hopping. Pindahkan semua port ke VLAN yang telah direncanakan.
4. Konfigurasi VLAN di MikroTik
MikroTik RouterOS mendukung VLAN 802.1Q secara native. Konfigurasi VLAN di MikroTik dapat dilakukan pada perangkat router (hEX, RB series) maupun managed switch (CRS series). Pada tutorial ini, kita akan menggunakan pendekatan bridge-based VLAN yang direkomendasikan oleh MikroTik.
Langkah Konfigurasi VLAN
Buat Bridge
Buat bridge utama sebagai switch virtual untuk menggabungkan semua port.
Tambah Port ke Bridge
Masukkan semua port fisik yang akan digunakan ke dalam bridge.
Buat VLAN Interface
Buat interface VLAN di atas bridge dengan VLAN ID yang sesuai.
Atur Bridge VLAN
Konfigurasi tagged/untagged pada bridge VLAN table.
Assign IP Address
Beri IP pada setiap interface VLAN sebagai gateway.
Contoh Topologi: Kantor dengan 3 Departemen
Misalkan kita memiliki MikroTik hEX (RB750Gr3) dengan 5 port Ethernet: ether1 (WAN/ISP), ether2-ether4 (LAN), dan ether5 (Trunk ke switch lain). Kita akan membuat 3 VLAN: Karyawan (10), Tamu (20), Server (30).
# ======================================================
# STEP 1: Buat Bridge dengan VLAN Filtering
# ======================================================
/interface bridge
add name=bridge1 vlan-filtering=yes comment="Main Bridge VLAN-enabled"
# ======================================================
# STEP 2: Tambah Port ke Bridge
# ======================================================
/interface bridge port
add bridge=bridge1 interface=ether2 comment="Access Port - Karyawan"
add bridge=bridge1 interface=ether3 comment="Access Port - Tamu"
add bridge=bridge1 interface=ether4 comment="Access Port - Server"
add bridge=bridge1 interface=ether5 comment="Trunk Port - ke Switch"
# ======================================================
# STEP 3: Konfigurasi Bridge VLAN Table
# ======================================================
/interface bridge vlan
# VLAN 10 β Karyawan
add bridge=bridge1 vlan-ids=10 tagged=bridge1,ether5 untagged=ether2 \
comment="VLAN 10 Karyawan"
# VLAN 20 β Tamu
add bridge=bridge1 vlan-ids=20 tagged=bridge1,ether5 untagged=ether3 \
comment="VLAN 20 Tamu"
# VLAN 30 β Server
add bridge=bridge1 vlan-ids=30 tagged=bridge1,ether5 untagged=ether4 \
comment="VLAN 30 Server"
# ======================================================
# STEP 4: Buat VLAN Interface di Bridge
# ======================================================
/interface vlan
add name=vlan10-karyawan vlan-id=10 interface=bridge1 comment="VLAN 10 Interface"
add name=vlan20-tamu vlan-id=20 interface=bridge1 comment="VLAN 20 Interface"
add name=vlan30-server vlan-id=30 interface=bridge1 comment="VLAN 30 Interface"
# ======================================================
# STEP 5: Assign PVID pada Bridge Port (Access Port)
# ======================================================
/interface bridge port
set [find interface=ether2] pvid=10
set [find interface=ether3] pvid=20
set [find interface=ether4] pvid=30
# ether5 adalah trunk β tidak perlu PVID (gunakan default 1 atau none)
Verifikasi VLAN Configuration
# Cek VLAN interface yang sudah dibuat
/interface vlan print
# Cek bridge VLAN table
/interface bridge vlan print
# Cek bridge port dan PVID
/interface bridge port print detail
# Pastikan VLAN filtering aktif
/interface bridge print detail
5. Konfigurasi DHCP Server di MikroTik
DHCP (Dynamic Host Configuration Protocol) secara otomatis memberikan konfigurasi IP address, subnet mask, gateway, dan DNS kepada perangkat client. Di MikroTik, DHCP server dapat dikonfigurasi untuk setiap VLAN secara terpisah menggunakan fitur DHCP Server pada masing-masing interface VLAN.
Proses DHCP (DORA)
Discover
Client mengirim broadcast ke seluruh subnet mencari DHCP server (UDP 67/68).
Offer
DHCP server merespons dengan menawarkan IP address dan konfigurasi jaringan.
Request
Client memilih penawaran dan mengirim request resmi ke server yang dipilih.
Acknowledge
Server mengonfirmasi assignment dan client mulai menggunakan IP tersebut.
Konfigurasi IP Address pada VLAN Interface
Sebelum membuat DHCP server, kita perlu menetapkan IP address pada setiap interface VLAN sebagai gateway untuk client di masing-masing subnet.
# IP Address untuk VLAN 10 β Karyawan
/ip address
add address=192.168.10.1/24 interface=vlan10-karyawan \
comment="Gateway VLAN 10 Karyawan"
# IP Address untuk VLAN 20 β Tamu
add address=192.168.20.1/24 interface=vlan20-tamu \
comment="Gateway VLAN 20 Tamu"
# IP Address untuk VLAN 30 β Server
add address=192.168.30.1/24 interface=vlan30-server \
comment="Gateway VLAN 30 Server"
Membuat DHCP Server untuk Setiap VLAN
# ======================================================
# DHCP Pool untuk VLAN 10 β Karyawan
# ======================================================
/ip pool
add name=pool-vlan10 ranges=192.168.10.10-192.168.10.200 \
comment="DHCP Pool Karyawan"
# ======================================================
# DHCP Network (konfigurasi yang dikirim ke client)
# ======================================================
/ip dhcp-server network
add address=192.168.10.0/24 gateway=192.168.10.1 \
dns-server=8.8.8.8,8.8.4.4 \
comment="DHCP Network VLAN 10"
# ======================================================
# DHCP Server pada interface VLAN 10
# ======================================================
/ip dhcp-server
add name=dhcp-vlan10 interface=vlan10-karyawan \
address-pool=pool-vlan10 lease-time=1d \
comment="DHCP Server Karyawan"
# ======================================================
# DHCP Pool untuk VLAN 20 β Tamu
# ======================================================
/ip pool
add name=pool-vlan20 ranges=192.168.20.10-192.168.20.200 \
comment="DHCP Pool Tamu"
# ======================================================
# DHCP Network untuk VLAN 20
# ======================================================
/ip dhcp-server network
add address=192.168.20.0/24 gateway=192.168.20.1 \
dns-server=8.8.8.8,1.1.1.1 \
comment="DHCP Network VLAN 20"
# ======================================================
# DHCP Server pada interface VLAN 20
# ======================================================
/ip dhcp-server
add name=dhcp-vlan20 interface=vlan20-tamu \
address-pool=pool-vlan20 lease-time=4h \
comment="DHCP Server Tamu (lease pendek)"
Untuk VLAN tamu, gunakan lease time yang lebih pendek (misalnya 4 jam) karena perangkat tamu bersifat sementara. Hal ini membantu mengosongkan pool IP lebih cepat untuk perangkat baru. Untuk VLAN karyawan, lease time 1 hari sudah cukup.
DHCP Static Lease (Reservasi IP)
Untuk perangkat yang memerlukan IP tetap (printer, server lokal, CCTV), gunakan DHCP static lease:
# Reservasi IP untuk printer di VLAN 10
/ip dhcp-server lease
add address=192.168.10.5 mac-address=AA:BB:CC:DD:EE:01 \
server=dhcp-vlan10 comment="Printer HP Lantai 2"
# Reservasi IP untuk NAS server di VLAN 30
add address=192.168.30.10 mac-address=AA:BB:CC:DD:EE:02 \
server=dhcp-vlan10 comment="NAS Synology"
# Verifikasi lease aktif
/ip dhcp-server lease print where status=bound
Verifikasi DHCP Server
# Lihat semua DHCP server yang aktif
/ip dhcp-server print
# Lihat lease yang sedang aktif
/ip dhcp-server lease print where status=bound
# Lihat semua pool dan penggunaannya
/ip pool print detail
# Cek jaringan DHCP yang diiklankan
/ip dhcp-server network print
6. Inter-VLAN Routing
Secara default, perangkat di VLAN berbeda tidak dapat saling berkomunikasi karena broadcast domain yang terpisah. Untuk memungkinkan komunikasi antar VLAN, diperlukan inter-VLAN routing β sebuah router atau Layer 3 switch yang meneruskan paket antar subnet VLAN.
Cara Kerja Inter-VLAN Routing
Pada konfigurasi MikroTik dengan VLAN interface, inter-VLAN routing terjadi secara otomatis karena semua VLAN interface berada pada perangkat yang sama (router on a stick). Router akan meneruskan paket dari satu VLAN interface ke VLAN interface lain berdasarkan tabel routing.
Pada konfigurasi MikroTik dengan VLAN interface di satu router, seluruh inter-VLAN routing terjadi di dalam router itu sendiri. Tidak perlu konfigurasi routing tambahan karena setiap VLAN interface sudah memiliki IP address dan berada di tabel routing lokal. Ini disebut Router on a Stick β satu perangkat menangani semua routing antar VLAN.
Verifikasi Routing Antar VLAN
# Cek routing table β semua VLAN subnet harus ada
/ip route print where dst-address in 192.168.0.0/16
# Pastikan setiap VLAN interface terdaftar sebagai connected route
/ip route print where connected
# Test ping dari VLAN 10 ke VLAN 30
/ping 192.168.30.10 src-address=192.168.10.1 count=5
# Trace route antar VLAN
/tool traceroute 192.168.30.10 src-address=192.168.10.1
7. Pertimbangan Keamanan
Segmentasi VLAN saja tidak cukup untuk mengamankan jaringan. Diperlukan lapisan keamanan tambahan untuk memastikan bahwa trafik antar VLAN dikontrol sesuai kebijakan organisasi. Berikut adalah beberapa langkah keamanan yang wajib diterapkan.
Firewall Filter untuk Inter-VLAN
Secara default, inter-VLAN routing mengizinkan semua trafik. Kita perlu menambahkan firewall rules untuk membatasi akses, misalnya: VLAN Tamu tidak boleh mengakses VLAN Server.
# ======================================================
# DROP trafik dari VLAN Tamu ke VLAN Server
# ======================================================
/ip firewall filter
add chain=forward src-address=192.168.20.0/24 \
dst-address=192.168.30.0/24 action=drop \
comment="Blokir Tamu akses Server"
# ======================================================
# DROP trafik dari VLAN Tamu ke VLAN Karyawan
# ======================================================
add chain=forward src-address=192.168.20.0/24 \
dst-address=192.168.10.0/24 action=drop \
comment="Blokir Tamu akses Karyawan"
# ======================================================
# IZINKAN VLAN Karyawan akses Server
# ======================================================
add chain=forward src-address=192.168.10.0/24 \
dst-address=192.168.30.0/24 action=accept \
comment="Karyawan boleh akses Server"
# ======================================================
# IZINKAN established/related (sudah ada koneksi)
# ======================================================
add chain=forward connection-state=established,related action=accept \
comment="Allow established connections"
# ======================================================
# DROP semua trafik forward yang tidak diizinkan
# ======================================================
add chain=forward action=drop comment="Drop all other forward"
Keamanan VLAN Tambahan
| Fitur Keamanan | Prioritas | Keterangan |
|---|---|---|
| VLAN Hopping Prevention | π΄ Tinggi | Nonaktifkan DTP, set trunk port manual, hindari VLAN 1 |
| DHCP Snooping | π΄ Tinggi | Hanya izinkan DHCP dari port terpercaya (trusted port) |
| ARP Inspection | π‘ Sedang | Validasi ARP untuk mencegah ARP spoofing antar VLAN |
| Port Security | π‘ Sedang | Batasi jumlah MAC address per port (max 1-3 MAC) |
| Isolasi VLAN Tamu | π΄ Tinggi | Firewall rules untuk blokir akses VLAN Tamu ke internal |
Rate Limiting untuk VLAN Tamu
# ======================================================
# Simple Queue: Batasi bandwidth VLAN Tamu
# ======================================================
/queue simple
add name="Limit-VLAN-Tamu" target=192.168.20.0/24 \
max-limit=10M/20M comment="Batas bandwidth tamu 10M up / 20M down"
# ======================================================
# Mangle: Mark trafik VLAN Tamu untuk Queue Tree (opsional)
# ======================================================
/ip firewall mangle
add chain=forward src-address=192.168.20.0/24 action=mark-packet \
new-packet-mark=tamu-upload passthrough=no comment="Mark upload tamu"
add chain=forward dst-address=192.168.20.0/24 action=mark-packet \
new-packet-mark=tamu-download passthrough=no comment="Mark download tamu"
Untuk VLAN tamu, konfigurasikan DNS server yang mendukung filtering (misalnya Cloudflare
Family 1.1.1.3 atau OpenDNS Family Shield) untuk memblokir konten berbahaya.
Tambahkan juga /ip dns static untuk memblokir domain tertentu secara lokal.
8. Best Practices & Troubleshooting
Setelah konfigurasi selesai, berikut adalah daftar best practices dan langkah troubleshooting yang perlu diketahui untuk menjaga jaringan VLAN tetap stabil dan aman.
Best Practices
# Backup konfigurasi penuh
/system backup save name="vlan-dhcp-backup-2026-06-25"
# Export konfigurasi VLAN & DHCP ke file
/interface bridge export file="bridge-vlan-config"
/interface vlan export file="vlan-interface-config"
/ip dhcp-server export file="dhcp-server-config"
/ip address export file="ip-address-config"
/ip firewall filter export file="firewall-vlan-config"
# Backup otomatis harian
/system scheduler
add name="daily-backup" interval=1d \
on-event={
/system backup save name=("daily-" . [/system clock get date]);
/export file=("export-" . [/system clock get date]);
}
Troubleshooting Umum
| Masalah | Kemungkinan Penyebab | Solusi |
|---|---|---|
| Client tidak mendapat IP | DHCP server tidak aktif atau interface salah | Cek /ip dhcp-server print dan pastikan interface sesuai VLAN |
| VLAN tidak bisa berkomunikasi | PVID salah atau bridge VLAN table belum benar | Cek /interface bridge vlan print dan /interface bridge port print detail |
| Inter-VLAN tidak jalan | Firewall memblokir atau IP address belum di-assign | Cek firewall rules dan /ip address print |
| DHCP memberi IP dari pool salah | DHCP server terikat pada interface yang keliru | Perbaiki interface DHCP server dan restart: /ip dhcp-server disable 0 lalu enable 0 |
| Trunk port tidak meneruskan VLAN | VLAN belum di-tag pada trunk port di bridge VLAN table | Tambahkan tagged=ether5 pada konfigurasi bridge VLAN |
Jika Anda mengaktifkan vlan-filtering=yes pada bridge, pastikan semua port
yang digunakan sudah terdaftar dengan benar di /interface bridge vlan. Port yang
tidak terdaftar akan tidak bisa mengirim atau menerima trafik sama sekali β
termasuk trafik management untuk akses router.
9. Quiz: Uji Pemahamanmu
Jawab pertanyaan berikut untuk menguji pemahaman kamu tentang VLAN dan DHCP di MikroTik. Pilih satu jawaban terbaik untuk setiap pertanyaan.