如何使用 nmcli 连接到隐藏的 wifi 网络
Posted
技术标签:
【中文标题】如何使用 nmcli 连接到隐藏的 wifi 网络【英文标题】:How to connect to hidden wifi network using nmcli 【发布时间】:2016-05-30 07:43:11 【问题描述】:我必须编写一个连接到隐藏 wifi 网络的 linux 桌面软件。 如果网络不是隐藏的,我的代码可以通过调用nmcli来连接,但是如果是隐藏的,则无法添加连接。但是,我可以使用网络管理器的 GUI 创建一个新网络,所以我认为这不是不可能的。你有什么想法吗?
【问题讨论】:
【参考方案1】:好的,我有办法。我们知道 ssid 和密码。
nmcli c add type wifi con-name <connect name> ifname wlan0 ssid <ssid>
nmcli con modify <connect name> wifi-sec.key-mgmt wpa-psk
nmcli con modify <connect name> wifi-sec.psk <password>
nmcli con up <connect name>
如果我们不再需要连接:
nmcli c delete <connect name>
【讨论】:
只是为了清楚。删除时,id NAME
或uuid UUID
,其中NAME 和UUID 可以通过nmcli -p c
获得。例如。 nmcli c delete id esp8266_ap
。这是指 nmcli 工具,版本 0.9.8.8。这对我来说很好用:
nmcli dev wifi connect "abc" password 123 hidden yes
【讨论】:
这对我不起作用™ 我收到一条错误消息:“网络管理器无法扫描隐藏的 SSID:已扫描时不允许扫描。”然而,选定的答案对我有用。 您只需等待几秒钟即可完成扫描。【参考方案3】:在进行一些实验时,我发现您可以同时使用 echnotux 和 Pocokman 的答案来连接它。即
nmcli c add type wifi con-name <connect name> ifname wlan0 ssid <ssid>
nmcli dev wifi connect <ssid> password <password> hidden yes
nmcli c delete <connect name>
这大大简化了它。
【讨论】:
以上是关于如何使用 nmcli 连接到隐藏的 wifi 网络的主要内容,如果未能解决你的问题,请参考以下文章
如何在android中检查网络是不是连接到wifi [重复]
设备在Android中连接到WiFi时如何获取蜂窝网络的IP地址