Gerenciamento de conexões

Este artigo tem por objetivo mostrar como pode ser feito uma redundância com duas conexões de modo que uma possa substituir a outra em caso de falta de uma das duas.

[ Hits: 42.965 ]

Por: Márcio Araújo Lopes em 10/02/2005


Segundo script de roteamento



Passaremos então para o segundo script, veremos o exemplo e depois explico:

#!/bin/sh
#
# By Márcio-MaRuJo®
#
# "GERENCIAMENTO DE LINKS 1"
#
# IRÁ GERAR UM ARQUIVO COM O RESULTADO DO COMANDO.


ping -c 20 200.144.22.1 >/tmp/link

# DEPOIS IRÁ CONSULTAR O ARQUIVO, SE A RESPOSTA ESTIVER DE ACORDO, EXECUTARÁ O PROPOSTO.

if [ `cat /tmp/link | grep -c "100% packet loss"` -eq 1 ];
then
   ip rule del from 10.1.10.0/24 table tabela1
   ip rule add from 10.1.10.0/24 table tabela2
else if [ `cat /tmp/link | grep -c "0% packet loss"` -eq 1 ];
then
   ip rule del from 10.1.10.0/24 table tabela2
   ip rule add from 10.1.10.0/24 table tabela1

   ip rule list >/tmp/rotas

   if [ `cat /tmp/rotas | grep -c "tabela1"` -eq 2 ];
   then
      ip rule del from 10.1.10.0/24 table tabela1
   fi
fi
fi

Aqui o raciocínio é o mesmo, porém executará outros procedimentos, vejamos quais. Primeiro executará um comando de rede que todos já conhecem, o "PING". Este irá gerar um arquivo com o nome "link" com o resultado dentro do diretório /tmp, em seguida fará um procura, dentre o resultado somente pela expressão "100% packet loss" (isso é um exemplo de um comando ping de retorno negativo). Encontrado, beleza? Então fará uma nova pesquisa, se achar a expressão "0% packet loss" ele irá gerar um novo arquivo e fazer uma nova busca, se achar uma ocorrência com "0% packet loss", irá deletar a regra da "tabela1".

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Criando as tabelas de roteamento
   3. Segundo script de roteamento
   4. Terceiro script de roteamento
   5. Ajustes finais
Outros artigos deste autor

Instalando e configurando SNMP e MRTG no Linux

Leitura recomendada

Criando uma rede virtual com servidor de internet e estações utilizando VirtualBox

Freeradius - servidor radius eficiente e completo

Servidor Web com NetBSD (Apache + PHP + MySQL + *)

Servidor de e-mail completo

Como configurar um túnel com Vtun

  
Comentários
[1] Comentário enviado por leandro.teixeira em 10/02/2005 - 09:50h

Cara,
Parabéns... Faz tempo que eu procuro uma solução assim. Todo mundo me mandava comprar um routeador com load balance, pq o linux não fazia isso.
Show de bola... Resolveu um problemão...
Parabens, comunidade VOL, cada dia melhor....

[2] Comentário enviado por removido em 10/02/2005 - 11:44h

alahhh! grande marcio!
truta de trabalho esse aew ;D
dahora teu artigo rapah, teh depois..

[3] Comentário enviado por dmelorj em 10/02/2005 - 19:38h

Realmente é muito bom o seu artigo. Está de parabéns!

Aproveitando o assunto, voce saberia informar se é possível fazer com que sejam aproveitadas 2 conexões de internet de forma que a velocidade das duas atuem como uma unica conexao? Por exemplo, gerenciar 2 conexões aDSL de 256Kbps de forma que seja possivel fazer o download de um único arquivo ao mesmo tempo pelas duas conexões, como se utilizassemos 1 unica conexão de 512Kbps ?
Grato.

[4] Comentário enviado por t4t0 em 07/11/2006 - 15:03h

dae cara... uma perguntinha... ve se dá para fazer isto:

http://www.vivaolinux.com.br/perguntas/verPergunta.php?codigo=52308

[5] Comentário enviado por hildonluis em 28/09/2009 - 17:22h

Gostaria de saber sem alguém conseguiu colocar 100% em pratica este ARTIGO????

[6] Comentário enviado por marujo em 29/09/2009 - 14:49h

Hildon, no caso, eu que escrevi, coloquei sim pra funcionar... Porem, quando escrevi este documento, por falta de experiencia coloquei as coisas de forma bem superficial, de tal forma que algumas coisas podem nao funcionar por conta de ajustes tecnicos, relevantes... Se for o caso, podera colcar suas duvidas ou problemas pra tentar sana-las comigo.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts