lucasdona
(usa Linux Mint)
Enviado em 07/05/2012 - 10:04h
Bom consegui fazer meu pc virar um roteador sem a necessidade de um roteador wireless, utilizei a configuração ad-hoc para esta tarefa, fiz dessa forma:
sudo apt-get install dnsmasq
configurei o /etc/dnsmasq.conf da seguinte forma:
no-resolv
server=200.169.118.22
server=200.169.117.22
interface=wlan0
interface=lo
listen-address=192.168.254.1
listen-address=127.0.0.1
domain=example.com
dhcp-range=192.168.254.50,192.168.254.150,12h
log-queries
log-dhcp
Depois:
sudo invoke-rc.d dnsmasq restart
Depois criei um scrip para executar:
sudo ifconfig wlan0 up
sudo iwconfig wlan0 mode ad-hoc
sudo iwconfig wlan0 channel 6
sudo iwconfig wlan0 essid "home"
sudo iwconfig wlan0 key restricted senha_da_rede
sudo ifconfig wlan0 up 192.168.254.1
E por último outro script para ativar as regras:
echo "ativando modulos"
/sbin/modprobe iptable_nat
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_REJECT
/sbin/modprobe ipt_MASQUERADE
sleep 5
echo "ativacao dos modulos ok"
echo "limpando regras"
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -F -t nat
/sbin/iptables -X -t nat
/sbin/iptables -F -t mangle
/sbin/iptables -X -t mangle
sleep 5
echo "limpeza das regras ok"
echo "regra do dhcp"
/sbin/iptables -I INPUT -i wlan0 -p udp --sport 67:68 --dport 67:68 -j ACCEPT
sleep 5
echo "regra do dhcp ok"
echo "regra de mascara da rede"
/sbin/iptables -t nat -A POSTROUTING -s 192.168.254.0/24 -j MASQUERADE
sleep 5
echo "regra de mascara da rede ok"
echo "salvando as regras"
/sbin/iptables-save > /etc/network/iptables.rules
sleep 5
echo "salvando as regras ok"
Assim, consegui liberar internet 3g através do wifi, conectei várias máquinas, celulares, iphone, tablet, funcionou que é uma bezela, mas tive um problema, se o 3g cair e voltar, para de funcionar a internet para os pcs que estavam conectado e se executo o processo acima de novo, o próprio servidor fica sem internet, mesmo conectado, daí só consigo fazer de novo reiniciando o servidor. Não consegui resolver este problema ainda.