Cookie
FlexiHub Team uses cookies to personalize your experience on our website. By continuing to use this site, you agree to our cookie policy. Click here to learn more.
Olga Weis Olga Weis Aug 23, 2022

Comment partager USB sur Ethernet avec Raspberry Pi

Au fur et à mesure que le fonctionnement à distance devient de plus en plus populaire, vous rencontrerez inévitablement une situation de travail où vous aurez juste besoin d'utiliser une sorte d'extension USB universelle, ou de trouver un autre moyen de partager un USB sur Ethernet qui fonctionne avec tous les systèmes d'exploitation courants et Périphériques USB.

FlexiHub


Windows, macOS, Linux, Android 4.8 Rank basée sur 386+ Revue
Partager USB sur IP
Par exemple, si vous avez toute une équipe utilisant un logiciel sous licence coûteux qui ne démarrera pas sans dongles USB. Personne ne veut dépenser une fortune en licences individuelles pour chaque employé ou risquer de perdre ou d'endommager lesdits dongles, car ils seront transportés dans le bureau et branchés sur différentes machines toute la journée.

Comme vous le savez peut-être déjà, il existe un moyen de configurer votre Raspberry Pi en tant que serveur USB sur Ethernet. Eh bien, en fait, il n'y a pas une, mais deux routes que vous pouvez emprunter ici: un chemin facile avec l'application payante efficace à cent pour cent ou un trajet cahoteux avec une solution open-source et son processus de configuration fastidieux. Et nous sommes sur le point d’examiner les deux.

Partage USB rapide et sûr de Raspberry Pi avec FlexiHub

Avec le bon outil logiciel d'extension USB, le partage USB sur IP à partir d'un Raspberry Pi est loin d'être simple, et vous n'aurez pas à acheter de câbles d'extension, de gadgets supplémentaires ou à disposer des kilomètres de fil LAN CAT6, ou même à utiliser un USB vers adaptateur RS32.

Comment partager USB sur IP à partir d'un Raspberry Pi
1
Enregistrez un compte FlexiHub ici et commencez une période de démonstration gratuite.
 Enregistrez un compte FlexiHub
2
Téléchargez et installez l'application sur l'ordinateur serveur ;
 téléchargez et installez l'application
3
Dans le terminal de votre Raspberry, exécutez la commande suivante: yum install [package];
4
Démarrez l'application et cliquez sur "Partager" à côté de votre périphérique USB.

C'est ça!

À partir de ce moment, le périphérique USB partagé sera accessible à distance depuis tous les ordinateurs sur lesquels FlexiHub est installé et la connexion Internet, quels que soient les systèmes d'exploitation ou les distances physiques. Grâce au serveur USB de redirection unique, l'application est vraiment une solution universelle qui fonctionne à travers tous les pare-feu et ne nécessite pas d'adresses IP publiques. Vous pouvez même utiliser cette méthode pour partager un concentrateur USB afin que tout périphérique qui y est connecté devienne instantanément disponible pour les connexions à distance.

FlexiHub

Windows, macOS, Linux, Android
4.8 Rank basée sur 386+ Revue
En plus de cela, FlexiHub dispose d'une fonction de compression du trafic en option qui est très utile lorsqu'il s'agit de partager des périphériques USB sensibles à la bande passante comme des imprimantes USB ou des webcams, vous n'avez donc pas besoin d'une connexion Internet haut débit à 100 Mbps pour les faire fonctionner . Et un cryptage SSL 2048 bits à toute épreuve pour empêcher complètement l'accès indésirable à vos caméras de sécurité, à vos clés USB ou à toutes les données transmises avec l'application.
FlexiHub

Et la cerise sur ce gâteau, c'est que pour partager l'USB vers Ethernet, vous n'avez pas vraiment besoin de transformer définitivement votre Raspberry Pi en serveur USB. Vous pouvez partager des dongles, des webcams, des imprimantes et d'autres périphériques branchés sur les ports USB de tous les ordinateurs sur lesquels FlexiHub est installé, y compris votre tablette Android, et ne jamais avoir de problème avec la connectivité multiplateforme. Depuis une machine Windows, vous pouvez même partager un périphérique basé sur COM. À quel point est-ce génial ? Et, pour plus de commodité, vous aurez la possibilité de profiter d'une connectivité sans fil en accédant à des appareils partagés via Wi-Fi. Adieu à tous ces câbles CAT6 qui traînent dans le bureau.

Un moyen gratuit de configurer un Raspberry Pi en tant que serveur USB sur IP

En principe, cette méthode est similaire à celle que nous venons de décrire, mais via l'agence d'une autre application d'extension USB vers Ethernet. Et étant donné que cette fois, nous utiliserons une solution open source qui est toujours en développement, le processus de configuration nécessite un niveau de compétence technique décent pour fonctionner, donc si vous n'en avez pas, ne soyez pas surpris si cela ne fonctionnera pas du premier coup.

Voici quelques points plus importants à prendre en compte avant d'opter pour cette méthode:

  • Fonctionne uniquement pour le partage de périphériques USB dans votre réseau local.
  • Impossible de partager un appareil à partir d'une machine non Linux.
  • Cette méthode de partage ne fonctionnera pas pour un concentrateur USB.
  • Il est fortement recommandé d'avoir une connexion d'au moins 100 Mbps.
  • Plus la distance à l'appareil partagé est grande, plus la connexion est mauvaise.
  • Aucune protection contre les accès non autorisés.
  • Pas de compression du trafic, donc une image des caméras distantes peut être très décalée.

Commençons par configurer votre Raspberry Pi en tant que serveur:

1
Installez l'application à l'aide de cette commande: sudo apt install usbip
2
Une fois l'installation terminée, ajoutez le module de noyau dont nous aurons besoin en entrant:
sudo modprobe usbip_host
echo 'usbip_host' >> /etc/modules
3
Maintenant, utilisez la lsusb command pour afficher une liste de tous les périphériques USB physiquement connectés à votre Raspberry Pi et mémorisez (ou notez) le numéro d'identification USB à 8 chiffres d'un appareil que vous allez partager .
4
Utilisez la commande usbip list -p -l pour connaître l'ID de bus de votre appareil (utilisez le numéro d'ID USB d'une étape précédente pour identifier le bon appareil dans la liste). Notez ce nombre.
5
Exécutez la commande:
sudo usbip bind --busid=N
(N est le numéro d'identification du bus de l'étape précédente)
6
Exécutez le démon pour connecter l'appareil à l'USB / IP en exécutant la commande: usbipd

Vous pouvez également créer un service systemd:

vi /lib/systemd/system/usbipd.service

avec la définition suivante (n'oubliez pas de changer le N pour un numéro d'identification USB réel de votre appareil):


[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



Et puis vous devrez exécuter ces commandes pour démarrer ce service:

sudo systemctl --system daemon-reload
sudo systemctl enable usbipd.service
sudo systemctl start usbipd.service

Ok, maintenant configurons un client:

Remarque: l'application dispose d'un client pour Windows, mais il s'agit d'une version bêta fragile sans pilotes signés ni de prise en charge de Windows 10, ce qui ne vaut donc pas la peine d'être mentionné.

1. Pour installer la même application pour partager USB sur IP dans Ubuntu, exécutez ces commandes:
sudo -s
apt-get install linux-tools-generic -y

2. Activez le module requis:
modprobe vhci-hcd
echo 'vhci-hcd' >> /etc/modules

Maintenant, pour connecter le périphérique partagé à cette machine, exécutez la commande: sudo usbip attach -r 0.0.0.0
(tapez l'adresse IP réelle de votre Raspberry Pi au lieu de 0.0.0.0)

Ou vous pouvez créer un service systemd:
vi /lib/systemd/system/usbip.service

Avec la définition (remplacez N par un numéro d'identification USB réel de votre appareil et 0.0.0.0 par l'adresse IP de votre Raspberry):

[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

Enregistrez, puis exécutez ces commandes pour démarrer le service:

sudo systemctl --system daemon-reload
sudo systemctl enable usbip.service
sudo systemctl start usbip.service

Après cela, vous devriez pouvoir accéder à distance à l'appareil partagé. Sinon, réessayez toutes les étapes depuis le tout début.

Important! Si vous débranchez un périphérique USB du Raspberry Pi alors qu'il est partagé par cette méthode, cela peut entraîner une perte de données permanente. Éteignez d'abord votre Raspberry (une fois éteint, vous pouvez également déconnecter son adaptateur secteur pour des précautions supplémentaires).

Partage USB avec FlexiHub
Période d'essai de 30 jours

Un tableau de comparaison entre les deux méthodes:

Serveur proxy
Serveur proxy
Serveur de redirection
• pas besoin d'IP externe
• communication multi-réseaux
• fonctionne à travers le pare-feu
N/A
Plateformes prises en charge:
Plateformes prises en charge:
Du côté serveur
Du côté serveur
✓ Windows
✓ Linux
✓ macOS
✓ Android
✓ Linux
Côté client
Côté client
✓ Windows
✓ Linux
✓ macOS
✓ Windows (bêta)
✓ Linux
Micrologiciel pour microcontrôleurs
Micrologiciel pour microcontrôleurs
Raspberry (sur demande)
N/A
Sécurité
Sécurité
Jetons de connexion pour un partage de compte en toute sécurité
Verrouiller pour le contrôle d'accès aux appareils
N/A
Chiffrement
Chiffrement
2048-bit SSL
N/A
Amélioration de la stabilité
Amélioration de la stabilité
Option Garder la connexion active
N/A

Remarques de clôture

Bien sûr, c'est à vous de décider laquelle des deux méthodes décrites dans cet article vous allez intégrer. Mais ne serait-il pas préférable d'investir dans un outil facile à manipuler avec une efficacité prouvée que de compter sur quelque chose qui peut échouer à tout moment et vous causer, qui sait combien de nerfs, de temps et d'argent en raison de temps d'arrêt imprévus.


Meilleur choix
FlexiHub
  • 4.8 overall rank basée sur 386+ Revue
  • Windows, macOS, Linux, Android et Raspberry Pi. 10.4MB Size.
  • Version 6.0.14865. (le 31 Mai, 2023).