建立无线热点-脚本-AP-hostapd-dhcpd,给没root的android手机使用。

笔记本/便携移动设备,手机平板等软硬件
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

建立无线热点-脚本-AP-hostapd-dhcpd,给没root的android手机使用。

#1

帖子 eexpress » 2013-07-12 10:08

没root的android手机,使用。
root过的,自己去NetworkManager建立Ad-hoc的。
需要在NM里面开启无线。被NM接管了的wlan0,不好直接up的。
dhcpd 不能使用 -cf,很郁闷。
安装 dhcp3-server 和 hostapd

https://github.com/eexpress/eexp-bin/bl ... er/ap.bash
安装gksu,使用菜单操作
https://github.com/eexpress/eexp-bin/bl ... ap.desktop

代码: 全选

#!/bin/bash

sudo ifconfig wlan0 192.168.0.1 netmask 255.255.255.0
sudo -i sysctl -w net.ipv4.ip_forward=1
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo pkill -9 dhcpd
sudo -i dhcpd wlan0 -pf /var/run/dhcp-server/dhcpd.pid
#sudo -i dhcpd wlan0 -cf /tmp/dhcpd.conf -pf /var/run/dhcp-server/dhcpd.pid
# ubuntu 下面,居然不能使用 -cf 了。否则也使用/tmp/dhcpd.conf,脚本干净多了。
#● dog /etc/dhcp/dhcpd.conf
#default-lease-time 600;
#max-lease-time 7200;
#subnet 192.168.0.0 netmask 255.255.255.0
#{
# range 192.168.0.2 192.168.0.250;
# option domain-name-servers 8.8.8.8;
# option routers 192.168.0.1;
#}

cat > /tmp/hostapd.conf << EOF
interface=wlan0
#bridge=br0
driver=nl80211
ssid=eexp-hostapd
hw_mode=g
channel=11
#dtim_period=1
#rts_threshold=2347
#fragm_threshold=2346
auth_algs=1
wpa=0
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
EOF
#没开启密码,要开启,wpa=1。
sudo hostapd -d /tmp/hostapd.conf
#为了方便 ctrl-C 断开。hostapd放最后,这样获取IP有点滞后。
● 鸣学
头像
oneleaf
论坛管理员
帖子: 10441
注册时间: 2005-03-27 0:06
系统: Ubuntu 12.04

Re: 建立无线热点-脚本-AP-hostapd-dhcpd,给没root的android手机使用。

#2

帖子 oneleaf » 2013-07-12 11:10

呵呵,折腾出来了,有耐心。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 建立无线热点-脚本-AP-hostapd-dhcpd,给没root的android手机使用。

#3

帖子 eexpress » 2013-07-12 11:30

其实只有-cf的问题啊。叶子测试下-cf为啥不行?
官网论坛也是这问题的。

能不动系统设置,才觉得干净。
● 鸣学
头像
oneleaf
论坛管理员
帖子: 10441
注册时间: 2005-03-27 0:06
系统: Ubuntu 12.04

Re: 建立无线热点-脚本-AP-hostapd-dhcpd,给没root的android手机使用。

#4

帖子 oneleaf » 2013-07-12 11:44

应该是 apparmor 限制了,加到这个权限就好了。
头像
oneleaf
论坛管理员
帖子: 10441
注册时间: 2005-03-27 0:06
系统: Ubuntu 12.04

Re: 建立无线热点-脚本-AP-hostapd-dhcpd,给没root的android手机使用。

#5

帖子 oneleaf » 2013-07-12 11:45

具体限制在: /etc/apparmor.d/usr.sbin.dhcpd
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 建立无线热点-脚本-AP-hostapd-dhcpd,给没root的android手机使用。

#6

帖子 eexpress » 2013-07-12 11:46

我试过这个了的。
没成功。
:em20
● 鸣学
头像
oneleaf
论坛管理员
帖子: 10441
注册时间: 2005-03-27 0:06
系统: Ubuntu 12.04

Re: 建立无线热点-脚本-AP-hostapd-dhcpd,给没root的android手机使用。

#7

帖子 oneleaf » 2013-07-12 11:54

代码: 全选

sudo ln -s /etc/apparmor.d/usr.sbin.dhcpd /etc/apparmor.d/disable/
sudo /etc/init.d/apparmor restart
然后你再去试试,保证没有问题了。呵呵。
头像
adam8157
帖子: 2794
注册时间: 2009-03-05 16:31
联系:

Re: 建立无线热点-脚本-AP-hostapd-dhcpd,给没root的android手机使用。

#9

帖子 adam8157 » 2013-07-12 13:20

ee, 你没有无线路由么...
头像
youzhiyili
帖子: 2422
注册时间: 2012-03-22 20:42
系统: ubuntu22.04

Re: 建立无线热点-脚本-AP-hostapd-dhcpd,给没root的android手机使用。

#10

帖子 youzhiyili » 2013-07-12 13:26

mark
@自由建客 @qy117121 @枫叶饭团 @cikekid @YeLee @jtshs256 @eexpress @ljj_jjl2008 @zhw2101024 @TeliuTe @月下叹逍遥 @leeaman @懒蜗牛Gentoo @灰色小狼 @photor @adagio @JiangHui @phoenixlzx @oneleaf
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 建立无线热点-脚本-AP-hostapd-dhcpd,给没root的android手机使用。

#11

帖子 eexpress » 2013-07-12 13:48

叶子,这下好了。昨天我是用自己新建的/etc/apparmor.d/usr.bin.dhcpd。今天才看到有sbin的。 :em02

代码: 全选

#!/bin/bash

#● ai hostapd dhcp3-server 
iw list|grep '* AP'
[ $? -ne 0 ] && echo "No device support AP mode." && exit

sudo ifconfig wlan0 192.168.0.1 netmask 255.255.255.0
sudo sysctl -w net.ipv4.ip_forward=1
sudo iptables -t nat -A POSTROUTING -j MASQUERADE
sudo pkill -9 dhcpd

if [ ! -f /etc/apparmor.d/disable/usr.sbin.dhcpd ]; then
sudo ln -s /etc/apparmor.d/usr.sbin.dhcpd /etc/apparmor.d/disable/
sudo /etc/init.d/apparmor restart
fi

cat > /tmp/dhcpd.conf << EOF
default-lease-time 600;
max-lease-time 7200;
subnet 192.168.0.0 netmask 255.255.255.0
{
 range 192.168.0.2 192.168.0.250;
 option domain-name-servers 8.8.8.8;
 option routers 192.168.0.1;
}
EOF
sudo dhcpd wlan0 -cf /tmp/dhcpd.conf -pf /var/run/dhcp-server/dhcpd.pid

cat > /tmp/hostapd.conf << EOF
interface=wlan0
driver=nl80211
ssid=`hostname`-hostapd
hw_mode=g
channel=11
auth_algs=1
# 如果需要开启密码,wpa=1。
wpa=0
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
EOF
sudo hostapd -d /tmp/hostapd.conf
蛋蛋。这是应急用的。
速度比公司的拐弯抹角出去的路由好多了。信号也好多了。
:em02
● 鸣学
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 建立无线热点-脚本-AP-hostapd-dhcpd,给没root的android手机使用。

#12

帖子 eexpress » 2013-07-12 13:59

其实eth0应该用这个代替

代码: 全选

ip route get 1.1.1.1 | grep  dev | cut -d' ' -f 5
● 鸣学
头像
oneleaf
论坛管理员
帖子: 10441
注册时间: 2005-03-27 0:06
系统: Ubuntu 12.04

Re: 建立无线热点-脚本-AP-hostapd-dhcpd,给没root的android手机使用。

#13

帖子 oneleaf » 2013-07-12 14:12

直接下面,不用管eth0

代码: 全选

sudo iptables -t nat -I POSTROUTING -j MASQUERADE
头像
iamfbi
帖子: 1081
注册时间: 2009-02-06 9:18
来自: 小僧乃吐蕃国大雪山大轮寺护国法师座下四大护法之西域妖僧是也

Re: 建立无线热点-脚本-AP-hostapd-dhcpd,给没root的android手机使用。

#14

帖子 iamfbi » 2013-07-12 14:14

这个帖子应该要发到手机版块啊。。。啊,手机版在哪里。。。
Laptop: i5-460m hm55 4g 320g hd5470 14'led 2.3kg (acer 4738g)
Windows XP 7 8 all in one partition.
Ubuntu 10.04 LTS
Mac OS X 10.6.7
折腾笔记
论坛随手记
头像
oneleaf
论坛管理员
帖子: 10441
注册时间: 2005-03-27 0:06
系统: Ubuntu 12.04

Re: 建立无线热点-脚本-AP-hostapd-dhcpd,给没root的android手机使用。

#15

帖子 oneleaf » 2013-07-12 15:08

好吧,开了手机版。
回复