通过 NetworkManager D-Bus 接口获取可用网络

通过 NetworkManager D-Bus 接口获取可用网络

我正在寻找如何nmcli dev wifi list使用 D-Bus 接口找到可用网络(例如来自 )。

看着应用程序编程接口我没有看到任何属性或方法。我想知道是否可以从 D-Bus 接口获取此信息?我知道我可以从中得到这个wpa_supplicant,但你无法在运行wpa_supplicant时与之交谈。NetworkManager

答案1

nmcli 几乎所有功能都是通过使用 D-Bus API 实现的。与大多数 NetworkManager 客户端一样。

API 文档在这里:https://developer.gnome.org/NetworkManager/stable/spec.html#dbus-interfaces

/org/freedesktop/NetworkManager/AccessPoint/*对象。此外,Wi-Fi 设备还有一个属性AccessPoints。看https://developer.gnome.org/NetworkManager/stable/gdbus-org.freedesktop.NetworkManager.Device.Wireless.html

此外,您可能首先需要触发扫描。查看LastScan设备上的时间戳。

最后,我不明白为什么你不能与 wpa_supplicant 交谈,只能获取当前的扫描列表。至少如果你不干扰 NetworkManager 正在做的事情,它应该可以工作。不过,我只会和NM交谈。

相关内容