Skip to content

将树莓派设置为桥接无线访问点

树莓派可以用作现有以太网网络中的桥接无线访问点。这会将网络扩展到无线计算机和设备。

如果您希望创建一个独立的无线网络,请考虑设置一个路由访问点

                                         +-RPi ------- +
                                     + --- + 10.10.0.2 | +-笔记本电脑---- +
                                     | | WLAN AP +-)))((((-+ WLAN客户端|
                                     | |桥| | 10.10.0.5 |
                                     | + ------------- + + ------------- +
                 +-路由器---- + |
                 |防火墙| | +-PC#2 ------ +
(互联网)--- WAN- + DHCP服务器+ -LAN-+ --- + 10.10.0.3 |
                 | 10.10.0.1 | | + ------------- +
                 + ------------- + |
                                     | +-PC#1 ------ +
                                     + --- + 10.10.0.4 |
                                         + ------------- +

可以使用树莓派 4,树莓派 3或树莓派 Zero W的内置无线功能或使用支持访问点模式的合适的 USB 无线加密狗来创建桥接无线访问点。 某些 USB 软件狗可能需要对其设置进行些微更改。如果您在使用 USB 无线加密狗时遇到问题,请查看论坛

本文档已在运行树莓派 OS Buster全新安装的树莓派 3B上进行了测试。

在你开始之前

*确保您具有对树莓派的管理访问权限。网络设置将在安装过程中完全重置:建议使用本地访问方式,将屏幕和键盘连接到树莓派。

注意:如果通过 SSH 进行远程安装, 通过名称 连接到您的树莓派,例如 ssh pi @ raspberrypi.local`。安装后,网络上树莓派的 IP 地址"可能会更改"。 准备安装屏幕和键盘,以防安装后失去与树莓派的联系。 将树莓派连接到以太网,然后启动树莓派 OS。 确保树莓派上的树莓派 OS是最新并在安装过程中重新启动软件包。 *准备好无线客户端(笔记本电脑,智能手机等)来测试您的新接入点。

安装接入点软件

为了充当桥接访问点,树莓派需要安装" hostapd"访问点软件包:

sudo apt安装 hostapd 

启用无线接入点服务并将其设置为在树莓派启动时启动:

sudo systemctl取消屏蔽 hostapd 
sudo systemctl启用 hostapd 

软件安装完成。稍后我们将配置接入点软件。

设置网桥

在树莓派上运行的网桥网络设备将使用其内置接口连接以太网和无线网络。

创建网桥设备并填充网桥

通过使用以下命令创建文件来添加名为`br0'的网桥设备,其内容如下:

 sudo 纳米/etc/systemd/network/bridge-br0.netdev

文件内容:

[NetDev]
名称= br0
种类=桥

为了桥接以太网和无线网络,首先通过创建以下文件将内置以太网接口(eth0)添加为桥接成员:

 sudo 纳米/etc/systemd/network/br0-member-eth0.network

文件内容:

[比赛]
名称= eth0

[网络]
桥= br0

注意:接入点软件将在服务启动时将无线接口" wlan0"添加到网桥。无需为该接口创建文件。对于无线 LAN 接口,这种情况尤为严重。

现在,当您的树莓派启动时,启用systemd-networkd服务来创建并填充网桥:

sudo systemctl启用系统联网

定义网桥设备 IP 配置

作为网桥设备成员的网络接口永远不会分配 IP 地址,因为它们通过网桥进行通信。桥接设备本身需要一个 IP 地址,以便您可以通过网络访问树莓派。

树莓派上的 DHCP 客户端 dhcpcd 自动为每个活动接口请求 IP 地址。因此我们需要阻止处理 eth0 和 wlan0 接口,并让 dhcpcd 通过 DHCP 仅配置 Br0 。

 sudo nano /etc/dhcpcd.conf

在文件开头附近添加以下行(如果存在,则在第一行" interface xxx"行上方):

denyinterfaces wlan0 eth0

转到文件末尾并添加以下内容:

接口 br0 通过此行,将通过 DHCP 按照默认值配置接口" br0"。保存文件以完成机器的 IP 配置。

确保无线操作

世界各国对电信无线电频段的使用进行监管,以确保无干扰运行。 Linux操作系统允许用户使用两个字母的" WiFi国家/地区代码"配置应用程序,从而帮助用户遵守遵循这些规则。美国使用的计算机的" US"。

在树莓派 OS中,直到用户配置了 WiFi 国家代码(通常是初始安装过程的一部分)后,才能禁用 5 GHz无线网络连接(有关详细信息,请参见本节(README.md)中的无线配置页)。 )

为确保树莓派上的 WiFi 无线电未被阻止,请执行以下命令:

sudo rfkill解锁无线局域网

此设置将在启动时自动恢复。接下来,我们将在接入点软件配置中定义适当的国家/地区代码。

配置接入点软件

创建位于" /etc/hostapd/hostapd.conf"中的" hostapd"配置文件,为您的新无线网络添加各种参数。

 sudo nano /etc/hostapd/hostapd.conf

将以下信息添加到配置文件。此配置假定我们使用的是频道 7 ,其网络名称为 NameOfNetwork ,密码为 AardvarkBadgerHedgehog 。请注意,名称和密码不应带有引号。密码的长度应在 8 到 64 个字符之间。

country_code = GB
接口= wlan0
桥= br0
ssid = NameOfNetwork
hw_mode = g
频道= 7
macaddr_acl = 0
auth_algs = 1
ignore_broadcast_ssid = 0
wpa = 2
wpa_passphrase = AardvarkBadgerHedgehog
wpa_key_mgmt = WPA-PSK
wpa_pairwise = TKIP
rsn_pairwise = CCMP

注意" interface = wlan0"和" bridge = br0"这行:它们直接在 hostapd 中向接入点启动时将" wlan0"接口作为网桥成员添加到" br0",从而完成了以太网和无线之间的桥接。

请注意" country_code = GB"行:它将计算机配置为使用英国的正确无线频率。 适应此行,并指定您所在国家/地区的两个字母的 ISO 代码。请参阅Wikipedia,以获取两个字母的 ISO 3166-1国家/地区代码列表。

要使用 5 GHz频段,可以将操作模式从" hw_mode = g"更改为" hw_mode = a"。 " hw_mode"的可能值为: - a = IEEE 802.11a(5 GHz)(树莓派 3B +起) - b = IEEE 802.11b(2.4 GHz) - g = IEEE 802.11g(2.4 GHz)

请注意,更改" hw_mode"时,您可能还需要更改"频道"-有关允许的组合列表,请参见Wikipedia

运行新的无线接入点

现在,重新启动树莓派,并验证无线访问点是否自动可用。

sudo systemctl重新启动

树莓派重新启动后,请使用您的无线客户端搜索无线网络。您在文件/etc/hostapd/hostapd.conf中指定的网络 SSID 现在应该存在,并且可以使用指定的密码进行访问。

如果您的无线客户端可以访问本地网络和 Internet ,那么恭喜您设置新的访问点!

如果遇到困难,请与论坛联系以获得帮助。请在您的消息中参考此页面。