
FlexiHub
yum install [package];
Das ist es!
Ab diesem Zeitpunkt ist das freigegebene USB-Gerät von allen Computern mit installiertem FlexiHub und der Internetverbindung aus der Ferne zugänglich, unabhängig von Betriebssystemen oder physischen Entfernungen. Dank des einzigartigen Redirection USB Servers ist die App wirklich eine universelle Lösung, die durch alle Firewalls funktioniert und keine öffentlichen IP-Adressen benötigt. Sie können diese Methode sogar verwenden, um einen USB-Hub gemeinsam zu nutzen, sodass alle daran angeschlossenen Peripheriegeräte sofort für Remote-Verbindungen verfügbar sind.
FlexiHub
Und das Sahnehäubchen auf diesem Kuchen ist, dass Sie Ihren Raspberry Pi nicht wirklich dauerhaft in einen USB-Server verwandeln müssen, um USB zu Ethernet zu teilen. Sie können Dongles, Webcams, Drucker und andere Peripheriegeräte freigeben, die an USB-Anschlüsse aller Computer mit installiertem FlexiHub angeschlossen sind, einschließlich Ihres Android-Tablets, und haben nie Probleme mit der plattformübergreifenden Konnektivität. Von einem Windows-Computer aus können Sie sogar ein COM-basiertes Peripheriegerät gemeinsam nutzen. Wie toll ist das? Und für zusätzlichen Komfort haben Sie die Möglichkeit, drahtlose Konnektivität für den Zugriff auf gemeinsam genutzte Geräte über Wi-Fi zu genießen. Bis zu all den CAT6-Kabeln, die im Büro herumliegen.
Im Prinzip ähnelt diese Methode der gerade beschriebenen, jedoch durch eine andere USB-zu-Ethernet-Erweiterungs-App. Und da wir diesmal eine Open-Source-Lösung verwenden, die sich noch in der Entwicklung befindet, erfordert der Einrichtungsprozess ein angemessenes Maß an technischer Kompetenz wird nicht auf Anhieb funktionieren.
Hier sind einige weitere wichtige Punkte, die Sie berücksichtigen müssen, bevor Sie sich für diese Methode entscheiden:
sudo apt install usbip
sudo modprobe usbip_host
echo 'usbip_host' >> /etc/modules
lsusb command
, um eine Liste aller USB-Geräte anzuzeigen, die physisch mit Ihrem Raspberry Pi verbunden sind, und speichern Sie die 8-stellige USB-ID-Nummer eines Geräts, das Sie freigeben möchten, (oder notieren Sie sie).
usbip list -p -l
, um die Bus-ID Ihres Geräts zu ermitteln (verwenden Sie die USB-ID-Nummer aus einem vorherigen Schritt, um das richtige Gerät in der Liste zu identifizieren). Notieren Sie diese Nummer.
sudo usbip bind --busid=N
usbipd
Alternativ können Sie einen systemd-Dienst erstellen:
vi /lib/systemd/system/usbipd.service
mit der folgenden Definition (vergessen Sie nicht, das N für eine tatsächliche USB-ID-Nummer Ihres Geräts zu ändern):
[Unit]
Description=usbip host daemon
After=network.target
[Service]
Type=forking
ExecStart=/usr/sbin/usbipd -D
ExecStartPost=/bin/sh -c "/usr/sbin/usbip bind --$(/usr/sbin/usbip list -p -l | grep '#usbid=N#' | cut '-d#' -f1)"
ExecStop=/bin/sh -c "/usr/sbin/usbip unbind --$(/usr/sbin/usbip list -p -l | grep '#usbid=N#' | cut '-d#' -f1); killall usbipd"
[Install]
WantedBy=multi-user.target
Und dann müssen Sie diese Befehle ausführen, um diesen Dienst zu starten:
sudo systemctl --system daemon-reload
sudo systemctl enable usbipd.service
sudo systemctl start usbipd.service
Ok, jetzt richten wir einen Client ein:
Hinweis: Die App verfügt zwar über einen Client für Windows, es handelt sich jedoch um eine schwache Beta-Version ohne signierte Treiber oder Unterstützung für Windows 10, die daher nicht wirklich erwähnenswert ist.
1. Führen Sie die folgenden Befehle aus, um dieselbe App für die Freigabe von USB über IP in Ubuntu zu installieren:
sudo -s
apt-get install linux-tools-generic -y
2. Aktivieren Sie das gewünschte Modul:
modprobe vhci-hcd
echo 'vhci-hcd' >> /etc/modules
Führen Sie nun den folgenden Befehl aus, um das freigegebene Gerät mit diesem Computer zu verbinden:
sudo usbip attach -r 0.0.0.0
(Geben Sie die tatsächliche IP-Adresse Ihres Raspberry Pi anstelle von 0.0.0.0 ein.)
Oder Sie können einen systemd-Dienst erstellen:
vi /lib/systemd/system/usbip.service
Mit der Definition (ersetzen Sie N durch eine tatsächliche USB-ID-Nummer Ihres Geräts und 0.0.0.0 durch die IP-Adresse Ihrer Himbeere):
[Unit]
Description=usbip client
After=network.target
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/bin/sh -c "/usr/lib/linux-tools/$(uname -r)/usbip attach -r 0.0.0.0 -b $(/usr/lib/linux-tools/$(uname -r)/usbip list -r 0.0.0.0 | grep 'N' | cut -d: -f1)"
ExecStop=/bin/sh -c "/usr/lib/linux-tools/$(uname -r)/usbip detach --port=$(/usr/lib/linux-tools/$(uname -r)/usbip port | grep '<Port in Use>' | sed -E 's/^Port ([0-9][0-9]).*/\1/')"
[Install]
WantedBy=multi-user.target
Speichern Sie diese Befehle und führen Sie sie aus, um den Dienst zu starten:
sudo systemctl --system daemon-reload
sudo systemctl enable usbip.service
sudo systemctl start usbip.service
Danach sollten Sie remote auf das freigegebene Gerät zugreifen können. Wenn nicht, wiederholen Sie alle Schritte von Anfang an.
Wichtig! Wenn Sie ein USB-Gerät vom Raspberry Pi trennen, während es von dieser Methode gemeinsam genutzt wird, kann dies zu einem dauerhaften Datenverlust führen. Schalten Sie zuerst Ihren Raspberry aus (nachdem Sie ihn ausgeschaltet haben, können Sie für zusätzliche Vorsichtsmaßnahmen auch das Netzteil trennen).
Proxy Server
|
Proxy Server
|
Umleitungsserver
• Keine Notwendigkeit für externe IP
• Multi-Netzwerk-Kommunikation
• funktioniert über die Firewall |
N/A |
Unterstützte Plattformen:
|
Unterstützte Plattformen:
|
|
|
Serverseitig
|
Serverseitig
|
✓ Windows
✓ Linux
✓ macOS
✓ Android |
✓ Linux |
Client-Seite
|
Client-Seite
|
✓ Windows
✓ Linux
✓ macOS |
✓ Windows (beta)
✓ Linux |
Firmware für Mikrocontroller
|
Firmware für Mikrocontroller
|
Raspberry (auf Anfrage) |
N/A |
Sicherheit
|
Sicherheit
|
Anmeldetoken für die sichere gemeinsame Nutzung von Konten
Sperren Sie für die Gerätezugriffskontrolle |
N/A |
Verschlüsselung
|
Verschlüsselung
|
2048-Bit-SSL |
N/A |
Verbesserte Stabilität
|
Verbesserte Stabilität
|
Option Verbindung aktiv halten |
N/A |
Natürlich liegt es ganz bei Ihnen, zu entscheiden, welche der beiden in diesem Artikel beschriebenen Methoden Sie berücksichtigen möchten. Aber wäre es nicht besser, in ein einfach zu handhabendes Tool mit nachgewiesener Effizienz zu investieren, als sich auf etwas zu verlassen, das jederzeit ausfallen kann und Sie wissen lässt, wie viel Nerven, Zeit und Geld aufgrund ungeplanter Ausfallzeiten vorhanden sind.