USB over IP en Linux: Guía Completa de Instalación y Uso
El acceso remoto a dispositivos USB es una necesidad creciente en entornos de desarrollo, administración de sistemas y uso personal. USB over IP, o USB IP, es un protocolo que permite compartir dispositivos USB con un sistema cliente remoto a través de una red. Esta guía completa te llevará paso a paso por la instalación y configuración de USB IP en un sistema Linux, utilizando Ubuntu 22.04 como ejemplo. Aprenderás a configurar un servidor que exponga dispositivos USB a un cliente remoto, y a utilizar las herramientas esenciales para interactuar con ellos.
Instalación y Configuración del Servidor
Para comenzar, necesitarás configurar el sistema Linux que actuará como servidor USB IP. En este caso, utilizaremos Ubuntu 22.04. Los pasos a seguir son:
1. Instalar los paquetes necesarios
Comienza instalando los paquetes esenciales para USB IP:
bash
sudo apt update
sudo apt install usbip-utils
Este comando instalará el paquete usbip-utils, que contiene las herramientas de línea de comandos para administrar USB IP.
2. Cargar los módulos del kernel
Para que USB IP funcione correctamente, es necesario cargar los módulos del kernel usbip_core y usbip_host:
bash
sudo modprobe usbip_core
sudo modprobe usbip_host
Verifica si los módulos se cargaron correctamente con el comando lsmod:
bash
lsmod | grep usbip
Si los módulos están cargados, verás una salida similar a:
usbip_host 20480 0
usbip_core 16384 1 usbip_host
3. Configurar el daemon usbipd
El daemon usbipd se encarga de gestionar la conexión entre el servidor y el cliente USB IP. Para configurarlo, edita el archivo /etc/default/usbipd:
bash
sudo nano /etc/default/usbipd
Dentro del archivo, asegúrate de que las siguientes opciones estén configuradas:
- USBIPD_OPTIONS:
-lpara permitir conexiones desde cualquier dirección IP,-apara especificar la dirección IP del servidor.
«`
Default options for usbipd
USBIPD_OPTIONS=»-l -a 192.168.1.100″
«`
Guarda el archivo y reinicia el servicio usbipd:
bash
sudo systemctl restart usbipd
Uso de USB over IP
Ahora que el servidor USB IP está configurado, puedes conectarte a él desde un cliente remoto. Para hacerlo, necesitarás instalar los paquetes usbip-utils y libusb-1.0-0-dev en el sistema cliente:
bash
sudo apt update
sudo apt install usbip-utils libusb-1.0-0-dev
Conectando al servidor
Para conectarte al servidor USB IP, utiliza el comando usbip connect:
bash
usbip connect --bus 1 --dev 1 --remote 192.168.1.100:3240
- –bus: Número del bus USB al que está conectado el dispositivo.
- –dev: Número del dispositivo en el bus USB.
- –remote: Dirección IP del servidor y puerto.
Usando los dispositivos remotos
Una vez conectado, puedes usar el dispositivo como si estuviera conectado directamente a tu sistema:
- Listar dispositivos:
usbip list - Desconectar del dispositivo:
usbip disconnect --bus 1 --dev 1
Compartir dispositivos USB
Para compartir un dispositivo USB con un cliente remoto, utiliza el comando usbip attach:
bash
usbip attach --bus 1 --dev 1 --target 192.168.1.101
- –target: Dirección IP del cliente remoto.
Ejemplo: Configuración con VirtualBox
Para configurar USB IP en una máquina virtual VirtualBox, primero necesitas instalar los paquetes necesarios en la máquina virtual como se describió anteriormente. Luego, dentro de VirtualBox, debes configurar las siguientes opciones:
- En las opciones de la máquina virtual, selecciona «Configuración».
- Ve a la sección «USB» y haz clic en el botón «Agregar nuevo filtro USB».
- En el menú desplegable «Nombre del dispositivo», selecciona el dispositivo USB que deseas compartir.
- En el menú desplegable «Modo», selecciona «Habilitado» o «Activo».
Una vez que hayas configurado el filtro USB, puedes conectarte al servidor USB IP desde la máquina virtual, utilizando los comandos descritos anteriormente.
Conclusión
Esta guía ha mostrado cómo configurar y usar USB IP en Linux. Con esta tecnología, puedes acceder a dispositivos USB remotos como si estuvieran conectados directamente a tu sistema, lo que facilita el desarrollo, la administración de sistemas y muchas otras tareas.
Recuerda que es importante seguir los protocolos de seguridad adecuados al configurar USB IP, como utilizar una red privada y contraseñas seguras. Además, asegúrate de conocer las implicaciones de compartir dispositivos USB en un entorno de red.