Published Nov 6, 2023 by Muhamad Rafli Maulana Rizki
Load Balance adalah metode untuk membagi traffic ke 2 jalur atau lebih. pembagian traffic ini dilakukan secara balance agar traffic berjalan optimal dan bandwidth dari ISP bisa dimaksimalkan.
Load Balance ini juga dapat menghindari Overload pada salah satu jalur dan dapat menjadi backup jika ada Jalur down/bermasalah.
PCC Bekerja dengan memecah traffic data yang melewati router kedalam beberapa stream, stream tersebut terdiri dari jalur yang berbeda.
Sebuah perusahaan dengan topologi di atas memiliki internet dari 2 ISP dengan bandwidth yang sama, Perusahaan ini ingin kedua ISP tersebut dipakai sebagai Load Balance dan juga sebagai Backup jika salah satu ISP bermasalah. Perusahaan ini juga ingin kedua Link Internet dapat digunakan secara bersamaan dan dibagi secara otomatis.
Berikan konfigurasi dari topologi di atas menggunakan Load Balance PCC dan backup Fail Over.
Setting NAT to Out interface Eth1 dan Eth2
/ip firewall nat
add action=masquerade chain=srcnat comment="to;ISP-1" out-interface=ether1-ISP1
add action=masquerade chain=srcnat comment="to;ISP-2" out-interface=ether2-ISP2
Create address list (LAN) Network Local
⇒ list network local yang akan di load balance.
/ip firewall address-list
add address=192.168.10.0/30 list=LAN
add address=192.168.20.0/30 list=LAN
Rule (Accept) koneksi antar local network
⇒ Berfungsi agar network yang ingin berkomunikasi antar network local tidak melalui proses filter koneksi PCC.
Jika tidak dibuatkan rule accept, maka semua network akan melalui proses PCC terlebih dahulu, itu dapat mempengaruhi traffic local.
/ip firewall mangle
add action=accept chain=prerouting dst-address-list=LAN
Rule Traffic Input Output
⇒ Berfungsi untuk memastikan traffic masuk maupun keluar berada pada jalur/route yang sama.
/ip firewall mangle
#Traffic Masuk dari ISP
add action=mark-connection chain=input in-interface=ether1 new-connection-mark=\
Koneksi-ISP1 passthrough=yes
add action=mark-connection chain=input in-interface=ether2 new-connection-mark=\
Koneksi-ISP2 passthrough=yes
#Traffic keluar
add action=mark-routing chain=output connection-mark=Koneksi-ISP1 \
new-routing-mark=To-ISP1 passthrough=yes
add action=mark-routing chain=output connection-mark=Koneksi-ISP2 \
new-routing-mark=To-ISP2 passthrough=yes
Note: Jika “in-interface” adalah PPPoE maka select PPPoE client Interface tidak Port Mikrotiknya
Rule Load Balance 2 ISP, Bandwidth sama
⇒ Berfungsi untuk membagi atau menyeimbangkan traffic, kedua ISP akan bekerja secara bersamaan dan membagi tugas. Load Balance juga meminimalisir akan terjadinya Overload traffic pada salah satu ISP.
/ip firewall mangle
#Load Balance Traffic
add action=mark-connection chain=prerouting connection-mark=no-mark dst-address-list=!LAN dst-address-type="" new-connection-mark=\
Koneksi-ISP1 passthrough=yes per-connection-classifier=both-addresses-and-ports:2/0 src-address-list=LAN
add action=mark-connection chain=prerouting connection-mark=no-mark dst-address-list=!LAN dst-address-type="" new-connection-mark=\
Koneksi-ISP2 passthrough=yes per-connection-classifier=both-addresses-and-ports:2/1 src-address-list=LAN
#Menandai Traffic dari Source LAN to dst another LAN agar diproses melalui PCC
add action=mark-routing chain=prerouting connection-mark=Koneksi-ISP1 dst-address-list=!LAN new-routing-mark=To-ISP1 passthrough=yes \
src-address-list=LAN
add action=mark-routing chain=prerouting connection-mark=Koneksi-ISP2 dst-address-list=!LAN new-routing-mark=To-ISP2 passthrough=yes \
src-address-list=LAN
Cara Kerja :
Note :
Konfigurasi PCC
Tiknik PCC ini menggunakan algoritma Connection splitting untuk melakukan load balance.
PCC dengan Bandwidth Berbeda
Jika bandwidth berbeda, maka Bandwidth yang lebih besar harus di bagi untuk menyamakan rule dengan bandwidth yang kecil.
Configuration Firewall Mangel
Create IP Route Network
⇒ Berfungsi untuk merutekan Rule yang telah di buat dengan set “Routing-mark” pada routing table tersebut.
/ip route
add check-gateway=ping distance=1 gateway=10.10.10.1 routing-mark=To-ISP1
add check-gateway=ping distance=1 gateway=172.16.2.1 routing-mark=To-ISP2
add distance=1 gateway=10.10.10.1
add distance=2 gateway=172.16.2.1