
FlexiHub
Como es posible que ya sepas, hay una forma de configurar tu Raspberry Pi como un servidor USB sobre Ethernet. Bueno, en realidad, no hay una, sino tres opciones que puedes tomar aquí: un camino fácil con la aplicación de pago 100% eficiente o un camino más complicado con una solución de código abierto y su proceso de configuración algo complicado. Y vamos a analizar todas ellas.
yum install [paquete];
¡Eso es todo!
A partir de ese momento, el dispositivo USB compartido será accesible de forma remota desde todas las computadoras con FlexiHub instalado y conexión a Internet, independientemente de los sistemas operativos o las distancias físicas. Gracias al exclusivo Servidor USB de Redirección, la aplicación es verdaderamente una solución universal que funciona a través de todos los firewalls y no requiere direcciones IP públicas. Incluso puedes usar este método para compartir un concentrador USB para que cualquier periférico conectado a sus puertos USB esté instantáneamente disponible para conexiones remotas sin necesidad de configuración adicional.
Además, FlexiHub tiene una función opcional de compresión de tráfico que es muy útil cuando se trata de compartir dispositivos USB sensibles al ancho de banda, como impresoras USB o cámaras web, por lo que no necesitas una conexión a Internet de 1 Gbps de alta velocidad para que funcionen. Y un cifrado SSL de 2048 bits a prueba de balas para prevenir por completo el acceso no autorizado a tus cámaras de seguridad, dongles USB o cualquier dato transmitido con la aplicación.
Y la guinda del pastel es que para compartir un USB a través de Ethernet, realmente no necesitas convertir permanentemente tu Raspberry Pi en un servidor USB. Puedes compartir llaves de dongle, cámaras web, unidades de impresión y otros periféricos conectados a puertos USB de todas las computadoras con FlexiHub instalado, incluida tu tableta Android, y nunca tendrás problemas de conectividad entre plataformas. Desde una máquina con Windows, incluso puedes compartir un periférico basado en COM. ¿No es genial? Y, para mayor comodidad, tendrás la oportunidad de disfrutar de conectividad inalámbrica para acceder a los dispositivos USB compartidos a través de Wi-Fi. Adiós a todos esos cables CAT5e que están por la oficina.
En principio, este método es similar al que acabamos de describir, pero a través de una aplicación diferente de extensión USB a Ethernet. Y dado que esta vez usaremos una solución de código abierto que todavía está en desarrollo, los requisitos del proceso de configuración requieren un nivel decente de competencia técnica para llevar a cabo, por lo que si no tienes ninguno, no te sorprendas si no funciona al primer intento.
Aquí hay algunos puntos más importantes que debes considerar antes de optar por este método:
sudo apt install usbip
sudo modprobe usbip_host
echo 'usbip_host' >> /etc/modules
lsusb
para ver una lista de todos los dispositivos USB conectados físicamente a tu Raspberry Pi y recuerda (o anota) el número de identificación USB de 8 dígitos de un dispositivo que vas a compartir.
usbip list -p -l
para averiguar el ID de bus de tu dispositivo (usa el número de identificación USB de un paso anterior para identificar el dispositivo correcto en la lista). Anota ese número.
sudo usbip bind --busid=N
usbipd
Como alternativa, puedes crear un servicio systemd:
vi /lib/systemd/system/usbipd.service
con la siguiente definición (no olvides cambiar la N por un número de identificación USB real de tu dispositivo):
[Unit]
Description=daemon anfitrión usbip
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
Y luego tendrás que ejecutar estos comandos para iniciar ese servicio:
sudo systemctl --system daemon-reload
sudo systemctl enable usbipd.service
sudo systemctl start usbipd.service
Bien, ahora configuremos un cliente:
Nota: La aplicación tiene un cliente para Windows, pero es una versión beta frágil sin controladores firmados ni soporte para Windows 10, por lo que realmente no vale la pena mencionarla.
1. Para instalar la misma aplicación para compartir USB sobre IP en Ubuntu, ejecuta estos comandos:
sudo -s
apt-get install linux-tools-generic -y
2. Habilita el módulo requerido:
modprobe vhci-hcd
echo 'vhci-hcd' >> /etc/modules
Ahora, para conectar el dispositivo compartido a esta máquina, ejecuta el comando:
sudo usbip attach -r 0.0.0.0
(escribe la dirección IP real de tu Raspberry Pi en lugar de 0.0.0.0)
O puedes crear un servicio systemd:
vi /lib/systemd/system/usbip.service
Con la definición (reemplaza N con un número de identificación USB real de tu dispositivo y 0.0.0.0 con la dirección IP de tu Raspberry):
[Unit]
Description=cliente usbip
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 '' | sed -E 's/^Port ([0-9][0-9]).*/\1/')"
[Install]
WantedBy=multi-user.target
Guarda, y luego ejecuta estos comandos para iniciar el servicio:
sudo systemctl --system daemon-reload
sudo systemctl enable usbip.service
sudo systemctl start usbip.service
Después de eso, deberías poder acceder al dispositivo compartido de forma remota. Si no es así, intenta nuevamente todos los pasos desde el principio.
¡Importante! Si desconectas un dispositivo USB de la Raspberry Pi mientras está compartido por este método, puede resultar en pérdida permanente de datos. Apaga primero tu Raspberry (después de apagarla, también puedes desconectar su adaptador de CA como precaución adicional).
Construir un hub inalámbrico de USB sobre IP con una Raspberry Pi es un ejercicio relativamente simple si tienes los siguientes dos componentes.
VirtualHere permite compartir dispositivos USB conectados en red. Es una solución que te permite conectar dispositivos USB remotos y usarlos como si estuvieran conectados directamente a tu máquina local. Un servidor VirtualHere te permite acceder de forma remota a dispositivos USB como escáneres, impresoras y cámaras web desde cualquier ubicación en tu red.
Puedes crear un hub para admitir USB sobre IP usando Raspberry Pi con los siguientes pasos.
$ wget https://www.virtualhere.com/sites/default/files/usbserver/vhusbdarm
$ chmod +x vhusbdarm
$ sudo ./vhusbdarm -b
Ver las opciones disponibles ejecutando este comando:
$ ./vhusbdarm -h
Cualquier tipo de dispositivo USB se puede conectar a la red con este método. El número de puertos abiertos es la única limitación en la cantidad de dispositivos que puedes conectar. También puedes agregar un concentrador USB físico para proporcionar más puertos USB y permitirte conectar dispositivos adicionales.
![]() |
![]() |
![]() | ||||||
---|---|---|---|---|---|---|---|---|
Proxi-server |
Servidor de Redirección • no se necesita IP externa • comunicación multi-red • funciona a través del firewall |
N/A | N/A | |||||
| ||||||||
Firmware para microcontroladores | Raspberry (a pedido) | N/A | Raspberry | |||||
Seguridad |
Tokens de inicio de sesión para compartir cuentas de manera segura
Bloqueo para control de acceso de dispositivos
|
N/A | N/A | |||||
Cifrado | SSL de 2048 bits | SSL, no desde la GUI | SSL, para el programa | |||||
Estabilidad mejorada | Opción de mantener la conexión activa | N/A | N/A |
La decisión de qué método adoptar de los descritos en este artículo es completamente tuya. Sin embargo, podría ser más sabio optar por una herramienta fácil de usar con un historial de eficacia en lugar de arriesgar un tiempo de inactividad potencial, lo que podría generar un estrés considerable, pérdida de tiempo y gastos financieros. Elige lo que mejor funcione para ti.