Hallo Newbiemaster, hilft Dir vielleicht das hier?
USB CDC NCM-Geräte werden nicht automatisch dem USBNcm-Treiber zugewiesen
Ich entwickle seit einiger Zeit USB-Geräte und interagiere mit ihnen unter Windows, und ich musste eine bedauerliche Doppelmoral feststellen: Während zB USB-HID- oder CDC-ACM-Schnittstellen automatisch ein HID- bzw. ein Serial Port-Treiber zugewiesen wird, dasselbe passiert nicht mit USB CDC NCM-Schnittstelle. Dies trotz der Tatsache, dass der Windows-Treiber dafür in den Betriebssystemdateien (standardmäßig C:\Windows\system32\drivers\UsbNcm.sys) leicht verfügbar ist.
Einige Hintergrundinformationen zu NCM (Network Control Model) : Es ist die neueste standardisierte USB-Kommunikationsschnittstelle zur Übertragung von Ethernet-Paketen über USB. Es wurde entwickelt, um die Einschränkungen zuvor etablierter Protokolle wie RNDIS, ECM und EEM zu überwinden. Die NCM-Protokollnummer und das Deskriptor-Layout werden durch USB-IF-Dokumente definiert, sodass das Host-Betriebssystem diesen Schnittstellentyp während der Geräteaufzählung identifizieren und den UsbNcm-Treiber allein basierend auf diesen Informationen zuweisen kann, wie dies auch für die oben genannten Protokolle der Fall ist .
Ich habe hier eine geräteseitige Demo-Firmware als Referenz: https://github.com/IntergatedCircuits/IPoverUSB
Meine Frage ist also, warum wird der UsbNcm-Treiber solchen USB-Geräten nicht automatisch zugewiesen? Ist es einfach eine fehlende Funktionalität, die noch nicht implementiert wurde? Oder gibt es dafür sicherheitsrelevante Gründe? Warum werden in diesem Fall andere Ethernet-Paketübertragungsprotokolle anders behandelt?