Phylliade Asked: 2021-02-26 15:47:55 +0800 CST2021-02-26 15:47:55 +0800 CST 2021-02-26 15:47:55 +0800 CST 枚举电力线适配器如何工作? 772 一些专有软件(如路由器软件或管理电力线设备的专有桌面应用程序)提供了一种枚举电力线适配器的方法。 例如,在 Netgear Genie 上,我们有一张漂亮的电力线适配器地图: 它在实践中如何运作?是否使用 LLDP 之类的协议? 更准确地说,考虑到这张地图 100% 是从连接到网络的桌面生成的(没有关于电力线设备的先验知识),它如何枚举这些电力线设备? 另外,有没有办法使用免费/开源(和与供应商无关的)软件来获得这种映射? networking powerline-networking 1 个回答 Voted Best Answer user1686 2021-02-27T00:52:36+08:002021-02-27T00:52:36+08:00 它在实践中如何运作?是否使用 LLDP 之类的协议? 不确定 G.hn 电力线设备,但 HomePlug AV 电力线规范确实有一个“HomePlug 管理协议”(见第 11 章),可通过这些设备的以太网端访问。您可以查询它们的状态、重新启动它们、更改网络密钥等。 HomePlug 管理协议不是基于 IP 的;它使用自己的 Ethertype 0x88e1。大多数命令可以广播,或发送到特殊的“最近的 HomePlug 设备”MAC(同一个以太网不太可能同时直接连接到两个电力线网桥),或发送到特定设备的 MAC 地址。它完全未经身份验证,因此同一 VLAN 上的任何人都可以重新配置您的所有 HomePlug 适配器。 枚举是通过向最近的设备询问网络成员列表来完成的,而不是单独查询它们。 该协议还具有通过电力线将命令中继到当前未参与网络的 HomePlug 设备的功能。(这是您需要在每个适配器上打印“设备访问密钥”的地方。) 另外,有没有办法使用免费/开源(和与供应商无关的)软件来获得这种映射? 大多数 HomePlug AV 软件在某种程度上与供应商无关。您很可能将相同的适配器与 Netgear 软件、TP-Link 软件和 TrendNet 软件一起使用。 (不过,关于“供应商不可知论”的另一件事是,基本上所有供应商都只使用高通制造的相同 HomePlug AV 芯片。您实际上并不是在与 Netgear 设备交谈——您是在与 Netgear 中的 QCA 设备交谈——品牌盒子。而且我相信大多数 HomePlug AV 软件实际上确实使用 QCA 特定的命令,它们恰好在所有设备上都是相同的。) Qualcomm 实际上发布了一组开源命令行工具open-plc-utils,它可以为您提供大部分相同的功能。你不会得到一张漂亮的地图,但你真的不需要一张——HPAV 网络是扁平的,所有设备都直接相互通信。(据我所知,HPAV 没有像 G.hn 那样的网格/中继设施。)请注意,Genie 中的地图只是一颗没有复杂性的星星...... 要让最近的 HPAV 适配器为您提供网络上的设备列表(以及它们的角色、速度和最近的以太网设备),请使用plcstat -morplcstat -t或plctool -m,所有这些都做同样的事情: $ plcstat -i wlan0 -m local NID 9A:09:7C:A3:D1:47:0E SNID 008 STA TEI 002 MAC 34:E8:94:6C:E2:xx BDA 48:5D:60:xx:xx:xx CCO TEI 001 MAC 34:E8:94:6C:E6:xx BDA FF:FF:FF:FF:FF:FF TX 009 RX 009 要获取 PHY 错误统计信息,请使用plcstat -s CSMA-ALL -d both. 要重新启动容易卡住的网桥,请使用plctool -R. 要获取本地设备的参数信息块,请使用plctool -I- 除其他外,这将为您提供网络 NMK 的 PBKDF1 哈希,然后可以使用plctool -M或将其编程到另一个设备中-J。
不确定 G.hn 电力线设备,但 HomePlug AV 电力线规范确实有一个“HomePlug 管理协议”(见第 11 章),可通过这些设备的以太网端访问。您可以查询它们的状态、重新启动它们、更改网络密钥等。
HomePlug 管理协议不是基于 IP 的;它使用自己的 Ethertype 0x88e1。大多数命令可以广播,或发送到特殊的“最近的 HomePlug 设备”MAC(同一个以太网不太可能同时直接连接到两个电力线网桥),或发送到特定设备的 MAC 地址。它完全未经身份验证,因此同一 VLAN 上的任何人都可以重新配置您的所有 HomePlug 适配器。
枚举是通过向最近的设备询问网络成员列表来完成的,而不是单独查询它们。
该协议还具有通过电力线将命令中继到当前未参与网络的 HomePlug 设备的功能。(这是您需要在每个适配器上打印“设备访问密钥”的地方。)
大多数 HomePlug AV 软件在某种程度上与供应商无关。您很可能将相同的适配器与 Netgear 软件、TP-Link 软件和 TrendNet 软件一起使用。
(不过,关于“供应商不可知论”的另一件事是,基本上所有供应商都只使用高通制造的相同 HomePlug AV 芯片。您实际上并不是在与 Netgear 设备交谈——您是在与 Netgear 中的 QCA 设备交谈——品牌盒子。而且我相信大多数 HomePlug AV 软件实际上确实使用 QCA 特定的命令,它们恰好在所有设备上都是相同的。)
Qualcomm 实际上发布了一组开源命令行工具open-plc-utils,它可以为您提供大部分相同的功能。你不会得到一张漂亮的地图,但你真的不需要一张——HPAV 网络是扁平的,所有设备都直接相互通信。(据我所知,HPAV 没有像 G.hn 那样的网格/中继设施。)请注意,Genie 中的地图只是一颗没有复杂性的星星......
要让最近的 HPAV 适配器为您提供网络上的设备列表(以及它们的角色、速度和最近的以太网设备),请使用
plcstat -m
orplcstat -t
或plctool -m
,所有这些都做同样的事情:要获取 PHY 错误统计信息,请使用
plcstat -s CSMA-ALL -d both
. 要重新启动容易卡住的网桥,请使用plctool -R
.要获取本地设备的参数信息块,请使用
plctool -I
- 除其他外,这将为您提供网络 NMK 的 PBKDF1 哈希,然后可以使用plctool -M
或将其编程到另一个设备中-J
。