当前位置:首页 > 文章中心 > 正文内容

树莓派构建无线AP(树莓派4b 无线)

一、 实验设备

☆ 树莓派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] 还可以参照
https://blog.csdn.net/a83025273/article/details/101955773

扫描二维码推送至手机访问。

版权声明:本文由第六芝士网发布,如需转载请注明出处。

本文链接:http://www.dgx666.com/post/3359.html

分享给朋友:

“树莓派构建无线AP(树莓派4b 无线)” 的相关文章

CAD安装哪个版本好?今天让我来告诉你

CAD安装那个版本比较好一直以来是困扰大家的一个问题,今天我们就来对CAD安装那个版本比较好做一个深入的讲解!现在的CAD版本多且杂,从比较常见的版本来看(再早的我们就不在这里过多叙述),从2000到现在最新的2022,每个版本都有相当大的用户群体,每个人都有自己选择CAD版本的理由,但是大体可以分...

CAD打开提示:“可执行文件超出指定的受信任的位置”怎么办?

如果AutoCAD2014、2015、2016、2017、2018、2019、2020、2021、2022、2023等软件平台上,在加载CAD类二次开发软件(如飞时达工程类设计软件、天正建筑设计软件等),会提示文件加载安全提示:“可执行文件超出指定的受信任的位置”,您要执行什么操作?如下图所示:Au...

win10 21h1系统安装cad2014无法启动的解决方法

说到AutoCAD2014,它是一款计算机辅助设计软件,可以用于绘制,二维制图,和基本三维设计等功能。但是有一位深度技术的小伙伴在win10 21H1系统中安装cad2014软件后,出现了启动不了cad2014的问题,所以深度系统小编就来为大家带来相关的解决方法。方法如下:1、打开默认位置C:\Pr...

cad2007修剪工具使用方法技巧 #cad2007

大家好,今天给大家分享一下在 cd 当中修剪工具的使用方法。1. 这个工具用的非常多,经常会画一些线条去进行裁剪。其用法是,当这种线条有交叉了以后,如果需要去把多余的延伸出来的线条进行修剪,可以使用这个工具 tr,它的命令是缩进去以后空格一次、两次,然后点击这些线条就可以删除,这样就可以把交叉的线条...

分享三个CAD坐标原点和基点小技巧

CAD使用过程中,关于坐标原点和基点的三个小技巧用得着的工友,可以收藏问题 1 :重新设定的坐标原点,为什么坐标系仍在原位置。出现这种问题的原因不是未设置成功,只是显示问题。命令行输入uc调出ucs设置窗口,设置菜单下勾选“显示于ucs原点”,单击确定。即新定义的坐标原点会显示。问题 2 :怎么定义...

为什么用CAD软件绘图,鼠标会一直抖动?你关掉这两个设置就好了

CAD软件应该是绘制平面图类软件的霸主了,可是大部分人使用的时候不注意一些细节,导致绘图的时候遇到许多问题,没有及时处理,大大影响绘图效率。例如在绘图时,鼠标总是出现抖动状态,很多小伙伴都对此视而不见,以为是软件自身问题或显卡的问题,其实并不是。我们一起来看看是什么问题吧~一、鼠标为什么会抖动看下你...