使用 Raspberry Pi 作为家庭路由器

发布: (2025年12月25日 GMT+8 22:59)
2 分钟阅读
原文: Dev.to

Source: Dev.to

前置条件

  • 基于 Debian Bookworm(或更高版本)的 Raspberry Pi OS
  • 通过以太网端口 (eth0) 正常的互联网连接
  • 使用 NetworkManager 管理网络连接
  • eth0 已正确配置

验证以太网连接

sudo nmcli device

确认 eth0 处于 connected(已连接)状态。

创建 Wi‑Fi 接入点

注意:wlan0 替换为你的无线接口名称。

# 添加一个新的 Wi‑Fi 连接
sudo nmcli connection add type wifi \
  ifname wlan0 \
  con-name ap0 \
  ssid "" \
  autoconnect yes

# 将接口设置为接入点模式
sudo nmcli connection modify ap0 \
  802-11-wireless.mode ap

# 使用 2.4 GHz 频段
sudo nmcli connection modify ap0 \
  802-11-wireless.band bg

# 配置 WPA2/WPA3 预共享密钥
sudo nmcli connection modify ap0 \
  wifi-sec.key-mgmt wpa-psk \
  wifi-sec.psk ""

启用 NetworkManager 共享模式

NetworkManager 的共享模式将会:

  • 在 Wi‑Fi 接口上启动 DHCP 服务器
  • 启用 IP 转发
  • 应用 IP 伪装(NAT)
# 启用共享模式(IPv4)
sudo nmcli connection modify ap0 \
  ipv4.method shared

# 为接入点指定 IPv4 子网
sudo nmcli connection modify ap0 \
  ipv4.addresses 172.18.0.1/24

# (可选)禁用 IPv6
sudo nmcli connection modify ap0 \
  ipv6.method ignore

# 启动接入点
sudo nmcli connection up ap0

验证设置

# 显示分配给 Wi‑Fi 接口的 IP 地址
ip -4 addr show wlan0

# 显示路由表
# 预期结果:
# - 172.18.0.0/24 通过 wlan0
# - 默认路由 通过 eth0
ip -4 route

# 列出已连接的站点(第 2 层)
sudo iw dev wlan0 station dump

# 列出 IP 层(第 3 层)已连接的设备
ip neigh show dev wlan0

参考资料

Back to Blog

相关文章

阅读更多 »