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.

Como compartilhar USB sobre Ethernet com Raspberry Pi

Em muitas situações, é muito desejável ter a oportunidade de compartilhar um periférico USB pela rede. Por um lado, se você tem uma equipe inteira usando algum software licenciado caro protegido por uma chave de segurança USB. Ninguém quer gastar uma fortuna em licenças individuais para cada funcionário ou apostar em perder ou danificar a dita chave, pois ela será carregada pelo escritório conectada a diferentes máquinas durante todo o dia.

FlexiHub


Windows, macOS, Linux, Android
4.8 Classificação baseado em 78+ usuários
Compartilhar serial sobre IP
Como você já deve saber, existe uma maneira de configurar o Raspberry Pi como um servidor USB sobre Ethernet. Bem, na verdade, não há um, mas dois caminhos que você pode seguir aqui: um caminho fácil com o aplicativo pago cem por cento eficiente ou uma jornada acidentada com uma solução de código aberto e seu processo de configuração complicado. E estamos prestes a dar uma olhada em ambos.

Compartilhamento USB rápido e seguro do Raspberry Pi com FlexiHub

Com a ferramenta de software certa, compartilhar USB sobre IP de um Raspberry Pi é menos que simples:
1
Baixe a versão Linux;
2
No terminal do Raspberry, execute o seguinte comando: yum install [package];
3
Inicie o aplicativo e clique em “Compartilhar” ao lado do seu dispositivo.

É isso!

A partir desse ponto, o dispositivo compartilhado poderá ser acessado remotamente de qualquer máquina Linux, Windows ou Mac com FlexiHub instalado e conexão à Internet, independentemente da distância física. Graças ao servidor de redirecionamento USB texclusivo, o aplicativo é realmente uma solução de internetwork que funciona através de todos os firewalls e não requer endereços IP públicos.

FlexiHub

Windows, macOS, Linux, Android
4.8 Classificação baseado em 78+ usuários
Além disso, FlexiHub tem um recurso opcional de compressão de tráfego que é muito útil quando se trata de compartilhar dispositivos USB sensíveis à largura de banda, como câmeras USB, e uma criptografia SSL de 2048 bits à prova de balas para impedir completamente o acesso indesejado aos seus dongles de segurança ou quaisquer dados aprovado com o aplicativo.
FlexiHub

E a cereja do bolo é que você realmente não precisa transformar permanentemente seu Raspberry Pi em um servidor USB sobre IP. Você pode compartilhar dispositivos USB de qualquer máquina com FlexiHub instalado, incluindo seu tablet Android, e nunca ter nenhum problema com conectividade de plataforma cruzada. Em uma máquina Windows, você pode até mesmo compartilhar um periférico baseado em COM. Quão incrível é isso? E, para maior comodidade, você terá a oportunidade de desfrutar da conectividade sem fio acessando dispositivos compartilhados via Wi-Fi.

Uma maneira gratuita de configurar um Raspberry Pi como um servidor USB sobre IP

Em princípio, esse método é semelhante ao que acabamos de descrever, mas por meio de um aplicativo diferente. E dado que desta vez estaremos usando uma solução de código aberto que ainda está em desenvolvimento, o processo de configuração requer um nível decente de competência técnica para ser executado, então, se você não tiver nenhuma, não se surpreenda se não funcionará na primeira tentativa.

Aqui estão alguns pontos mais importantes que você precisa considerar antes de optar por este método:

  • Funciona apenas para compartilhar dispositivos USB em sua rede local.
  • Não é possível compartilhar um dispositivo de uma máquina não Linux.
  • Quanto maior a distância do dispositivo compartilhado, pior é a conexão.
  • Sem proteção para acesso não autorizado.
  • Sem compressão de tráfego, portanto, uma imagem de uma câmera remota pode ficar muito atrasada.

Vamos começar configurando seu Raspberry Pi como um servidor:

1
Instale o aplicativo usando este comando: sudo apt install usbip
2
Assim que a instalação for concluída, adicione o módulo do kernel de que precisaremos inserindo:
sudo modprobe usbip_host
echo 'usbip_host' >> /etc/modules
3
Agora, use o lsusb command para ver uma lista de todos os dispositivos USB fisicamente conectados ao Raspberry Pi e lembre-se (ou anote) o número de ID USB de 8 dígitos de um dispositivo que você vai compartilhar .
4
Use o comando usbip list -p -l para descobrir a ID de barramento do seu dispositivo (use o número de ID USB de uma etapa anterior para identificar o dispositivo certo na lista). Anote esse número.
5
Execute o comando:
sudo usbip bind --busid=N
(N é o número de identificação do barramento da etapa anterior)
6
Execute o demônio para conectar o dispositivo ao USB/IP executando o comando: usbipd

Como alternativa, você pode criar um serviço systemd:

vi /lib/systemd/system/usbipd.service

com a seguinte definição (não se esqueça de alterar o N para um número de ID USB real do seu 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



E então você precisará executar estes comandos para iniciar esse serviço:

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

Ok, agora vamos configurar um cliente:

Observação: o aplicativo tem um cliente para Windows, mas é uma versão beta frágil, sem drivers assinados ou qualquer suporte para Windows 10, portanto, não vale a pena mencionar.

1. Para instalar o mesmo aplicativo para compartilhar USB sobre IP no Ubuntu, execute estes comandos:
sudo -s
apt-get install linux-tools-generic -y

2. Habilite o módulo necessário:
modprobe vhci-hcd
echo 'vhci-hcd' >> /etc/modules

Agora, para conectar o dispositivo compartilhado a esta máquina, execute o comando: sudo usbip attach -r 0.0.0.0
(digite o endereço IP real do seu Raspberry Pi em vez de 0.0.0.0)

Ou você pode criar um serviço systemd:
vi /lib/systemd/system/usbip.service

Com a definição (substitua N por um número de ID USB real do seu dispositivo e 0.0.0.0 pelo endereço IP do seu 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 

Salve e execute estes comandos para iniciar o serviço:

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

Depois disso, você deve conseguir acessar o dispositivo compartilhado remotamente. Caso contrário, tente todas as etapas novamente desde o início.

Importante! Se você desconectar um dispositivo USB do Raspberry Pi enquanto ele é compartilhado por este método, pode resultar em perda permanente de dados. Desligue o Raspberry primeiro.

Compartilhamento USB com FlexiHub
Período de avaliação de 30 dias

Uma tabela para comparação entre os dois métodos:

Servidor proxy
Servidor proxy
Servidor de Redirecionamento
• sem necessidade de IP externo
• comunicação multi-rede
• funciona através do Firewall
 
N/A
 
Plataformas suportadas:
Plataformas suportadas:
 
 
Lado do servidor
Lado do servidor
✓ Windows
✓ Linux
✓ macOS
✓ Android
 
✓ Linux
 
Do lado do cliente
Do lado do cliente
✓ Windows
✓ Linux
✓ macOS
 
✓ Windows (beta)
✓ Linux
 
Firmware para microcontroladores
Firmware para microcontroladores
Raspberry (a pedido)
 
N/A
 
Segurança
Segurança
Tokens de login para compartilhamento seguro da conta
Bloquear para controle de acesso ao dispositivo
 
N/A
 
Encriptação
Encriptação
2048-bit SSL
 
N/A
 
Estabilidade aprimorada
Estabilidade aprimorada
Manter a conexão ativa opção
 
N/A
 

Discurso de encerramento

Com certeza, depende totalmente de você decidir qual dos dois métodos descritos neste artigo você vai adotar. Mas não seria melhor investir em uma ferramenta fácil de manusear com eficiência comprovada do que confiar em algo que pode falhar a qualquer momento e causar quem sabe quanto nervosismo, tempo e dinheiro devido ao tempo de inatividade não planejado.


Melhor escolha

FlexiHub

  • Classificação 4.8 baseado em 78+ usuários
  • Windows 7/8/10, Server 2008 R2/2012/2016/2019. 6.99MB Tamanho.
  • Versão 4.5.13261. (09/03/2021).