龙空技术网

树莓派构建无线AP

那边走走 308

前言:

而今兄弟们对“80211nwin10”大致比较注重,小伙伴们都想要剖析一些“80211nwin10”的相关资讯。那么小编同时在网上网罗了一些对于“80211nwin10””的相关文章,希望小伙伴们能喜欢,朋友们快快来了解一下吧!

一、 实验设备

☆ 树莓派3

☆ Raspbian OS: 2016-03-18-raspbian-jessie.img

☆ SD卡,最好是4G以上大小,事先用Win32diskimager或dd(Linux)烧好 树莓派镜像。

☆ 可上网的宽带网络,通过以太网共享经NAT转发给WLAN

☆ Micro USB cable,用于供电

☆ HDMI显示器或PC调试终端,用于指令输入

二、系统更新

1、系统升级:apt-get update

2、更新已安装的软件包:apt-get upgrade

3、更新内核:rpi-update

4、重启树莓派:reboot

三、使用iw命令查看无线功能列表

命令:iw list

四、安装hostapd和dnsmasq软件包

下载与安装:apt-get install dnsmasq hostapd

hostapd 是 Host Access Point 守护进程,提供对基于 Linux 的无线接入点的强 WPA2 加密和身份验证。配置 hostapd 非常简单,它支持 WPA2-Personal 和 Enterprise,提供了对 WPA2-Personal 的独特修改,可让管理它变得更复杂或更简单。

dnsmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络,它提供了DNS功能和可选择的DHCP功能。主要适用于NAT的家庭网络,用modem,cable modem,ADSL设备连接到因特网。

五、接口配置

1、打开dhcpcd.conf文件:

nano /etc/dhcpcd.conf

2、在文件末尾添加配置信息:

denyInterfaces wlan0

#Interfaces wlan0

# static ip_address=192.168.0.1

3、打开interfaces文件:

nano /etc/network/interfaces

4、注释掉文件中的wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf行:

allow-hotplug wlan0

iface wlan0 inet manual

# wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

5、重启dhcpcd服务:

service dhcpcd restart

6、重启树莓派:

reboot

将无线接口wlan0的IP配置成静态地址。以太网接口eth0默认DHCP配置并接入因特网。在树莓派系统中,默认是DHCPCD配置网络接口。所以要告诉系统我们给wlan0分配静态IP地址,操作是打开配置文件并增加配置参数指令。

为了防止wpa_supplicant运行和干扰设定wlan0为接入点模式。需要打开接口配置文件,在wlan0段落中注释掉wpa-conf这行。

重启dhcpcd服务,系统将会给wlan0接口分配一个静态IP,树莓派也需要重启,因为只有重启后才生效。

六、配置hostapd

1、创建并打开一个新的配置文件hostapd.conf:

nano /etc/hostapd/hostapd.conf

2、写入以下内容:

interface=wlan0

driver=nl80211

ssid=chq

hw_mode=g

channel=6

wmm_enabled=1

macaddr_acl=0

auth_algs=1

ignore_broadcast_ssid=0

wpa=2

wpa_passphrase=12345678

wpa_key_mgmt=WPA-PSK

rsn_pairwise=CCMP

其中

interface=wlan0,指定网卡名称为wlan0。

wpa=2,采用WPA2加密方式。

ssid=pi3ap为热点名称,可根据实际情况修改。

wpa_passphrase=12345678为热点密码,可根据实际情况修改,如果采用WPA2加密方式,密码的长度应该不少于8个字符。

3、检查配置是否成功:

sudo /usr/sbin/hostapd /etc/hostapd/hostapd.conf

如果出现AP-ENABLED并且客户端能搜索到SSID,表示AP模式已启用成功。如果有报错,说明驱动和hostapd配置没有正确设置。

这个时候试图连接SSID的时候,发现无法获取IP,是因为DNS和NAT还没有配置,但会有打印信息如下,按下CTRL+C可以退出检查模式。

wlan0: AP-STA-CONNECTEDec:85:2f:18:f2:be

wlan0: STA ec:85:2f:18:f2:beRADIUS: starting accounting session 56A31C81-00000000

wlan0: STA ec:85:2f:18:f2:be WPA:pairwise key handshake completed (RSN)

wlan0: STA ec:85:2f:18:f2:be IEEE802.11: disassociated

wlan0: AP-STA-DISCONNECTEDec:85:2f:18:f2:be

wlan0: STA ec:85:2f:18:f2:be IEEE802.11: associated

wlan0: AP-STA-CONNECTEDec:85:2f:18:f2:be

wlan0: STA ec:85:2f:18:f2:beRADIUS: starting accounting session 56A31C81-00000001

wlan0: STA ec:85:2f:18:f2:be WPA:pairwise key handshake completed (RSN)

wlan0: STA ec:85:2f:18:f2:be IEEE802.11: disassociated

wlan0: AP-STA-DISCONNECTEDec:85:2f:18:f2:be

wlan0: STA ec:85:2f:18:f2:be IEEE802.11: associated

wlan0: AP-STA-CONNECTEDec:85:2f:18:f2:be

wlan0: STA ec:85:2f:18:f2:beRADIUS: starting accounting session 56A31C81-00000002

为了能让系统每次启动都自动加载AP模式下的配置,我们需要配置hostapd为自启动模式。

4、配置自启动模式

打开默认配置文件,找到#DAEMON_CONF=””,将前面的#号去掉,

sudo nano /etc/default/hostapd

将#DAEMON_CONF=””改为:

DAEMON_CONF="/etc/hostapd/hostapd.conf"

七、配置dnsmasq

为了实现上网功能,需要对dnsmasq服务进行配置,首先备份一下系统默认的文件,然后创建一个新的配置文件。

备份:mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig

打开配置文件:nano /etc/dnsmasq.conf

具体的配置信息如下所示:DNS请求服务器地址这里要配置成本地上网的DNS地址,否则可能解析错误,连不上网络

interface=wlan0

bind-interfaces

server=211.70.60.71

server=114.114.114.114

server=8.8.8.8

domain-needed

bogus-priv

dhcp-range=192.168.0.2,192.168.0.254,12h

八、设置IPV4转发

1、打开系统配置文件sysctl.conf,将IPV4转发那一行的#去掉

打开系统配置文件:nano /etc/sysctl.conf

去掉net.ipv4.ip_forward=1前的#

下一次重启后会生效,如果不想现在重启,可以直接在终端输入如下指令直接生效:

sh -c "echo 1 >/proc/sys/net/ipv4/ip_forward"

2、为了实现PI3以太网接口共享给wlan0上网,需要配置NAT,需先依次执行如下防火墙命令:

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT

最后需要重启服务:

service hostapd start

iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT

为了不每次都手动配置,需要将以上规则设为自启动:

sh -c "iptables-save> /etc/iptables.ipv4.nat"

3、通过获取DHCPCD来运行NAT需要创建一个新文件

创建并打开文件:nano /lib/dhcpcd/dhcpcd-hooks/70-ipv4-nat

写入内容:

up iptables-restore </etc/iptables.ipv4.nat

九、重启服务

service dnsmasq start

reboot

如果所有的配置成功,那么便可查找到SSID为chq的热点,热点密码为12345678,热点的IP地址为192.168.0.1,笔记本被分配的IP地址为192.168.0.232。

问题1:

解决方法:ifconfig wlan0 192.168.0.1 up

问题2:

WiFi热点设置成功后,如果出现无线设备连接时不断掉线的情况,则重复执行第八大项操作里的第2小项

[1] 还可以参照

标签: #80211nwin10