MikroTik là thương hiệu router đến từ Latvia. Sản phẩm được tin dùng trong nhiều doanh nghiệp tại Việt Nam, trên toàn thế giới và thậm chí ở các data center. Ngoài phần cấu hình khá khó khi mới làm quen, router MikroTik là sự lựa chọn tuyệt vời với nhiều tính năng cao cấp, tùy chỉnh phong phú, giá cả phải chăng,… “Cộng băng thông” là một trong số đó, ta có thể cộng không giới hạn các đường WAN miễn sao đủ cổng (interface).
Cân bằng tải và dự phòng trong MikroTik
MikroTik hỗ trợ cân bằng tải nhiều đường WAN dựa trên tính năng gọi là “PCC – Per Connection Classifier”. Tức là khi gói tin đi từ bên trong Local ra Internet thì nó sẽ được NAT ra toàn bộ các IP WAN, đồng thời chia đều các gói tin ra theo các đường WAN để cùng lúc đi ra ngoài.
Cân bằng tải MikroTik.
Khi chia ra như vậy thì sẽ phải thực hiện việc “mark” (đánh dấu) kết nối và đường đi gói tin hợp lý để gói tin nào đi ra ngoài đường WAN nào với IP Local nào thì khi quay lại nó sẽ phải đi vào đúng nơi nó đi ra. Song song là việc kết hợp thêm “PCC”, sau đó chỉnh lại Routes để đặt đường đi và cài đặt độ ưu tiên khi Failover.
Thực hiện việc cấu hình Firewall / Mangle để đánh dấu gói tin và “PCC” trước. Đánh dấu kết nối đi từ bên trong Local ra ngoài qua WAN, đồng thời mở “PCC” đi ra ngoài theo nhiều đường. Công thức của PCC rất đơn giản, sử dụng thuật toán băm theo tỷ lệ. Ví dụ 2 đường WAN thì sẽ là:
- WAN1: 2/0
- WAN2: 2/1
Với 3 Đường WAN:
- WAN1: 3/0
- WAN2: 3/1
- WAN3: 3/2
Cấu hình cộng băng thông
Cấu hình
Giả sử cần cấu hình cân bằng tải kiểu “cộng băng thông” và dự phòng (failover) 2 đường WAN. Khi đó ta sẽ cấu hình 4 nhóm sau trong terminal:
/ ip firewall mangle
add chain=prerouting dst-address=192.168.88.0/24 action=accept in-interface=BridgeLAN
Nhóm 1:
add chain=prerouting in-interface=pppoe-out1 connection-mark=no-mark action=mark-connection new-connection-mark=danhdauVNPT1
add chain=prerouting in-interface=pppoe-out2 connection-mark=no-mark action=mark-connection new-connection-mark=danhdauVNPT2
Nhóm 2:
add chain=prerouting in-interface=BridgeLAN connection-mark=no-mark dst-address-type=!local per-connection-classifier=both-addresses-and-ports:2/0 action=mark-connection new-connection-mark=danhdauVNPT1
add chain=prerouting in-interface=BridgeLAN connection-mark=no-mark dst-address-type=!local per-connection-classifier=both-addresses-and-ports:2/1 action=mark-connection new-connection-mark=danhdauVNPT2
Nhóm 3:
add chain=prerouting connection-mark=danhdauVNPT1 in-interface=BridgeLAN action=mark-routing new-routing-mark=diraVNPT1
add chain=prerouting connection-mark=danhdauVNPT2 in-interface=BridgeLAN action=mark-routing new-routing-mark=diraVNPT2
Nhóm 4:
add chain=output connection-mark=danhdauVNPT1 action=mark-routing new-routing-mark=diraVNPT1
add chain=output connection-mark=danhdauVNPT2 action=mark-routing new-routing-mark=diraVNPT2
Với nhóm 1 và 2 sẽ thực hiện đánh dấu gói tin đi vào/ra cổng WAN và interface LAN để thực hiện định tuyến phù hợp trong các nhóm 3 và 4. Phần tô đậm sẽ là tùy chỉnh phù hợp với từng cấu hình và cách đặt tên ở mỗi router MikroTik khác nhau.
Cấu hình bằng giao diện.
Ta cũng có thể cấu hình thông qua giao diện, tuy nhiên không nhanh và dễ kiểm soát bằng cấu hình thông qua dòng lệnh.
Sau đó tùy chỉnh định tuyến với việc đầu tiên là bỏ Add Default Route ở các WAN và thêm vào bảng định tuyến. Cấu hình thêm failover để dự phòng khi một trong hai đường WAN down:
/ ip route
add check-gateway=ping distance=1 gateway=pppoe-out1 routing-mark=diraVNPT1
add check-gateway=ping distance=1 gateway=pppoe-out2 routing-mark=diraVNPT2
add check-gateway=ping distance=1 gateway=pppoe-out1
add check-gateway=ping distance=2 gateway=pppoe-out2
Lưu ý
Lưu ý, khi cấu hình cân bằng tải kiểu “cộng băng thông” với MikroTik, một số trang thanh toán trực tuyến sẽ không cho phép thao tác trên đó vì chúng chỉ chấp nhận 1 IP WAN trong suốt quá trình giao dịch. Để sửa lỗi này, ta có thể định tuyến các máy tính cần sử dụng dịch vụ trên theo đường WAN cụ thể, hoặc đơn giản là loại bỏ các máy này ra khỏi cân bằng tải.
Đầu tiên trong IP → Firewall → Address Lists ta thêm IP các máy tính cần loại ra khỏi cân bằng tải và đặt tên, ví dụ “IP Ke Toan”. Sau đó trong Mangle Rule, ta thêm vào rule như hình sau và kéo lên vị trí trên cùng:
Loại ra khỏi cân bằng tải.