Balanceamento de Mikrotik com failover
Motivo:
Prover um balanceamento entre os links e certamente redundância.
Tipos de Balanceamento:
- Bonding
- Policy Route
- PCC
- Por banda
Bonding:
- Utiliza a tecnologia 802.3ad LACP e ambos os lados necessitam utilizar o mesmo tipo de equipamento para evitar compatibilidades.
Policy Routing:
- Uma lista de IPs internos utiliza uma rota e uma outro lista utiliza a segunda rota.
- Não é dinâmico
PCC (Per Connection Classifier):
- Escalável e estável, mas não faz balanceamento.
Por banda:
- Escalável
- Utiliza o link status como gatilho
- Controle sobre as conexões
- Pode usar links com diferentes velocidades
Definido o tipo de balanceamento, vamos trabalhar.
Conexão:
Um pacote originado de uma origem precisa retornar para esta origem. Chamamos de Stream.
No caso de uma conexão UDP, UDP stream.
Mangle:
Uma facilidade do ROS que permite que as conexões sejam "marcadas" e então ser utilizadas para um propósito.
Essas marcas não saem do roteador, ficam localmente.
Rotas:
Tabelas para onde o roteador encaminha os pacotes.
Por padrão todos os pacotes no Mikrotik são direcionadas para a tabela "main".
Podemos criar nossas tabelas manualmente e direcionar os pacotes para essas novas rotas.
Topologia:
Internet - ISP 1 Internet - ISP 2
-------------- -----------------
-----------------
| |
Roteador
set 0 name=LAN
set 3 name=ISP_1 set 4 name=ISP_2
/ip address add address=192.168.22.1/24 interface=LAN
add address=1.1.1.2/24 interface=ISP_1
add address=2.2.2.3/24 interface=ISP_2
/ip firewall nat
add action=masquerade chain=srcnat out-interface=ISP_1
add action=masquerade chain=srcnat out-interface=ISP_2
Neste exemplo, estamos configurando o ISP_1 e ISP_2 com IPs estáticos. Criamos as regras de mascaramento de cada um.
Agora para a parte de Roteamento:
add gateway=1.1.1.1 distance=1
add gateway=2.2.2.1 distance=2
add gateway=1.1.1.1 routing-mark=ISP1_Route distance=1
add gateway=2.2.2.1 routing-mark=ISP2_Route distance=1