我有一台装有 Ubuntu Server 20.04 的 Raspberry Py 4。我想在其上设置 WiFi 连接。我有两个 WiFi 网络(2.4 ghz 和 5 ghz),均已隐藏并设置了 WPA2-Personal。
在我的/etc/netpaln/50-cloud-init.yaml
我有以下配置:
network:
version: 2
ethernets:
eth0:
dhcp4: true
optional: true
wifis:
wlan0:
optional: true
access-points:
"MY_HIDEN_SID":
password: "MY_PASSWORD"
dhcp4: true
不幸的是,网络连接不起作用。但是,如果我在手机上设置移动热点并更改 SID 和密码,它就会成功连接。所以原因一定是隐藏网络。
问题: 如何将 Raspberry Pi 4 连接到 Ubuntu Server 20.04 上的隐藏 WiFi 网络?
更新: 事实证明有一个选择指定netplan
隐藏网络。但只有从 0.100 版本开始才可用。同时,无法确定 20.20 发行版中包含哪个版本(它不是最新版本),因为 netplan 开发人员已删除来自“netplan info”输出的版本信息。
更新2 这次黑客攻击帮助解决了这个问题。
答案1
网络计划
.yaml 文件的格式非常挑剔。
使用这个 .yaml,并保持间距、缩进和无制表符完全相同...在您的 SSID 和密码中编辑...
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: true
optional: true
wifis:
wlan0:
#hidden: true # only in netplan 0.100
dhcp4: true
access-points:
"MYREALSSID\"\n scan_ssid=1\n# \"hack!":
password: "MY_PASSWORD"
sudo netplan generate
sudo netplay apply
wpasupplicant 客户端
Ubuntu Server 未wpasupplicant
预装,需要无线网络才能工作。我们将安装它。需要有效的以太网连接或 USB 闪存驱动器。
sudo apt-get update
sudo apt-get install wpasupplicant
reboot
更新#1:
让隐藏网络正常工作的黑客方法是这里。
答案2
20.04 上隐藏 SSID 的 netplan 文件的正确格式是:
network:
version: 2
ethernets:
eth0:
dhcp4: true
optional: true
wifis:
wlan0:
optional: true
access-points:
"MY_HIDEN_SID":
password: "MY_PASSWORD"
hidden: true
dhcp4: true