Arquivos históricos do BR-Linux.org apresenta:

Documentando como compartilhar a Internet na sua distribuição - parte II

Notícia publicada por brain em julho 25, 2003 10:50 AM | TrackBack


Na segunda-feira publiquei um um convite para a comunidade ajudar a criar documentos sobre como realizar tarefas complexas usando interfaces simples - a primeira tarefa seria ajudar a escrever um guia de compartilhamento de conexão sem recorrer a comandos da shell.

Recebi diversas contribuições de texto, mas ironicamente todas elas recorrem justamente a comandos em modo texto e/ou edição de arquivos de script. Nada errado com esse modo de operar (é o que eu pessoalmente adoto), mas o que eu queria era poder mostrar aos usuários potenciais de Linux que ele pode ser super fácil de configurar (como de fato várias distribuições podem) - eles já sabem que pode ser poderoso e flexível, com dezenas de alternativas de sintaxe para o iptables; falta saberem que dá de fazer isso via menus e botões também, se quiserem ;-)

Estou publicando hoje (nos DETALHES desta notícia) o segundo rascunho do artigo, ainda sem formatação, com contribuições de diversos leitores (citados no texto - obrigado a todos!) sobre o Slackware, Kurumin, Smoothwall e Red Hat. Continuo aguardando novas contribuições até a próxima quarta-feira, ok?

Compartilhando a sua conexão Internet usando Linux

Augusto C. Campos (brain@matrix.com.br)

Hoje em dia o acesso a Internet via banda larga é uma realidade em grande parte do território nacional, assim como se torna cada vez mais comum a existência de redes de pequeno porte nas casas e escritórios. Estas duas realidades somadas levam à necessidade de compartilhar a conexão à Internet entre os diversos computadores da maneira mais barata e eficaz possível.

Escapando das complicações

Se você ainda está planejando a sua rede local, ainda há tempo para escapar de todas as complicações: tente encontrar equipamento e um provedor que suporte uma das configurações abaixo:


Fig. 1 - Casos em que não há necessidade de configuração extra

Note que no caso 1, o modem (que pode também ser um adaptador ADSL, um cable modem ou outro equipamento com esta mesma função) está conectado a um hub (ou switch) onde estão conectados também os demais computadores da rede local. Configurar os computadores neste tipo de configuração é trivial, mas nem sempre se pode recorrer a este método: alguns modems podem ter perda de performance se conectados diretamente a um hub, outros exigem a conexão direta a um computador por razões diversas. E alguns provedores bloqueiam este tipo de compartilhamento mesmo quando o modem o suporta.

No caso 2, o modem também é hub, o que significa que ele possui entrada para conexão simultânea dos cabos de rede de diversos micros. Neste caso, conectar toda a sua rede local à Internet passa a ser uma tarefa extremamente simples.

Compartilhando a conexão de um micro

Se você não tem a sorte de poder compartilhar sua conexão simplesmente conectando cabos de rede extras, resta o recurso de habilitar este recurso no micro que possui a conexão. Existem muitas formas de fazer isto, mas a mais comum é através da inclusão de uma segunda placa de rede no PC conectado à Internet, seguida da configuração deste computador para rotear, que neste contexto significa transferir o tráfego entre a sua rede local e a Internet.


Fig. 2 - Um PC interligando a rede local à Internet

De modo geral, a primeira placa de rede (que por convenção é chamada de eth0) é conectada ao modem que dá acesso à Internet, e a segunda (chamada de eth1) liga-se à rede local da mesma forma que todos os demais micros da casa ou escritório.

Existem muitas maneiras de configurar o PC que compartilha a Internet. Por exemplo, se ele estiver rodando Windows, você pode habilitar o roteamento ou usar o Internet Connection Sharing (figura ao lado), ou usar um dos diversos softwares disponíveis para esta finalidade. Mas este é um artigo sobre Linux, então naturalmente não iremos dar muitos detalhes desta alternativa ;-)

No mundo Linux também é possível escolher mais de um caminho, e vamos ver alguns deles. Claro que não temos pretensão de esgotar o assunto, e nem poderíamos; ao final do texto, é apresentada uma coleção de links para outras fontes de informação.

Os pontos em comum

Não importa qual o método que você escolher, será necessário configurar sua rede local normalmente. Este ponto não será coberto neste artigo - configure cada um dos micros normalmente. Mas a não ser que você tenha alguma razão para agir de forma diferente, siga as seguintes dicas:

- Use endereços IP estáticos, na faixa 192.168.1.X, onde X é um número entre 1 e 254, para todos os micros. O micro que tem a conexão à Internet também vai receber um endereço desta faixa na sua segunda placa de rede (a eth1).

Use a máscara de rede 255.255.255.0.

- Configure o endereço dos servidores DNS do seu provedor em todos os micros da rede.

- Informe a todos os micros da rede local que o seu gateway padrão ou sua rota default é o endereço IP da placa eth1 do micro que tem a conexão.

Siga os passos acima usando as ferramentas providas pelo seu sistemna operacional, seguindo as instruções providas na documentação do mesmo. De modo geral esta operação é trivial e pode ser feita facilmente não importando se os micros rodam Windows, Linux ou mesmo se são Macs. As imagens abaixo mostram as telas de configuração em um PC com o SuSE Linux 8.2, cujo endereço IP vai ser 192.168.1.1 e que irá se conectar à Internet através de outro PC com Linux cujo endereço IP é 192.168.1.6:


Fig. 3. O IP deste micro com o SuSE Linux será 192.168.1.1, e ele irá tentar acessar a Internet através da conexão disponibilizada pelo micro cujo IP é o 192.168.1.6

Configurando o micro com acesso à Internet

Este é o ponto crucial de sua conexão. O micro com duas placas de rede é que faz o encaminhamento do tráfego entre a sua rede local e a Internet, realizando uma operação de troca de endereçamento que pode se chamar NAT ou Masquerading, dependendo do contexto.

A forma de configurar esta operação varia de acordo com a distribuição de Linux adotada, mas o pré-requisito é que as duas placas de rede já estejam adequadamente configuradas e em operação. Assim, antes de prosseguir configure o micro de tal forma que você consiga acessar normalmente a Internet nele (seguindo sempre as instruções do seu provedor), e que você possa também acessar (ou no mínimo obter retorno através do comando ping) os micros da rede local. Naturalmente o acesso à Internet ocorrerá através da primeira placa de rede (chamada de eth0), enquanto o acesso à rede local ocorrerá através da segunda placa (a eth1)

Veremos agora como configurar as diversas distribuições de Linux.


- SuSE 8.2 (por Augusto Campos)

- Red Hat e similares (por ANIMAL)

- Slackware (1) (por Angelo Fernando Probst)

- Slackware (2) (por Ranieri Oliveira e Ronaldo Oliveira Soares)

- Slackware (3) (por Nenhum_de_Nós)

- Kurumin (por Carlos E. Morimoto)

- Smoothwall (por Antonio Luis Ribeiro)

- Via shell (por Augusto Campos)

- Apêndice: scripts de exemplo (enviados por Daniel Oliveira Nascimento)

(Se a sua distribuição favorita não está na lista, estamos esperando a sua contribuição!)



a) Configurando o SuSE 8.2 para compartilhar a conexão





b) Red Hat e Conectiva (e talvez Mandrake)




c) Mandrake

Esta seção está aguardando um colaborador que a adote. Se você quiser escrever como configurar o compartilhamento de conexão (NAT/Masquerading) usando as ferramentas específicas da versão oficial mais recente desta distribuição, entre em contato através do e-mail brain@matrix.com.br.



d) Slackware (dica 1)





e) Slackware 9.0 (dica 2)





e) Slackware (dica 3)




f) Debian

Esta seção está aguardando um colaborador que a adote. Se você quiser escrever como configurar o compartilhamento de conexão (NAT/Masquerading) usando as ferramentas específicas da versão oficial mais recente desta distribuição, entre em contato através do e-mail brain@matrix.com.br.





g) Kurumin


h) LRP

Esta seção está aguardando um colaborador que a adote. Se você quiser escrever como configurar o compartilhamento de conexão (NAT/Masquerading) usando as ferramentas específicas da versão oficial mais recente desta distribuição, entre em contato através do e-mail brain@matrix.com.br.

i) Coyote

Esta seção está aguardando um colaborador que a adote. Se você quiser escrever como configurar o compartilhamento de conexão (NAT/Masquerading) usando as ferramentas específicas da versão oficial mais recente desta distribuição, entre em contato através do e-mail brain@matrix.com.br.


j)Como configurar o SmoothWall para ADSL

O tutorial abaixo foi enviado pelo Antônio Luis Ribeiro, e explica como usar o Linux Smoothwall ou o IPCop para transformar um PC com 2 placas de rede em um roteador dedicado de baixo custo para uma rede de computadores com Windows.



z) Configurando através da linha de comando

Talvez você prefira fazer as coisas do jeito difícil, ou talvez você esteja usando uma distribuição de Linux sem um mínimo de facilidades disponíveis para o administrador. De qualquer forma, para ativar o compartilhamento de Internet nas distribuições mais recentes de Linux (baseadas no kernel 2.4), considerando que você tenha suporte ao iptables (esta costuma ser a configuração default) e que tenha o conjunto mínimo de utilitários, basta emitir 3 comandos:

echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o lo -d 127.0.0.0/8 -j ACCEPT
iptables -t nat -P POSTROUTING DROP
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE

As linhas acima devem funcionar sem alteração se você usou nossa sugestão de endereçamento para a rede local - se você usa outro padrão, mude o "192.168.1.0" da terceira linha para adequar-se à sua situação. Da mesma forma, mude o "eth0" da terceira linha se a sua placa de rede com acesso à Internet for outra.

Claro que antes de emitir estes comandos você deve garantir que ambas as placas de rede do seu computador estejam corretamente configuradas e acessando suas respectivas redes. E nada de reboots! O efeito destes comandos dura apenas até a máquina ser desligada. Se você quiser que eles tenham efeitos permanentes, inclua-os em um script de inicialização da sua máquina, conforme as instruções específicas da sua distribuição.


Conclusão

Espero ter demonstrado que configurar o compartilhamento da Internet no Linux não é tão complicado quanto dizem, e ajudado você a ter acesso à Internet de forma econômica e confiável.

Se você tiver alguma correção ou complemento a este documento, contate o autor/organizador através do e-mail brain@matrix.com.br. Se for uma dúvida referente a uma área específica do documento, contate o autor da seção que gerou a dúvida através do e-mail fornecido nela.

E se você tiver dúvidas, não hesite em tirá-las no nosso fórum.

Licença

Este documento é disponibilizado obedecendo aos termos da licença GNU FDL conforme exposta no site da Free Software Foundation. Os nomes e endereços de e-mail dos autores e colaboradores devem ser tratados como seções invariantes nos termos da mesma licença.


Apêndices:


O Daniel Oliveira Nascimento (don@dcc.ufmg.br) mandou alguns comentários que foram incorporados ao texto, além dos dois scripts que reproduzo abaixo (ele não deu informações sobre a autoria ou a licença dos mesmos):

Script de inicialização usado no Debian/Kurumin para compartilhar a Internet durante o boot:

velox.sh - autenticação para o Velox:


 

Comentários dos leitores
(Termos de Uso)

» ofranja () em 25/07 21:03

Ufa, pelo menos um lembrou do rc.firewall...

Ok, tanto faz o script, mas que fica mais intuitivo, *fica*. Assim como fica mais modular.
Colocar tudo dentro do rc.local não é uma solução indicada; se for necessário desligar o carregamento de algum item idividial é preciso editar o arquivo, comentando linhas e gastando tempo desnecessário.

E aproveitando a deixa pra mandar uma genérica:

"Regra nr1 da modularidade nos scripts de inicialização no Slackware"

Instalou daemon novo? Legal, crie um /etc/rc.d/rc.<nome_do_seu_daemon> e use-o. Não use rc.inet2 se não pra chamar o seu script de inicialização do daemon. Aí você pode ir no site do Piter Punk e baixar aquele init-alguma-coisa-configurator, habilitando aqueles rc que você deseja sem ter que apertar muito mais que as setas e a barra de espaço.

É isso.

PS: Lembrando sempre que esse sistema de comentários come o < e o > se não forem escritos como %lt; e %gt; (s/%/&/).


» Sávio Roberto () em 15/12 20:47

Por favor me ajudem a compartinhar o Speedy com outras maquinas,,

A maquina que esta o Sppedy esta com a plataforma Win 2000 pro!
São 4 micros

1) Servidor Sppedy Win 2000
2) Win 2000
3) Win 98
4) Win 98

Desde ja agradeço

Sávio Roberto


» Sávio Roberto () em 15/12 20:48

Por favor me ajudem a compartinhar o Speedy com outras maquinas,,

A maquina que esta o Sppedy esta com a plataforma Win 2000 pro!
São 4 micros

1) Servidor Sppedy Win 2000
2) Win 2000
3) Win 98
4) Win 98

Desde ja agradeço

Sávio Roberto


» rodrigo () em 19/05 02:42

quero coloca no ar


» everaldo () em 24/08 16:17

Gostaria que me ajudassem a configurar meu modem ADSL Spead stream para configurar o velox no Kurumim 3.0.Sou iniciante e estou querendo migrar do Windows para o Linux.Me ajudem por favor.


Comentários desativados: Esta discussão é antiga e foi arquivada, não é mais possível enviar comentários adicionais.



O Arquivo Histórico do BR-Linux.org mantém no ar (sem alteração, exceto quanto à formatação, layout, tabela de caracteres, etc.) o acervo de notícias, artigos e outros textos publicados originalmente no site na segunda metade da década de 1990 e na primeira década do século XXI, que contam parte considerável a história do Linux e do Open Source no Brasil. Exceto quando indicado em contrário, a autoria dos textos é de Augusto Campos, e os termos de uso podem ser consultados na capa do BR-Linux.org. Considerando seu caráter de acervo, é provável que boa parte dos links estejam quebrados, e que as informações deste texto estejam desatualizadas.