openwrt-wps功能的实现
虽然openwrt中wps功能实现比较简单,但是还是总结一些。
本文是基于openwrt cc(15.05)版进行的。
参考链接:
1、menuconfig功能选择
1)删除wpad-mini,选中wpad,如下图:
2)选中hostapd-utils,如下图:
3)编译完成后,网页界面如下:
备注:
1)选中“Enable WPS pushbutton, requires WPA(2)-PSK”,即在wireless配置文件中增加了一个配置项wps_pushbutton;开启此功能是值为1。
2)无线的加密方式要选择“PSK”的方式
无线配置文件如下:
root@OpenWrt:/# cat /etc/config/wireless
config wifi-device 'radio0'
option type 'mac80211'
option channel '11'
option hwmode '11g'
option path 'platform/ar933x_wmac'
option htmode 'HT20'
option txpower '15'
option country 'US'
config wifi-iface
option device 'radio0'
option network 'lan'
option mode 'ap'
option ssid 'OpenWrt-31-wps-test'
option encryption 'psk2'
option key '88889999'
option wps_pushbutton '1'
2、命令
需要执行的脚本或者命令:
hostapd_cli -i wlan0 wps_pbc
root@OpenWrt:/# hostapd_cli -i wlan0 wps_pbc
OK
备注:有些参考文件中的命令为 “hostapd_cli -p /var/run/hostapd-phy0 wps_pbc”,但是我调试时执行失败,所以修改了执行命令,可以测试成功。
root@OpenWrt:/# hostapd_cli -p /var/run/hostapd-phy0 wps_pbc
Failed to connect to hostapd - wpa_ctrl_open: No such file or directory
root@OpenWrt:/#
出现以上错误时,我查看了一下/var/run/hostapd-phy0目录,结果没有此目录。所以,更改了命令。
手机选择“WPS按钮”(我手机是这个选项),等待时间为120s,期间执行命令或者按键执行脚本或命令即可。