Pular para o conteúdo

Balanceamento de carga entre 2 placas de rede

Esse artigo mostra como fazer para balancear o tráfego de rede usando duas placas de rede usando o módulo bonding, aumentando assim a segurança de seu servidor, visto que em caso de falha de uma placa, a outra estará funcionando.
Gabriel Knepper Mendes gabrielrs
Hits: 113.665 Categoria: Linux Subcategoria: Firewall
  • Indicar
  • Impressora
  • Denunciar

Parte 3: A configuração do BONDING

A configuração anterior era:

eth0 192.168.1.11 - IP DINÂMICO (o roteador ADSL que forneceu no BOOT)

eth1 sem IP levantado apenas usando:

# ifconfig eth1 up

A configuração onde 192.168.1.11 é o da placa de rede que vai entrar no bonding:

# modprobe bonding
# ifconfig bond0 192.168.1.11 netmask 255.255.255.0
# ifenslave -v bond0 eth0 eth1

ifenslave.c:v1.1.0 (December 1, 2003)
o Donald Becker (becker@cesdis.gsfc.nasa.gov).
o Detach support added on 2000/10/02 by Willy Tarreau (willy at meta-x.org).
o 2.4 kernel support added on 2001/02/16 by Chad N. Tindel
(ctindel at ieee dot org).
ABI ver is 2
Interface 'eth0': flags set to 1062.
Interface 'eth0': address cleared
Master 'bond0': hardware address set to 00:13:d4:24:c4:3c.
Interface 'eth1': flags set to 1042.
Interface 'eth1': address cleared

A configuração do bonding fez com que a rota padrão se perdesse:

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.0.1        0.0.0.0         255.255.255.255 UH    0      0        0 plip0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 bond0
127.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 lo

Então vamos colocar a rota padrão de novo na tabela de roteamento:

# route add default gw 192.168.1.1
# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.0.1        0.0.0.0         255.255.255.255 UH    0      0        0 plip0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 bond0
127.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 lo
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 bond0
   1. O módulo BONDING
   2. O programa IFENSLAVE
   3. A configuração do BONDING
   4. O teste de São Tomé

Flash 9 com som OSS

Como construir um firewall de baixo custo para sua empresa (parte 2)

Firewalls redundantes utilizando VRRP

NAT com firewall - simples, rápido e funcional

Firewall e NAT em FreeBSD com controle de banda e redirecionamento de portas e IPs

Integrando Layer7 + IPP2P ao Iptables

#1 Comentário enviado por vitor.jjb em 08/05/2006 - 09:52h
Eu ia escrever um artigo de bonding essa semana! Passou na frente!
Parabens!! :) aueaehueahuea

O pessoal aqui usou bonding em uns servidores dell...
manero!
abraços!
#2 Comentário enviado por thelinux em 08/05/2006 - 10:21h
Gabriel Knepper ,
Parabéns pelo tuto. Vou experimentar isto amanhã. Um tutorial prático e feito para o ambiente corporativo. É ISSO.
#3 Comentário enviado por ths_sp em 08/05/2006 - 11:25h
Legal. No meu caso em um servidor interno. Tb é possivel eu ter 2 placas de rede? Melhoraria a perfermance do servidor?
#4 Comentário enviado por efloriani em 08/05/2006 - 13:07h
Nao é balanceamento, é Failover.... para balanceamento switch tem de aceitar trunking e fazer configuração conforme descrita em um tutorial passado...

Parabens pelo artigo...

Abraços
#5 Comentário enviado por gabrielrs em 08/05/2006 - 13:54h
Pessoal

Esta correto o colega efloriani. É Failover mesmo, visto que se romper um cabo de rede o outro automaticamente segura o serviços. MAS a solução foi implementada para um servidor Linux Boot-Remoto + Samba onde o trafego de rede era demasiadamente alto (dhcp + TFTP + NFS + SMB) para prover maior seguranca nos serviços. Quanto a trunking realmente voce tem razão e aproveito para lembrar que não é chamado somente de TRUNKING mas tambem de PORT AGREGATION e IEEE 802.3ad. No caso de performance tem que ver onde esta o gargalo do seu servidor. No processamento ? No Acesso ao Disco ? Na rede ? Existe alguns parametros que podem ser setados nesse modulo bonding que define se sera failover ou balancing. Assim que tiver um tempinho eu escrevo quando utilizar um e o outro.

Abração a todos !!!
#6 Comentário enviado por gilberto.russo em 08/05/2006 - 16:06h
Gabriel,

solucoes corporativas de FailOver é muito bem vinda principalmente quando envolve redes.
Parabéns pelo artigo. Muito bom mesmo!

Gilberto Russo
Conductor Tecnologia SA
#7 Comentário enviado por removido em 08/05/2006 - 23:18h
ae mano nota dez, eu estava procurando hoje exatamente por isso ai e nao achei nada de boa qualidade ai venho aqui por rotina e vejo seu artigo muito bom gostei
#8 Comentário enviado por wagner05 em 20/06/2006 - 11:37h
Cara amei o artigo mas ainda não solucionou meu problema vejamos nesse caso as duas conexões q estão entrando vem de um IP fixo certo! mas se eu quiser colocar uma de IP fixo e a outro de um IP dinamico! isto é tenho VELOX vindo de um modem roteado com ip 192.168.0.1 e o virtua vindo do cable modem com ip dinamico como junto esses dois?
#9 Comentário enviado por gilps em 26/07/2006 - 06:01h
Parabéns Muito bom! Este artigo!
É bem o que eu estou precisando! 10
#10 Comentário enviado por linux.vitor em 12/12/2006 - 11:09h
olá amigos.. vamos ver se entendi...
o bonding server pra rede local??? por exemplo..
tenho um servidor banco de dados com 2 placas de rede e quero q quando eu tirar o cabo de uma placa a outra assuma.. e isso q o tutorial ta explicando???? quando uma cair a outra assume???
Obrigado.
#11 Comentário enviado por julianlinuxer em 14/12/2006 - 11:12h
Pra servidores isto é uma beleza, vou aplicar com certeza. Valeu!!!
#12 Comentário enviado por teleseg em 06/05/2007 - 00:36h
Gabriel vi o seu artigo, e fiquei na duvida qual o IP adicionar na interface bond0. É possivel juntar 02 modens adsl com bonding.

No artigo voce mencionou o IP do modem que o DHCP do mesmo deu para interface de rede que esta ligada na interface eth0, na interface eth1 tem outro modem ? e como fica a rede deste outro modem tem ser diferente voce menciona que teem que levantar eth1 sem IP. To meio confuso gostaria de receber umas dicas da comunicade.
#13 Comentário enviado por gabrielrs em 06/05/2007 - 00:47h
O Bonding serve para 2 coisas. Aumentar a largura de banda de uma interface ethernet através de balanceamento e aumentar a segurança da conexão , por exemplo montando ligações entre servidores com 4 interfaces e 2 redes distintas, onde no caso de uma falhar ( Cabo , Switch ou mesmo interface com problemas ) a outra placa segura o trafego.

Para links ADSL ou similares para internet não serve. Teriam que ser com o mesmo IP e estar no mesmo seguimento de rede.

Obrigado a todos.
#14 Comentário enviado por lipecys em 24/06/2008 - 15:48h
Obrigado pelo artigo, muito bom.
#15 Comentário enviado por lcm em 17/12/2008 - 16:17h
Caro Gabriel, seu tutorial me ajudou muito na implementação de um servidor de imagens, agradeço e espero que não se importe que eu tenha alterado seu tutorial e postado no meu blog, claro com a fonte!!!
Atenciosamente,

LCM
#16 Comentário enviado por jrwesleynunes em 16/06/2009 - 12:25h
Otimo artigo me ajudou muito....
#17 Comentário enviado por edison_filho em 10/07/2009 - 19:24h
OLÁ, ENTÃO SÓ PARA ESCLARECER..... ESTE TUTO NÃO SERVE PARA FAZER BALANCEAMENTO DE CARGA DE DOIS LINKS DE INTERNET POR EXEMPLO?

QUAL SERIA O MELHOR MÉTODO?

Abraço,

Edison de Azevedo Filho.
http://www.edisonfilho.com
#18 Comentário enviado por manoserpa em 20/07/2009 - 17:03h
Não conhecia, legal parabéns.
#19 Comentário enviado por rskmacho em 23/08/2010 - 10:31h
Pessoal, preciso de ajuda

quando eu tiro o cabo de rede da eth0 e pingo, alguns pacotes se perdem, alguns funcionam..... o que será?

Contribuir com comentário

Entre na sua conta para comentar.