[置顶] Linux Wifi共享上网脚本,类似win 7的Connectify工具

最近在Ubuntu找了很久,也找不到一个可以将无线网卡作AP的软件,就是类似win 7下的connectify工具,能将笔记本作为AP使用。试了网上很多方法都不行,有些是可以搜到热点,但我的Android手机连上去的时候获取不了ip地址。研究了几天,昨晚花了一晚时候,去写个脚本,成功的连上了。希望我这个脚本能帮到大家解决问题。

主要是用到iwconfig这个无线配置工具,然后用iptable设置NAT规则,使用dnsmasq去分配ip地址。

因為硬件不的同,設置也會有相應的修改。

本人的筆記本是:Acer 4743g

使用前,請激活網管理器的wifi功能以此加載模塊,然後再取消wifi功能。

ifconfig wlan0 192.168.2.254 netmask 255.255.255.0
ifconfig wlan0 up
#设置为ad-hoc模式
iwconfig wlan0 mode ad-hoc
#设置essid,即搜索到的名字
iwconfig wlan0 essid Leon_in_GuangZhou
iwconfig wlan0 channel auto
#设置密码
iwconfig wlan0 key s:androidworkab
iwconfig wlan0 key restricted

#删除旧的规则
iptables -N wireless-adhoc
iptables -F wireless-adhoc
iptables -t nat -F PREROUTING
iptables -t nat -F POSTROUTING
iptables -t nat -F
#建立新的规则
iptables -A wireless-adhoc -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A wireless-adhoc -s 192.168.2.0/24 -j ACCEPT
iptables -A wireless-adhoc -p 47 -j ACCEPT
iptables -A wireless-adhoc -j DROP
iptables -A FORWARD -m state --state INVALID -j DROP
iptables -A FORWARD -j wireless-adhoc
iptables -t nat -I POSTROUTING -s 192.168.2.0/24 -j MASQUERADE
echo "1" > /proc/sys/net/ipv4/ip_forward
dnsmasq -i wlan0 --resolv-file=/etc/resolv.conf --conf-file=/etc/adhoc/dnsmasq.conf



/etc/adhoc/dnsmasq.conf文件内容为

dhcp-authoritative 
dhcp-range=192.168.2.100,192.168.2.105,12h
dhcp-leasefile=/var/run/dnsmasq.leases
pid-file=/var/run/dnsmasq.pid
user=root
no-negcache


完整脚本下载地址:

http://download.csdn.net/source/3484630


或者:https://gist.github.com/1117004


脚本要根据自己电脑情况修改

#####################################
#要共享网络的设备,可以用ifconfig命令查看
ShareNet=eth0
Wmode=ad-hoc
Wchannel=auto
#显示共享wifi的名称
Wessid=Leon_in_GuangZhou
#这个是wifi设备的名称,可以用ifconfig查看
WInterface=wlan0
#密码
WPasskey=androidworkab
Wkey=restricted
Igateway=192.168.2.254
Inetmask=255.255.255.0
Inetwork=192.168.2.0
DhcpRangeMin=192.168.2.10
DhcpRangeMax=192.168.2.105
#####################################



以下是脚本的使用方法:

#先加可执行的权限,XXX代表脚本的路径

chmod +x /XXX/XXX/adhoc

#运行脚本

sudo  /XXX/XXX/adhoc

#停止共享

sudo  /XXX/XXX/adhoc -s

#重启动共享

sudo  /XXX/XXX/adhoc -r


转载请注明出处:http://blog.csdn.net/feifei454498130/article/details/6642140

[置顶] Linux Wifi共享上网脚本,类似win 7的Connectify工具_第1张图片

[置顶] Linux Wifi共享上网脚本,类似win 7的Connectify工具_第2张图片


运行getprop命令可以查看到连接信息地址

[置顶] Linux Wifi共享上网脚本,类似win 7的Connectify工具_第3张图片


[置顶] Linux Wifi共享上网脚本,类似win 7的Connectify工具_第4张图片

注意:

如果运行脚本后,手机或电脑搜不到你的共享,运行重新启动共享命令

sudo  /XXX/XXX/adhoc -r

即可,多試几次就行了。

你可能感兴趣的:(linux,android,脚本,ubuntu,手机,工具)