#  > Servidores >  > Sistemas Operacionais >  >  Tutorial, compartilhando a conexão com duas placas de rede

## cROMADO

Compartilhar a conexão no debian nunca foi tão fácil,quero mostrar pra vocês o que eu fiz pra conseguir,minha motivação é o fato de ter difículdades para achar tutoriais fáceis para o Debian.

" *Do ponto de vista da segurança e até mesmo da facilidade de configuração,é sempre recomendável usar um servidor com duas placas de rede,separando o tráfego proveniente da internet do trafego da rede local" (Carlos E Morimoto, Linux Redes e Servidores).*

Pois bem,vamos usar um micro com duas placas de rede,este micro é que vai distribuir a conexão pra nossa rede,no caso,apenas um micro,ou seja,vamos compartilhar a conexão com 2 micros,más para mais sistemas não mudaria nada,a não ser o fato de usar switche ou hub.

Nosso esquema 




> *internet<--->modem<--cabo straight-->Pc1<--crossfire-->pc2*


Vamos descobrir o modelo da nossa placa de rede




> * #lspci
> 
> 0000:00:00.0 Ethernet controller: Silicon Integrated Systems [SiS] SiS900 PCI Fast Ethernet (rev 91)
> 
> 0000:00:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)*


 Este exemplo é o meu caso,e podemos ver que os chipsets das placas são respectivamente* SIS900* e *Realtek 8139*.

Vamos ver se o módulo que abilita a placa esta levantado




> #*lsmod
> 8139too
> sis900*


Neste caso esta levantado,se fosse o contrário poderiamos fazer o seguinte :

modprobe [nome do modulo]



> *#modprobe 8139too*


Os módulos ficam na pasta



> *#cd /lib/modules/2.6.8-2-386*/kernel/drivers/net*


 * versão do seu kernel 
Os módulos possuem a extenão "*.ko*" ,exemplo: *sis900.ko*,ao subir tire a extensão.

Se você usar uma placa,na qual o driver esteja muito difícil de encontrar ou talvez só exista pro Windows,use a ferramenta :
* Ndiswrapper*
que permite usar drivers do Windows no Linux,no debian ele vem no próprio cd de instalção,más hoje em dia é fácil comprar uma placa com Chipset Realtek 8139 ou outros aceitos pelo Linux,e a preços bem em conta,algo em torno de R$20,00.

Vamos configurar o Servidor,o micro que está com as duas placas,depois o Cliente.

*Servidor*

Se você acessa via *ADSL*,é recomendável manter o *modem configurado como Bridge*.

Configure a conexão.




> #*/usr/sbin/pppoeconf*


 Agora configure o *IP*,e *máscara de rede*,lembre-se de usar a mesma classe de ip's pra sua rede,exemplo : *192.168.0.1,192.168.0.2* ... 

Verificando as placas 



> * #ifconfig*


 Placa de rede,a que vai conectar um micro ao outro,a*tente para o cabeamento*,se for com dois micros apenas,este cabo deve ser "*Crossfire*",se for usar hub ou switche seria o cabo reto,ou "*Straight*" . 

placa de rede



> #*ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up*


o "*UP*" é usado caso a placa não esteja levantada,caso contrário não use.

Placa que tem a conexão com a internet



> *#ifconfig eth1 192.168.0.2 netmask 255.255.255.0 up*


 As placas devem ser configuradas nesta ordem,primeiro a placa de rede depois a da internet .

Agora os comandos de *Firewall* que ativam o compartilhamento.




> *#modprobe iptable_nat*


Veja se os módulos subiram corretamente




> *#lsmod | grep ip*


agora execute os comandos
[quote] *#echo 1 > /proc/sys/net/ipv4/ip_forward[*/quote]


> *#iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE*


 Este último comando deve ser executado em uma única linha,e caso você esteja usando autenticação ppp0,comum pra quem usa em casa,a interface eth0 é substituida por ppp0,ficando assim :




> *iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ppp0 -j MASQUERADE*


* Cliente*

Com os módulos levantados,configure o Ip e a máscara de rede.




> * #ifconfig eth0 192.168.0.3 netmask 255.255.255.0 up*
> * #ifconfig*


Temos que configurar o servidor DNS.

coloque os servidores no arquivo */etc/resolv.conf*



> * #vi /etc/resolv.conf*
> * search lan
> nameserver 200.204.0.10
> nameserver 200.204.0.10*


* Vamos adicionar uma rota de saída pra nossa rede, o nosso Gateway*,onde nosso cliente vai pegar um ip válido e sair pro mundo.

Apagando configurações anteriores.



> *#route del default*





> *#route add default gw 192.168.0.2*


 Nosso gateway é o ip da placa que se conecta com a internet do micro servidor.

Dê um ping nás máquinas,para ver se tudo está funcionando.

* No servidor*



> #*ping 192.168.0.3*


*
No cliente*



> *#ping 192.168.0.1*
> * #ping 192.168.0.2*


Conecte o servidor




> *#pon dsl-provider*


pronto!,nossa rede já esta funcionando  :Smile:  .

Más tudo que nós fizemos está na memoria RAM,quando reiniciarmos toda configuração será perdida,então vamos fazer um pequeno script para ser inicializado durante o boot,isto pode ser feito tanto no servidor quanto no cliente.

* Servidor*

entre como root no diretório

* /etc/init.d*

Crie um arquivo qualquer,com seu editor preferido;se ainda não usa,aconselho usar o *VI*,pois além de funcionar perfeitamente,como todos outros comandos usados aqui,este também é cobrado na* prova LPI* ;-) .

criando o arquivo
[quote]*#vi rede[*/QUOTE]

no arquivo coloque





> *#!/bin/bash
> ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up
> ifconfig eth1 192.168.0.2 netmask 255.255.255.0 up
> pon dsl-provider
> modprobe iptable_nat
> echo 1 > /proc/sys/net/ipv4/ip_forward
> iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ppp0 -j MASQUERADE*


vamos visualizar :




> /*etc/init.d# cat rede*
> * #!/bin/bash
> ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up
> ifconfig eth1 192.168.0.2 netmask 255.255.255.0 up
> pon dsl-provider
> modprobe iptable_nat
> echo 1 > /proc/sys/net/ipv4/ip_forward
> iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ppp0 -j MASQUERADE*


Torne o script executável 



> * /etc/init.d# chmod +x rede*


Agora vamos criar o *link* que vai carregar no boot o arquivo criado.

* entre no diretório /etc/rc2.d*

Lembre-se rc2.d se refere ao diretório padrão carregado pelo seu sistema,se for outro este deve mudar para rc3.d por exemplo,más tenho quase certeza que você não mudou o carregamento padrão,e não se assuste que isso não muda por acaso,só se você o fizer mesmo.

Para confirmar o Nível




> *#runlevel*


N 2

Você está no Nível 2,beleza!  :Smile: 

voltando ao link




> */etc/rc2.d# ln -s /etc/init.d/rede S99rede*


o S99 (S maiúsculo) deve ser usado,ele diz em que ordem o script é executado em relação aos outros existentes no carregamento.

* Cliente*




> * /etc/init.d#vi rede2
> #!/bin/bash
> ifconfig eth0 192.168.0.3 netmask 255.255.255.0 up
> route del default
> route del default gw 192.168.0.2*


;-)




Notas:
Debian sarge 3.1 kernel padrão 2.6.8-*
sistema atualizado
tudo foi previamente testado
referências:
Linux Redes e Servidores,Carlos E. Morimoto

----------

