Compartilhando internet no Ubuntu 9.04 pela rede sem fio

Toda vez que reinstalo meu linux, fico meia hora procurando o script para compartilhar a internet com os amigos. Decidi dessa vez escrever no meu blog pra não perdê-lo nunca mais :-)

Meu caso é o seguinte, quero compartilhar minha conexão 3G da claro (ppp0) através da minha placa de rede sem fio (eth1).

Para isso, o primeiro passo é instalar o servidor dhcp. Pra isso, abra um terminal: Aplicativos->Acessórios->Terminal

E digite:

sudo apt-get install dhcp3-server

Vamos modificar o arquivo de configuração do serviço de dhcp. No terminal, digite:

sudo gedit /etc/dhcp3/dhcpd.conf
E substitua o conteúdo do arquivo pelo seguinte:
ddns-update-style none;
option domain-name "example.org";
option domain-name-servers 200.230.210.3, 200.230.210.6;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 192.168.2.0 netmask 255.255.255.0 {
  range 192.168.2.50 192.168.2.100;
  option routers 192.168.2.1;
}
#----------fim do arquivo-----------

Agora crie um arquivo /usr/local/bin/compartilhaNet.

sudo gedit /usr/local/bin/compartilhaNet

Cole o conteúdo abaixo no arquivo fazendo as modificações necessárias:

#!/bin/bash
# eth1 é minha placa de rede sem fio, mude de eth1 para outra coisa
# caso sua placa de rede seja outra, tal como eth2 ou eth0
iwconfig eth1 mode ad-hoc
iwconfig eth1 essid minharede
ifconfig eth1 192.168.2.1 netmask 255.255.255.0
/etc/init.d/dhcp3-server start

# Limpar todas as regras do iptables
/sbin/iptables -F
/sbin/iptables -t nat -F

# Mascarar (NAT) tráfego que vem de eth1 e sai por ppp0
# ppp0 é meu dispositivo que está conectado na internet, no caso, minha
# placa 3g da claro
/sbin/iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -o ppp0 -j MASQUERADE

# Permitir ip_forward no kernel
echo 1 > /proc/sys/net/ipv4/ip_forward

# Para acesso ftp dos micros internos, habilitar o módulo nat_ftp
/sbin/modprobe ip_nat_ftp
# --------------------fim do arquivo------------

Agora é necessário tornar este arquivo executável. Pra isso, digite o seguinte no terminal:

sudo chmod a+x /usr/local/bin/compartilhaNet

Pronto. Agora é só executar o script toda vez que quiser compartilhar sua net, mas antes disso, é necessário desativar o gerenciamento da placa de rede sem fio pelo gnome. Pra isso, clique com o botão direito no Network Manager e desmarque a opção "Habilitar rede sem fio".

Agora sim, execute o script:

sudo compartilhaNet

Feito!

[paypal text="Falando em compartilhar, você não gostaria de ajudar a este site se manter contribuindo com US$ 2,00? Clique aqui!" email="richieri@gmail.com" title="Contribuicao voluntaria para o site Richieri.com" amount="2" currency="USD" /]

16 Responses to “Compartilhando internet no Ubuntu 9.04 pela rede sem fio”

  1. richieri Says:

    Se você quiser adicionar uma senha na sua rede, adicione a linha abaixo no arquivo compartilhaNet:

    iwconfig eth1 key restricted 1020-3040-50

    A senha neste caso, será 1020304050 sem os hífens

  2. Bucharel Says:

    Cara, procurei meia internet por isso, fiz milhões das bilhões de dicas que consegui e isso resolveu!

    to nem acreditando haeuheauea

    Valeu mesmo!

  3. richieri Says:

    Que bom!

  4. grinaldo Says:

    no meu nao funcionou aparece amensagem
    Error for wireless request "Set ESSID" (8B1A) :
    SET failed on device wlan0 ; Input/output error.
    * Starting DHCP server dhcpd3 [ OK ]
    WARNING: All config files need .conf: /etc/modprobe.d/alsa-base, it will be ignored in a future release.

  5. grinaldo Says:

    opa agora rodei o comando uma segunda vez e achou a rede criada mas conecta e nao navega o que pode ser pois meu modem aparece assim GSM (ttyACM0) tenho que colocar ela no lugar do ppp0?

  6. Ionn12 Says:

    E para conectar um roteador pela porta Eth0, como faço?

  7. Ionn12 Says:

    Caraca cara não funcionou. Mas estamos no caminho certo porque a execução não deu erro. Falta algum pequeno detalhe. Ai vai da forma que editei para alguns pequenos ajustes aqui: o endereço do meu roteador 192.168.0.1

    # Limpar todas as regras do iptables
    /sbin/iptables -F
    /sbin/iptables -t nat -F

    # Mascarar (NAT) tr�fego que vem de eth0 e sai por ppp0
    # ppp0 � meu dispositivo que est� conectado na internet, no caso, minha
    # placa 3g TIM
    /sbin/iptables -t nat -A POSTROUTING -s 192.168.0.1/24 -o ppp0 -j MASQUERADE

    # Permitir ip_forward no kernel
    echo 1 > /proc/sys/net/ipv4/ip_forward

    # Para acesso ftp dos micros internos, habilitar o m�dulo nat_ftp
    /sbin/modprobe ip_nat_ftp

    Agradeço muito tua disponibilidade para ajudar!
    Abraço.

  8. Ionn12 Says:

    ops! o endereço do meu roteador 192.168.0.2
    Grato.

  9. Arthur Rodrigues Says:

    Diz uma coisa, essa senha vai ser criptografada ou não?
    Tipo, usa WPA ou WPE…?
    Se não, vc sabe como habilitar?

    vlw

  10. Ionn12 Says:

    Não ha mensagem de erro. Estou pirando. Passei a experimentar a solução nativa do BigLinux e consegui por uma única vez conectar um a micro WXP no cabo ethernet. ao roteador conecta a rede mas nenhum sinal de internet. Quando instalei o Firestarter notei na tabela de conexões bloqueadas varias tentativas de acesso de um ISP da TIM na minha máquina e como em muitas tentavicas de compartilhamento a conexão com a TIM é derrubada fiquei pensando até que eles tenham um robô uqe investiga as nossas conexões e derruba os compartilhamentos. Parece que o compartilhameto da da conexão da TIM é especialmente difícil porque não tenho encontrado muitos artigos sobre isto na Net. Grato.

  11. Ronaldo Says:

    Oww, obrigado mesmo.
    Também estava a procura de algo assim para compartilhar meu Vivo 0,5G pelo EEEPC.
    Vou testar e coloco os comentários.
    Abraço a todos.

  12. Beto Says:

    Aqui funcionou de primeira… Obrigadão…

  13. Neuilson Says:

    Valew cara!!! meus parabéns!!!

    Funfou beleza

  14. Nelson Says:

    Cara, fiz tudo como está descrito, só que ao invés de fazer o script eu rodei tudo na mão para ver as mensagens de erro. Não apareceu nenhuma mensagem de erro. Tenho um desktop com Ubuntu 9.04 (compartilhando via wireless uma conexão cabeada) e um notebook com XP, que deveria se conectar com o Ubuntu. O XP encontra a rede, se conecta, mas não pinga o desktop e muito menos navega. O que pode ter ocorrido? Tentei tando com dhcp quanto com IP fixo e o problema é o mesmo.

  15. Beto Says:

    Na versão 9.04 funcionou 100%. instalei a 9.10, e apesar de não aparecer erro, não tem resposta do gateway. Se tiver alguma luz, to sempre por aqui.

  16. Wesley Says:

    "Sem resposta do Gateway" =/

Leave a Reply