如今,似乎每个设备都支持WiFi,但实际上并非所有设备都具有无线互联网连接。这就是 Raspberry Pi 的工作原理。您可以将 Raspberry Pi 变成 WiFi 网桥。
如果您想重用旧的、仅基于以太网的桌面,并且需要一种快速、简单的方法将 WiFi 信号转换为以太网连接,您可以使用 Raspberry Pi。
需要准备的东西
要完成本教程,您需要:
- 带有运行 Raspberry Pi OS 的 WiFi 模块(Raspberry Pi 0、3 和 4)的 Raspberry Pi 模型
- 电源线与树莓派兼容
- 外置键盘以及如何将其连接到 Raspberry Pi
- HDMI 或微型 HDMI 电缆,具体取决于 Raspberry Pi 型号
- 外屏
- 以太网线
更新圆周率
如果尚未完成,请将外部键盘、显示器和任何其他外围设备连接到 Raspberry Pi,然后将 Pi 插入电源。
开始之前,请检查 Raspberry Pi 是否是最新的。通过单击 Raspbian 工具栏上的终端图标打开一个新终端,然后运行以下命令:
sudo apt update && sudo apt-y 升级
设置网络服务:安装dnsmasq
接下来,安装 dnsmasq,提供域名系统 (DNS) 缓存和动态主机配置协议 (DHCP) 服务器。使用这个包来处理 DNS 请求。这将允许 Raspberry Pi 充当纯以太网设备的迷你路由器。
安装dnsmasq,运行以下命令:
sudo apt install dnsmasq
配置以太网连接
接下来,让我们通过修改dhcpcd.conf文件来设置eth0接口使用静态IP地址。 要打开此配置文件,请运行以下命令:
sudo nano/etc/dhcpcd.conf
现在,dhcpcd.conf 文件将在 Nano 编辑器中打开。在此文件中,添加以下信息:
interface eth0 static ip_address=192.168.220.1/24 static routers=192.168.220.0
按Ctrl
+ O
保存更改。要关闭配置文件,请按Ctrl
+ X
。
可以通过重启dhcpcd服务来进行这些更改:
sudo service dhcpcd restart
更换dnsmasq配置文件
dnsmasq 包提供了一个默认配置文件,但您需要将其替换为您自己的自定义设置,以便让 dnsmasq 知道如何处理 DHCP 和 DNS 流量。
在进行任何更改之前,重命名并重新定位原始 dnsmasq.conf 文件:
sudo nano/etc/dnsmasq.conf/etc/dnsmasq.conf.original
打开备用配置文件进行编辑:
sudo nano/etc/dnsmasq.conf
您现在应该可以在 Nano 编辑器中看到 dnsmasq.conf 文件。在 Nano 中,添加:
interface=eth0 listen-address=192.168.220.1 bind-interfaces server=8.8.8.8 domain-needed bogus-priv dhcp-range=192.168.220.50,192.168.220.150,12h
您可以使用 Nano 编辑器创建自定义 dnsmasq.conf 文件。
保存更改,按Ctrl
+ O
。要关闭配置文件,请按Ctrl
+ X
。
允许 IP 转发
接下来,启用 IP 转发,以便 Raspberry Pi 可以接受来自以太网连接的网络数据包并将它们转发到路由器。
要启用ipv4p IP转发,编辑sysctl.conf配置文件。
sudo nano/etc/sysctl.conf
sysctl.conf 文件现在将在 Nano 编辑器中启动。在此文件中,找到以下内容:
#net.ipv4.ip_forward=1
删除#,这行变成:
net.ipv4.ip_forward=1
保存更改并关闭配置文件。
现在,使新的配置文件 sysctl.conf 生效:
sudo sh-c "echo 1>/proc/sys/net/ipv4/ip_forward"
开始将流量从以太网转发到 WiFi
您现在已成功启用 IP 转发。您可以将防火墙配置为将流量从以太网接口 (eth0) 转发到 WiFi 连接。有了这个继电器,通过以太网连接到树莓派的每个设备都可以访问树莓派的 WiFi (wlan0) 连接。
添加一些规则让树莓派知道如何转发它收到的所有数据包:
sudo iptables-t nat-A POSTROUTING-o wlan0-j MASQUERADE sudo iptables-A FORWARD-i wlan0-o eth0-m state--state RELATED,ESTABLISHED-j ACCEPT sudo iptables-A FORWARD-i eth0-o wlan0-j ACCEPT
保存这些新规则:
sudo sh-c "iptables-save >/etc/iptables.ipv4.nat"
每次树莓派重启时这些规则都会被删除,所以请确保它们在启动时重新加载。
通过编辑 rc.local 文件确定启动时会发生什么:
sudo nano/etc/rc.local
现在,rc.local 文件将在 Nano 编辑器中打开。在编辑器中,找到以下内容:
exit 0
直接在'exit'行添加以下项目:
iptables-restore </etc/iptables.ipv4.nat
保存更改并关闭配置文件。
检查无线网桥
最后一步是启动dnsmasq服务:
sudo service dnsmasq start
现在您可以检查您的 WiFi 网桥了!通过以太网电缆将任何仅限以太网的设备连接到 Raspberry Pi。 Raspberry Pi 现在将为这个纯以太网设备提供互联网连接。
0 评论