Compartilhar 2 links pppoe e dhcp

1. Compartilhar 2 links pppoe e dhcp

bruno
bruninhocielo

(usa Outra)

Enviado em 18/11/2015 - 15:10h

Segui o seguinte artigo mas não obtive sucesso e não fui respondido nos comentários do artigo...

http://www.vivaolinux.com.br/artigo/Montando-Servidor-de-Internet-com-Ubuntu-Server

O servidor é Ubuntu Server 14.04 LTS.
Tem 3 placas de redes.
2 entra a internet, estão fucionando.
1 sai a rede local, está distribuindo os endereços de rede, porem não navegam.
que pode ser que está faltando?

no meu caso eth0 é a rede local ( dhcpd)
eth1 é a net ( dhcp)
eth2 vivo fibra pppoe

servidor navega...quando desligo o modem da vivo apos 2 minutos funciona a net automaticamente..
as maquinas recebem os ips...mas nao navegam...

usei a versao desktop ( pois a maquina é um i3 4gb 500) ...e me acho mais facilmente no modo grafico...kkkk
Fatos estranhos:
com a vivo conectada parece q navegacao fica mais lenta mesmo sendo 100mb ...e no teste de velocidade bate 108mb...
qdo ligo a maquina aprece uma msg de aguarde preparando rede....depois pede mais 60 segundos...depois da um erro que o sistema esta inicializando porem sem configuracao de rede completa....( porem no servidor ambas conexoes funcionam e as maquinas recebem os ips)
outro fato estranho qdo mando rodar o firewall.sh ...da algumas msg de no match chain....algo assim...
porem mesmo com o servico "parado" ..nao muda nada...

acho estranho o fato da configuracao da placa da rede local ficar com o gateway semlhante ao ip principal...nao testei colocar o gateway da net por exemplo na principal...porem se fosse assim só funcionaria a net nao é isso ?

Desde já agradeco !! a ajuda !!! li reli refiz...e nada...abs



  


2. Re: Compartilhar 2 links pppoe e dhcp

Ricardo Vasconcellos
qxada07

(usa Slackware)

Enviado em 23/11/2015 - 09:17h


@bruninhocielo

Bom dia...

O segredo para o funcionamento da internet quando você possui mais de 1 link de internet esta associado ao default gateway.

Ex: Você tem 02 links de internet sendo o principal a VIVO e o secundario Embratel.

Sempre o default gateway configurado tem que ser o da VIVO e quando o link da VIVO cair o default gateway deve alterado para o link da Embratel.

No script que você informou, você configurou corretamente a parte que fala sobre FailOver???? Ele que é o responsável em fazer as alterações entre links principal e secundario.

Segue abaixo a configuração que eu falei para você.

#############################################
###### Inicio Explicação Configração de FailOver #####
#############################################
Configurando o FailOver dos links
Este serviço vai permitir que caso haja uma falha no primeiro link, o secundário possa assumir até o retorno do primário.

Neste cenário, há dois gateways:

10.0.2.2 (Primário)
192.168.1.1 (Secundário)


E abaixo, está o script utilizado para fazer o FailOver dos dois links:

#!/bin/bash

#---------------------------#
# CONFIGURAÇÃO DOS GATEWAYS #
#---------------------------#

GW1=10.0.2.2
GW2=192.168.1.1
LOG=/root/rc.firewall.log

#------------------------------#
# INÍCIO DA FUNÇÃO DE FAILOVER #
#------------------------------#

# Aqui optei em por uma função para deixar a estrutura do
# script mais organizada e legível. É de suma importância
# que você esteja familiarizado com o shell script

failover ()
{

# Criação de um loop infinito para testar a disponibilidade
# dos links de internet

while [ 1 ]
do

# Altera sempre para o gateway padrão dentro da tabela
# main de roteamento, ou seja, quando o link primário voltar,
# automáticamente a navegação volta para este

/sbin/ip route replace default via $GW1

# Neste for, o comando dig retornará os dois IPs relacionados
# ao site do UOL. Você poderia por qualquer site aí, porém o UOL
# retorna dois IPs que serão utilizados pelo script para saber
# se o link de internet principal está fora

for i in `dig +short uol.com.br`
do

# Verificando a comunicação do link de internet

/bin/ping -c 1 $i
done

# Caso o resultado do comando anterior seja 0 (zero), o link
# de internet principal está ok. Se for 1 (um) houve falha no comando
# deduzindo assim ausência de conexão. Quem vai determinar isso é o
# comando echo $?. Mais abaixo, haverá um if para testar as condições

STATUS_CMD_LINK=`echo $?`

if [ $STATUS_CMD_LINK -eq 0 ]; then

# Caso haja sucesso no teste do comando do ping
# as regras para o compartilhamento de internet serão inseridas

/sbin/iptables -F
/sbin/iptables -t nat -F

/sbin/modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
else

# Se o link falhar, os comandos mais abaixo farão a limpeza
# das regras de iptables e irão configurar o segundo link de internet
# e será criado um arquivo de log informando quando houve a queda

echo "_________________________" >> $LOG
echo " " >> $LOG
echo "# LINK SECUNDARIO ATIVO.: `date +%d/%m/%y-%H:%M:%S`">> $LOG
echo " " >> $LOG
echo "_________________________" >> $LOG

/sbin/ip route replace default via $GW2

/sbin/iptables -F
/sbin/iptables -t nat -F

/sbin/modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

fi

# A cada 2 minutos (120 segundos) será feito um teste no link
# principal para constar se o mesmo encontra-se no ar.

sleep 120

done
}

####### CHAMA A FUNÇÃO ########

failover

Lembre-se de salvar o seu script e dar permissão de execução ao mesmo:

# chmod +x failover.sh

É interessante deixar o script sendo executado em segundo plano, para liberar o terminal para outras atividades.

# ./failover.sh

Não esqueça de pôr a execução do script na inicialização do sistema operacional. Edite o arquivo /etc/rc.local e insira o caminho do script:

# vi /etc/rc.local

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

/root/failover.sh &

exit 0

Após salvar o arquivo, reinicie a máquina e veja se o script estará rodando com o comando:

# ps -auxf | grep failover

Pronto! Os links já estão configurados e liberando a Internet para a rede local. Vamos agora configurar o serviço de DHCP e, por último, acrescentar mais algumas regras às tabelas do IPtables.
###########################################
###### Fim Explicação Configração de FailOver #####
###########################################







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts