Configuration des adaptateurs CPL sous Linux
Je possède des adaptateurs CPL Bewan Powerline E200Maxx qui remplissent à merveille leur rôle, seulement, en dehors de l’utilitaire Windows, point d’outil pour configurer ces adaptateurs, ce qui serait pourtant bien utile pour configurer la QoS et surtout le mot de passe utilisé pour chiffrer le traffic.
Un premier logiciel libre, Faifa, permet de forger et d’envoyer aux adaptateurs CPL basés sur le chipset Intellon (c’est à dire la majorité des adaptateurs sur le marché) la plupart des frames ethernet des protocoles HomePlug 1.0 et HomePLug AV
Des paquets existent pour les distributions basées sur Debian, ainsi qu’une bibliothèque permettant d’écrire ses propres programmes utilisant ces protocoles.
Il existe aussi plconfig, un autre logiciel libre (qui devrait fonctionner sous les xBSD) qui offre une interface moins “bas niveau”
Recherche des adaptateurs CPL avec faifa
root@iron:/tmp# faifa -m Faifa for HomePlug AV (SVN revision 50) Started receive thread Supported HomePlug AV frames type description ------ ----------- 0x0014 Central Coordination Discover List Request 0x6020 Get Bridge Infos Request 0x6038 Get Network Infos Request 0x6048 Get Network Stats Request 0xA000 Get Device/SW Version Request 0xA004 Write MAC Memory Request 0xA008 Read MAC Memory Request 0xA00C Start MAC Request 0xA01C Reset Device Request 0xA020 Write Module Data Request 0xA02C Get Watchdog Report Request 0xA030 Get Link Statistics Request 0xA034 Sniffer Mode Request 0xA038 Network Info Request (Vendor-Specific) 0xA040 Check Points Request 0xA048 Loopback Request 0xA04C Loopback Status Request 0xA050 Set Encryption Key Request 0xA054 Get Manufacturing String Request 0xA058 Read Configuration Block Request 0xA068 Get Device Attributes Request 0xA06C Get Ethernet PHY Settings Request 0xA070 Get Tone Map Caracteristics Request Supported HomePlug 1.0 frames type description ------ ----------- 0x0000 Channel Estimation Request 0x0004 Set Network Encryption Key Request 0x0007 Parameters and Statistics Request 0x0019 Set Local parameters Request 0x001D Set Local Overrides Request Choose the frame type (Ctrl-C to exit): 0x
Ce menu présente les types de frame HomePlug 1.0/AV pouvant être forgées. Libre ensuite aux adaptateurs de répondre correctement
Quelques exemples d’informations disponibles sur les adaptateurs :
Frame: Get Network Infos Request (0x6038) Dump: Frame: Get Network Infos Confirm (6039), HomePlug-AV Version: 1.1 NID: xx xx 58 8B 3F xx xx TEI: 0x01 (1) STA Role: 0x02 (Network coordinator) MAC address: 00:0C:C3:xx:xx:xx Access: 0x00 (In-Home network) Number of neighbors: 0
Frame: Get Device/SW Version Request (0xA000) Dump: Frame: Get Device/SW Version Confirm (A001), HomePlug-AV Version: 1.0 Status: Success Device ID: INT6300, Version: INT6000-MAC-3-3-3348-04-2768-20081022-FINAL-B, upgradeable: 0
On voit bien ici la signature du fabricant INTellon
Frame: Network Info Request (Vendor-Specific) (0xA038) Dump: Frame: Network Info Confirm (Vendor-Specific) (A039), HomePlug-AV Version: 1.0 Network ID (NID): xx xx 58 8B 3F xx xx Short Network ID (SNID): 0x07 STA TEI: 0x01 STA Role: Network coordinator CCo MAC: 00:0C:C3:xx:xx:xx CCo TEI: 0x01 Stations: 1 Station MAC TEI Bridge MAC TX RX ----------------- ---- ----------------- ---- ---- 00:0C:C3:xx:xx:xx 0x02 00:0C:C3:xx:xx:xx 0x86 0x7a
Les spécifications HomePlug sont disponibles sur ce site, merci à l’auteur d’avoir sauvegardé ce document ! (que je me permet de copier également ici au cas où)
Mise à jour 2010/12/30
Devolo met à disposition avec ses adaptateurs (sur le cd-rom fourni) et sur son site Internet le code source de 2 petits logiciels, dlanlist et dlanpasswd permettant de respectivement voir les adaptateurs présents sur le réseau et de changer leur mot de passe:
# ./dlanlist Type MAC address Mbps TX/RX Version/Product local 00:0C:C3:XX:XX:XX ---.-- / ---.-- INT6000-MAC-3-3-3348-04-2768-20081022-FINAL-B Intellon HomePlug AV Device remote 00:0C:C3:XX:XX:XX 166.69 / 86.62 INT6000-MAC-3-3-3348-04-2768-20081022-FINAL-B
# ./dlanpasswd Usage: dlanpasswd MAC-ADDRESS PASSWORD or: dlanpasswd MAC-ADDRESS PASSWORD SECURITY-ID In the 1st form, assign PASSWORD to the local dLAN adapter MAC-ADDRESS. In the 2nd form, assign PASSWORD to the remote dLAN 200 AV adapter identified by SECURITY-ID, using the local dLAN 200 AV adapter MAC-ADDRESS to forward the request to the PowerLine.
Je n’ai pas encore essayé de changer le mot de passe de mes adaptateurs, mais cela devrait fonctionner vu que le chipset Intellon est commun à beaucoup d’adaptateurs. Si vous avez essayé, dites-le moi
Voici le contenu du tarball, il n’y a semble-t-il pas de licence pour le code, juste un (c) 2007-2009 devolo AG, Aachen (Germany
# find . . ./common ./common/macheader.h ./common/packetinterface.h ./common/platform.h ./common/dlandevice.h ./common/packettask.h ./common/packetdispatcher.h ./common/hpmmes.h ./common/macaddress.h ./common/hptools.cpp ./common/packet.h ./common/mscounter.h ./common/hpsecurity.cpp ./common/dlanmonitor.h ./common/packetinterface-linux.h ./common/packetinterface-linux.cpp ./common/macaddress.cpp ./common/hpsecurity.h ./common/hptools.h ./common/dlanmonitor.cpp ./common/dlandevice.cpp ./makefile ./tools ./tools/dlanpasswd.cpp ./tools/dlanlist.cpp ./README
Pour récupérer l’archive la plus à jour possible de plus simple est de passer par Espace SAV-> Choisir produit-> Afficher les téléchargements
Ca compile proprement, merci Devolo ! (A essayer sous un BSD pour voir)