Praktik MikroTik PCC Load Balancing 2 ISP
Tujuan
Kita menggunakan dua sumber internet:
ISP 1
↓
ether1
↓
MikroTik
↓
ether2
↓
Laptop / Client
ISP 2 dari HP USB Tethering
↓
lte1
↓
MikroTikIP LAN MikroTik:
10.10.10.1/24Konsep yang digunakan adalah:
PCC (Per Connection Classifier) Load Balancing
Artinya MikroTik membagi connection ke ISP 1 dan ISP 2.
STEP 1: Reset konfigurasi MikroTik
Karena sebelumnya MikroTik masih berisi konfigurasi Hotspot Voucher, kita mulai dari kondisi kosong.
Masuk:
System → Reset Configuration
Pilih:
Remove ConfigurationKemudian reset.
STEP 2: Konfigurasi ISP 1
ISP utama dihubungkan ke:
ether1Masuk:
IP → DHCP Client
Tambahkan DHCP Client:
Interface: ether1Setelah berhasil, MikroTik mendapatkan IP otomatis dari ISP.
Pada praktik kita, MikroTik mendapatkan IP:
192.168.18.212/24Gateway ISP:
192.168.18.1STEP 3: Konfigurasi LAN
Laptop/client menggunakan:
ether2Masuk:
IP → Addresses
Tambahkan:
Address: 10.10.10.1/24
Interface: ether2Hasilnya:
MikroTik
ether2
10.10.10.1
│
│
Laptop
10.10.10.xSTEP 4: Konfigurasi DHCP Server untuk Laptop
Masuk:
IP → DHCP Server
Jalankan DHCP Setup.
Pilih:
Interface: ether2Network:
10.10.10.0/24Gateway:
10.10.10.1Dengan begitu laptop otomatis mendapatkan IP.
STEP 5: NAT ISP 1
Agar client bisa keluar ke internet melalui ISP 1.
Masuk:
IP → Firewall → NAT
Buat rule:
General
Chain: srcnat
Out. Interface: ether1Action
Action: masqueradeSTEP 6: Menambahkan ISP 2 dari HP
HP dihubungkan ke MikroTik menggunakan kabel USB.
Aktifkan:
USB TetheringMikroTik kemudian mendeteksi interface:
lte1Ini bukan interface yang kita buat sendiri. Interface tersebut otomatis muncul karena MikroTik mendeteksi HP sebagai perangkat jaringan.
Pada praktik kita, MikroTik mendapatkan IP:
10.88.253.147/24Gateway:
10.88.253.91Jadi:
HP / Internet
│
│ USB
↓
lte1
│
MikroTikSTEP 7: NAT untuk ISP 2
Masuk:
IP → Firewall → NAT
Buat rule baru.
General
Chain: srcnat
Out. Interface: lte1Action
Action: masqueradeSekarang kita punya dua NAT:
NAT ISP 1 → ether1
NAT ISP 2 → lte1STEP 8: Membuat Routing Table
Sekarang kita buat jalur khusus untuk masing-masing ISP.
Masuk:
Routing → Tables
Tambahkan:
Routing Table ISP 1
Name: to_ISP1
FIB: ✓Routing Table ISP 2
Name: to_ISP2
FIB: ✓Sekarang MikroTik punya:
main
to_ISP1
to_ISP2STEP 9: Membuat Route untuk ISP 1
Masuk ke daftar Route.
Buat:
Dst. Address: 0.0.0.0/0
Gateway: 192.168.18.1
Routing Table: to_ISP1Artinya:
Semua trafik yang diberi tanda
to_ISP1keluar melalui ISP 1.
STEP 10: Membuat Route untuk ISP 2
Buat route:
Dst. Address: 0.0.0.0/0
Gateway: 10.88.253.91
Routing Table: to_ISP2Artinya:
Semua trafik yang diberi tanda
to_ISP2keluar melalui ISP 2.
STEP 11: Membuat PCC di Mangle
Masuk:
IP → Firewall → Mangle
Di sinilah inti PCC-nya.
Rule 1: PCC untuk ISP 1
General
Chain: prerouting
In. Interface: ether2Advanced
Connection Mark: no-markPer Connection Classifier
Both Addresses and Ports: 2/0Action
Action: mark connection
New Connection Mark: ISP1_conn
Passthrough: yesArtinya sebagian connection diarahkan menjadi:
ISP1_connSTEP 12: PCC untuk ISP 2
Buat rule kedua.
General
Chain: prerouting
In. Interface: ether2Advanced
Connection Mark: no-markPer Connection Classifier
Both Addresses and Ports: 2/1Action
Action: mark connection
New Connection Mark: ISP2_conn
Passthrough: yesSekarang konsepnya:
Connection dari Laptop
│
▼
PCC
/ \
/ \
2/0 2/1
│ │
▼ ▼
ISP1_conn ISP2_connSTEP 13: Memberikan Routing Mark ISP 1
Sekarang connection yang sudah diberi tanda ISP 1 harus diarahkan ke routing table ISP 1.
Buat rule Mangle:
General
Chain: prerouting
In. Interface: ether2
Connection Mark: ISP1_connAction
Action: mark routing
New Routing Mark: to_ISP1
Passthrough: yesSTEP 14: Memberikan Routing Mark ISP 2
Buat rule berikutnya.
General
Chain: prerouting
In. Interface: ether2
Connection Mark: ISP2_connAction
Action: mark routing
New Routing Mark: to_ISP2
Passthrough: yesGambaran Lengkap Cara PCC Bekerja
Setelah semuanya selesai:
Laptop
│
▼
ether2
│
▼
Mangle PCC
│
├──────────────┐
│ │
▼ ▼
ISP1_conn ISP2_conn
│ │
▼ ▼
to_ISP1 to_ISP2
│ │
▼ ▼
ether1 lte1
│ │
▼ ▼
ISP Rumah HP InternetJadi MikroTik melakukan proses:
Connection datang
↓
PCC menentukan kelompok
↓
Connection diberi tanda
↓
Routing mengikuti tanda
↓
Keluar melalui ISP yang sesuaiHasil Tes
Pada praktik kita:
ISP rumah
Kurang lebih:
±50 MbpsInternet HP
Saat dites langsung dari HP, bahkan mencapai:
181 Mbps download
35,7 Mbps uploadSedangkan ketika laptop menggunakan konfigurasi PCC, Speedtest sebelumnya mendapatkan:
Download: 119,08 Mbps
Upload: 51,54 MbpsNamun angka tersebut belum otomatis membuktikan bahwa bandwidth 50 Mbps + 181 Mbps digabung secara penuh.
Karena PCC bekerja dengan:
membagi connection
bukan mengubah dua ISP menjadi satu koneksi fisik virtual.
Perbedaan PCC dan Bonding
PCC
ISP 1 ──┐
├── MikroTik
ISP 2 ──┘Connection dibagi ke dua ISP.
Misalnya:
Connection A → ISP 1
Connection B → ISP 2
Connection C → ISP 1
Connection D → ISP 2Kalau ada banyak connection, kedua bandwidth bisa dimanfaatkan bersama.
Bonding
Bonding adalah konsep berbeda.
Secara sederhana:
ISP 1 ──┐
├── menjadi satu link logis
ISP 2 ──┘PCC bukan true bonding.
Jadi jangan mengharapkan satu download dengan satu connection otomatis:
50 Mbps + 181 Mbps = 231 MbpsKarena PCC tidak bekerja seperti itu.
Cara Membaca TX dan RX
Ini penting banget.
Aturan utama
TX = Transmit = keluar dari interface
RX = Receive = masuk ke interfaceJangan menghafal:
TX = upload
RX = downloadkarena itu tergantung interface yang sedang dilihat.
Pada WAN
Misalnya:
Internet
↓
RX
lte1
↓
MikroTikMaka:
RX WAN = download dari internet
TX WAN = upload ke internetPada LAN
Misalnya laptop sedang download:
Internet
↓
MikroTik
↓
TX ether2
↓
LaptopJadi:
TX ether2 = download menuju laptop
RX ether2 = upload dari laptopPatokan paling aman tetap:
TX = keluar dari interface yang sedang kita lihat.
RX = masuk ke interface yang sedang kita lihat.
Konfigurasi Final yang Sudah Kita Punya
Kurang lebih sekarang:
WAN 1
Interface: ether1
IP: DHCP dari ISP
Gateway: 192.168.18.1
NAT: masquerade
Routing Table: to_ISP1
WAN 2
Interface: lte1
IP: DHCP dari HP
Gateway: 10.88.253.91
NAT: masquerade
Routing Table: to_ISP2
LAN
Interface: ether2
IP: 10.10.10.1/24
DHCP Server: aktif
PCC
2/0 → ISP1_conn
2/1 → ISP2_conn
Routing Mark
ISP1_conn → to_ISP1
ISP2_conn → to_ISP2STEP TERAKHIR: Backup Konfigurasi
Sekarang simpan konfigurasi final.
Di Terminal:
/system backup save name=pcc-loadbalance-finalLalu export juga:
/export file=pcc-loadbalance-finalNanti di Files akan ada:
pcc-loadbalance-final.backup
pcc-loadbalance-final.rscJadi praktik PCC Load Balancing 2 ISP ini bisa dianggap selesai dari sisi konfigurasi dasar. Yang tersisa hanya tahap eksperimen lanjutan, misalnya melihat pembagian trafik secara real-time, mencoba rasio 3/0, 3/1, 3/2 kalau bandwidth ISP tidak seimbang, atau nanti membandingkan PCC dengan ECMP dan Failover.
Dan menurut gue, langkah paling bagus setelah ini memang jangan langsung lompat ke konfigurasi baru dulu. Simpan backup, karena konfigurasi yang baru selesai ini sudah jadi bahan latihan yang bisa lu bongkar pasang lagi tanpa takut mulai dari neraka konfigurasi kosong.
Hubungan tiap-tiap jalur dan istilahnya
Nah, ini justru bagian paling penting dari praktik tadi. Kalau lu cuma bisa bikin rule tapi nggak ngerti hubungan antara Routing Table → PCC → Connection Mark → Routing Mark, nanti jatuhnya cuma jadi tukang copas konfigurasi MikroTik. Sayang banget, padahal lu sudah sampai sini.
Gue jelasin pelan-pelan pakai satu alur utuh.
Gambaran besarnya dulu
Kita punya dua internet:
ISP 1
│
ether1
│
▼
Laptop ── ether2 ── MikroTik
│
▼
lte1
│
ISP 2Masalahnya:
Kalau sebuah connection dari laptop datang, MikroTik harus memutuskan:
"Lu keluar lewat ISP 1 atau ISP 2?"
Nah, PCC adalah mekanisme yang membantu membuat keputusan itu.
Alurnya:
Connection dari Laptop
│
▼
PCC
│
├── Kelompok 1 → ISP1_conn
│ │
│ ▼
│ to_ISP1
│ │
│ ▼
│ ether1
│
└── Kelompok 2 → ISP2_conn
│
▼
to_ISP2
│
▼
lte1Sekarang kita bedah satu-satu.
1. Routing Table itu apa?
Sebelum PCC, lu sebenarnya sudah memakai routing table tanpa sadar.
Router punya tabel bawaan:
mainDi dalamnya ada informasi seperti:
Kalau mau ke internet
↓
lewat gateway 192.168.18.1atau:
Kalau mau ke internet
↓
lewat gateway 10.88.253.91Analogi gampangnya
Bayangkan MikroTik adalah sebuah kantor ekspedisi.
Ada dua jalan keluar:
Jalan A → ISP 1
Jalan B → ISP 2Kalau cuma ada satu daftar petunjuk jalan:
MAINMikroTik bisa bilang:
"Semua paket cek jalan dari daftar ini."
Masalahnya, kita ingin PCC bisa mengatakan:
Paket kelompok ISP1
→ lihat petunjuk jalan khusus ISP1
Paket kelompok ISP2
→ lihat petunjuk jalan khusus ISP2Makanya kita bikin:
main
to_ISP1
to_ISP22. Kenapa kita bikin to_ISP1 dan to_ISP2?
Karena kita ingin punya dua daftar petunjuk jalan yang berbeda.
to_ISP1
Isinya:
0.0.0.0/0
↓
192.168.18.1Artinya:
Kalau sebuah paket disuruh memakai table
to_ISP1, semua tujuan internet keluar lewat gateway ISP 1.
to_ISP2
Isinya:
0.0.0.0/0
↓
10.88.253.91Artinya:
Kalau sebuah paket memakai table
to_ISP2, keluar lewat ISP 2.
Jadi sederhananya:
Routing Table
↓
Menentukan
↓
Jalur keluar3. Connection itu apa?
Ini penting.
Misalnya laptop lu membuka:
youtube.comLaptop membuat sebuah hubungan komunikasi.
Secara sederhana:
Laptop
↔
YouTubeItulah yang kita sebut connection.
Kemudian lu buka:
google.comBisa muncul connection lain.
Lu buka:
speedtest.netMuncul lagi banyak connection.
Jadi kira-kira:
Laptop
├── Connection A → YouTube
├── Connection B → Google
├── Connection C → TikTok
├── Connection D → Speedtest
└── Connection E → ShopeePCC bekerja dengan cara membagi connection-connection ini.
4. Connection Mark itu apa?
Connection Mark itu sebenarnya cuma label.
Contoh:
Connection A
↓
diberi label
ISP1_connConnection lain:
Connection B
↓
diberi label
ISP2_connMikroTik sekarang tahu:
Connection A = kelompok ISP 1
Connection B = kelompok ISP 2Bayangkan petugas sortir barang memberi stiker.
📦 Paket A → Stiker MERAH
📦 Paket B → Stiker BIRUDi MikroTik:
Connection A → ISP1_conn
Connection B → ISP2_connConnection Mark belum menentukan jalur.
Ini penting banget.
Dia cuma bilang:
"Oke, connection ini masuk kelompok ISP 1."
Belum bilang:
"Keluar lewat ether1."
Itu baru dilakukan oleh tahap berikutnya.
5. Nah, PCC itu apa?
PCC adalah:
Per Connection Classifier
Bahasa manusia:
Sistem untuk mengelompokkan connection.
Nah, kita memakai:
Both Addresses and Ports: 2/0dan:
Both Addresses and Ports: 2/1Ini memang kelihatan kayak mantra pemanggil setan RouterOS pertama kali lihat. Tapi sebenarnya logikanya cukup sederhana.
6. Both Addresses and Ports itu apa?
Ketika sebuah connection datang, MikroTik bisa melihat beberapa informasi.
Misalnya:
Source Address
Destination Address
Source Port
Destination PortContoh sederhana:
Laptop
IP: 10.10.10.2
Port: 50000
↓ konek ke ↓
Server
IP: 142.xxx.xxx.xxx
Port: 443PCC Both Addresses and Ports menggunakan kombinasi:
IP sumber
+
IP tujuan
+
Port sumber
+
Port tujuanuntuk menentukan connection ini masuk kelompok mana.
Kenapa pakai semuanya?
Supaya banyak connection dari client bisa tersebar ke dua ISP.
7. Lalu angka 2/0 itu apa?
Ini inti PCC kita.
Format sederhananya:
Jumlah kelompok / Nomor kelompokJadi:
2/0berarti:
Total kelompok = 2
Ambil kelompok nomor = 0Sedangkan:
2/1berarti:
Total kelompok = 2
Ambil kelompok nomor = 1Karena kita punya dua ISP:
Kelompok 0 → ISP 1
Kelompok 1 → ISP 2Jadi:
2/0 → ISP1_conn
2/1 → ISP2_connSecara visual:
Semua Connection
│
▼
PCC
│
┌────┴────┐
│ │
Kelompok 0 Kelompok 1
│ │
▼ ▼
ISP1_conn ISP2_conn8. Kenapa harus ada dua rule?
Karena:
2/0hanya menangkap kelompok pertama.
Sedangkan:
2/1menangkap kelompok kedua.
Jadi:
Rule pertama
both-addresses-and-ports:2/0
↓
mark connection
↓
ISP1_connRule kedua
both-addresses-and-ports:2/1
↓
mark connection
↓
ISP2_connKeduanya bersama-sama membagi semua connection.
9. Contoh nyata
Misalnya laptop membuka 6 connection.
PCC melakukan perhitungan terhadap masing-masing connection.
Hasilnya kira-kira:
Connection 1 → kelompok 0 → ISP1_conn
Connection 2 → kelompok 1 → ISP2_conn
Connection 3 → kelompok 0 → ISP1_conn
Connection 4 → kelompok 1 → ISP2_conn
Connection 5 → kelompok 1 → ISP2_conn
Connection 6 → kelompok 0 → ISP1_connBukan berarti harus selalu:
1 → ISP1
2 → ISP2
3 → ISP1
4 → ISP2seperti sistem gantian.
PCC melakukan perhitungan berdasarkan informasi connection.
Makanya pembagiannya berusaha seimbang, tetapi tidak berarti setiap detik bandwidth dibelah 50:50.
10. Setelah Connection Mark, lalu apa?
Nah sekarang MikroTik sudah punya:
Connection A = ISP1_conn
Connection B = ISP2_connTetapi MikroTik masih belum tahu:
"ISP1_conn ini harus keluar lewat mana?"
Makanya kita bikin Routing Mark.
11. Routing Mark itu apa?
Routing Mark adalah instruksi:
Connection dengan label tertentu
↓
gunakan Routing Table tertentuContohnya:
ISP1_conn
↓
mark-routing
↓
to_ISP1Artinya:
Kalau paket berasal dari connection yang diberi label
ISP1_conn, gunakan routing tableto_ISP1.
Dan:
ISP2_conn
↓
mark-routing
↓
to_ISP2Jadi sekarang alurnya lengkap.
12. Hubungan semuanya
Ini yang paling penting untuk lu pahami:
1. Laptop membuat connection
│
▼
2. PCC memeriksa connection
Both Addresses and Ports
│
▼
3. Connection dibagi
2/0 2/1
│ │
▼ ▼
ISP1_conn ISP2_conn
│ │
▼ ▼
4. Routing Mark
to_ISP1 to_ISP2
│ │
▼ ▼
5. Routing Table
to_ISP1 to_ISP2
│ │
▼ ▼
192.168.18.1 10.88.253.91
│ │
▼ ▼
ether1 lte1
│ │
▼ ▼
ISP 1 ISP 2Kalau disederhanakan banget:
PCC
= memilih kelompok
Connection Mark
= memberi nama kelompok
Routing Mark
= memilih daftar jalan
Routing Table
= daftar jalan
Route/Gateway
= jalan keluar sebenarnyaAnalogi terakhir biar nempel
Bayangkan lu punya dua jasa pengiriman.
JNE
J&TAda banyak paket masuk.
PCC
Petugas membagi paket:
Paket A → kelompok 0
Paket B → kelompok 1Connection Mark
Dikasih stiker:
Kelompok 0 → "JNE"
Kelompok 1 → "J&T"Routing Mark
Petugas membaca stikernya:
"JNE" → gunakan jalur pengiriman JNE
"J&T" → gunakan jalur pengiriman J&TRouting Table
Daftar jalurnya:
JNE → pintu keluar A
J&T → pintu keluar BRoute
Akhirnya paket benar-benar keluar lewat pintu:
Pintu A → ISP 1
Pintu B → ISP 2Jadi urutan besarnya cukup lu hafal begini:
PCC membagi → Connection Mark memberi label → Routing Mark memilih tabel → Routing Table menentukan gateway → Gateway mengirim paket keluar lewat ISP.
Itu sebenarnya jantung dari konfigurasi PCC yang barusan lu praktikkan. Begitu rantai ini kebayang, rule-rule Mangle tadi nggak lagi cuma kumpulan dropdown yang lu klik sambil berharap dewa jaringan sedang baik hati.
