Desde que comecei a usar o
Debian GNU/Linux sempre tive alguns problemas que ficam mais tempo por resolver, e este era um deles. Após muito pesquisar, e também muitos artigos neste site, o máximo que encontrava era pessoas com o mesmo problema, mas não a solução. Mas hoje meus problemas acabaram e achei como fazer.
Vamos ao problema em si.
Eu particularmente, quando trabalho com conexões ADSL, prefiro usar o modo bridge nos modens e configurar uma conexão pppoe no servidor. E agora com o acesso a internet banda larga mais popular e barata, muitas empresas procuram ter o serviço de 2 operadoras para garantir que não vão ficar paradas.
O problema era que você configurou seu firewall e outras regras levando em conta que operadora A vai estabelecer a conexão ppp0 e operadora B a conexão ppp1, mas na prática se a conexão da operadora A falhar, a conexão da operadora B vai acabar sendo ppp0, pois o daemon pppd estabelece a primeira conexão na ppp0 e a segunda na ppp1, se a primeira conexão não se estabeleceu, então a operadora B passa ser a primeira. Entenderam o tamanho do problema?!
Pelo que pesquisei nas distribuições baseadas no Red Hat (Fedora), parece que isto é simples, mas não testei para confirmar e a muito tempo somente uso Debian ou Ubuntu e para eles eu não achava respostas.
Então vamos ao processo em si:
1. Imaginando que você já tem as duas conexões ADSL e os 2 modens já devidamente configurados em bridge e as devidas placas de rede instaladas e reconhecidas pelo kernel do
Linux, certifique-se que tenha o pacote
pppoeconf devidamente instalado no seu servidor, se não o tiver instale com o comando abaixo:
# apt-get install pppoeconf
2. Para o seu entendimento, defina quem vai ser sua operadora A e operadora B, feito isto conecte o modem da operadora A em uma das placas de rede e digite o comando:
# pppoeconf
Neste momento a ferramenta irá detectar sua conexão e pedirá para que confirme seu usuário e senha da mesma. Após a correta configuração, confirme se você se conectou com o comando:
# ifconfig ppp0
Caso tudo esteja correto, seguimos ao próximo passo, mas caso não tenha conectado, verifique se o modem está devidamente configurado em bridge e se login e senha estão corretos.
3. Com a primeira operadora devidamente configurada, já temos os principais arquivos devidamente preenchidos e agora basta modificá-los.
Com o seu editor favorito abra o arquivo
/etc/network/interfaces, além da configuração da sua placa de rede local, agora também deve existir estas configurações:
(Digamos que sua rede local está na eth0 e as placas eth1 e eth2 são para os modens)
auto dsl-provider
iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth1 up # line maintained by pppoeconf
provider dsl-provider
auto eth1
iface eth1 inet manual
Vamos comentar as linhas acima inserindo o # no inicio da linha e inserir as seguintes linhas:
auto ppp0
iface ppp0 inet ppp
pre-up /sbin/ifconfig eth1 # ( confirme se a placa é eth1 se for outra edite )
provider operadoraA
auto ppp1
iface ppp1 inet ppp
pre-up /sbin/ifconfig eth2 # ( confirme se a placa é eth2 se for outra edite )
provider operadoraB
Agora é só salvar este arquivo.
4. Vamos entrar na pasta
/etc/ppp/peers, dentro dela terá o arquivo dsl-provider. Copie o mesmo para operadoraA e operadoraB:
# cp dsl-provider operadoraA
# cp dsl-provider operadoraB
Com seu editor, abra o arquivo operadoraA, que deve ter o seguinte conteúdo, e acrescente a linha "unit 0" no fim do arquivo:
# Minimalistic default options file for DSL/PPPoE connections
noipdefault
defaultroute
replacedefaultroute
hide-password
#lcp-echo-interval 30
#lcp-echo-failure 4
noauth
persist
#mtu 1492
#persist
#maxfail 0
#holdoff 20
plugin rp-pppoe.so eth1
user "43XXXxxxx@adsl.brt.net.br"
usepeerdns
unit 0 #<-adicione esta linha
Agora vamos editar o arquivo operadoraB. Nele vamos acrescentar a linha "unit 1" ao fim do arquivo, e além disto edite a linha "user" com o login da sua outra operadora (vamos usar o exemplo da gvt) e também a linha "plugin rp-pppoe.so ethX" e colocar a placa de rede correta da mesma.
user "43XXXxxxx@turbonetpro"
plugin rp-pppoe.so eth2
unit 1
Bem, acho que ficou claro.
5. Agora vamos editar os arquivos
pap-secrets e
chap-secrets, que ficam dentro de /etc/ppp.
Na última linha dos mesmos temos uma linha que contém o login e senha do provedorA. Vamos acrescentar o login e senha do provedorB, deve ficar assim:
"43XXXXxxxx@adsl.brt.net.br" * "xxxxxxxxx"
"43XXXxxxx@turbonetpro" * "xxxxxxxx"
Terminado estes arquivos está pronto...
Agora conecte o segundo modem na outra placa de rede e digite "poff -a" para matar todas as conexões ADSL:
# poff -a
E para levantar as conexões digite:
# pon provedorA
# pon provedorB
Digite "ifconfig" e confirme a conexão ppp0 para operadoraA e ppp1 para operadoraB, e mesmo que a ppp0 falhe a ppp1 irá subir com a operadora correta.
Bem, espero ter escrito um bom manual e agradeço a todos.
Edmarcos Antonio de Souza
1. Configurando o Debian com 2 ADSLs pppoe e fixando as interfaces ppp0 e ppp1 por operadora
[1] Comentário enviado por
removido em 08/04/2010 - 17:14h:
eita cabra inteligente!!!
10!
[2] Comentário enviado por
brizao em 09/04/2010 - 03:24h:
cara, meus parabens pelo manual, nao cheguei a testar mas com certeza irei assim que for por um servidor em alguma empresa desse tipo.
abracao, valeu!!
[3] Comentário enviado por
silviopalmieri em 09/04/2010 - 09:48h:
Parabéns amigo, como sempre um fonte de informação
[4] Comentário enviado por
white19882 em 27/05/2010 - 10:28h:
Olha, ta de parabéns mesmo viu, vou precisar usar ele, semana que vem,
a minha dificuldade é que vou tentar jogar tudo em uma só eth, mas ta blz
brigadao pelo tuto.
[5] Comentário enviado por
vzanchettin em 09/07/2010 - 14:55h:
Cara meu problema é o seguinte, quando um dos adsl´s cai eu tenho que entrar no servidor e mandar reconectar. Tens alguma solução para isto???!!
Quanto ao teu tutorial muito bom, perfeito...
[6] Comentário enviado por
premia em 02/03/2011 - 14:30h:
Voce sabe como fixar a ppp no fedora? Mesmo fixando no arquivo ifcfg-pppX o device =pppX nao adianta?
[7] Comentário enviado por
edmarcos em 02/03/2011 - 15:55h:
Quanto ao fedora não sei a solução no momento, mas vou pesquizar.
[8] Comentário enviado por
premia em 03/03/2011 - 09:43h:
Caro edmarcos, agradeço pelo interesse em ajudar.
A configuração do ifcfg-ppp1 em /etc/sysconfig/network-scripts está assim:
DEVICE=ppp1 (teoricamente fixaria no ppp indicado, mas se não houver ppp ativo ignora esta informação e pega o ppp0)
BOOTPROTO=dialup
TYPE=xDSL
NM_CONTROLLED=no
ONBOOT=no
USERCTL=yes
PEERDNS=yes
IPV6INIT=no
PIDFILE=/var/run/pppoe1-adsl.pid
FIREWALL=NONE
PING=.
PPPOE_TIMEOUT=80
LCP_FAILURE=3
LCP_INTERVAL=20
CLAMPMSS=1412
CONNECT_POLL=6
CONNECT_TIMEOUT=60
IDLETIMEOUT=600
PERSIST=no
SYNCHRONOUS=no
DEFROUTE=yes
USER='xxxx'
ETH=eth1 (define a eth vinculada)
PROVIDER=GVT
DEMAND=no
[9] Comentário enviado por
Dryst em 02/06/2011 - 14:21h:
Muito bom o artigo...
...só que tenho uma dúvida: tenho uma NanoStation com uma única saída RJ45, e tenho duas contas para login, tem como eu efetuar login simultâneo e usar(mesmo que eu tenha que efetuar roteamento) em um só PC?
[10] Comentário enviado por
yindi em 28/12/2011 - 13:58h:
Gostei muito do artigo.
Caso alguém queira usar um PC para deixar configurado mais de uma conexão configurada, mesmo que seja o mesmo provedor, como no meu caso, também pode usar este passo a passo. Muito bom. Valeu