Trabalhando com CARP nos BSD's

Descubra como utilizar o protocolo CARP e aplicar redundâncias em servidores FreeBSD e OpenBSD. CARP funciona basicamente assim: em caso de falhas de hardware, uma segunda máquina é colocada para trabalhar no lugar daquela que apresentou problema.

[ Hits: 43.119 ]

Por: Neriberto em 27/10/2005 | Blog: http://www.mundolivre.eti.br


Introdução



Antes de entrarmos no assunto, quero deixar claro que escrevi este artigo pois li o artigo Alta disponibilidade com IP compartilhado - UCARP do nosso amigo allangood e fiquei interessado na solução.

Pesquisando sobre o assunto cheguei nos BSD's (linuxers, não me apedrejem, eu não virei a casaca... brincadeira). E caso vocês queiram usar o CARP com BSD, esta aí.

O segundo motivo é que eu queria fazer isto com o FreeBSD, porém não sabia como recompilar/preparar o sistema para o CARP e tive que descobrir sozinho, pois não achei nenhuma referência na internet, apenas para o OpenBSD.

Um pouco sobre o protocolo CARP


CARP (Common Address Redundancy Protocol) é um protocolo que permite que múltiplos hosts (até 255) em uma rede local compartilhem de um mesmo endereço IP. Algumas de suas funcionalidades são similares ao VRRP, mas o CARP difere em alguns aspectos significantes: CARP foi desenhado para prover segurança e ser um protocolo independente (assim ele pode suportar IPv4 e IPv6), pode-se trabalhar com load balancing e com isto alta disponibilidade.

CARP, cujo desenvolvimento foi iniciado pelo projeto OpenBSD há cerca de dois anos, foi implementado no FreeBSD de forma nativa a partir da versão 5.4. Saiba mais a respeito do CARP através do site.

O que quero mostrar com este artigo é: como preparar os sistemas para trabalhar com o protocolo CARP e como configurá-lo. Embora seja nativo no FreeBSD, a partir da versão 5.4 ainda é preciso recompilar seu kernel para que o mesmo trabalhe com o CARP, porém no OpenBSD já é possível configurar as interfaces sem precisar recompilar o kernel.

Após preparar o sistema (instalação/recompilação do kernel), a única coisa que precisamos fazer é configurar as interfaces de rede e para que possamos fazer testes e ver seu funcionamento, precisaremos de pelo menos 2 máquinas com 2 IPs válidos na internet e conseqüentemente 2 IPs para a rede interna ou LAN.

Se você ainda não entendeu, acalme-se :), o que o protocolo CARP permite trocando em miúdos é: em caso de falhas de hardware, colocar uma segunda máquina para trabalhar no lugar daquela que apresentou problema.

Digamos que tenhamos duas máquinas.

Máquina 1 (master): 192.168.0.1
Máquina 2 (backup): 192.168.0.2

A máquina 1 é a principal ou master, é o gateway da rede, porém nossas estações estão configuradas para acessar o gateway pelo IP 192.168.0.254, então logo se tentarmos acessar a internet, as estações não irão acessar.

Então vamos usar o protocolo CARP para criar uma segunda interface de rede com o IP 192.168.0.254 e dizer que a máquina é a "master" e a máquina 2 é a "backup". se a 1 falhar a 2 assume e quando a 1 voltar a funcionar, ela fica como backup da 2 até haver falha.

Vamos para a prática?

OBS: Caso você não tenha duas máquinas, é possível criar um ambiente de testes com o VMware por exemplo.

    Próxima página

Páginas do artigo
   1. Introdução
   2. Preparando o FreeBSD
   3. Configurando as interfaces de rede
   4. Considerações finais
Outros artigos deste autor

Consultando servidores SNMP com PHP

Mascarando conexões PPTP de clientes

Leitura recomendada

Abrindo e fechando portas com o BlockOutTraffic

Configurando firewall Shorewall no CentOS

Monitorando e bloqueando P2P com IPTABLES e IPP2P

Revisão atualizada de instalação do Iptables com Layer7

Firewall Linux - Roteamento avançado usando iproute2 e iptables (load balance)

  
Comentários
[1] Comentário enviado por fernandofat em 27/10/2005 - 08:19h

Olá amigo e parabéns pelo artigo!!!!

Achei o assunto bastante interessante....

Gostaria de aplicar este protocolo em meus servidores, porém utilizo apenas servidores Linux, existem alguma limitação para instalação do CARP no GNU/Linux ?

[]'s

Fernando


[2] Comentário enviado por neriberto em 27/10/2005 - 08:35h

Olá Fernando

O nosso amigo allangood escreveu o artigo - Alta disponibilidade com IP compartilhado - UCARP veja em http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=2135 neste artigo ele explica como aplicar isto no Linux

Abraço,...

[3] Comentário enviado por neriberto em 31/10/2005 - 11:25h

Errata

Quero pedir desculpas por um erro e ao mesmo tempo agradecer ao amigo Diogo por ter percebido

ao invês de colocarem "option carp" coloquem "device carp"

Mais uma vez desculpem,

[]'s

[4] Comentário enviado por maxrafa em 15/07/2016 - 14:07h

mas isso o VRRP, HSRP, GLBP já faz há muito tempo.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts