Zuletzt aktualisiert am 3. Juli 2024.
Es gibt durchaus Anwendungsfälle, bei denen man an einem ESXI-Host eine USB NIC verwenden möchte. Das kann beispielsweise der Fall sein, wenn man einen NUC oder einen anderen Mini-PC als Host nutzt, der nur eine NIC hat. Oder, wenn der Chipsatz der vorhandenen Netzwerkkarte nicht unterstützt wird.
Hinweis: Leider ist die in diesem Beitrag behandelte Lösung aktuell nur mit einer Geschwindigkeit des USB Ethernet-Adapters von 100MBit/s ohne zusätzlichen Treiber möglich, da die USB-NetworkDriver von Fling/Esxi aktuell nicht mehr zum Download bereitstehen.
Ausgangssituation
Ich nutze aufgrund des geringen Preises und der guten Energieeffizienz gerne NUCs und MiniPCs als ESXI-Host. So kann es aber gerade bei den MiniPCs aus China oft vorkommen, dass die Netzwerkchipsätze nicht auf der Kompatibiliätsliste für ESXI stehen und entsprechend auch nicht funktionieren.
Gute Beispiele dafür sind z.B. Realtek RTL8111/8168/8411 Chipsätze.
Beim Installationsversuch von ESXI erhält man dann z.B. die folgende Meldung:
Lösungsansatz ohne zusätzliche Treiber
Die einfachste Lösung ist tatsächlich Plug and Play, denn seit ESXI 7 ist (wieder) ein universeller USB-Netzwerktreiber (USB CDCE) im Stack enthalten.
Eine mit einem unterstützen Chipsatz ausgestatte USB-NIC kann so einfach eingesteckt und genutzt werden.
Auf jeden Fall funktioniert der folgende Adapter (zumindest habe ich ihn erfolgreich mehrmals im Einsatz):
Es sollte aber eigentlich jeder USB-Adapter mit RTL8153-Chipsatz funktionieren.
- [1000Mbps Highspeed] Der USB 3.0 zu RJ45 Adapter bietet eine hohe Geschwindigkeit von bis zu 1000 Mbps über einen USB 3.0 Anschluss, ist abwärtskompatibel mit 100Mbps (USB 2.0) und 10Mbps (USB 1.1). Damit können Sie 1G-Film in nur 10 Sekunden herunterladen und eine reibungslose Netzwerkverbindung genießen. (Um 1 Gbps zu erreichen, ist ein CAT6- oder höheres Ethernet-Kabel erforderlich.)
- [Stabile Gigabit-LAN] uni USB Lan Adapter bietet Gigabit-Ethernet-Konnektivität für zuverlässige Netzwerkverbindungen, wenn drahtlose Konnektivität schwach ist oder erweiterte Netzwerke benötigt werden. Der USB RJ45 Adapter ermöglicht einfachen Internetzugang ohne Einschränkungen durch schwache WiFi-Signale. Ideal für reibunglose Online-Spiele, Datenübertragung, HD-Filmstreaming und Videokonferenz.
- [Plug & Play] Für uni USB 3.0 LAN Adapter ist kein Treiber oder externe Stromversorgung erforderlich und ist kompatibel mit MacBook, Surface Book und viele andere USB 3.0 Geräte unter Windows 11/ 10/ 8.1/ 8/ XP, macOS, Linux usw. Außerdem unterstützt es Kreuzerkennung, automatische Korrektur und Wake-on-LAN.
- [Robust und tragbar] Der USB-Ethernet-Adapter verfügt über ein robustes Aluminiumgehäuse und geflochtenes Nylon, was für eine bessere Wärmeableitung und längere Lebensdauer im Vergleich zu billigen Kunststoffgehäusen sorgt. Mit seiner kompakten Größe ist er ideal für Geschäftsreisen und unterwegs.
- [Verlässliche uni-Garantie] uni bietet eine 18-monatige problemlose Garantie für den High-Speed USB netzwerkadapter 1Gbps sowie einen 24/7-Kundendienst. Wir sind zuversichtlich in unsere einzigartige Produkte und Kunden.
Der einzige Wehrmutstropfen ist, dass der CDCE-Treiber nur 100MBit/s unterstütz.
Lösungsansatz mit zusätzlichem Treiber
Wer eine Lösung mit Gigabit-Ethernet möchte, der kommt um den Fling-Treiber nicht herum. Wir gehen nun einmal den Prozess der Installation gemeinsam durch.
Zum Zeitpunkt des Verfassens dieses Artikels unterstützt der Fling-Treiber folgende Netzwerkchips:
Vendor | Chipset | VendorID | ProductID |
---|---|---|---|
AQUANTIA | AQC111U | 0xe05a | 0x20f4 |
AQUANTIA | Aquantia Pacific | 0x2eca | 0xc101 |
ASIX | AX88179 | 0x0b95 | 0x1790 |
ASIX | AX88178a | 0x0b95 | 0x178a |
CISCO LINKSYS | RTL8153 | 0x13b1 | 0x0041 |
DLINK | RTL8156 | 0x2001 | 0xb301 |
DLINK | AX88179 | 0x2001 | 0x4a00 |
INSYDE SOFTWARE CORP | Insyde Software Corp. | 0x0b1f | 0x03ee |
LENOVO | RTL8153 | 0x17ef | 0x3062 |
LENOVO | RTL8153 | 0x17ef | 0x3069 |
LENOVO | RTL8153 | 0x17ef | 0x720a |
LENOVO | AX88179 | 0x17ef | 0x304b |
LENOVO | RTL8153 | 0x17ef | 0x7205 |
NVIDIA | RTL8153 | 0x0955 | 0x09ff |
Qualcomm | NA | 0x1A56 | 0x3100 |
Qualcomm | NA | 0x0b05 | 0x1976 |
REALTEK | RTL8152 | 0x0bda | 0x8152 |
REALTEK | RTL8156 | 0x0bda | 0x8156 |
REALTEK | RTL8153 | 0x045e | 0x07c6 |
REALTEK | RTL8153 | 0x0bda | 0x8153 |
SITECOMEU | AX88179 | 0x0df6 | 0x0072 |
SUPERMICRO | Supermicro computer Inc | 0x15d9 | 0x1b83 |
TP-LINK | RTL8153 | 0x2357 | 0x0601 |
TRENDNET | AQC111U | 0xe05a | 0x20f4 |
Update Juni 2024: Da VMwware die ursprüngliche Treiberseite offline genommen hat, sind die Treiber dort nicht mehr herunterladbar. Aktuell sind die Treiber aber noch über Archive.org downloadbar.
Wir installieren nun den Fling-Treiber für USB-Netzwerkdevices auf einem Esxi-Host.
1) Treiber herunterladen
Zunächst laden wir uns den für unsere ESXI-Version passenden Treiber herunter. Leider sind die Treiber aktuell nicht mehr bei VMWare/Broadcom verfügbar. Man kann sie aber noch über Archive.org finden:
https://archive.org/download/flings.vmware.com/Flings/USB%20Network%20Native%20Driver%20for%20ESXi/
2) SSH auf dem Host aktivieren
Um den Treiber zu Installieren brauchen wir Zugriff auf die Konsole des Hosts. Daher müssen wir SSH aktivieren. Wir loggen uns dazu auf dem Host ein, klicken im linken Hauptmenü auf den Host, wählen dann “Aktionen”, im aufklappenden Dropdown-Menü auf “Dienste” und wählen “Secure Shell (SSH) aktivieren”
3) Treiber auf Host laden
Um den Treiber zu installieren, müssen wir ihn ersteinmal auf unseren Host bekommen. Auch dafür können wir ganz einfach das Webinterface des Hosts nutzen, auf dem wir ja bereits eingeloggt sind.
Wir navigieren dafür im linken Hauptmenü zu “Speicher”, wählen dann unseren Storage aus und klicken auf “Datenspeicher-Browser”. Wir erstellen nun ein Verzeichnis für den Treiber, z.B. “fling” und laden dort das Treiberfile herein.
4) Host in den Wartungsmodus versetzen
Als nächstes alle VMs herunterfahren und den Host in den Wartungsmodus versetzen. Dazu nach dem Herunterfahren der VMs im linken Hauptmenü auf “Host” Klicken und dann auf Aktionen klicken und im öffnenden Dropdown “In den Wartungsmodus wechseln” auswählen.
5) Über SSH verbinden
Wir verbinden uns jetzt mit folgendem Befehl über SSH (bei Linux-Systemen direkt aus dem terminal heraus, bei Windows-Systemen z.B. mit “Putty”) mit dem ESXI-Host:
ssh root@ip
6) Treiber installieren
Jetzt navigieren wir auf der Konsole zu dem Verzeichnis, in das wir zu Beginn das Treiberfile geladen haben:
cd vmfs
cd volumes
cd SSD-Storage
cd fling
PS: In deinem Fall musst du statt “SSD-Storage” natürlich den Namen deines Storage angeben.
Dann installieren wir den Treiber mit folgendem Befehl:
esxcli software vib install -d /vmfs/volumes/SSD-Storage/fling/
ESXi703-VMKUSB-NIC-FLING-55634242-component-19849370.zip
OH NO, ein Fehler
Bei einigen von euch kann der folgende Fehler erscheinen:
[StatelessError]
The transaction is not supported: VIB VMW_bootbank_vmkusb-nic-fling_1.10-1vmw.703.0.50.55634242 cannot be live installed.
Please refer to the log file for more details.
Die Fehlermeldung kommt ind er Regel dadurch zustande, dass einige Kernelmodule nicht richtig heruntergefahren werden.
Die Lösung ist zum Glück meistens einfach und ähnlich wie bei einem guten Windows-PC: Einmal neustarten und erneut versuchen 😉
PS: Weitere Ursachen/Lösungen für den Fehler erläutere ich dir weiter unten.
Nach dem Neustart probieren wir es nochmal und: Tada, die Installation ist geglückt. Fertig.
Weitere Tipps, wenn es zum [StatelessError] kommt
IN meinem Fall habe ich an meinen Esxi-Host einige externe HDDs per USB angeschlossen (um genau zu sein 12). Dadurch kam es – bis alle platten angelaufen sind – zu einem längeren Bootprozess. Daher wurde die bootbank nicht richtig eingebunden und dann vom System automatisch ins tmp-Verzeichnis gelinkt. Das Resultat ist die o.g. Fehlermeldung. Ebenso äußerte sich der Fehler so, dass Einstellungsänderungen nicht mehr persistiert werden konnten und der Host – auch aus dem Wartungsmodus heraus – z.b. nach einem neustart immer wieder aus dem Wartungsmodus herausgesprungen ist.
Ein Workaround ist es hier zunächst, den Host ohne die angeschlossenen externen HDDs zu starten. Zusätzlich – und das ist eine dauerhafte Lösung – ist es wichtig, im UEFI bei der Boot-Reihenfolge das ESXI-Bootmedium an die erste Stelle zu setzen.
Das Ergebnis
Das Ergebnis ist nun eine zusätzliche USB-NIC, die auch die vollen 1 GBit/s mit dem installierten Treiber nutzen kann:
Der Installationsprozess ist hier noch einmal super im Video erläutert:
Quellen/Weitere Ressourcen
- https://williamlam.com/2022/02/usb-network-adapters-without-using-the-usb-network-native-driver-for-esxi.html
- https://williamlam.com/2023/12/vmware-flings-are-back.html
- https://community.broadcom.com/vmware-code/communities/communityhomeblogs?CommunityKey=5d6496d1-215a-4ead-99e1-ff49b96deaf6
- https://en.wikipedia.org/wiki/Ethernet_over_USB
- https://ia601806.us.archive.org/26/items/flings.vmware.com/Flings/USB%20Network%20Native%20Driver%20for%20ESXi/usb-network-native-driver-for-esxi.html
Letzte Aktualisierung am 2024-12-03 / Affiliate Links / Bilder von der Amazon Product Advertising API
Schreibe eine Antwort