Partilhar internet

Iniciado por dinis_87, 29 de Agosto de 2009, 20:27

tópico anterior - próximo tópico

dinis_87

Ola
ainda sou novo neste mundo do linux, e como tal decidi começar a exprimentar o linux e por isso montei um servidor ubuntu.
Após ter lido várias mensagens não consegui chegar a um meio concreto.
Pretendo partilhar uma ligação de internet do ubuntu com os restantes pc's.
Em baixo tenho um desenho do que é a minha rede neste momento:

http://www.flickr.com/photos/41950820@N07/3869122280/

Pretendo então alterar a mesma, de forma a que a internet começe a passar pelo servidor linux, sendo partilhada para o resto da rede.
O servidor já possui duas placas de rede.
Ou seja quero que o o modem de internet envie a net para o servidor, e que o servidor envie para o switch e depois para o router para ser feita uma distribuição wireless.
Se me poderem ajudar agradeço. :)

weltonpba


fabio2paolini

Olá, já resolveu o seu problema? Uma dúvida, o switch irá apenas ligar o servidor ao roteador ou ele também conecta outros computadores?
Pois se ele vai ser somente uma ponte entre o roteador e o servidor imagino que ele seja desnecessário.

Caso você já tenha a rede montada, são necessários ainda dois processos importantes:
- Liberar o trafego da net para as máquinas da rede local por parte do servidor.
Isso é feito pelo comando
echo 1 > /proc/sys/net/ipv4/ip_forward

- Ativar o macaramento de IP, uma vez que os números de IP de sua rede local não são "válidos" (supondo que você use IP local na rede)
Uma maneira simples de se fazer isso é pelo comando:

iptables -t nat -A POSTROUTING -o xxxx -j MASQUERADE

onde xxxx deve ser trocado pela interface de conexão com a net.

dinis_87

Olá,
ainda não consegui resolver o problema.
Em relação ao fabio, o switch liga todos os computadores que se ligam por cabo, posteriormente o switch liga ao router que é onde está ligada a internet, o router envia a internet para o switch, o router envia tambem a internet e a rede local para os pc's portateis.
Exprimentei usar a ajuda do weltonpba mas não resultou, na informação sugerida pelo weltonpba estava incluida a sugestão de comandos do fabio.
Ou seja eu fiz o que lá dizia, mas apenas consegui compartilhar a rede local, nada de internet.

Em baixo uma foto do conteudo do ficheiro interfaces:

http://www.flickr.com/photos/41950820@N07/3875193716/

Quando tento alterar este arquivo com o comando su vi /etc/network/interfaces, aparece o conteudo em cima na foto, não conseguindo alterar para:

auto lo eth1 eth2
iface lo inet loopback

iface eth1 inet static
address 192.168.2.100
netmask 255.255.255.0
network 192.168.1.65
broadcast 192.168.1.254

iface eth1 inet dhcp

Agradeço ajuda. :)

fabio2paolini

O comando que você deve usar é sudo  vi /etc/network/interfaces  e não  su vi /etc/network/interfaces
Fora isso
Pelo que eu entendi, na configuração atual é o router que conecta na net  e o switch conecta no router.
Eu não sei se é possível conectar uma saída tipo "lan" de um router em um switch.

CitarOu seja quero que o o modem de internet envie a net para o servidor, e que o servidor envie para o switch e depois para o router para ser feita uma distribuição wireless.

Olhando o primeiro texto que você postou fiquei com a idéia de que você quer que o Ubuntu conecte diretamente na net.  A saída Lan do ubuntu ligue no switch e o switch leve sinal para o router. Essa configuração me parece mais simples. Qual é a sua conexão com a net? Quero saber como é feita a conexão no modem da net, pois isso irá definir a forma com que o Ubuntu deve conectar na net.

Por fim, talvez apenas com a dica de trocar o su por sudo você já consiga bons avanços. Outra dica para os casos onde você utiliza senha de administrador muitas vezes é executar o comando sudo su a partir deste momento esta linha de comando terá poderes administrativos até você sair dela através do comando exit.

fabio2paolini

Mais um comentário. Eu notei que você tentou editar o arquivo /etc/network/interfaces com o editor de textos vi. Em particular eu não sei usar o vi. Caso você saiba utilizar o vi, sem problemas siga em frente. Mas se você não sabe, esta pode ter sido uma das causas de suas dificuldades.
Neste caso utilize um editor mais simples como o "pico" ou "nano" por exemplo ou qualquer outro que você saiba utilizar.

Outra coisa, a forma com que você postou o seu arquivo /etc/network/interfaces está errada. Algo similar, porém correto seria:


auto lo
iface lo inet loopback

iface eth2 inet static
address 192.168.2.100
netmask 255.255.255.0
network 192.168.2.0
broadcast 192.168.2.254

iface eth1 inet dhcp



Não se preocupe inicialmente com a parte onde está "lo", isso se refere a configuração interna de cada PC. A configuração acima atribui uma configuração via dhcp para a interface eth1 e um IP local estático para a interface eth2.  Caso você conecte a net via dhcp então esta seria uma configuração possível para o seu servidor, onde eth1 deveria ser conectada na net e a interface eth2 ligada no switch. As demais máquinas devem ainda ter uma linha se referindo ao gateway, algo como

gateway 192.168.2.100

dinis_87

Olá infelizmente ainda não consegui fazer a ligação, em relação ao desenho que apresentei é o desenho da minha ligação actual, em que a net é enviada para o router e o router liga ao switch onde se ligam os restantes pc's.
Todos os pc's recebem a gama de ip através do router -192.168.2.xxx
Gostaria então de mudar esta ligação da seguinte forma,
o servidor recebe a internet directamente (através da ligação eth2), e envia informação da rede local e da internet ( através da ligação eth1) directamente para o router, o router envia depois a informação para o o switch que transmite posteriormente para todos os pc's ligados por cabo, sendo o router quem transmite a informação via wireless.
Gostaria de saber se eu fizer essa ligação e for ás conexões de rede abir a placa de rede de internet, que será a eth2, eno ipv4 escolher o método "Compartilhando com outros Computadores", se esta opção funciona para o meu caso.
Se não funcionar agradecia ajuda na informação de como conseguir partilhar a internet e o que fazer nos restantes pc's "windows" para que estes recebam a net.
Obrigado  :)

fabio2paolini

Olá, eu não saberia dizer como fazer esta configuração pelo modo gráfico.
Mas acho que sua configuração está relativamente simples.
Seguem mais umas perguntas:

A rede local está funcionando?
Os pcs da lan estão logados ao router via dhcp?

Caso isso esteja ok, então um problema pode ser a conexão do router com o servidor. Em geral os routers são programados para conectar ao servidor via dhcp, se for isso é necessário ativar o servidor dhcp no seu servidor ou programar o router a ter um ip fixo. Vá na configuração de Wan do router e verifique a configuração atual.


dinis_87

Ola Fabio
obrigado pela paciencia, quando faço a ligação, rede local funciona, só a internet é que não.
Relativamente ao dhcp os pc's estão logados via dhcp ao router, o router tem um servidor dhcp.
Nas propriedades de lan do router o dhcp está activo , sendo este que fornece os ip e a máscara de sub-rede.
Nas prorpiedades wan do router tem 6 opções Dynamic IP Address - PPPoE - PPTP - L2TP - Static IP Address - BigPond. A minha opção é a Dynamic IP Address (Obtains an IP address automatically from your service provider.).
Vou então desligar o servidor dhcp do router, e activar no servidor.
No entanto gostaria que me informasse como é que se activa o dhcp no servidor, e se depois o resto do procedimento para partilhar a net é igual ao que já se tinha falado.
Obrigado

fabio2paolini

Olá, com relação a

CitarNas prorpiedades wan do router tem 6 opções Dynamic IP Address - PPPoE - PPTP - L2TP - Static IP Address - BigPond. A minha opção é a Dynamic IP Address (Obtains an IP address automatically from your service provider.).

Isso significa que seu router pede um IP ao seu servidor e caso seu servidor não tenha um servidor de DHCP, então o router ficará eternamente pedindo sem resposta.

Por outro lado a opção correta não é  essa:

CitarVou então desligar o servidor dhcp do router, e activar no servidor.

Ou  você ativa o servidor de DHCP do servidor para permitir que o router conecte, mas neste caso não mude a configuração do router. Ou você muda a configuração do router para Static IP Address e neste caso o router deve dar uma opção para a escolha do gateway e talavez do DNS. O gateway passa a ser o seu servidor. Mas os detalhes do DNS irá depender do seu router, em alguns casos há uma opção de um DNS estático ou o router pega o DNS do seu servidor. Caso fique com dúvidas no DNS retorne.

Caso queira criar um servidor de DHCP no seu servidor então pode seguir estes links

http://wiki.forumdebian.com.br/index.php/Compartilhando_a_internet_no_Debian_com_Dhcp

http://wiki.forumdebian.com.br/index.php/Compartilhando_a_internet_no_Debian

São da Debian, mas funcionam igualmente bem no Ubuntu.
Apenas para adiantar, na opção option routers do arquivo /etc/dhcp3/dhcpd.conf, você deve por o IP da interface do seu servidor que conecta o router, que pelo seu comentário

Citare envia informação da rede local e da internet ( através da ligação eth1) directamente para o router


deve ser eth1
Além disso no comando
iptables -t nat -A POSTROUTING -o xxxx -j MASQUERADE

você deve trocar o xxxx por eth2, ao menos pelo que eu entendi do seu comentário

Citaro servidor recebe a internet directamente (através da ligação eth2)

Muito bem, caso tudo isso funcione, depois faltaria ainda por tudo isso automatizado na inicialização. Mas é melhor antes fazer a rede funcionar.

Por fim, um último comentário. Note que desta forma há dois sistemas de mascaramento "em série". Um que leva a net do servidor ao router e um segundo sistema de mascaramento leva a informação do router para os demais PCs. Não há nenhum problema nisso creio eu. Porém mais para frente você poderia fazer todo o serviço de roteagem somente pelo servidor, por exemplo, pois provavelmente o seu router deve ter uma opção de desabilitar o dhcp na  interface lan, neste caso ele trabalha basicamente como um switch sem perder as opções wireless e o servidor passaria a "enxergar" diretamente a rede local. Pois da maneira como está, a conexão entre o servidor e a rede local é indireta, intermediada pelo roteador e fica mais difícil trocar informações (via ssh por exemplo) entre as máquinas da rede local e o servidor.

Enfim espero que tudo isto ajude em algo.