
FlexiHub
yum install [package];
¡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 la conexión a Internet, sin importar los sistemas operativos o las distancias físicas. Gracias al servidor USB de redirección único, la aplicación es realmente una solución universal que funciona a través de todos los firewalls y no requiere direcciones IP públicas. Incluso puede utilizar este método para compartir un concentrador USB de modo que cualquier periférico conectado esté disponible instantáneamente para conexiones remotas.
FlexiHub
Y la guinda de este pastel es que para compartir USB a Ethernet no es necesario convertir permanentemente su Raspberry Pi en un servidor USB. Puede compartir dongles, cámaras web, impresoras y otros periféricos conectados a los puertos USB de todas las computadoras con FlexiHub instalado, incluida su tableta Android, y nunca tendrá problemas con la conectividad multiplataforma. Desde una máquina con Windows, incluso puede compartir un periférico basado en COM. ¿Qué tan asombroso es eso? Y, para mayor comodidad, tendrá la oportunidad de disfrutar de la conectividad inalámbrica accediendo a dispositivos compartidos a través de Wi-Fi. Adiós a todos esos cables CAT6 tirados por la oficina.
En principio, este método es similar al que acabamos de describir, pero a través de una aplicación de extensión de USB a Ethernet diferente. Y dado que esta vez usaremos una solución de código abierto que aún está en desarrollo, el proceso de configuración requiere un nivel decente de competencia técnica para realizarlo, así que si no tiene ninguno, no se sorprenda si no funcionará a la primera.
Aquí hay algunos puntos más importantes que debe considerar antes de optar por este método.:
sudo apt install usbip
sudo modprobe usbip_host
echo 'usbip_host' >> /etc/modules
lsusb command
para ver una lista de todos los dispositivos USB conectados físicamente a su Raspberry Pi y recuerde (o anote) el número de identificación USB de 8 dígitos de un dispositivo que va a compartir .
usbip list -p -l
para averiguar el ID de bus de su dispositivo (utilice el número de ID de USB de un paso anterior para identificar el dispositivo correcto en la lista). Anote ese número.
sudo usbip bind --busid=N
usbipd
Alternativamente, puede crear un servicio systemd:
vi /lib/systemd/system/usbipd.service
con la siguiente definición (no olvide cambiar la N por un número de identificación USB real de su dispositivo):
[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
Y luego deberá ejecutar estos comandos para iniciar ese servicio:
sudo systemctl --system daemon-reload
sudo systemctl enable usbipd.service
sudo systemctl start usbipd.service
Ok, ahora configuremos un cliente:
Nota: La aplicación tiene un cliente para Windows, pero es una versión beta endeble 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, ejecute estos comandos:
sudo -s
apt-get install linux-tools-generic -y
2. Habilite el módulo requerido:
modprobe vhci-hcd
echo 'vhci-hcd' >> /etc/modules
Ahora, para conectar el dispositivo compartido a esta máquina, ejecute el comando:
sudo usbip attach -r 0.0.0.0
(escriba la dirección IP real de su Raspberry Pi en lugar de 0.0.0.0)
O puede crear un servicio systemd:
vi /lib/systemd/system/usbip.service
Con la definición (reemplace N con un número de identificación USB real de su dispositivo y 0.0.0.0 con la dirección IP de su 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
Guarde y luego ejecute 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ía poder acceder al dispositivo compartido de forma remota. Si no es así, vuelva a intentar todos los pasos desde el principio.
Importante! Si desconecta un dispositivo USB de la Raspberry Pi mientras está compartido por este método, puede resultar en una pérdida permanente de datos. Apague su Raspberry primero (después de que esté apagada, también puede desconectar su adaptador de CA para tomar precauciones adicionales).
Servidor proxy
|
Servidor proxy
|
Servidor de redireccionamiento
• sin necesidad de IP externa
• comunicación multi-red
• funciona a través del cortafuegos |
N/A |
Plataformas compatibles:
|
Plataformas compatibles:
|
|
|
Lado del servidor
|
Lado del servidor
|
✓ Windows
✓ Linux
✓ macOS
✓ Android |
✓ Linux |
Lado del cliente
|
Lado del cliente
|
✓ Windows
✓ Linux
✓ macOS |
✓ Windows (beta)
✓ Linux |
Firmware para microcontroladores
|
Firmware para microcontroladores
|
Raspberry (a petición) |
N/A |
Seguridad
|
Seguridad
|
Tokens de inicio de sesión para compartir cuentas de forma segura
Bloquear para el control de acceso del dispositivo |
N/A |
Cifrado
|
Cifrado
|
2048-bit SSL |
N/A |
Estabilidad mejorada
|
Estabilidad mejorada
|
Opción de mantener la conexión activa |
N/A |
Por supuesto, depende totalmente de usted decidir cuál de los dos métodos descritos en este artículo va a utilizar. Pero, ¿no sería mejor invertir en una herramienta fácil de manejar con eficacia probada que confiar en algo que puede fallar en cualquier momento y causarle quién sabe cuántos nervios, tiempo y dinero debido a un tiempo de inactividad no planificado?