raspberrypi+openclaw笔记

raspberrypi+openclaw笔记

问题

raspberry 3b如何配置多个wlan0,图形化界面显示 no wireless interfaces found

解决办法

先给结论:树莓派 3B不能直接创建多个 wlan0(一个物理网卡只能一个主接口名);图形化提示 “No wireless interfaces found”,优先是WiFi 国家码未设、射频被锁、NetworkManager/dhcpcd 冲突、或多网卡命名混乱导致。下面分步解决。

一、先修复 “no wireless interfaces found”(图形化看不到 WiFi)

1. 检查硬件与接口是否存在

# 列出所有网络接口(看是否有wlan0/wlan1)
ip link show
# 看WiFi是否被软/硬锁
sudo rfkill list all
# 解锁WiFi(关键)
sudo rfkill unblock wifi
sudo rfkill unblock all

若输出里没有 wlan0/wlan1,或 WiFi 显示Soft blocked: yes,执行上面解锁命令。

2. 必须设置 WiFi 国家码(最常见原因)

运行
sudo raspi-config
# 依次进入:Localisation Options → WLAN country → 选 China (CN) → 保存退出
sudo reboot

不设国家码,WiFi 会被强制禁用,图形化必然找不到接口。

3. 修复网络管理冲突(dhcpcd vs NetworkManager)

新版 Raspberry Pi OS 默认用NetworkManager,若你手动改了/etc/network/interfaces或dhcpcd.conf,会导致冲突。

运行
# 查看当前网络管理服务
sudo systemctl status NetworkManager
sudo systemctl status dhcpcd

推荐方案:统一用NetworkManager(图形化友好)

运行
# 启用NetworkManager,禁用dhcpcd
sudo systemctl enable --now NetworkManager
sudo systemctl disable --now dhcpcd
sudo reboot

备选:用传统dhcpcd(不推荐图形化)

运行
sudo systemctl disable --now NetworkManager
sudo systemctl enable --now dhcpcd
# 恢复默认interfaces(不要手动改)
sudo nano /etc/network/interfaces
# 内容保持默认:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
allow-hotplug wlan0
iface wlan0 inet manual
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
sudo reboot

4. 修复 wpa_supplicant 配置

运行
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
# 确保有country码,且network块正确
country=CN
network={
    ssid="你的WiFi名"
    psk="你的WiFi密码"
    key_mgmt=WPA-PSK
}
# 重启服务
sudo systemctl restart wpa_supplicant

### 5. 排查驱动 / 固件(少见但必要)
```bash
运行
# 更新固件与驱动
sudo apt update
sudo apt full-upgrade
sudo rpi-update
sudo reboot

二、“多个 wlan0” 的正确实现(多 WiFi 接口)

树莓派 3B板载只有 1 个 WiFi,要多 WiFi 接口,必须加 USB WiFi 网卡(会出现 wlan0、wlan1、wlan2…)。

1. 多网卡命名固定(避免重启后 wlan0/wlan1 互换)

运行
# 禁用systemd predictable命名(保持wlan0/wlan1)
sudo ln -nfs /dev/null /etc/systemd/network/99-default.link
# 按MAC固定网卡名(推荐)
sudo nano /etc/udev/rules.d/70-persistent-net.rules
# 添加(替换为你的MAC):
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="aa:bb:cc:dd:ee:ff", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="11:22:33:44:55:66", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan1"
sudo reboot

2. 多 WiFi 配置(NetworkManager 图形化 / 命令行)

图形化:右上角网络图标 → 选择 WiFi → 输入密码,每个 WiFi 对应一个连接配置,可同时连多个(需网卡支持)。
命令行(nmcli):

运行
# 查看所有连接
nmcli connection show
# 连接WiFi(wlan1连第二个WiFi)
nmcli device wifi connect "WiFi2" password "密码2" ifname wlan1
# 设置静态IP(可选)
nmcli connection modify "WiFi2" ipv4.method manual ipv4.addresses 192.168.2.100/24 ipv4.gateway 192.168.2.1 ipv4.dns 8.8.8.8
nmcli connection up "WiFi2"

3. 多 WiFi 同时工作(客户端 + 热点)

一个网卡连外网(wlan0),另一个开热点(wlan1):

运行
# 安装热点工具
sudo apt install hostapd dnsmasq
# 配置wlan1为热点(静态IP)
sudo nano /etc/dhcpcd.conf
interface wlan1
    static ip_address=192.168.4.1/24
    nohook wpa_supplicant
# 配置hostapd(热点名称/密码)
sudo nano /etc/hostapd/hostapd.conf
interface=wlan1
driver=nl80211
ssid=PiAP
hw_mode=g
channel=6
wmm_enabled=0
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
# 启用服务
sudo systemctl unmask hostapd
sudo systemctl enable --now hostapd
sudo systemctl enable --now dnsmasq
sudo reboot

三、常见问题排查

1.图形化仍看不到 WiFi:

确认已设country=CN、已rfkill unblock、NetworkManager 已启用。
执行nmcli device,看 WiFi 是否显示connected或disconnected(不是unavailable)。

2.多网卡只有一个能连:

检查是否同信道干扰,或网卡不支持并发。
用iwlist wlan1 scan确认 wlan1 能扫描到网络。

3.重启后配置丢失:

用 NetworkManager 管理,不要手动改/etc/network/interfaces。
固定网卡名(udev 规则)。

posted @ 2026-03-17 14:25  念槐聚  阅读(23)  评论(0)    收藏  举报