问题标签 [connman]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
21294 浏览

linux - 如何使用 connman 为 wifi 网络设置静态 IP 地址

我正在尝试使用 connmanctl 为 wifi 网络设置静态 IP(手动,无 dhcp)地址。我正在运行埃 linux。

我得到以下信息:

connmanctl
connmanctl> config wifi_"HASH"_managed_psk --ipv4 manual 192.168.10.2 255.255.255.0 192.168.10.1 错误wifi_"HASH"_managed_psk:不支持

有人知道怎么做吗?

0 投票
2 回答
1166 浏览

yocto - 如何在 Yocto 中包含另一个图像的配方

我想通过 bbappend 文件在非 quemu 图像中包含以下配方。如何覆盖 SRC_URI_append_quemuall?

https://github.com/ExorEmbedded/yocto-poky/blob/exorint/meta/recipes-connectivity/connman/connman-conf.bb

提前致谢!

0 投票
1 回答
3649 浏览

linux - 如何使用 connman 设置以太网接口 MAC 地址

我有一个嵌入式系统,需要我从闪存中提取 MAC 地址,并在启动时将其传递给以太网接口。传统上,我在 init 脚本中修改了对 ifconfig 的调用,只传递从闪存中取出的 MAC 作为hw ether参数。

我正在开发的系统使用 connman 来处理网络连接。嵌入式系统将始终具有单个以太网连接,并在闪存中以自定义格式具有单个匹配的 MAC 地址。connman 用于当接口可用时发生变化,因此拥有一个动态系统来处理接口的上下移动和配置是有帮助的。

是否可以将 MAC 传递给 connman,以便以与我之前使用 ifconfig 类似的方式使用,如果可以,如何使用?

或者,是否可以将 MAC 作为引导参数传递给内核,以便 connman 永远不必知道这一点?我可以在 U-Boot 中将 MAC 从闪存中拉出,但 U-Boot 无法使用以太网设备。

0 投票
1 回答
303 浏览

networking - connman 中的通道配置

我正在尝试建立一个 Wi-Fi 接入点。我尝试使用 hostapd 和 connman。在 hostapd 中,我可以在 hostapd.conf 中配置通道号,而在 connman 的情况下,没有可用于在 main.conf 中配置通道的参数。

我很震惊知道在 connman 中配置通道的参数。如果是这样,那么它是 hostapd 和 connman 的区别吗

0 投票
1 回答
905 浏览

networking - Connman 重新联机时切换回首选网络

我想在嵌入式系统中使用 ConnMan。它似乎提供了我正在寻找的大部分功能,包括 3G 和 VPN 管理。

但经过一些研究,似乎其中可能存在一个缺失点。假设我有以下设置:

  • 以太网连接作为首选连接
  • 3/4G 连接作为备份/故障转移连接

我的以太网始终处于打开状态,并且 dhcp 服务器正常提供 IP,电缆仍然插入,并且线路仍然通电,但有时互联网连接会丢失。所以在这种情况下,我将切换到我的 3G 连接。但是尽快,当连接通过以太网恢复在线时,出于性能和成本原因,我想切换回它。

这是默认支持的,还是有办法以这种方式配置它?

我发现这个帖子似乎说当时不支持它,因为没有定期检查(2013 年 2 月)。并且还来自文档

自动连接

自动连接服务时会考虑启用了自动连接的收藏(已保存)网络。这些服务在 connmanctl 中分别标有“*”和“A”。默认情况下,ConnMan 会按照它们在服务列表中显示的顺序自动连接它们,直到其中一个被连接。之后,自动连接的服务正在使用中,ConnMan 不会选择新的服务,直到网络超出范围。当服务超出范围或与网络基础设施端断开连接时,将重新运行自动连接并选择另一个最喜欢的可自动连接服务。

如果不清楚,请随时询问更多信息。

0 投票
0 回答
1524 浏览

connection - Connman without any user interaction

I'm trying to use Connman to manage the WiFi connection of my embedded system because it handles automagically any type of protection.

In interactive mode it's very simple:

  1. connmanctl
  2. agent on
  3. scan wifi
  4. services
  5. connect
  6. enter password if requested

On my system, the user enters the WiFi credentials (SSID, password) using a remote (web) application. Then I would use this information to setup connman using a script.

The goal is to avoid the user to select which type of protection is going to setup. I mean, most users just enter SSID/password but they don't know if it is a WPA-PSK or WEP connection.

I'm reading throught the documentation, but I'm not sure which is the correct approach:

but as far as I understand I need to specify the type of the security:

Security: The security type of the network. Possible values are 'psk' (WPA/WPA2 PSK), 'ieee8021x' (WPA EAP), 'none' and 'wep'. When not set, the default value is 'ieee8021x' if an EAP type is configured, 'psk' if a passphrase is present and 'none' otherwise.

It seems 'wep' is not handled if the field is omitted.

Here I understand it needs an 'agent' to feed the passphrase, thus I'm afraid I cannot send it programmatically.

Do you have any recommendation about?

0 投票
1 回答
1955 浏览

python - connman 连接到服务:DBus UnknownMethod

我编写了一个简单的 Python 脚本来注册代理并连接到 connman 服务:

这是输出:

似乎代理已注册,但服务接口无法识别“连接”方法。根据文档,它应该存在:

http://git.kernel.org/cgit/network/connman/connman.git/tree/doc/service-api.txt

并且 test-connman 脚本也调用它:

http://git.kernel.org/cgit/network/connman/connman.git/tree/test/test-connman

调试此类问题的最佳方法是什么?

我还添加了几行来查看该路径上的可用方法:

这是输出:

没有签名的 Connect 方法就在那里!为什么它说:UnknownMethod?

0 投票
1 回答
674 浏览

clojure - Clojure 建立多个数据库连接

我们有一个 Clojure Web 应用程序,供多个用户同时登录的多个项目 (>20) 使用。所有项目都有自己的 MySQL 数据库。我们试图找出一种方法来使用一个应用程序实例来服务来自他们项目数据库的用户的请求。

以下脚本显示了我们的多个连接的原理,并且应该可以在 REPL 中执行(使用正确的数据库设置)。

更具体地说,该项目是从路由器中的 URL 请求中推断出来的。以下代码显示了路由器的原理。访问 www.example.com/DB1/page1 和 www.example.com/DB2/page2 将分别显示带有来自 DB1 的数据的 page1 和带有来自 DB2 的数据的 page2。

这将是一个具有相当大流量的应用程序。值得注意的是,我们仍处于开发阶段,因此无法使用在 localhost 上运行的多个数据库来测试此解决方案。我们的问题是

  • 像这样建立多个连接是否合理、稳定和可扩展?
  • 项目数据库的路由和动态绑定还有其他更好的方法吗?
0 投票
0 回答
1873 浏览

c - Connman dbus,连接到受保护的 wifi 网络

我想使用 connman dbus 服务连接到受 wifi 保护的网络。我可以使用 dbus-send 命令连接到开放网络,但对于受保护的网络,我无法直接连接,我尝试使用路径 /test/agent 注册代理,但我不知道在哪里指定 ssid 和密码我必须连接的接入点。

我使用 dbus-send 命令扫描网络, dbus-send --system --dest=net.connman --print-reply /net/connman/technology/wifi net.connman.Technology.Scan

我这样做是为了获取服务 dbus-send --system --print-reply --dest=net.connman / net.connman.Manager.GetServices

这将产生巨大的输出,我在其中 grep 以仅获取可用网络的对象路径

我这样做是为了连接到网络,但这仅适用于开放网络

dbus-send --system --print-reply --dest=net.connman /net/connman/service/wifi_008092751818_646c696e6b_managed_none net.connman.Service.Connect

据我搜索,要连接到受密码保护的接入点(wpa psk 网络),我必须注册代理,我使用的是,

dbus-send --system --print-reply --dest=net.connman / net.connman.Manager.RegisterAgent objpath:/test/agent

然后我尝试使用前面的连接命令进行连接,但它没有连接,我也不知道在哪里指定要连接的 ssid 和密码短语。有人可以帮我解决这个问题。

以及我将如何在c中实现,我使用gdbus实现调用connman在dbus上暴露的方法,proxy = gdbus->createProxyObject("net.connman", "/", "net.connman.Manager") ; return_s = gdbus->callMethod(proxy,"GetServices", NULL);

所以要连接到受保护的网络。

0 投票
2 回答
1326 浏览

ubuntu - beaglebone 绿色无线中的 connmactl 问题

我已经使用 connmactl 将我的 beaglebone green 无线连接到互联网,但我必须这样做才能实现它。

我希望 beaglebone 在我使用 ssh 登录时自动连接到互联网。那可能吗?

谢谢