Escolar Documentos
Profissional Documentos
Cultura Documentos
por zaiB
Mikrotik DUAL WAN Load Balancing usando o método PCC. Script completo! por zaiB
Esta publicação ilustra como você pode configurar o balanceamento de carga de vários links wan usando o hardware Mikrotik Routerboard (ou a versão
RouterOS x86). Neste exemplo, usei o modelo Mikrotik Routerboard CCR 1036. Não se esqueça de renomear os nomes das interfaces de acordo se você
for um fã de pasta de cópia
DSL MODEM IP
DSL MODEM 1 = 192.168.1.1
DSL MODEM 2 = 192.168.2.1
Neste exemplo, estamos usando o método PCC (por classificador de conexão) para alcançar o balanceamento de carga. Existem poucas opções usando
essa abordagem e cada opção pode dar resultados diferentes.
~ Syed Jahanzaib
1 /ip address
2 add address=192.168.0.1/24 network=192.168.0.0 broadcast=192.168.0.255 interface=Local
3 add address=192.168.1.2/24 network=192.168.1.0 broadcast=192.168.1.255 interface=WAN1
4 add address=192.168.2.2/24 network=192.168.2.0 broadcast=192.168.2.255 interface=WAN2
5
6 /ip dns set allow-remote-requests=yes cache-max-ttl=1w cache-size=5000KiB max-udp-packet-size=512 servers=8.8.8.8
7
8 /ip firewall mangle
9 add chain=input in-interface=WAN1 action=mark-connection new-connection-mark=WAN1_conn
10 add chain=input in-interface=WAN2 action=mark-connection new-connection-mark=WAN2_conn
11
12 add chain=output connection-mark=WAN1_conn action=mark-routing new-routing-mark=to_WAN1
13 add chain=output connection-mark=WAN2_conn action=mark-routing new-routing-mark=to_WAN2
14
15 add chain=prerouting dst-address=192.168.1.0/24 action=accept in-interface=Local
16 add chain=prerouting dst-address=192.168.2.0/24 action=accept in-interface=Local
17
18 add chain=prerouting dst-address-type=!local in-interface=Local per-connection-classifier=both-addresses-and-ports:2/0 action=mark-connection new-connection-
mark=WAN1_conn passthrough=yes
19 add chain=prerouting dst-address-type=!local in-interface=Local per-connection-classifier=both-addresses-and-ports:2/1 action=mark-connection new-connection-
mark=WAN2_conn passthrough=yes
20
21 add chain=prerouting connection-mark=WAN1_conn in-interface=Local action=mark-routing new-routing-mark=to_WAN1
22 add chain=prerouting connection-mark=WAN2_conn in-interface=Local action=mark-routing new-routing-mark=to_WAN2
23
24 /ip route
25 add dst-address=0.0.0.0/0 gateway=192.168.1.1 routing-mark=to_WAN1 check-gateway=ping
26 add dst-address=0.0.0.0/0 gateway=192.168.2.1 routing-mark=to_WAN2 check-gateway=ping
27
28 add dst-address=0.0.0.0/0 gateway=192.168.1.1 distance=1 check-gateway=ping
29 add dst-address=0.0.0.0/0 gateway=192.168.2.1 distance=2 check-gateway=ping
30
31 /ip firewall nat
32 add chain=srcnat out-interface=WAN1 action=masquerade
33 add chain=srcnat out-interface=WAN2 action=masquerade
Tudo feito ! Agora, teste o link, colocando a carga do usuário, quanto mais usuários múltiplos carregam você colocá-lo, melhor resultado de balanceamento de carga você obterá
Se você tem Un-Equal WAN Links, por exemplo WAN, 1 é de 4MB e WAN, 2 é de 8 Mb, e você deseja forçar a MT a usar o WAN42link mais do que
outro por causa de sua capacidade, então você deve adicionar mais PCC regras que atribuem as mesmas duas marcas a um link específico, ou seja, WAN2,
algo como
1 add chain=prerouting dst-address-type=!local in-interface=Local per-connection-classifier=both-addresses-and-ports:2/0 action=mark-connection new-connection-
mark=WAN1_conn passthrough=yes
2 add chain=prerouting dst-address-type=!local in-interface=Local per-connection-classifier=both-addresses-and-ports:2/1 action=mark-connection new-connection-
mark=WAN2_conn passthrough=yes
3 add chain=prerouting dst-address-type=!local in-interface=Local per-connection-classifier=both-addresses-and-ports:2/2 action=mark-connection new-connection-
mark=WAN2_conn passthrough=yes