1. Pengenalan Routing
Routing adalah proses pemilihan jalur terbaik untuk mengirim paket data dari jaringan sumber menuju jaringan tujuan. Di dunia jaringan, router bertanggung jawab untuk membuat keputusan ini berdasarkan tabel routing yang tersimpan di dalam perangkat.
Apa Itu Routing?
Secara sederhana, routing dapat diibaratkan seperti sistem navigasi GPS. Router berfungsi sebagai "pemandu" yang menentukan rute paling efisien agar data dapat sampai ke tujuan. Setiap paket data yang melintasi jaringan akan dianalisis oleh router untuk menentukan interface keluar yang tepat.
Jenis-Jenis Routing
Terdapat tiga kategori utama routing yang perlu dipahami oleh setiap engineer jaringan:
- โ Rute ditentukan manual oleh admin
- โ Tidak ada pertukaran info antar router
- โ Cocok untuk jaringan kecil & sederhana
- โ Keamanan tinggi โ tidak ada advertisement
- โ Router otomatis belajar rute
- โ Konvergensi cepat pada perubahan link
- โ Cocok untuk campus & satu organisasi
- โ Menggunakan protokol interior gateway (IGP)
- โ Protocol exterior gateway (EGP)
- โ Pertukaran routing antar Autonomous System
- โ Cocok untuk ISP & internet backbone
- โ Skala internet โ jutaan prefix
Ketika sebuah router memiliki beberapa sumber informasi rute ke tujuan yang sama,
maka akan dipilih rute dengan Administrative Distance (AD) terendah.
MikroTik menggunakan paramater distance untuk menentukan ini โ semakin kecil nilainya,
semakin dipercaya rute tersebut.
2. Static Routing di MikroTik
Static routing memungkinkan administrator menentukan rute secara manual ke jaringan tertentu. Meskipun terlihat sederhana, static route sangat berguna untuk jaringan kecil atau ketika diperlukan rute default ke ISP.
Menambah Static Route via Terminal
Berikut adalah contoh penambahan static route melalui CLI MikroTik:
# Tambah rute default ke ISP (gateway 203.0.113.1)
/ip route add dst-address=0.0.0.0/0 gateway=203.0.113.1 distance=1 comment="Default Route to ISP"
# Rute ke jaringan branch office via tunnel
/ip route add dst-address=10.10.0.0/16 gateway=192.168.1.1 distance=1 comment="Branch Office VPN"
# Rute ke jaringan server internal
/ip route add dst-address=172.16.100.0/24 gateway=192.168.50.1 distance=2 comment="Server Farm"
# Rute dengan preference tinggi (backup route)
/ip route add dst-address=0.0.0.0/0 gateway=198.51.100.1 distance=10 comment="Backup ISP"
Verifikasi Static Route
# Lihat seluruh tabel routing
/ip route print
# Filter rute ke tujuan tertentu
/ip route print where dst-address=10.10.0.0/16
# Verifikasi rute aktif saja
/ip route print where active
# Cek detail rute default
/ip route print detail where dst-address=0.0.0.0/0
Menghapus dan Memodifikasi Route
# Hapus route berdasarkan nomor index
/ip route remove 2
# Modifikasi gateway pada route tertentu
/ip route set 1 gateway=192.168.1.254
# Disable route tanpa menghapusnya
/ip route disable 3
# Enable kembali route yang di-disable
/ip route enable 3
Saat membuat backup route (floating static route), pastikan distance pada
route backup lebih besar dari route utama. Jika nilai distance sama,
kedua rute akan aktif secara bersamaan dan dapat menyebabkan masalah routing loop.
3. Konfigurasi OSPF
OSPF (Open Shortest Path First) adalah protokol routing interior (IGP) yang menggunakan algoritma Link-State. OSPF sangat populer di lingkungan enterprise karena kemampuannya dalam mengelola jaringan yang kompleks dengan cepat berkonvergensi.
Konfigurasi OSPF Dasar
Set Router ID
Tentukan router-id unik untuk OSPF instance (biasanya IP loopback atau IP terbesar).
Tentukan Area
Assign network ke area yang sesuai. Area 0 (Backbone) wajib untuk multi-area OSPF.
Daftarkan Network
Tambahkan setiap network interface yang akan participate dalam OSPF adjacency.
Atur Autentikasi
Aktifkan MD5/SHA authentication untuk keamanan neighbor relationship.
Verifikasi Adjacency
Cek neighbor status dan pastikan adjacency dalam state Full/Backup DR.
Langkah awal mengaktifkan dan mengkonfigurasi OSPF di MikroTik RouterOS:
# Aktifkan OSPF Router ID
/routing ospf instance
set 0 name=default router-id=1.1.1.1
# Konfigurasi network yang diiklankan
/routing ospf network
add network=192.168.10.0/24 area=backbone comment="LAN Utama"
add network=192.168.20.0/24 area=backbone comment="Link ke Router 2"
add network=10.0.0.0/30 area=backbone comment="Point-to-Point Link"
OSPF Multi-Area
Untuk jaringan yang lebih besar, OSPF mendukung pembagian area untuk membatasi propagasi LSA (Link-State Advertisement) dan mengurangi beban routing table.
# Buat area baru untuk gedung lantai 2
/routing ospf area
add name=area-lantai2 area-id=0.0.0.2 type=stub
# Tambah network ke area spesifik
/routing ospf network
add network=10.10.2.0/24 area=area-lantai2 comment="Gedung Lantai 2"
add network=10.10.3.0/24 area=area-lantai2 comment="Gedung Lantai 3"
# Konfigurasi interface OSPF (opsional, untuk control lebih detail)
/routing ospf interface
add interface=ether3 network-type=point-to-point cost=10 dead-interval=40s hello-interval=10s
add interface=ether4 network-type=broadcast priority=1
OSPF Authentication
Keamanan pada protokol routing sangat penting. Berikut cara mengamankan pertukaran paket OSPF dengan autentikasi MD5:
# Aktifkan autentikasi MD5 pada interface
/routing ospf interface
set [find interface=ether3] authentication=md5 authentication-key="R4h4s1aS3cr3t!"
# Verifikasi neighbor OSPF
/routing ospf neighbor print
# Cek status adjacensi
/routing ospf interface print detail
Untuk mempercepat konvergensi OSPF di jaringan kritis, sesuaikan parameter
hello-interval dan dead-interval. Nilai default
(10s hello / 40s dead) cocok untuk LAN, namun untuk link berkecepatan tinggi
gunakan hello-interval=1s dead-interval=4s.
4. Konfigurasi BGP
BGP (Border Gateway Protocol) adalah protokol routing eksterior yang digunakan untuk pertukaran routing antar sistem otonom (Autonomous System). BGP merupakan protocol yang menjalankan internet seperti yang kita kenal saat ini.
BGP di MikroTik: Fundamental
# Konfigurasi BGP Router
/routing bgp instance
set name=default as=65001 router-id=1.1.1.1 \
as=65001 \
redistribute-connected=yes \
redistribute-static=yes \
redistribute-ospf=yes
# Tambah peer (ISP utama)
/routing bgp peer
add name=ISP-Primary remote-address=203.0.113.2 remote-as=64500 \
address-families=ip update-source=ether1 \
keepalive-time=30s hold-time=90s \
nexthop-choice=force-self
# Tambah peer (ISP backup)
/routing bgp peer
add name=ISP-Backup remote-address=198.51.100.2 remote-as=64501 \
address-families=ip update-source=ether2 \
keepalive-time=30s hold-time=90s
Route Filtering dengan BGP
Filtering route sangat krusial di BGP untuk mencegah advertisement yang tidak diinginkan
dan mengontrol traffic flow. MikroTik menggunakan fitur routing filter untuk ini.
# Buat address list untuk filtering
/ip firewall address-list
add address=10.0.0.0/8 list=private-prefixes
add address=172.16.0.0/12 list=private-prefixes
add address=192.168.0.0/16 list=private-prefixes
# Buat routing filter prefix
/routing filter rule
add chain=ISP-Primary-in \
comment="Terima hanya prefix public dari ISP" \
rule="
if (dst in 10.0.0.0/8 || dst in 172.16.0.0/12 || dst in 192.168.0.0/16) {
reject;
} else {
accept;
}
"
add chain=ISP-Primary-out \
comment="Iklankan hanya prefix kita ke ISP" \
rule="
if (dst in 10.10.0.0/22) {
accept;
} else {
reject;
}
"
# Terapkan filter ke peer
/routing bgp peer
set ISP-Primary input-filter=ISP-Primary-in output-filter=ISP-Primary-out
Prefix Filter & Communities
# Buat prefix list untuk filtering spesifik
/ip firewall address-list
add address=45.33.0.0/16 list=allowed-prefixes
add address=91.189.0.0/16 list=allowed-prefixes
# Filter dengan community tag
/routing filter rule
add chain=ISP-Primary-in \
comment="Tag incoming route dengan community" \
rule="
set bgp-communities=65001:100;
accept;
"
# Lihat peer BGP dan status
/routing bgp peer print detail
Tanpa route filtering yang tepat, sebuah AS bisa mengiklankan prefix IP milik orang lain
ke internet โ ini disebut BGP hijacking. Selalu terapkan filter
prefix outbound yang hanya mengiklankan blok IP yang sah milik organisasi Anda.
Gunakan juga RPKI untuk validasi asal route.
5. Firewall Filter Rules untuk Keamanan Routing
Routing dan firewall bekerja beriringan. Firewall filter rules berfungsi sebagai gerbang
keamanan yang memastikan hanya traffic yang diizinkan dapat melewati router. Di MikroTik,
firewall dikelola melalui /ip firewall filter.
Rule Dasar Firewall untuk Routing
# === INPUT CHAIN ===
# 1. Terima established dan related connections
/ip firewall filter
add chain=input action=accept connection-state=established,related \
comment="Allow established/related" place-before=0
# 2. Allow ICMP untuk troubleshooting (ping, traceroute)
add chain=input action=accept protocol=icmp \
comment="Allow ICMP" place-before=1
# 3. Allow akses management hanya dari jaringan admin
add chain=input action=accept protocol=tcp dst-port=8291 \
src-address=192.168.1.0/24 \
comment="Allow WinBox from admin LAN"
# 4. Allow SSH dari jaringan terbatas
add chain=input action=accept protocol=tcp dst-port=22 \
src-address=10.0.0.0/8 \
comment="Allow SSH from management"
# 5. Drop semua input lainnya
add chain=input action=drop \
comment="Drop all other input"
# === FORWARD CHAIN ===
# 6. Terima forwarded connections yang sudah established
add chain=forward action=accept connection-state=established,related \
comment="Allow established forwarding" place-before=0
# 7. Allow forwarding dari LAN ke internet
add chain=forward action=accept src-address=192.168.10.0/24 \
out-interface=ether1 \
comment="LAN to Internet"
# 8. Drop invalid connections
add chain=forward action=drop connection-state=invalid \
comment="Drop invalid"
NAT (Network Address Translation)
NAT sangat penting untuk memungkinkan banyak perangkat di jaringan lokal mengakses internet melalui satu IP publik.
# Masquerade untuk akses internet
/ip firewall nat
add chain=srcnat src-address=192.168.10.0/24 out-interface=ether1 \
action=masquerade comment="NAT for LAN"
# Port forwarding (contoh: web server internal)
add chain=dstnat protocol=tcp dst-port=443 \
in-interface=ether1 action=dst-nat \
to-addresses=192.168.10.50 to-ports=443 \
comment="Forward HTTPS to web server"
# Port forwarding untuk SSH
add chain=dstnat protocol=tcp dst-port=2222 \
in-interface=ether1 action=dst-nat \
to-addresses=192.168.10.10 to-ports=22 \
comment="Forward SSH to admin server"
Urutan firewall rule di MikroTik sangat krusial karena diproses dari atas ke bawah
secara berurutan. Selalu tempatkan rule accept established di posisi
paling atas untuk performa optimal โ traffic yang sudah terbangun tidak perlu
diperiksa ulang oleh rule berikutnya.
6. Load Balancing dengan ECMP
ECMP (Equal-Cost Multi-Path) adalah teknik load balancing yang memanfaatkan beberapa jalur dengan cost (jarak) yang sama untuk mendistribusikan traffic. Di MikroTik, ECMP merupakan solusi load balancing yang paling umum digunakan untuk multi-ISP.
Konfigurasi ECMP dengan 2 ISP
# Konfigurasi IP Address untuk masing-masing ISP
/ip address
add address=203.0.113.10/30 interface=ether1 comment="ISP-Primary"
add address=198.51.100.10/30 interface=ether2 comment="ISP-Backup"
# Buat rute default ECMP (distance sama = load balance)
/ip route
add dst-address=0.0.0.0/0 gateway=203.0.113.1 distance=1 \
check-gateway=ping comment="ISP-Primary Gateway"
add dst-address=0.0.0.0/0 gateway=198.51.100.1 distance=1 \
check-gateway=ping comment="ISP-Backup Gateway"
ECMP dengan PCC (Per Connection Classifier)
PCC memungkinkan distribusi traffic per-connection berdasarkan kombinasi IP source, IP destination, dan port. Ini memastikan setiap sesi konsisten melalui ISP yang sama.
# Mangle rules untuk PCC load balancing
/ip firewall mangle
# Mark pertama: 50% traffic ke ISP-Primary
add chain=prerouting src-address=192.168.10.0/24 \
connection-state=new \
per-connection-classifier=both-addresses:2/0 \
action=mark-connection new-connection-mark=ISP-Primary-conn
# Mark kedua: 50% traffic ke ISP-Backup
add chain=prerouting src-address=192.168.10.0/24 \
connection-state=new \
per-connection-classifier=both-addresses:2/1 \
action=mark-connection new-connection-mark=ISP-Backup-conn
# Terapkan routing mark berdasarkan connection mark
add chain=prerouting connection-mark=ISP-Primary-conn \
action=mark-routing new-routing-mark=to-ISP-Primary
add chain=prerouting connection-mark=ISP-Backup-conn \
action=mark-routing new-routing-mark=to-ISP-Backup
# Buat rute untuk masing-masing routing mark
/ip route
add dst-address=0.0.0.0/0 gateway=203.0.113.1 \
routing-mark=to-ISP-Primary distance=1
add dst-address=0.0.0.0/0 gateway=198.51.100.1 \
routing-mark=to-ISP-Backup distance=1
- โ Simpel, otomatis, minimal konfigurasi
- โ Tidak konsisten per-session
- โ Sticky session tidak bisa
- โ Konsisten per-connection
- โ Distribusi merata
- โ Konfigurasi lebih kompleks
- โ Distribusi tepat sesuai pola
- โ Predictable & terkontrol
- โ Kurang fleksibel jika ISP berubah
- โ ISP backup aktif saat primary down
- โ Failover otomatis
- โ Bandwidth backup tidak terpakai saat normal
ECMP dan PCC sangat bergantung pada connection tracking. Pastikan
/ip firewall connection tracking dalam status enabled. Jika connection
tracking dimatikan, paket yang sudah termarking tidak akan konsisten dan
koneksi bisa terputus.
7. Monitoring & Troubleshooting Routing
Setelah dikonfigurasi, routing harus dipantau secara berkala untuk memastikan kinerja optimal. MikroTik menyediakan berbagai tool bawaan untuk diagnosa masalah routing.
Tool Monitoring Bawaan
# === Routing Table Inspection ===
# Lihat seluruh routing table
/ip route print stats
# Cek routing table yang hanya aktif
/ip route print where active
# Lihat detail rute spesifik
/ip route print detail where dst-address=0.0.0.0/0
# === Traceroute ===
# Trace path ke destination
/tool traceroute address=8.8.8.8 protocol=icmp count=5
# Trace dengan source address tertentu
/tool traceroute address=8.8.8.8 src-address=192.168.10.1
# === Bandwidth Monitoring ===
# Monitor bandwidth per-interface real-time
/tool traffic-monitor interface=ether1 interval=1s
# Paket sniffer untuk analisis mendalam
/tool sniffer quick
set filter-interface=ether1 filter-direction=both
start
Troubleshooting OSPF
# Cek neighbor OSPF
/routing ospf neighbor print
# Lihat database link-state
/routing ospf lsa print
# Cek area dan interface
/routing ospf area print
/routing ospf interface print detail
# Monitor event OSPF
/log print where topics~"ospf"
Troubleshooting BGP
# Cek status peer BGP
/routing bgp peer print detail
# Lihat prefix yang diterima dari peer
/routing bgp advertisements print
# Monitor event BGP
/log print where topics~"bgp"
# Hitung jumlah prefix
/routing bgp peer print stats
# Cek prefix filter
/routing filter rule print
Script Monitoring Otomatis
Buat script untuk memantau status routing secara otomatis dan mengirim notifikasi jika terjadi perubahan:
# Script cek status BGP Peer
/system script
add name="check-bgp-status" policy=read,test source={
:local bgpPeer ([/routing bgp peer get value-name=state]);
:if ($bgpPeer != "established") do={
:log warning "BGP Peer DOWN! State: $bgpPeer";
/tool send-email \
to="admin@company.id" \
subject="[ALERT] BGP Peer DOWN" \
body="BGP Peer state changed to $bgpPeer at [/system clock get time]";
}
}
# Jadwalkan script setiap 5 menit
/system scheduler
add name="bgp-monitor" interval=5m \
on-event="check-bgp-status" \
comment="Monitor BGP peer status"
MikroTik menyediakan aplikasi monitoring gratis bernama The Dude. Tool ini memungkinkan visualisasi topologi jaringan secara real-time, monitoring status device, dan alerting otomatis. Sangat cocok untuk memantau banyak router MikroTik dalam satu dashboard.
8. Best Practices untuk Jaringan Enterprise
Menerapkan routing di jaringan enterprise memerlukan perencanaan yang matang. Berikut adalah best practices yang direkomendasikan untuk memastikan stabilitas dan keamanan.
Dokumentasi & Penamaan
- Gunakan
commentpada setiap rule dan route untuk dokumentasi yang jelas - Adopsi penamaan konsisten:
WAN-Primary,LAN-Office,DMZ-Server - Dokumentasikan seluruh IP plan dalam spreadsheet atau Wiki internal
- Buat backup konfigurasi secara berkala:
/system backup save name="backup-[date]"
Keamanan Routing
# === Security Hardening ===
# 1. Disable IP services yang tidak diperlu
/ip service
set telnet disabled=yes
set ftp disabled=yes
set www disabled=yes
set api disabled=yes
set api-ssl disabled=yes
set winbox address=192.168.1.0/24
set ssh address=192.168.1.0/24
# 2. Proteksi dari brute force SSH
/ip firewall filter
add chain=input protocol=tcp dst-port=22 \
src-address-list=ssh_blacklist action=drop \
comment="Drop SSH brute force"
add chain=input protocol=tcp dst-port=22 \
connection-state=new src-address-list=ssh_stage3 \
action=add-src-to-address-list address-list=ssh_blacklist \
address-list-timeout=1d comment="SSH brute force stage 3"
add chain=input protocol=tcp dst-port=22 \
connection-state=new src-address-list=ssh_stage2 \
action=add-src-to-address-list address-list=ssh_stage3 \
address-list-timeout=1m comment="SSH brute force stage 2"
add chain=input protocol=tcp dst-port=22 \
connection-state=new \
action=add-src-to-address-list address-list=ssh_stage2 \
address-list-timeout=1m comment="SSH brute force stage 1"
# 3. Buat user admin dengan hak akses terbatas
/user add name=operator password="Str0ngP@ss!" group=read
/user add name=admin-backup password="B4ckup4dm1n!" group=full
/user remove admin
Redundansi & Failover
- Gunakan minimal 2 ISP dengan BGP atau static route floating untuk failover otomatis
- Implementasikan VRRP (Virtual Router Redundancy Protocol) untuk gateway redundancy
- Siapkan script failover yang memantau status link dan trigger failover jika diperlukan
- Test failover secara berkala untuk memastikan mekanisme bekerja dengan benar
Backup & Recovery
# Simpan backup lengkap (binary)
/system backup save name="full-backup-2026-06-18"
# Export konfigurasi ke script (text-based, bisa diedit)
/export file="config-export-2026-06-18"
# Export hanya bagian routing
/ip route export file="route-config"
/routing ospf instance export file="ospf-config"
/routing bgp instance export file="bgp-config"
# Automasi backup 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]);
}
| Best Practice | Prioritas | Implementasi |
|---|---|---|
| Autentikasi OSPF/BGP | ๐ด Tinggi | Gunakan MD5 atau SHA untuk semua neighbor relationship |
| Route Filtering | ๐ด Tinggi | Filter prefix inbound dan outbound di setiap peering |
| Backup Otomatis | ๐ก Sedang | Scheduler harian + upload ke storage eksternal |
| Monitoring & Alerting | ๐ก Sedang | The Dude, Zabbix, atau script notifikasi email |
| Change Management | ๐ข Standar | Dokumentasi setiap perubahan konfigurasi dengan timestamp |
Selalu terapkan prinsip least privilege โ berikan hak akses seminimal
mungkin kepada user dan service. Buat user operasional dengan hak read
saja, dan gunakan user full hanya untuk admin utama. Nonaktifkan semua
service yang tidak terpakai.
9. Quiz: Uji Pemahamanmu
Jawab pertanyaan berikut untuk menguji pemahaman kamu tentang konfigurasi routing di MikroTik. Pilih satu jawaban terbaik untuk setiap pertanyaan.