您当前的位置:首页 > 智能家居 > 树莓派使用hostapd架设自己的无线AP热点 网站首页 智能家居
树莓派使用hostapd架设自己的无线AP热点
发布时间:2017-06-07 23:16:22编辑:阅读()
-
最近在通过树莓派和arduino做智能家居,想用树莓派作为服务器,arduino通过wifi接入。我的树莓派没有板载wifi,据说可以通过一个支持monitor模式的无线网卡来提供ap功能,在某宝认真的翻了一段时间,发现树莓派专用的都不便宜,怎么办呢?想起来之前有一个Mercury MW150U和一个360wifi,想先试试吧,不行再买。
把MW150U插在树莓派上,过了几秒无线网卡上红色的灯亮了。。。灯亮了。。。亮了。。。了,太出乎意料了,这说明树莓派已经内置了驱动。 问了一下度娘,MW150U这款网卡采用AR9271芯片,Linux下用ath9k_htc驱动(内核自带)。支持AP模式,支持monitor模式。有monitor模式,就可以和aircrack-ng搭配了破解无线网路密码,有AP模式,就可以用来自架AP。ath9k_htc驱动目前不支持150M模式,不过这已经很次要了。杀人放火居家旅行必备。另外值得一提的是, 这款网卡还有个马甲是Fast FW150u。只是我这网卡是五六年前买的,不知道各位还能不能买到了。。。。。
下面才是正题。
1、 登录树莓派的维护终端
使用putty登录树莓派 用户名/密码:pi/raspberry
2、安装无线网卡驱动
把usb无线网卡插入树莓派,我使用的是水星MW150U,使用lsusb命令查看,如果能够查询到无线网卡,说明无线网卡成功
3、 更新软件源列表
因为后边要使用apt-get安装新的程序,所以要先使用sudo apt-get update命令更新软件源列表
如果更新软件源失败,参照这里再重新尝试《树莓派软件源列表更新失败解决方法》
4、 安装hostaapd服务
使用sudo apt-get install hostapd命令安装hostapd进程,Hostapd是一个运行在用户态,提供热点访问和鉴权的服务端进程。支持IEEE 802.11协议
5、 安装udhcpd服务
使用sudo apt-get install udhcpd安装dhcp进程 ,Dhcp主要是给通过无线网卡接入的设备分配ip地址。
6、 修改dhcp的配置
使用suno nano /etc/udhcpd.conf修改dhcp的配置文件。 修改接口,把接口修改为wlan0(我的usb网卡识别出来是wlan0,可以根据自己的实际情况修改)
修改时间保存方式,把remaining方式修改为remain方式,感觉这里不修改也可以
修改dhcp的ip地址,这里根据自己的需要来修改,不一定要和我修改的一样
7、 使能dhcp
使用sudo nano /etc/default/udhcpd命令修改dhcp的配置文件,把DHCPD_ENABLED=”no”这行删除或者注释掉,使用”#”来注释。
8、 修改wlan0的配置参数
使用sudo nano /etc/network/interfaces命令来修改
把wlan0的ip地址修改成与udhcp.conf配置文件里的ip地址一致
注释掉原有的配置
allow-hotplug wlan0
#iface wlan0 inet manual
#wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
增加静态IP配置
iface wlan0 inet static
address 192.168.0.1
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
wlan0默认是通过dhcp获取ip,所以要禁止对wlan0使用dhcp获取ip
使用sudo nano /etc/dhcpcd.conf命令把wlan0从dhcp中禁用 在dhcpcd.conf文件最后增加如下一行:
denyinterfaces wlan0
然后使用sudo reboot命令重启,启动之后使用ifconfig命令应该可以看到刚才添加的ip地址了。
9、 配置ap热点
创建文件 /etc/hostapd/hostapd.conf,配置树莓派AP热点名称和热点密码。
使用sudo nano /etc/hostapd/hostapd.conf 命令,在该文件中增加以下内容
interface=wlan1
driver=nl80211
ssid=zhb1190
channel=6
hw_mode=g
ignore_broadcast_ssid=0
auth_algs=1
wpa=3
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
其中
interface=wlan0,指定网卡名称为wlan0。
ssid=zhb1190为热点名称,可根据实际情况修改。
wpa_passphrase=12345678为热点密码,可根据实际情况修改,如果采用WPA2加密方式,密码的长度应该不少于8个字符。
为hostapd指定配置文件 修改配置文件/etc/default/hostapd
使用sudo nano /etc/default/hostapd 命令
把 #DAEMON_CONF="" 改为 DAEMON_CONF="/etc/hostapd/hostapd.conf"
10、 启动服务
启动hostapd和udhcpd服务
修改/etc/init.d/hostapd文件,指定配置文件DAEMON_CONF=/etc/default/hostapd(网上很多人都没有修改这里,但是我的不修改不生效,不知道是不是因为环境不一样的原因)
sudo /etc/init.d/hostapd start
sudo /etc/init.d/udhcpd start
(不知道为什么我使用sudo service hostapd start命令就无法启动对应的服务,求告知?)
11、设置自启动
sudo update-rc.d hostapd enable
sudo update-rc.d udhcpd enable
关键字词:
相关文章
-
无相关信息