Transformando o notebook num roteador

Iniciado por Julian Cabral, 22 de Junho de 2013, 02:20

tópico anterior - próximo tópico

Julian Cabral

     Bem galera, tenho uma internet 1 Mb via rádio no notebook (através de cabo - não há roteador) e estava procurando uma maneira de compartilhar essa internet com os meus aparelhos móveis - um galaxy Y e um Positivo Ypy, ambos Android. Vi que o Ubuntu tem uma maneira de criar rede sem fio nativa, mas me parece que é ad hoc (não sei bem o que significa), mas sei que os Androids não reconhecem. Tava quase comprando um roteador quando achei hoje um tutorial que resolveu meu problema: ele transformou o meu notebook em roteador.

   Transcreverei o tutorial, traduzindo (ele está em inglês) a meu modo, como eu fiz e deu certo.

   Já adianto que não tenho conhecimentos avançados, apenas segui os passos do tuto e deu tudo certo. Tente por sua conta e risco (como eu fiz).
   O endereço para quem quiser ver o original é: http://forum.xda-developers.com/showthread.php?p=38228707#post38228707
   Parece-me que funciona em qualquer máquina, desde que tenha a placa wireless (acho que não existe notebook que não tenha).

Passo 1: Verifique se seu adaptador wireless suporta infraestrutura hotspots.
  Abra o terminal e digite sudo lshw | less
  Encontre a seção -network do wireless (no meu note era a segunda, havia duas: a primeira era a rede cabeada). Confirme que o driver é ou ath5k ou ath9k (o meu é ath9k), se não for, não vai funcionar.

Passo 2: Instale 2 ferramentas adicionais para criar o hotspot: 1ª é o hostapd (servidor hotspot) e a 2ª é o dnsmasq (servidor dns dhcp).
  No terminal digite sudo apt-get install hostapd dnsmasq

Passo 3: Pare estes serviços se eles já iniciaram e impeça-os de iniciar junto com o sistema:
  No terminal digite:
sudo service hostapd stop
sudo service dnsmasq stop
sudo update-rc.d hostapd disable
sudo update-rc.d dnsmasq disable

Passo 4: Configure os arquivos:
  No terminal digite sudo gedit /etc/dnsmasq.conf
  Adicione as seguintes linhas no arquivo (pule uma linha após a última e cole o scipt)

# Bind to only one interface
bind-interfaces
# Choose interface for binding
interface=wlan0
# Specify range of IP addresses for DHCP leasses
dhcp-range=192.168.150.2,192.168.150.10

Passo 5: Configure o hostapd
   No terminal digite  sudo gedit /etc/hostapd.conf
   Adicione as seguintes linhas no arquivo

# Define interface
interface=wlan0
# Select driver
driver=nl80211
# Set access point name
ssid=myhotspot
# Set access point harware mode to 802.11g
hw_mode=g
# Set WIFI channel (can be easily changed)
channel=6
# Enable WPA2 only (1 for WPA, 2 for WPA2, 3 for WPA + WPA2)
wpa=2
wpa_passphrase=mypassword

Você pode alterar o nome que a rede wifi terá e senha nas linhas ssid e wpa_passphrase, respectivamente (no caso o nome da rede ficaria myhotspot e a senha mypassword).

Passo 6: Crie um arquivo de texto.
   No terminal digite gedit

   No arquivo cole o seguinte script

#!/bin/bash
# Start
# Configure IP address for WLAN
sudo ifconfig wlan0 192.168.150.1
# Start DHCP/DNS server
sudo service dnsmasq restart
# Enable routing
sudo sysctl net.ipv4.ip_forward=1
# Enable NAT
sudo iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
# Run access point daemon
sudo hostapd /etc/hostapd.conf
# Stop
# Disable NAT
sudo iptables -D POSTROUTING -t nat -o ppp0 -j MASQUERADE
# Disable routing
sudo sysctl net.ipv4.ip_forward=0
# Disable DHCP/DNS server
sudo service dnsmasq stop
sudo service hostapd stop

  Troque o ppp0 por eth0 (ou o número que se referir a sua conexão - confirme no 1º passo nas informações -network).
  Salve o arquivo (em qualquer lugar) com o nome start.sh

Passo 7 e último: Ligue seu hotspot iniciando o script criado.
  No terminal digite sudo sh "local do arquivo salvo"
  No meu caso ficou: sudo sh /home/julian/Área\ de\ Trabalho/start.sh (o arquivo eu salvei na Área de Trabalho mesmo).

Pronto! Liguei o wifi no smartphone e no tablet e pimba, funcionou. Fiquei muito alegre (não precisarei mais comprar o roteador, não para isso)
Resolvi compartilhar a descoberta. Caso haja um tópico igual (dei uma pesquisada e não encontrei), perdoem a redundância, mas a intenção é boa.

Saudações a todos.

jeflui

No network manager você pode criar um hotspot exatamente para essa solução.
Link: http://techzane.com/how-to-turn-ubuntu-laptop-wireless-access-point/

Julian Cabral

Citação de: jeflui online 22 de Junho de 2013, 23:19
No network manager você pode criar um hotspot exatamente para essa solução.
Link: http://techzane.com/how-to-turn-ubuntu-laptop-wireless-access-point/

Bem, como eu disse acima, há opção nativa do Ubuntu para criar uma nova rede wifi. O que acontece é que ele cria uma rede ad hoc, que não é reconhecida por dispositivos com Android. Mas fica a dica também.

aricesar

Julian

Muito obrigado pela dica. Pesquisei em diversos lugares e  sempre a informação era para criar conexão wireless o que meu celular com Android não reconhecia. Agora posso deixar de lado a 3G do celular e usar a rede do computador.

Valeu mesmo.

rihoem

Tenho uma dúvida mais ou menos relacionada com isso. Tenho um roteador da D-Link e sinceramente é horrível. Ele até aguenta estavelmente várias conexões para tarefas leves, porém qualquer coisa mais pesada (youtube em HD ou algum jogo online) deixa tudo um caos, chegando a derrubar a rede em alguns casos. Curiosamente, ao conectar tudo via ethernet, a conexão fica bastante estável. Então acredito que o culpado seja a forma do roteador gerenciar as conexões sem fio.

Tenho um pequeno netbook antigo cuja tela está quebrada, e obviamente o reparo não vale a pena. Estive pensando em transformá-lo num roteador. Já tentei instalar o dd-wrt ou openwrt porém é muito difícil de configurar (tirando que eu preciso deixar o maldito do netbook conectado na TV para poder fazer isso). Então, pensei em instalar o ubuntu e compartilhar a conexão através dele. Gostaria da opinião de vocês: será que vale a pena, em questão de desempenho e estabilidade, deixar um netbook cuidando do roteamento?

Valeu.