No cenário atual quando o assunto é Internet, garantir a continuidade do serviço é essencial. O failover é uma técnica que assegura que, se a conexão principal cair, outra conexão secundária (ou backup) assume automaticamente, evitando interrupções. Em ambientes com roteadores Mikrotik, é possível configurar failover para manter a conexão sempre ativa, mesmo que haja falhas na rede.
O Que É Failover?
Failover é o mecanismo que permite que uma conexão de rede automaticamente assuma o controle quando outra falha. Esse processo reduz o tempo de inatividade e garante que os serviços dependentes de rede continuem funcionando sem intervenção manual.
Esse recurso pode ser aplicado em outros fabricantes de equipamentos, porém vamos abordar de forma pratica como configurar e utilizar esse recurso em equipamentos Mikrotik dado a facilidade visual e também o seu custo bastante acessível.
Configurando o Failover no Mikrotik com RouterOS v6
Os links de Internet podem ser entregues aos clientes de diferentes formas, como por exemplo DHCP, PPPoE ou IP estático. Cada tipo de link requer uma configuração específica para habilitar o failover de forma eficiente. Vamos ver como configurar o failover para cada um desses cenários.
Aqui vale um ponto de atenção, na versão 6 do RouterOS precisamos garantir que range de IP recebido dos Provedores para nosso roteador de borda (gateway), não sejam iguais, pois isso provocaria uma instabilidade, então caso precise manter a versão 6 em seu equipamento, verifique com sua operadora a possibilidade de trocar o prefixo caso seja necessário.
Ex.: Provedor A forneceu prefixo 192.168.100.1/24, e o Provedor B forneceu o mesmo prefixo, você precisará solicitar a troca de um deles.
Logo abaixo temos uma topologia que vamos utilizar de exemplo:

Tópicos
- Failover com Link por DHCP
- Failover com Link PPPoE
- Failover com Link IP Estático
- Comutação Automática entre os Links
Preparação
Antes de abordar os tipos de Link e configura-los em nosso cenário, precisamos configurar uma importante ferramenta para garantir a integridade dos Links recebidos pelos Provedores, fazendo uso de uma política de roteamento.
Uma política de roteamento é um conjunto de regras definidas para controlar o fluxo de tráfego na rede, determinando por qual caminho os pacotes de dados serão enviados. No contexto de failover e múltiplos links de internet, as políticas de roteamento permitem que o administrador force o tráfego a seguir um link específico (por exemplo, da operadora A ou B) para verificar sua conectividade.
Ao configurar uma política de roteamento, o objetivo é direcionar consultas de IP para determinados links e monitorar se esses links estão ativos e conectados à internet. Dessa forma, se um link apresentar falhas, o roteador automaticamente redirecionará o tráfego pelo link alternativo, garantindo a continuidade do acesso.
Neste artigo estamos considerando o uso da versão 6 do RouterOS, e para monitorar os Links recebidos pelos Provedores, iremos utilizar 4 IPs de Root Servers, você pode conferir no site root-servers.org. Vamos utilizar 2 IPs como referencia para cada Link, isso irá garantir que caso um servidor deixe de responder por algum problema, o segundo IP seja utilizado como um backup de referencia para testar se ainda existe conectividade com Internet.
Resumindo, essa configuração fixa a comunicação com os IPs dos Root Servers por um caminho específico. Por exemplo, utilizamos o IP 192.203.230.10 e, com a regra criada, definimos que toda comunicação para esse endereço será direcionada exclusivamente pelo link do Provedor A. Caso esse link apresente algum problema, a comunicação com esse IP ficará indisponível. Essa configuração permite monitorar o status real de cada link, já que o funcionamento da comunicação dependerá diretamente da disponibilidade do link especificado.
Para facilitar vou deixar abaixo o script para criar a politica que iremos utilizar:
# Script para criar a politica de roteamento do Failover /ip route rule add action=lookup-only-in-table comment=MON-LINK1 dst-address=192.203.230.10/32 table=MON-LINK1 /ip route rule add action=lookup-only-in-table comment=MON-LINK1 dst-address=208.67.222.222/32 table=MON-LINK1 /ip route rule add action=lookup-only-in-table comment=MON-LINK2 dst-address=192.5.5.241/32 table=MON-LINK2 /ip route rule add action=lookup-only-in-table comment=MON-LINK2 dst-address=198.97.190.53/32 table=MON-LINK2
Abaixo é demonstrado como ficará após criar as regras.

1. Failover com Link por DHCP
Quando o link de Internet é entregue via DHCP, o roteador obtém o IP automaticamente do provedor. Neste caso, a configuração do failover deverá ser realizada de forma dinâmica, pois a rota será atualizada automaticamente toda vez que o IP mudar.
Nesse caso utilizaremos um script que realizará uma verificação prévia, criando de forma automática a rota default e a rota de monitoramento do link, que já irei abordar a seguir.
1.1 Configuração da Interface DHCP (WAN1)
- Primeiro, configure a interface WAN para obter IP via DHCP para o LINK1, pode ser realizado via comando ou via interface gráfica do Winbox.
# Comando para configurar DHCP-Client /ip dhcp-client add add-default-route=no comment=WAN-LINK1 disabled=no interface=ether1
- Segundo passo, é inserir o script no campo “Advanced” do “DHCP Client” para criar a rota default e a rota de monitoramento do LINK1.
# Script para monitorar a conectividade do LINK1 # Defina o IP de destino (por exemplo, o DNS do Google) :local destino "192.203.230.10" # Defina o custo padrão e o custo alto :local custoNormal 1 :local custoAlto 50 # Remove a rota com o comentário ROTA-LINK1, se existir /ip route remove [find comment="ROTA-LINK1"] /ip route remove [find comment="MON-LINK1"] # Obtém o gateway atual do DHCP para WAN-LINK1 :local currentGateway [ /ip dhcp-client get [/ip dhcp-client find comment="WAN-LINK1"] gateway ] :log info ("Gateway atual: " . $currentGateway) # Adiciona a rota ROTA-LINK1 com o custo normal /ip route add dst-address=0.0.0.0/0 gateway=$currentGateway distance=$custoNormal comment="ROTA-LINK1" # Verifica se MON-LINK1 já existe antes de criar :if ([:len [/ip route find comment="MON-LINK1"]] = 0) do={ /ip route add dst-address=0.0.0.0/0 gateway=$currentGateway routing-mark=MON-LINK1 distance=$custoNormal comment="MON-LINK1" } # Verifica a conectividade com o IP de destino :if ([/ping $destino count=3] = 0) do={ # Se não houver conectividade, aumenta o custo para 50 :if ([:len [/ip route find comment="ROTA-LINK1" distance=$custoNormal]] > 0) do={ /ip route set [find comment="ROTA-LINK1" distance=$custoNormal] distance=$custoAlto :log warning "Sem conectividade com a internet no LINK1. Aumentando o custo do link para $custoAlto." } } else={ # Se houver conectividade, redefine o custo para o valor padrão :if ([:len [/ip route find comment="ROTA-LINK1" distance=$custoAlto]] > 0) do={ /ip route set [find comment="ROTA-LINK1" distance=$custoAlto] distance=$custoNormal :log info "Conectividade com a internet no LINK1 confirmada. Custo do link ajustado para $custoNormal." } }
- Agora veja como realizar as configurações via Winbox.

No menu IP, selecione a opção DHCP Client. 👆🏿

Click no botão + conforme a imagem acima. 👆🏿

Aqui você deve selecionar a interface correspondente ao Provedor A conforme ilustrado em nossa topologia, e selecionar no campo Add Default Route a opção “no“.
Atenção: Não esqueça de inserir o comentário (clicando no botão Comment) com a seguinte informação WAN-LINK1, essa informação será utilizada pelo script para manipulação da conexão, trataremos disso mais adiante.

Agora vamos inserir o script clicando na aba Advanced.

Após inserir o script basta clicar em Apply e em seguida no botão OK.

Já podemos observar que na Janela Route List, que foi criado de forma automática a ROTA-LINK1 que será nossa rota default para o Provedor A, e também foi criado a rota MON-LINK1 que será usada para verificar a conectividade do link com a Internet.
1.2 Configuração da Interface DHCP (WAN2)
- Vamos repetir os mesmos passos já abordado anteriormente para a nossa interface correspondente ao Provedor B, que será o nosso link Backup.
Para agilizar o processo podemos utilizar o comando a seguir para criar nosso DHCP Client para o LINK2, e em seguida inserir o script na aba Advanced.
# Comando para configurar DHCP-Client /ip dhcp-client add add-default-route=no comment=WAN-LINK2 disabled=no interface=ether2

Para finalizar nossa configuração basta inserir o script abaixo na aba Advanced.
# Script para monitorar a conectividade # Defina o IP de destino (por exemplo, o DNS do Google) :local destino "192.5.5.241" # Defina o custo padrão e o custo alto :local custoNormal 5 :local custoAlto 60 # Remove a rota com o comentário ROTA-LINK2, se existir /ip route remove [find comment="ROTA-LINK2"] /ip route remove [find comment="MON-LINK2"] # Obtém o gateway atual do DHCP para WAN-LINK2 :local currentGateway [ /ip dhcp-client get [/ip dhcp-client find comment="WAN-LINK2"] gateway ] :log info ("Gateway atual: " . $currentGateway) # Adiciona a rota ROTA-LINK2 com o custo normal /ip route add dst-address=0.0.0.0/0 gateway=$currentGateway distance=$custoNormal comment="ROTA-LINK2" # Verifica se MON-LINK2 já existe antes de criar :if ([:len [/ip route find comment="MON-LINK2"]] = 0) do={ /ip route add dst-address=0.0.0.0/0 gateway=$currentGateway routing-mark=MON-LINK2 distance=$custoNormal comment="MON-LINK2" } # Verifica a conectividade com o IP de destino :if ([/ping $destino count=3] = 0) do={ # Se não houver conectividade, aumenta o custo para 50 :if ([:len [/ip route find comment="ROTA-LINK2" distance=$custoNormal]] > 0) do={ /ip route set [find comment="ROTA-LINK2" distance=$custoNormal] distance=$custoAlto :log warning "Sem conectividade com a internet no LINK2. Aumentando o custo do link para $custoAlto." } } else={ # Se houver conectividade, redefine o custo para o valor padrão :if ([:len [/ip route find comment="ROTA-LINK2" distance=$custoAlto]] > 0) do={ /ip route set [find comment="ROTA-LINK2" distance=$custoAlto] distance=$custoNormal :log info "Conectividade com a internet no LINK2 confirmada. Custo do link ajustado para $custoNormal." } }
Na imagem a seguir podemos observar (Route List) as duas rotas default ROTA-LINK1, ROTA-LINK2, e de monitoramento MON-LINK1, MON-LINK2 criada automaticamente, e no nosso exemplo deixamos como principal a ROTA-LINK1, mas é possível mudar caso precise, é só alterar o valor do custo [ :local custoNormal ], no inicio do script e pronto.

1.3 Configuração do NAT
Será necessário configurar uma regra de NAT para cada Link, segue abaixo um passo a passo:
- Link 1


- Link 2


Aqui vale ressaltar que a configuração de NAT precisa ser configurada de acordo com a forma que está sendo recebido o link, devemos sempre informar a interface que estamos recebendo o link, e quais prefixos precisam ser tratado pela regra, isso pode ser resolvido utilizando uma lista.


Esse artigo não tem como foco se aprofundar no recurso NAT, caso tenha interesse nesse tema temos um artigo dedicado a esse assunto.
2. Failover com Link PPPoE
Uma conexão entregue por PPPoE (Point-to-Point Protocol over Ethernet) é um tipo de conexão comumente usada para serviços de internet de banda larga. Neste modelo, o provedor de internet cria uma sessão PPP entre o cliente e o servidor, encapsulando os pacotes de dados dentro do protocolo Ethernet. Isso permite autenticação direta e atribuição dinâmica de IP, geralmente através de nome de usuário e senha.
Características principais do PPPoE:
- Autenticação: Requer credenciais de login (usuário e senha) para estabelecer a conexão.
- Atribuição Dinâmica de IP: Permite que o provedor atribua automaticamente um IP ao cliente a cada conexão.
- Gerenciamento de Sessão: A conexão é mantida durante uma sessão única, ideal para redes onde o acesso precisa ser autenticado.
- Encapsulamento de Pacotes: Utiliza o protocolo PPP sobre uma rede Ethernet, o que torna compatível com redes locais e de longa distância.
Essa tecnologia é amplamente adotada por provedores devido à sua facilidade de configuração e controle de acesso ao serviço de internet. Ainda considerando nossa Topologia, vamos mudar a forma de entrega do link do Provedor B para PPPoE.
2.1 Configuração do Profiles para conexão PPPoE
Precisamos estabelecer algumas premissas importantes assim que o link é estabelecido com o Provedor. Assim como no link recebido via DHCP utilizamos um script para realizar algumas configurações de forma automática, será necessário fazer uso desse mesmo recurso aqui também.
Como configurar o Profile?
Para isso precisamos acessar a opção no menu a opção PPP.

No campo Profiles precisamos definir um novo clicando no botão +, aqui vamos definir poucos parâmetros. Você também pode utilizar os modelos default que já vem criado, nesse exemplo vamos criar um novo para demonstrar como fazer caso precise criar mais de uma conexão.

Agora precisamos definir um nome para o nosso profile, os protocolos e script que iremos utilizar nessa conexão, os demais campos não iremos alterar.

Segue abaixo o script que precisa ser configurado no campo Scripts conforme imagem acima.
# Script para monitorar a conectividade em uma conexão PPPoE no RouterOS v6 # Defina o IP de destino (por exemplo, o DNS do Google) :local destino "192.5.5.241" # Defina o custo padrão e o custo alto :local custoNormal 5 :local custoAlto 60 # Nome da interface PPPoE :local pppoeInterface "pppoe-out1" # Remove a rota com o comentário ROTA-LINK2, se existir :if ([:len [/ip route find where comment="ROTA-LINK2"]] > 0) do={ /ip route remove [find comment="ROTA-LINK2"] } # Remove a rota de monitoramento com o comentário MON-LINK2, se existir :if ([:len [/ip route find where comment="MON-LINK2"]] > 0) do={ /ip route remove [find comment="MON-LINK2"] } # Adiciona a rota ROTA-LINK2 com o custo normal usando a interface PPPoE como gateway /ip route add dst-address=0.0.0.0/0 gateway=$pppoeInterface distance=$custoNormal comment="ROTA-LINK2" # Adiciona a rota MON-LINK2 para monitoramento, se não existir :if ([:len [/ip route find comment="MON-LINK2"]] = 0) do={ /ip route add dst-address=$destino gateway=$pppoeInterface routing-mark=MON-LINK2 distance=$custoNormal comment="MON-LINK2" } # Verifica a conectividade com o IP de destino :if ([/ping $destino count=3] = 0) do={ # Se não houver conectividade, aumenta o custo para custoAlto :if ([:len [/ip route find comment="ROTA-LINK2" distance=$custoNormal]] > 0) do={ /ip route set [find comment="ROTA-LINK2" distance=$custoNormal] distance=$custoAlto :log warning "Sem conectividade com a internet no LINK2 (PPPoE). Aumentando o custo do link para $custoAlto." } } else={ # Se houver conectividade, redefine o custo para o valor padrão :if ([:len [/ip route find comment="ROTA-LINK2" distance=$custoAlto]] > 0) do={ /ip route set [find comment="ROTA-LINK2" distance=$custoAlto] distance=$custoNormal :log info "Conectividade com a internet no LINK2 (PPPoE) confirmada. Custo do link ajustado para $custoNormal." } }
2.2 Configuração da Interface PPPoE Client
Nessa etapa vamos configurar a interface PPPoE Client, definindo por qual interface de rede iremos receber a conexão, o usuário e senha da conexão (Deverá ser fornecido pelo Provedor), e qual profile será utilizado na conexão (aqui iremos utilizar o profile configurado anteriormente).

Nas figuras a seguir podemos ver um antes de pois de ativar nossa configuração PPPoE:
- Antes

- Depois

A rota padrão e a rota de monitoramento são criadas de forma automática e sempre é realizado uma checagem se o link está com conectividade com a Internet e como medida de tratamento caso seja detectado algum problema é atribuído um custo alto para o link, e mais adiante vamos abordar a importância de se realizar essa ação.
2.3 Configuração do NAT
Para configurar o NAT no cenário demonstrado anteriormente é bem simples, segue abaixo um passo a passo.



3. Failover com Link IP Estático
Uma conexão com IP estático é um tipo de configuração onde o endereço IP é fixo e atribuímos de forma manual em nosso equipamento gateway, as informações são fornecidas pela operadora de internet, e não mudam ao longo do tempo, uma outra característica é que normalmente é fornecido IP Público, não abordamos esse tema nas configurações anteriores, pois embora também possam receber IP Público das operadoras ou provedores, é menos comum e caso necessite é preciso contratar aparte esse recurso. Essa característica é mais encontrada em Link´s com IP Estático (Comercializados como Link IP Dedicado) e facilita o acesso remoto e a criação de serviços de rede, como servidores web ou VPNs, pois o IP permanece constante, e se for um IP Público, permitirá conexões externas sem a necessidade de redirecionamentos dinâmicos. Além disso, conexões com IP estático costumam oferecer maior confiabilidade e estabilidade, sendo preferidas em ambientes empresariais e para aplicações que exigem alta disponibilidade e acesso contínuo. Para o nosso exemplo vamos considerar o Provedor A entregando o Link IP Estático com IP Publico.
Como configurar?
Basicamente toda configuração a ser realizada aqui será fixa mudando apenas se a Operadora ou Provedor solicitar alguma alteração, existem algumas formas de entregar que são com IP´s Públicos diretamente no enlace normalmente entregue com prefixo /30, ou com IP Privado também com prefixo /30, e no Gateway precisamos apenas configurar uma regra de roteamento. Com o esgotamento do IPv4 as empresas dificilmente irá entregar IP Público no enlace devido ao desperdício de IP, e com a escassez formas econômicas são adotadas como padrão. Em nosso cenário vou abordar apenas o modelo utilizando IP Privado no enlace, porém não muda muito se caso a operadora fornecer no enlace pois acaba simplificando um pouco as configurações mais o resultado acaba sendo o mesmo.
Dados de exemplo, digamos que nosso Provedor A nos forneceu as seguintes informações para o nosso Link IP Estático:
- IP Publico : 203.0.113.10
- Enlace do Link : 192.168.100.0/24
- Gateway : 192.168.100.1
- IP Lado Cliente: 192.168.100.2
Passo 1: Configurar o endereço IP na interface de enlace com o Provedor A.


Passo 2: Precisamos criar a rota padrão “ROTA-LINK1” e também a rota de monitoramento “MON-LINK1”.

- Na figura a seguir é demonstrado como criar a rota “ROTA-LINK1”.

- Na figura a seguir é demonstrado como criar a rota “MON-LINK1”.

Com as rotas criadas já podemos visualizar na tabela de roteamento, que já estão ativas e como definimos uma distancia menor que a rota do Link 2, nosso Link 1 assumiu como link principal.

3.1 Roteamento
Mas ainda falta alguma coisa, se você tentou realizar um teste de ping verá que ainda não possui conectividade com Internet. Precisamos agora configurar o roteamento utilizando o IP Público fornecido pelo Provedor A ( 203.0.113.10 ) :

3.2 Como Configurar o NAT
E por ultimo precisamos criar uma regra de NAT para essa conexão



3.3 Verificação Automática do Link
Seguindo os passos acima você já terá acesso a internet, mas caso ocorra uma indisponibilidade dentro da rede do Provedor A que não interrompa o enlace, o nosso gateway não tomará nenhuma ação, e não ocorrerá a comutação do link pois, o custo definido na rota padrão do Link 1 é menor do que o custo do Link 2. Temos algumas alternativas para tratar esse problema, e vou demonstrar uma delas a seguir.
Vamos começar criando dois script que vou chamar de ligar-wan1 e o outro desligar-wan1

O script ligar-wan1 quando for executado realizará 2 ações, conforme descrito a seguir:
- Ação 1: Mudar o parâmetro de distancia da rota padrão “ROTA-LINK1” para 1;
- Ação 2: Limpar todas as conexões na “Connection Tracking”, fazendo com que qualquer conexão indisponível seja reestabelecida diminuindo o tempo de indisponibilidade.

Agora vamos criar o script desligar-wan1, esse script tem a função de desabilitar o Link 1, aumentando o parâmetro de distancia na rota padrão “ROTA-LINK1”, e também desabilitando o NAT do Link1.
- Ação 1: Mudar o parâmetro de distancia da rota padrão “ROTA-LINK1” para 50;
- Ação 2: Limpar todas as conexões na “Connection Tracking”, fazendo com que qualquer conexão indisponível seja reestabelecida diminuindo o tempo de indisponibilidade.

Com isso finalizamos uma parte das configurações, faltando apenas configurar a rotina que irá realizar o monitoramento do link e utilizará os scripts que criamos, conforme a mudança de status do link. A seguir vou demonstrar como fazer, utilizaremos o Scheduler.


Abaixo está o script utilizado na figura anterior. O recurso Schedule configurado executará as instruções a cada 1 minuto, realizando uma verificação em dois IPs de servidores raiz (Root Servers). Com base no status atual do link, ele executará os scripts que configuramos anteriormente para gerenciar a conectividade.
# Definir variáveis globais para IPs monitorados :local Wan1 "192.203.230.10" :local Wan2 "208.67.222.222" # Variáveis globais do último status conhecido dos links :global lastWan1Status true :global lastWan2Status true :global lastNotifiedStatus; # Último status notificado (true se ao menos um link estava disponível) # Inicializar o status atual dos links como true (disponível) :local Wan1Status true :local Wan2Status true :local currentStatus true; # Status atual (true se ao menos um link estiver disponível) # Log para verificar a execução do script :log info "### Iniciando verificação de status do LINK1 ###" # Verificar o estado atual do link Wan1 if ([/ping $Wan1 count=3 interval=1] = 0) do={ :set Wan1Status false :log warning "### Monitoramento1 ($Wan1) está INDISPONÍVEL ###" } else={ :log info "### Monitoramento1 ($Wan1) está DISPONÍVEL ###" } # Verificar o estado atual do link Wan2 if ([/ping $Wan2 count=3 interval=1] = 0) do={ :set Wan2Status false :log warning "### Monitoramento2 ($Wan2) está INDISPONÍVEL ###" } else={ :log info "### Monitoramento2 ($Wan2) está DISPONÍVEL ###" } # Definir o status atual geral (true se pelo menos um link estiver disponível) :set currentStatus ($Wan1Status || $Wan2Status) # Verificar se houve mudança no status geral em comparação ao último notificado if ($currentStatus != $lastNotifiedStatus) do={ # Se ambos os links estão indisponíveis, notificar falha apenas uma vez if ($currentStatus = false) do={ /system script run desligar-wan1 :log warning "### LINK1 INDISPONIVEL! ###" } else={ /system script run ligar-wan1 # Se pelo menos um link está disponível, notificar normalização :log warning "### LINK1 NORMALIZADO! ###" } # Atualizar o último status notificado para evitar notificações repetidas :set lastNotifiedStatus $currentStatus } else={ :log info "### Nenhuma alteração no status do LINK1 ###" }
4. Comutação Automática entre os Links
No item 3.3 foi demonstrado um recurso que realiza a ação de verificar o status atual do link e executa ações conforme a nossa necessidade. Esse método pode ser aplicado nos 3 tipos de recebimento de link abordado nesse artigo. A lógica empregada nesse tipo de recurso de monitoramento, tem como estrutura principal uma politica de roteamento utilizando IPs de Root Servers como referencia. Como solução adotada nesse artigo usamos duas rotinas de Schedule sendo elas denominadas “mon-link1” gerenciando o Link recebido pelo Provedor A, e “mon-link2” gerenciando o link recebido pelo Provedor B.
Considerando o cenário anterior abordado no capitulo 3, sendo que o Provedor A entregou o link IP Estático, não vou entrar em detalhes da configuração, pois já foi abordado. Vamos focar na implementação do recurso Schedule para link recebido pelo Provedor B, considerando um link PPPoE.
Passo 1: Criar o script “ligar-wan2” que irá executar 3 ações:
- Ação 1: Desativar a interface “pppoe-out1” que é o nome dado a nossa interface de exemplo, aguardar um delay 3 segundos;
- Ação 2: Reativar a interface “pppoe-out1”;
- Ação 3 Limpar todas as conexões na “Connection Tracking”, fazendo com que qualquer conexão indisponível seja reestabelecida diminuindo o tempo de indisponibilidade.

Passo 2: Criar o script “desligar-wan2” que irá executar 3 ações:
- Ação 1: Desativar a interface “pppoe-out1” que é o nome dado a nossa interface de exemplo, aguardar um delay 3 segundos;
- Ação 2: Reativar a interface “pppoe-out1”;
- Ação 3 Limpar todas as conexões na “Connection Tracking”, fazendo com que qualquer conexão indisponível seja reestabelecida diminuindo o tempo de indisponibilidade.

Você deve estar se perguntando… mas o script são parecidos? E a resposta é sim! Como vimos no capitulo 2 é configurado um script direto na conexão usando um profile, e esse recurso já ajusta o custo da conexão, e mudanças no IP recebido pelo Provedor.
Basicamente só precisamos criar uma novo Schedule que vamos dar o nome de “mon-link2”, conforme figura abaixo:

Logo a abaixo temos o script utilizado na figura anterior:
# Definir variáveis globais para IPs monitorados :local Wan3 "192.5.5.241" :local Wan4 "198.97.190.53" # Variáveis globais do último status conhecido dos links :global lastWan3Status true :global lastWan4Status true :global lastNotifiedStatus2; # Último status notificado (true se ao menos um link estava disponível) # Inicializar o status atual dos links como true (disponível) :local Wan3Status true :local Wan4Status true :local currentStatus true; # Status atual (true se ao menos um link estiver disponível) # Log para verificar a execução do script :log info "### Iniciando verificação de status do LINK2 ###" # Verificar o estado atual do link Wan3 if ([/ping $Wan3 count=3 interval=1] = 0) do={ :set Wan3Status false :log warning "### Monitoramento3 ($Wan3) está INDISPONÍVEL ###" } else={ :log info "### Monitoramento3 ($Wan3) está DISPONÍVEL ###" } # Verificar o estado atual do link Wan4 if ([/ping $Wan4 count=3 interval=1] = 0) do={ :set Wan4Status false :log warning "### Monitoramento4 ($Wan4) está INDISPONÍVEL ###" } else={ :log info "### Monitoramento4 ($Wan4) está DISPONÍVEL ###" } # Definir o status atual geral (true se pelo menos um link estiver disponível) :set currentStatus ($Wan3Status || $Wan4Status) # Verificar se houve mudança no status geral em comparação ao último notificado if ($currentStatus != $lastNotifiedStatus2) do={ # Se ambos os links estão indisponíveis, notificar falha apenas uma vez if ($currentStatus = false) do={ /system script run desligar-wan2 :log warning "### LINK2 INDISPONIVEL! ###" } else={ /system script run ligar-wan2 # Se pelo menos um link está disponível, notificar normalização :log warning "### LINK2 NORMALIZADO! ###" } # Atualizar o último status notificado para evitar notificações repetidas :set lastNotifiedStatus2 $currentStatus } else={ :log info "### Nenhuma alteração no status do LINK2 ###" }
4.1 Como Configurar esse Recurso para um Link DHCP
Digamos que nosso Provedor B entregou o Link usando o método DHCP, vejamos a seguir como fazer:


Como demonstrado nas figuras acima você precisará alterar somente o comando:
/ip dhcp-client release [find comment~"LINK2"]
Nos scripts “ligar-wan2”, “desligar-wan2”, e seguir o capitulo 1 para configurar os demais parâmetros.
Conclusão
Concluindo, o uso de diferentes tipos de conexão — DHCP, PPPoE e IP Estático — desempenha um papel essencial na implementação de failover, garantindo flexibilidade e continuidade de serviços em redes corporativas e residenciais. O DHCP simplifica a atribuição automática de IPs, ideal para redes com múltiplos dispositivos e onde a mobilidade é prioridade. Já o PPPoE combina autenticação e controle de acesso, sendo amplamente utilizado por provedores para gerenciar assinantes individuais de forma segura. O IP Estático, por sua vez, oferece estabilidade e previsibilidade, essencial para serviços que exigem acesso remoto constante, como servidores e VPNs.
A implementação do failover com esses diferentes tipos de conexão fortalece a infraestrutura da rede, pois permite a comutação automática em caso de falha de um link, reduzindo o tempo de inatividade e aumentando a confiabilidade. Assim, investir em failover é fundamental para empresas e usuários que buscam desempenho consistente e disponibilidade contínua da internet, prevenindo interrupções que poderiam impactar tanto a produtividade quanto a experiência do usuário.
Agradecemos por acompanhar o conteúdo até o final! Esperamos que este material tenha sido útil e contribuído para o seu aprendizado. Se quiser apoiar nosso trabalho, sua contribuição será muito bem-vinda e nos ajudará a continuar trazendo mais conteúdos de qualidade.
Fique à vontade para deixar seus comentários, sugestões ou dúvidas – adoramos ouvir o feedback de vocês! E não se esqueça de seguir nossas redes sociais para ficar por dentro de todas as novidades. Caso tenha interesse, temos um canal no Youtube com vídeos que podem ajudar com esse assunto e outros. Obrigado pela presença e pelo apoio!

Se não puder doar pode deixar seu agradecimento nos comentário também ficarei feliz em saber que ajudei.