Проброс usb по сети windows бесплатно

Contribute to OliverRieder/Best-USB-over-Ethernet-Software- development by creating an account on GitHub.

Best USB over Ethernet Software of 2021

The remote working trends of 2021 have changed significantly since the start of the COVID-19 pandemic. These days, remote working is the new reality for thousands upon thousands of people, so a reliable software tool for redirecting USB over Ethernet becomes essential.

Piccy.info - Free Image HostingRemote Work Trends for 2021

Being able to remotely access USB devices through the network or even via the Internet and safely share your peripheral with teammates can totally boost your efficiency.
The variety of options can be confusing, so I’ve put together this list for you to choose from selection of the best. We’ve tested some of the most popular apps designed specifically for redirecting USB to Ethernet and reviewed their functional flavor to identify all the strengths and gaps.

1. USB over Ethernet

Platform: Windows, Linux, MacOS, Android
Cross-connectivity: Yes
Security: encryption, optional password authorization
Traffic optimization: compression>
Other: USB 3.0 support

USB over Ethernet is an advanced multi-platform software app with a host of handy features. You can use it to share the whole array of USB peripherals over Ethernet so that they’ll become accessible from all remote machines across your network, regardless of the physical distance.

USB.Network.Gate.-.Share.USB.Devices.Over.Ethernet.With.The.Remote.Computers.mp4

USB Network Gate can easily save you from having to drive all the way to your worksite and back just to get some print job done on the office printer. And your hardware key will last much longer if you share it from your machine instead of unplugging and reconnecting it every time someone else needs it.

With USB Network Gate, you’ll never have any issues accessing your local USB peripherals during RDP sessions, from virtual environments (s.a. VMware, Citrix XenDesktop, Microsoft Hyper-V), and/or blade servers.

On top of that, the unique “Device isolation” feature can make a shared device invisible for everyone, except for a specific user.

Advantages and disadvantages of USB over Ethernet:

Pros: Secure connection protecting your sensitive data with both encryption and password.

  • Works on all popular platforms and with literally any type of USB device.
  • Traffic compression to speed-up data transfers and optimize bandwidth utilization.
  • Not a free app.
  • Known issues with some exotic web-browsers (fixed in the latest version).

2. FlexiHub

Platform: Windows, Linux, MacOS, Android
Cross-connectivity: Yes
Security: 2048-bit SSL encryption
Traffic optimization: optional compression
Other: FlexiChat

FlexiHub is an upper-division software solution with a powerful toolset for sharing USB devices over a network and operating remote USB devices. Unlike some other apps of this type, its license is bound to your account, and not some hardware, meaning, you can use FlexiHub on all your machines.

How.To.Share.Printer_Scanner.Over.Ethernet.A.Short.Guide.To.FlexiHub.mp4

You can invite other account owners to use your shared devices and won’t have to reveal your login or password to do so. FlexiHub has its own USB Redirector Server, so you can connect any remote USB over a network even if it has no public IP address and your computer can’t “see” that other PC that device is shared from.

Also, there is a new “Keep connection active” option you can enable to avoid losing your data or the unsaved work-in-progress owing to some unexpected network failure. Again, unlike its competitors, FlexiHub will also work for your serial devices, which can come in very handy.
And the latest version for Windows has FlexiChat where you can communicate with other users logged into your FlexiHub account in real-time.

Piccy.info - Free Image HostingFlexiHub for mac, Win and Linux OSes

Advantages and disadvantages of FlexiHub:

  • Never-failing USB sharing over any network, no matter the distance.
  • Right on access to any device shared from a networked machine.
  • Truly cross-platform solution: will work anywhere in all possible combinations.
  • For a free demo version, you can only have 5 connection sessions.
  • The free demo is unavailable in some countries.
  • The tech-support is US-based, so Europeans will have to mind the time difference while making emergency phone calls.

3. USB over Network

Platform: Linux, Windows
Cross-connectivity: Partial
Security: SSL traffic encryption, password
Traffic optimization: No
Other: supports 3D mouse

USB over Network is a great solution for redirecting USB devices to remote computers over Ethernet, Internet, or any other network. USB virtualization technology creates an exact virtual copy of a USB device shared from a server on every client’s PC. The distance won’t be the matter with this efficient app. USB over Network will let you access your valuable USB peripherals even if you are in another country or another part of the world by fully emulating the USB stack of remote USB devices and redirecting them over LAN or the Internet.

Piccy.info - Free Image HostingUSB over Network Screenshots

There are versions for Windows and Linux that are fully cross-connective, so you can share a USB device over a network from a Linux server and then access it from a Windows client, or vice versa. Also, you can use this app to share one (or more) of your USB ports and all devices plugged into said port will be instantly accessible from all client machines.

Advantages and disadvantages of USB over Network:

  • Very high data transmission speed.
  • Support of all USB devices, even the most exotic ones.
  • Separate sharing of each composite USB device’s interface.
  • The free evaluation period ends in 15 days.
  • No software updates after 12 months from the purchase date.
  • No refunds.

4. USB over Ethernet app by KernelPro

Platform: Windows
Cross-connectivity: No
Security: IP filters
Traffic optimization: No
Other: Custom device names
USB over Ethernet is a professional-grade app capable of much more than just sharing your USB peripherals over LAN, Wi-Fi, or the Internet. With its help, you can also access a remote USB over the Internet or other network so you won’t have to physically reattach it to do so. This app is easy to install and has a very simple user-friendly interface. All the devices are shared/unshared and connected/disconnected on-the-fly.

Piccy.info - Free Image HostingUSB over Ethernet app

USB over Ethernet has a very convenient IP Filters function that’ll help you limiting access to the shared device for certain IPs only, or banning some IPs from using your devices. Once you install the app, all new devices connected to your server’s USB ports will be automatically recognized and shared, unless you’ve added a device policy rule forbidding that. Using those rules, you can create the “Allow” and “Block” lists for certain types of peripherals. Plus, you can use the “Force Connection to…” option to attach a USB device to a remote client PC from the server-side.

Advantages and disadvantages of USB over Ethernet:

  • Very simple and straightforward installation process.
  • Compatible with all popular virtual environments.
  • Auto-reconnecting after network failures.
  • For a free trial period, you can only share 1 USB device.
  • A single-computer license (you can’t use the app on any other devices).
  • Windows-only app, won’t work on any other platform.

5. VirtualHere

Platform: Windows, Linux, macOS, Android (server)
Cross-connectivity: Yes
Security: SSL traffic encryption
Traffic optimization: No
Other: EasyFind feature

VirtualHere is a dedicated app for sharing USB over a network. Using VirtualHere, you can redirect USB devices over IP to your LAN, the Internet, or even the cloud to enable remote browsing of the device’s contents and access all its features without having it physically plugged into a client machine. When you buy a license, you only pay for a server-side app version. The client-side version is free, and you can install it on any number of client machines. VirtualHere USB Server is compatible with all popular platforms, but the Client will only work on Linux, Windows, and macOS.

Piccy.info - Free Image HostingVirtualHere Screenshots

This app’s biggest selling point is the option to turn your network-attached storage device (aka NAS) into a USB server. In addition, the newest version has an optional VPN subscription service called EasyFind that provides you with a unique address you can pass to anyone you want to grant them access to all your shared USB devices from anywhere in the world, even if your server is behind a NAT or firewall.

Advantages and disadvantages of VirtualHere:

  • Server-side versions for all popular operating systems.
  • Compatibility with cloud servers and Steam Link game systems.
  • Robustness of wired data transmission but with no cables.
  • The free version limit of one shared device only.
  • Hardware-bound license: you can’t use any other machine as your server.
  • Low-speed data transfer.

6. USB/IP Project

Platform: Linux, Windows (client)
Cross-connectivity: Partial
Security: Password on a server-side
Traffic optimization: No
Other: has an Activity log

USB/IP Project is a free USB over IP software application designed specifically for sharing USB peripherals over the network.
Technically speaking, the app redirects I/O messages from USB over IP, so any networked machine gets to access USB peripherals remotely and make the most of all the features it has to offer.

Piccy.info - Free Image HostingUSB/IP Design Overview

Originally, USB/IP Project was designed for Linux and thus won’t do any good on any other operating system. However, there is a new client version that allows you to share USB over IP to a Windows machine, it’s still very much in the early stage of its creation process and hasn’t been fully tested yet.

All in all, USB/IP Project is a very simplistic tool with a single function. On one hand, it’s a good thing, as you can’t possibly get confused with its setup, config, or usage. But on the other hand, there’s not much flexibility and all-purposeness is sadly out of the question.

Advantages and disadvantages of USB/IP Project:

  • It’s a free app that won’t exhaust your financial reserves.
  • Confusion-free interface with a bare minimum of features.
  • It’s an open-source app and you’re welcome to take part in the development process.
  • Known issues with client installation on x64 Windows.
  • Won’t work on macOS or Android.
  • No autodetection of shared devices.

Best USB over Ethernet Software of 2021

The remote working trends of 2021 have changed significantly since the start of the COVID-19 pandemic. These days, remote working is the new reality for thousands upon thousands of people, so a reliable software tool for redirecting USB over Ethernet becomes essential.

Piccy.info - Free Image HostingRemote Work Trends for 2021

Being able to remotely access USB devices through the network or even via the Internet and safely share your peripheral with teammates can totally boost your efficiency.
The variety of options can be confusing, so I’ve put together this list for you to choose from selection of the best. We’ve tested some of the most popular apps designed specifically for redirecting USB to Ethernet and reviewed their functional flavor to identify all the strengths and gaps.

1. USB over Ethernet

Platform: Windows, Linux, MacOS, Android
Cross-connectivity: Yes
Security: encryption, optional password authorization
Traffic optimization: compression>
Other: USB 3.0 support

USB over Ethernet is an advanced multi-platform software app with a host of handy features. You can use it to share the whole array of USB peripherals over Ethernet so that they’ll become accessible from all remote machines across your network, regardless of the physical distance.

USB.Network.Gate.-.Share.USB.Devices.Over.Ethernet.With.The.Remote.Computers.mp4

USB Network Gate can easily save you from having to drive all the way to your worksite and back just to get some print job done on the office printer. And your hardware key will last much longer if you share it from your machine instead of unplugging and reconnecting it every time someone else needs it.

With USB Network Gate, you’ll never have any issues accessing your local USB peripherals during RDP sessions, from virtual environments (s.a. VMware, Citrix XenDesktop, Microsoft Hyper-V), and/or blade servers.

On top of that, the unique “Device isolation” feature can make a shared device invisible for everyone, except for a specific user.

Advantages and disadvantages of USB over Ethernet:

Pros: Secure connection protecting your sensitive data with both encryption and password.

  • Works on all popular platforms and with literally any type of USB device.
  • Traffic compression to speed-up data transfers and optimize bandwidth utilization.
  • Not a free app.
  • Known issues with some exotic web-browsers (fixed in the latest version).

2. FlexiHub

Platform: Windows, Linux, MacOS, Android
Cross-connectivity: Yes
Security: 2048-bit SSL encryption
Traffic optimization: optional compression
Other: FlexiChat

FlexiHub is an upper-division software solution with a powerful toolset for sharing USB devices over a network and operating remote USB devices. Unlike some other apps of this type, its license is bound to your account, and not some hardware, meaning, you can use FlexiHub on all your machines.

How.To.Share.Printer_Scanner.Over.Ethernet.A.Short.Guide.To.FlexiHub.mp4

You can invite other account owners to use your shared devices and won’t have to reveal your login or password to do so. FlexiHub has its own USB Redirector Server, so you can connect any remote USB over a network even if it has no public IP address and your computer can’t “see” that other PC that device is shared from.

Also, there is a new “Keep connection active” option you can enable to avoid losing your data or the unsaved work-in-progress owing to some unexpected network failure. Again, unlike its competitors, FlexiHub will also work for your serial devices, which can come in very handy.
And the latest version for Windows has FlexiChat where you can communicate with other users logged into your FlexiHub account in real-time.

Piccy.info - Free Image HostingFlexiHub for mac, Win and Linux OSes

Advantages and disadvantages of FlexiHub:

  • Never-failing USB sharing over any network, no matter the distance.
  • Right on access to any device shared from a networked machine.
  • Truly cross-platform solution: will work anywhere in all possible combinations.
  • For a free demo version, you can only have 5 connection sessions.
  • The free demo is unavailable in some countries.
  • The tech-support is US-based, so Europeans will have to mind the time difference while making emergency phone calls.

3. USB over Network

Platform: Linux, Windows
Cross-connectivity: Partial
Security: SSL traffic encryption, password
Traffic optimization: No
Other: supports 3D mouse

USB over Network is a great solution for redirecting USB devices to remote computers over Ethernet, Internet, or any other network. USB virtualization technology creates an exact virtual copy of a USB device shared from a server on every client’s PC. The distance won’t be the matter with this efficient app. USB over Network will let you access your valuable USB peripherals even if you are in another country or another part of the world by fully emulating the USB stack of remote USB devices and redirecting them over LAN or the Internet.

Piccy.info - Free Image HostingUSB over Network Screenshots

There are versions for Windows and Linux that are fully cross-connective, so you can share a USB device over a network from a Linux server and then access it from a Windows client, or vice versa. Also, you can use this app to share one (or more) of your USB ports and all devices plugged into said port will be instantly accessible from all client machines.

Advantages and disadvantages of USB over Network:

  • Very high data transmission speed.
  • Support of all USB devices, even the most exotic ones.
  • Separate sharing of each composite USB device’s interface.
  • The free evaluation period ends in 15 days.
  • No software updates after 12 months from the purchase date.
  • No refunds.

4. USB over Ethernet app by KernelPro

Platform: Windows
Cross-connectivity: No
Security: IP filters
Traffic optimization: No
Other: Custom device names
USB over Ethernet is a professional-grade app capable of much more than just sharing your USB peripherals over LAN, Wi-Fi, or the Internet. With its help, you can also access a remote USB over the Internet or other network so you won’t have to physically reattach it to do so. This app is easy to install and has a very simple user-friendly interface. All the devices are shared/unshared and connected/disconnected on-the-fly.

Piccy.info - Free Image HostingUSB over Ethernet app

USB over Ethernet has a very convenient IP Filters function that’ll help you limiting access to the shared device for certain IPs only, or banning some IPs from using your devices. Once you install the app, all new devices connected to your server’s USB ports will be automatically recognized and shared, unless you’ve added a device policy rule forbidding that. Using those rules, you can create the “Allow” and “Block” lists for certain types of peripherals. Plus, you can use the “Force Connection to…” option to attach a USB device to a remote client PC from the server-side.

Advantages and disadvantages of USB over Ethernet:

  • Very simple and straightforward installation process.
  • Compatible with all popular virtual environments.
  • Auto-reconnecting after network failures.
  • For a free trial period, you can only share 1 USB device.
  • A single-computer license (you can’t use the app on any other devices).
  • Windows-only app, won’t work on any other platform.

5. VirtualHere

Platform: Windows, Linux, macOS, Android (server)
Cross-connectivity: Yes
Security: SSL traffic encryption
Traffic optimization: No
Other: EasyFind feature

VirtualHere is a dedicated app for sharing USB over a network. Using VirtualHere, you can redirect USB devices over IP to your LAN, the Internet, or even the cloud to enable remote browsing of the device’s contents and access all its features without having it physically plugged into a client machine. When you buy a license, you only pay for a server-side app version. The client-side version is free, and you can install it on any number of client machines. VirtualHere USB Server is compatible with all popular platforms, but the Client will only work on Linux, Windows, and macOS.

Piccy.info - Free Image HostingVirtualHere Screenshots

This app’s biggest selling point is the option to turn your network-attached storage device (aka NAS) into a USB server. In addition, the newest version has an optional VPN subscription service called EasyFind that provides you with a unique address you can pass to anyone you want to grant them access to all your shared USB devices from anywhere in the world, even if your server is behind a NAT or firewall.

Advantages and disadvantages of VirtualHere:

  • Server-side versions for all popular operating systems.
  • Compatibility with cloud servers and Steam Link game systems.
  • Robustness of wired data transmission but with no cables.
  • The free version limit of one shared device only.
  • Hardware-bound license: you can’t use any other machine as your server.
  • Low-speed data transfer.

6. USB/IP Project

Platform: Linux, Windows (client)
Cross-connectivity: Partial
Security: Password on a server-side
Traffic optimization: No
Other: has an Activity log

USB/IP Project is a free USB over IP software application designed specifically for sharing USB peripherals over the network.
Technically speaking, the app redirects I/O messages from USB over IP, so any networked machine gets to access USB peripherals remotely and make the most of all the features it has to offer.

Piccy.info - Free Image HostingUSB/IP Design Overview

Originally, USB/IP Project was designed for Linux and thus won’t do any good on any other operating system. However, there is a new client version that allows you to share USB over IP to a Windows machine, it’s still very much in the early stage of its creation process and hasn’t been fully tested yet.

All in all, USB/IP Project is a very simplistic tool with a single function. On one hand, it’s a good thing, as you can’t possibly get confused with its setup, config, or usage. But on the other hand, there’s not much flexibility and all-purposeness is sadly out of the question.

Advantages and disadvantages of USB/IP Project:

  • It’s a free app that won’t exhaust your financial reserves.
  • Confusion-free interface with a bare minimum of features.
  • It’s an open-source app and you’re welcome to take part in the development process.
  • Known issues with client installation on x64 Windows.
  • Won’t work on macOS or Android.
  • No autodetection of shared devices.

В эпоху гипервизоров редко когда под какой-то сервер приложений или баз данных выделяют отдельный физический сервер. Очень часто такие сервера работают в качестве гостевой операционной системы виртуальной машины на одном из гипервизоров. Обычно в 80-90% случаев это так (данные взять на основе сугубо моего личного опыта). Проброс USB устройств в таком случае не всегда является тривиальной задачей.

Если у вас, скажем, гипервизор ESXi, то задача может быть решена без помощи стороннего ПО. Проброс USB в Hyper-V все еще не завезли.

Совсем по-другому обстоят дела, когда вам необходимо подключить удаленное USB устройство, например, на ноутбук сотрудника. Особенно, если этим устройством пользуются попеременно. Это может быть токен с ЭЦП, аппаратный ключ с лицензией на ПО.

Я хочу поделиться с одним из возможных решений данной проблемы.

Краткое описание задачи

Задача, собственно, проста. Есть порядка 5-10 USB устройств, которые будут периодически подключаться к разным клиентам. Соответственно, все эти USB устройства физически должны быть подключены к какому-то одному устройству, которое будет доступно всем клиентам. Клиенты же уже в порядке живой очереди будут “разбирать” пул доступных устройств.

В силу особенностей работы 1 USB устройство в один момент времени будет подключено только к одному клиенту.

Если у вас исключительно Linux окружение, то вы можете использовать встроенное решение USB/IP.

Выбор решения

Программного обеспечения, которое может обеспечить проброс USB устройств по сети, очень много. После долгих сравнений набора возможностей, стоимости и предлагаемого набора клиентов решение было выбрано – VirtualHere.

Скажу сразу – решение платное (49$). Однако, лицензируется сервер целиком, т.е. нет ограничений на количество подключенных устройств. Без лицензии в один и тот же момент времени можно использовать только одно USB устройство. Для настройки PoC (Proof of Concept) решения этого достаточно. Вы сможете проверить – подойдет ли вам этот продукт или нет.

Почему VirtualHere?

Аргументы в сторону выбора этого решения:

  1. Большой выбор серверной части – Window, Linux, Android, OSX.
  2. До безобразия простая настройка сервера.
  3. Достаточно большой набор клиентов. Есть клиент под Windows, Linux, Mac OS и Android.
  4. Клиент может быть запущен как сервис.
  5. У клиента есть как графический вариант, так и консольный аналог.
  6. У клиента есть свой API.
  7. Относительно гуманная стоимость – 49$.
ВАЖНО: В Linux CentOS 8 и 9 из коробки нет модуля vhci_hcd. Поэтому нужно либо добавлять этот модуль вручную. Либо использовать контейнеры. Признаюсь честно, я потратил около 2-х часов на то, чтобы попробовать реализовать какой-то из этих вариантов, но из этого толком ничего не получилось. Пробовал даже сторонний модуль vhci_hcd от elrepo. Насколько я понял, модуль от elrepo не работает на ядре 4.18.0-394, а рассчитан на работу с более старой версией ядра. Но это только мои догадки - не так много у меня опыта работы с Linux. Если у кого-то получилось запустить клиент на CentOS 8 или 9 - поделитесь в комментариях опытом.

В качестве физической коробки, к которой будут подключены устройства будет выступать небольшой неттоп. Можно использовать любое практически любое физическое устройство, т.к. ресурсов серверу много не нужно. Можно даже использовать Raspberry Pi.

Могу ошибаться, но все или некоторые аппаратные решения DistKontrolUSB, например, используют клиент как две капли воды похожий на клиент VirtualHere. Возможно, что серверная часть тоже. Но это лишь мои наблюдения и догадки.

Теперь я покажу вам, как выполняется как выполняется настройка сервера, а также подключение к серверу с клиентских рабочих мест.

Настройка сервера

Мы будем использовать вариант с Linux сервером. Наш дистрибутив – Ununtu 20.04. Вы можете использовать любой дистрибутив. Но у меня под рукой для написания статьи был только этот 🙂

Если у вас абсолютно новая установка Ubuntu, то предварительно необходимо установить curl:

apt update
apt install curl

При наличии на сервере прямого выхода в Интернет установка производится в одну команду:

curl https://raw.githubusercontent.com/virtualhere/script/main/install_server | sudo sh

Теперь проверим статус нашего сервера:

systemctl status virtualhere.service

Серсив запущен и готов принимать клиентские подключения. Клиентский трафик прослушивается на порту TCP/7575:

netstat -tulpn

Клиент для Windows

Сначала я покажу, как выглядит клиент для Windows. Скачиваем его с сайта проекта.

Запускаем клиент:

Если вы находитесь в одной подсети с сервером, то клиент скорее всего найдет его автоматически. Если сервер автоматически не найдет, то нужно подсказать клиенту, по какому IP-адресу находится сервер:

Теперь мы видим все подключенные к серверу USB устройства и можем примонтировать одно из них:

Также можем зарегистрировать клиент в качестве службы Windows:

Работу клиента я проверил на следующих серверных ОС: Windows Server 2008 R2, 2012 R2, 2016 и 2019 и соответствующим им клиентским ОС – Windows 7, 8.1, 10 + Windows 11.

Также можно использовать API для работы с клиентом. Например, запросим перечень всех устройств на сервере:

vhui64.exe -t list

Клиент для Linux

Теперь я покажу, как выглядит клиент для Linux. Скачиваем его с сайта проекта.

Разрешаем выполнение:

chmod +x vhuit64

И запускаем клиент.

sudo ./vhuit64

В остальном работа Linux клиента аналогична работе Windows клиента. Также нужно указать расположение сервера:

Теперь мы можем увидеть перечень устройств и подключить одно из них:

Стоит отметить, что для Linux есть отдельный консольный клиент для тех случае, если вы будите использовать клиент, например, на Linux сервере.

Здравствуйте, товарищи-сисадмины и компьютерщики! Сегодня я сделаю небольшой обзор на одну программку, которая позволяет прокинуть USB устройства через сеть Ethernet.

Где это может быть полезным? Сложно навскидку сказать, но вот некоторые области применения:

  1. Для обмена файлами в пределах локальной сети, если есть сложности в передачи USB-накопителя или прямом расшаривании USB-накопителя.
  2. Для получения доступа к периферии (веб-камеры, мыши, клавиатуры, принтеры, сканеры).

Честно говоря, я не тестировал, как будет происходить доступ к устройствам ввода-вывода – просто нет такой возможности. Но вот на примере USB-накопителя покажу в статье. Работает вполне неплохо.

Находим на просторах Интернета программу USB Network Gate и ставим её на компьютер, который выступает в роли сервера. После запуска увидим нечто подобное (на вкладке “Локальные USB-устройства“):

Нажмём кнопку “Добавить сервер” и увидим окно ввода IP-адреса сервера:

Ввожу IP-адрес того узла в сети, на котором установил серверную часть в самом начале и вижу следующую картину:

Нажатие на кнопку “Подключить” приведёт к монтированию удалённого USB-устройства к локальному компьютеру:

При этом в системе появится та самая флешка, которая физически подключена совершенно в другом месте! Вот это номер. На сервере отобразится следующая картина:

То есть поясняется, к какому хосту подключено то или иное USB-устройство. Ну разумеется, имеется возможность отключить это устройство и прекратить доступ.

Грустная часть проверки: клиентская часть

В Windows устанавливаем драйвер (делаем это только один раз, дальше он будет всегда установлен). Для этого запускаем от имени администратора файл usbip.exe

с аргументом
install
:

usbip.exe install

Теперь смотрим, доступно ли нам устройство:

usbip.exe list —remote=192.168.10.123

Убеждаемся, что оно присутствует в списке. Ну, и подключаем его:

usbip.exe attach —remote=192.168.10.123 —busid=1-5.4.1.3

В менеджере устройств появляется новое USB-устройство, Keil его прекрасно видит…

Но на этом всё приятное кончается. Небольшая программа заливается во флэшку около минуты. Попытки шагать по строкам идут от 5 до 20 секунд на каждую строку. Это неприемлемо. Во время паузы в обе стороны идёт трафик примерно 50 килобит в секунду. Долго и вдумчиво идёт.

Честно говоря, ограничение по времени привело к тому, что я только предполагаю, почему всё было так плохо. Подозреваю, что там по сети бегает JTAG-трафик. А он бегает небольшими пакетами в обе стороны, отсюда и проблемы. Так было завершено исследование с результатом: «Для проекта не подходит».

Настройки программы для проброса USB по сети

Кроме того, на стороне сервера есть возможность задать некоторые настройки доступа для каждого из устройств:

Например, я вот указал описание устройства (чтобы было понятно), а также установил пароль для доступа к ресурсу. Ну и ряд дополнительных возможностей, которые вы можете видеть на скриншоте выше.

Доступ по паролю работает! При попытке подключения к устройству, появилось приглашение ввести пароль:

Ну что можно сказать по этому поводу… Утилита явно неплохая, несмотря на то, что коммерческая. Довольно таки неплохо справляется со своей задачей – пробросом USB устройств по сети.

Настройка виртуальной машины

Для того что бы было куда подключать экспортированные устройства, на виртуальной машине нужно создать необходимые usb-контроллеры:

  • uhci — для USB1.0
  • ehci — для USB2.0
  • xhci — для USB3.0
Для qemu (без libvirt)

Добавьте опции в команду запуска виртуальной машины: -device ich9-usb-ehci1,id=ehci,addr=1d.7,multifunction=on -device ich9-usb-uhci1,id=uhci-1,addr=1d.0,multifunction=on,masterbus=ehci.0,firstport=0 -device ich9-usb-uhci2,id=uhci-2,addr=1d.1,multifunction=on,masterbus=ehci.0,firstport=2 -device ich9-usb-uhci3,id=uhci-3,addr=1d.2,multifunction=on,masterbus=ehci.0,firstport=4

Для libvirt

В исходном файле конфигурации виртуальной машины в узле &ltdevices>
удаляем все USB контроллеры и добавляем следущий блок:

Кстати, если вы используете spice, то добавив к контроллерам еще 3 специальных девайса, станет возможен проброс usb-устройств с клиента spice на сервер.

Пример под спойлером

Для qemu

Добавляем следующие опции в команду запуска виртуальной машины, помимо контроллеров определеных нами раньше: -chardev spicevmc,name=usbredir,id=usbredirchardev1 -device usb-redir,chardev=usbredirchardev1,id=usbredirdev1,debug=3 -chardev spicevmc,name=usbredir,id=usbredirchardev2 -device usb-redir,chardev=usbredirchardev2,id=usbredirdev2,debug=3 -chardev spicevmc,name=usbredir,id=usbredirchardev3 -device usb-redir,chardev=usbredirchardev3,id=usbredirdev3,debug=3

Для libvirt

В исходном файле конфигурации виртуальной машины в узле &ltdevices> добавляем следующие опции, помимо контроллеров определеных нами раньше:
Теперь все готово для осуществления проброса.

Выводы

Итак, пару слов о данной программе. Мне понравилась задумка – люблю различные решения, которые могут иногда выручить в сложной ситуации. Никогда не знаешь, где может пригодиться это, а знать, что такая возможность имеется – очень даже полезно!

Один минус – программа платная, но в ознакомительных целях использовать её ограниченную версию вполне можно, разрабы не обидятся, надеюсь.

Друзья! Вступайте в нашу группу Вконтакте, чтобы не пропустить новые статьи! Хотите сказать спасибо? Ставьте Like, делайте репост! Это лучшая награда для меня от вас! Так я узнаю о том, что статьи подобного рода вам интересны и пишу чаще и с большим энтузиазмом!

Также, подписывайтесь на наш канал в YouTube! Видео выкладываются весьма регулярно и будет здорово увидеть что-то одним из первых!

Запуск сервера

Пакет usbredirserver можно найти в стандартных репозиториях практически во всех популярных дистрибутивах linux.
Вставляем флешку в компьютер, смотрим вывод usb-устройств:

$ lsusb … Bus 003 Device 011: ID 125f:c82a A-DATA Technology Co., Ltd. …

Видим что пара vendorid:prodid равна 125f:c82a, а ядро определило флешке 003-001 usbbus-usbaddr соотвественно.

Теперь давайте расшарим ее на 4000 порт:

# Используя пару vendorid:prodid $ usbredirserver -p 4000 125f:c82a # Используя пару usbbus-usbaddr $ usbredirserver -p 4000 003-011

Подключение устройства к виртуальной машине

Через опции при запуске ВМ

Устройство которое нужно подключить к ВМ можно указать при запуске, добавив следующие опции в команду запуска

Для qemu

-chardev socket,id=usbredirchardev1,port=4000,host=192.168.1.123 -device usb-redir,chardev=usbredirchardev1,id=usbredirdev1,bus=ehci.0,debug=4

Для libvirt

Этот блок рамещается перед тегом </devices>
, рядом с контроллерами определенными нами раньше:
Его так же можно исполнить командой virsh attach-device

Или через qemu-monitor

Заходим на гипервизор и в qemu-monitor нашей машины выполняем следующие команды: # Добавляем наше устройство chardev-add socket,id=usbredirchardev1,port=4000,host=192.168.1.123 # Подключем его в ehci контроллер (USB-2.0) device_add usb-redir,chardev=usbredirchardev1,id=usbredirdev1,bus=ehci.0,debug=4 Что бы отключить флешку достаточно такой команды: device_del usbredirdev1
На этом все, после данных шагов ваша ВМ увидит вашу флешку и сможет с ней нативно работать.

Режим разрыва клавиатуры

В режиме разрыва клавиатуры сканер просто набирает клавиши, которые соответствуют символам штрих-кода. Не требуется никаких драйверов, чтобы сканер заработал в 1С.

Во всех типовых конфигурациях по кнопке F 7 открывается окно ввода штрих-кода. Поэтому достаточно сканеру запрограммировать префикс F 7 и все, он будет поддерживаться 1С.

Если конфигурация дорабатывалась и в некоторых участках забыли прописать типовую поддержку F 7, проще дописать эту поддержку. Но в качестве альтернативы можно использовать драйвер Атол старых версий, где выбрать в качестве порта «Разрыв клавиатуры».

Новые версии драйверов Атол платные, а бесплатные делают 10-секундную задержку перед обработкой штрих-кода.

Способ прост для подключения, но неудобен в работе.

  • Нужно следить, чтобы была включена правильная раскладка клавиатуры.
  • При использовании префикса курсор должен стоять внутри таблицы, иначе F 7 не срабатывает.
  • Буквы при наборе в RDP часто теряются, и сканер считывает усеченные штрих-коды.

Поэтому лучше все же, если используется разрыв клавиатуры, не использовать драйвер Атол (это лишние потери времени и символов), а просто запрограммировать префикс F 7.

В моем случае был интересный глюк — буквы на некоторых штрих-кодах преобразовывались в верхний регистр. Я долго мучался , но мне подсказали, что нужно включить режим посимвольной передачи штрих-кода, а не пакетный, который стоял по умолчанию.

Удаленный доступ к USB-порту через Ethernet

День добрый. Как-то столкнулся с задачей удаленно подключить по RDP электронный ключ ruToken к 1С. Бухгалтерия находится в одном офисе, а сервер с 1С — в другом. Решить задачу помогла программа USB Network Gate, которая позволяет легко подключить одно или несколько удаленных USB-устройств к вашему компьютеру по сети Ethernet (Интернет/LAN/WAN) так, словно они подключены к системе напрямую. Не имеет значения, находитесь ли вы в другой стране или соседнем офисе, вы всегда можете воспользоваться удаленным сканером, принтером, веб-камерой, модемом, USB-донглом и любым другим оборудованием, как будто они подключены непосредственно к вашему ПК.

Программа USB Network Gate приятно удивит не умудренных компьютерными знаниями пользователей простотой своего использования. Достаточно подключить нужное USB-устройство к компьютеру, найти его во вкладке «share local USB devices» и нажать кнопку «share», — устройство станет доступно в локальной сети и интернете. Для соединения через интернет удаленному компьютеру нужно будет предоставить IP-адрес сервера.

На клиентском компьютере, в свою очередь, необходимо выбрать во второй вкладке программы появившееся устройство, а затем получить к нему доступ нажатием кнопки «connect». Если же сервер с подключенным девайсом находится в другой подсети, то его необходимо добавить через пункт «add server».

Заключение

Если вам необходим совместный доступ к накопителю, веб-камере, электронной подписи, дактилоскопическому сканеру, принтеру, МФУ или любому другому поддерживаемому USB-устройству из любой точки мира, то USB Network Gate — простое и качественное решение. Программа имеет пробную 14-дневную версию для тестирования и ознакомления с функционалом. Стоимость лицензионной копии варьируется в зависимости от максимального количества одновременно подключаемых к сети USB-устройств. Есть редакции USB Network Gate под операционные системы Windows, Linux, Mac и Android.

Скачать программу вы можете на официальном сайте.

источник

Содержание

  1. USB по локальной сети
  2. Проброс USB-портов из Windows 10 для удалённой работы
  3. USB Network Gate
  4. Грустная часть проверки: клиентская часть
  5. Настройки программы для проброса USB по сети
  6. Настройка виртуальной машины
  7. Выводы
  8. Запуск сервера
  9. Подключение устройства к виртуальной машине
  10. Через опции при запуске ВМ
  11. Или через qemu-monitor
  12. Режим разрыва клавиатуры
  13. Удаленный доступ к USB-порту через Ethernet
  14. Заключение

USB по локальной сети

Периферийные устройства обычно подключаются к интерфейсным портам ПК. Однако в некоторых ситуациях сделать это по тем или иным причинам бывает весьма затруднительно. Решить проблему поможет специальное устройство, посредством которого можно подключить периферийное устройство, не оснащенное сетевым адаптером, через локальную сеть.

Уже давно прошли те времена, когда подключение к ПК более двух-трех периферийных устройств одновременно было весьма непростой задачей. С появлением USB, заменившего последовательные и параллельные порты в настольных ПК, жизнь пользователей стала значительно проще. Например, если к одному COM- или параллельному порту можно было подключить только одно устройство, то через один USB-порт потенциально можно подсоединить (разумеется, при наличии соответствующего оборудования) до 127 различных устройств, причем все они будут функционировать одновременно. К несомненным достоинствам USB следует также отнести возможность горячего подключения и отключения устройств и полноценную поддержку технологии plug-and-play.

Однако, как и любое другое решение, интерфейс USB не лишен некоторых недостатков. Например, длина стандартного USB-кабеля обычно не превышает 2 м, чего в некоторых случаях оказывается недостаточно для того, чтобы дотянуться от подключаемого устройства к USB-порту компьютера (особенно если последний установлен под столом). Конечно, можно приобрести или изготовить самостоятельно кабель большей длины. Но не стоит забывать о том, что при использовании кабеля длиной свыше 3 м стабильность работы интерфейса уже не гарантируется.

На первый взгляд
USB-концентратор Belkin F5L009
не отличается от других подобных устройств

Одним из вариантов решения данной проблемы является применение активных (то есть получающих питание от внешнего источника) USB-концентраторов. Но и в этом случае можно рассчитывать лишь на двукратное увеличение расстояния от ПК до периферийного устройства. Впрочем, есть и другой вариант — использовать в качестве удлинителя интерфейсного кабеля… локальную сеть.

Нет, это не фантастика. В мае текущего года компания Belkin выпустила необычную модель 5-портового USB-концентратора F5L009, позволяющего реализовать такую возможность. Внешне это устройство мало чем отличается от множества других USB-концентраторов. Однако если присмотреться к задней панели, то можно заметить одну интересную деталь: вместо розетки USB типа В, которая применяется для подключения интерфейсного кабеля, связывающего концентратор с USB-портом компьютера (или вышестоящего концентратора), здесь установлен разъем RJ-45.

На задней панели концентратора
вместо привычной розетки USB типа В
находится разъем RJ-45

Действительно, USB-концентратор Belkin F5L009 через встроенный сетевой адаптер подключается к проводной локальной сети стандарта Ethernet. Специальное ПО, поставляемое с этим устройством, позволяет реализовать режим эмуляции локального подключения периферийных устройств к любому ПК, интегрированному в сеть. Иными словами, приложения и ОС будут работать с подключенными через такой концентратор устройствами так же, как если бы последние были подсоединены непосредственно к USB-порту компьютера.

Естественно, максимальная скорость передачи данных при этом будет ограничена возможностями локальной сети, вследствие чего не гарантируется работа устройств, оснащенных интерфейсом USB 2.0, на полной скорости. Впрочем, это критично далеко не для всех устройств: например, на работе клавиатур, мышей или принтеров скоростные ограничения вряд ли скажутся.

Подключиться к подсоединенным к концентратору устройствам можно с любого компьютера локальной сети. Правда, есть один нюанс: одновременно доступ к каждому из устройств получает только один компьютер. Таким образом, загружать данные с флэш-диска, подключенного к порту концентратора, одновременно на два ПК не получится — работать придется по очереди.

При необходимости можно реализовать доступ к подсоединенным к концентратору USB-устройствам и с компьютеров, подключенных к беспроводной сети. Как утверждают разработчики, для этого требуется лишь подключить концентратор F5L009 к одному из портов беспроводного маршрутизатора.

Для работы в беспроводной сети
USB-концентратор Belkin F5L009 можно подключить
к беспроводному маршрутизатору

Применение концентратора F5L009 может стать оптимальным решением в тех случаях, когда возникает необходимость часто использовать периферийные устройства (сканер, принтер, портативный флэш-накопитель, фотоаппарат, веб-камеру и т.д.), оснащенные интерфейсом USB, с разными компьютерами, подключенными к локальной сети. Кроме того, весьма удобной может оказаться возможность применения одного и того же набора периферийных устройств (клавиатуры, мыши, принтера и сканера) для работы как с настольным ПК, так и с подключаемым к беспроводной сети ноутбуком.

Источник

Проброс USB-портов из Windows 10 для удалённой работы

Где это может быть полезным? Сложно навскидку сказать, но вот некоторые области применения:

  1. Для обмена файлами в пределах локальной сети, если есть сложности в передачи USB-накопителя или прямом расшаривании USB-накопителя.
  2. Для получения доступа к периферии (веб-камеры, мыши, клавиатуры, принтеры, сканеры).

Честно говоря, я не тестировал, как будет происходить доступ к устройствам ввода-вывода – просто нет такой возможности. Но вот на примере USB-накопителя покажу в статье. Работает вполне неплохо.

USB Network Gate

Находим на просторах Интернета программу USB Network Gate и ставим её на компьютер, который выступает в роли сервера. После запуска увидим нечто подобное (на вкладке “Локальные USB-устройства“):


Перечислен список всех наших USB-устройств. Самым нижним обозначено устройство хранения данных “
Mass Storage Device“, нажмём кнопку “Открыть доступ” напротив этого пункта.
Теперь установим программу на клиентской машине, то есть на той, с которой нужно получать доступ к ресурсам сервера. Увидим следующую картину (на вкладке “Удалённые USB-устройства“):

Нажмём кнопку “Добавить сервер” и увидим окно ввода IP-адреса сервера:

Ввожу IP-адрес того узла в сети, на котором установил серверную часть в самом начале и вижу следующую картину:

Нажатие на кнопку “Подключить” приведёт к монтированию удалённого USB-устройства к локальному компьютеру:

При этом в системе появится та самая флешка, которая физически подключена совершенно в другом месте! Вот это номер. На сервере отобразится следующая картина:

То есть поясняется, к какому хосту подключено то или иное USB-устройство. Ну разумеется, имеется возможность отключить это устройство и прекратить доступ.

Грустная часть проверки: клиентская часть

В Windows устанавливаем драйвер (делаем это только один раз, дальше он будет всегда установлен). Для этого запускаем от имени администратора файл usbip.exe

Теперь смотрим, доступно ли нам устройство:

usbip.exe list —remote=192.168.10.123

Убеждаемся, что оно присутствует в списке. Ну, и подключаем его:

usbip.exe attach —remote=192.168.10.123 —busid=1-5.4.1.3

В менеджере устройств появляется новое USB-устройство, Keil его прекрасно видит…

Но на этом всё приятное кончается. Небольшая программа заливается во флэшку около минуты. Попытки шагать по строкам идут от 5 до 20 секунд на каждую строку. Это неприемлемо. Во время паузы в обе стороны идёт трафик примерно 50 килобит в секунду. Долго и вдумчиво идёт.

Честно говоря, ограничение по времени привело к тому, что я только предполагаю, почему всё было так плохо. Подозреваю, что там по сети бегает JTAG-трафик. А он бегает небольшими пакетами в обе стороны, отсюда и проблемы. Так было завершено исследование с результатом: «Для проекта не подходит».

Настройки программы для проброса USB по сети

Кроме того, на стороне сервера есть возможность задать некоторые настройки доступа для каждого из устройств:

Например, я вот указал описание устройства (чтобы было понятно), а также установил пароль для доступа к ресурсу. Ну и ряд дополнительных возможностей, которые вы можете видеть на скриншоте выше.

Доступ по паролю работает! При попытке подключения к устройству, появилось приглашение ввести пароль:

Ну что можно сказать по этому поводу… Утилита явно неплохая, несмотря на то, что коммерческая. Довольно таки неплохо справляется со своей задачей – пробросом USB устройств по сети.

Настройка виртуальной машины

Для того что бы было куда подключать экспортированные устройства, на виртуальной машине нужно создать необходимые usb-контроллеры:

  • uhci — для USB1.0
  • ehci — для USB2.0
  • xhci — для USB3.0
Для qemu (без libvirt)

Добавьте опции в команду запуска виртуальной машины: -device ich9-usb-ehci1,id=ehci,addr=1d.7,multifunction=on -device ich9-usb-uhci1,id=uhci-1,addr=1d.0,multifunction=on,masterbus=ehci.0,firstport=0 -device ich9-usb-uhci2,id=uhci-2,addr=1d.1,multifunction=on,masterbus=ehci.0,firstport=2 -device ich9-usb-uhci3,id=uhci-3,addr=1d.2,multifunction=on,masterbus=ehci.0,firstport=4

Для libvirt

В исходном файле конфигурации виртуальной машины в узле &ltdevices>
удаляем все USB контроллеры и добавляем следущий блок:

Кстати, если вы используете spice, то добавив к контроллерам еще 3 специальных девайса, станет возможен проброс usb-устройств с клиента spice на сервер.

Пример под спойлером

Для qemu

Добавляем следующие опции в команду запуска виртуальной машины, помимо контроллеров определеных нами раньше: -chardev spicevmc,name=usbredir,id=usbredirchardev1 -device usb-redir,chardev=usbredirchardev1,id=usbredirdev1,debug=3 -chardev spicevmc,name=usbredir,id=usbredirchardev2 -device usb-redir,chardev=usbredirchardev2,id=usbredirdev2,debug=3 -chardev spicevmc,name=usbredir,id=usbredirchardev3 -device usb-redir,chardev=usbredirchardev3,id=usbredirdev3,debug=3

Для libvirt

В исходном файле конфигурации виртуальной машины в узле &ltdevices> добавляем следующие опции, помимо контроллеров определеных нами раньше:
Теперь все готово для осуществления проброса.

Выводы

Итак, пару слов о данной программе. Мне понравилась задумка – люблю различные решения, которые могут иногда выручить в сложной ситуации. Никогда не знаешь, где может пригодиться это, а знать, что такая возможность имеется – очень даже полезно!

Один минус – программа платная, но в ознакомительных целях использовать её ограниченную версию вполне можно, разрабы не обидятся, надеюсь.

Друзья! Вступайте в нашу группу Вконтакте, чтобы не пропустить новые статьи! Хотите сказать спасибо? Ставьте Like, делайте репост! Это лучшая награда для меня от вас! Так я узнаю о том, что статьи подобного рода вам интересны и пишу чаще и с большим энтузиазмом!

Также, подписывайтесь на наш канал в YouTube! Видео выкладываются весьма регулярно и будет здорово увидеть что-то одним из первых!

Запуск сервера

Пакет usbredirserver можно найти в стандартных репозиториях практически во всех популярных дистрибутивах linux.
Вставляем флешку в компьютер, смотрим вывод usb-устройств:

$ lsusb … Bus 003 Device 011: ID 125f:c82a A-DATA Technology Co., Ltd. …

Видим что пара vendorid:prodid равна 125f:c82a, а ядро определило флешке 003-001 usbbus-usbaddr соотвественно.

Теперь давайте расшарим ее на 4000 порт:

# Используя пару vendorid:prodid $ usbredirserver -p 4000 125f:c82a # Используя пару usbbus-usbaddr $ usbredirserver -p 4000 003-011

Подключение устройства к виртуальной машине

Через опции при запуске ВМ

Устройство которое нужно подключить к ВМ можно указать при запуске, добавив следующие опции в команду запуска

Для qemu

-chardev socket,id=usbredirchardev1,port=4000,host=192.168.1.123 -device usb-redir,chardev=usbredirchardev1,id=usbredirdev1,bus=ehci.0,debug=4

Для libvirt

Этот блок рамещается перед тегом
, рядом с контроллерами определенными нами раньше:
Его так же можно исполнить командой virsh attach-device

Или через qemu-monitor

Заходим на гипервизор и в qemu-monitor нашей машины выполняем следующие команды: # Добавляем наше устройство chardev-add socket,id=usbredirchardev1,port=4000,host=192.168.1.123 # Подключем его в ehci контроллер (USB-2.0) device_add usb-redir,chardev=usbredirchardev1,id=usbredirdev1,bus=ehci.0,debug=4 Что бы отключить флешку достаточно такой команды: device_del usbredirdev1
На этом все, после данных шагов ваша ВМ увидит вашу флешку и сможет с ней нативно работать.

Режим разрыва клавиатуры

В режиме разрыва клавиатуры сканер просто набирает клавиши, которые соответствуют символам штрих-кода. Не требуется никаких драйверов, чтобы сканер заработал в 1С.

Во всех типовых конфигурациях по кнопке F 7 открывается окно ввода штрих-кода. Поэтому достаточно сканеру запрограммировать префикс F 7 и все, он будет поддерживаться 1С.

Если конфигурация дорабатывалась и в некоторых участках забыли прописать типовую поддержку F 7, проще дописать эту поддержку. Но в качестве альтернативы можно использовать драйвер Атол старых версий, где выбрать в качестве порта «Разрыв клавиатуры».

Новые версии драйверов Атол платные, а бесплатные делают 10-секундную задержку перед обработкой штрих-кода.

Способ прост для подключения, но неудобен в работе.

  • Нужно следить, чтобы была включена правильная раскладка клавиатуры.
  • При использовании префикса курсор должен стоять внутри таблицы, иначе F 7 не срабатывает.
  • Буквы при наборе в RDP часто теряются, и сканер считывает усеченные штрих-коды.

Поэтому лучше все же, если используется разрыв клавиатуры, не использовать драйвер Атол (это лишние потери времени и символов), а просто запрограммировать префикс F 7.

В моем случае был интересный глюк — буквы на некоторых штрих-кодах преобразовывались в верхний регистр. Я долго мучался , но мне подсказали, что нужно включить режим посимвольной передачи штрих-кода, а не пакетный, который стоял по умолчанию.

Удаленный доступ к USB-порту через Ethernet

День добрый. Как-то столкнулся с задачей удаленно подключить по RDP электронный ключ ruToken к 1С. Бухгалтерия находится в одном офисе, а сервер с 1С — в другом. Решить задачу помогла программа USB Network Gate, которая позволяет легко подключить одно или несколько удаленных USB-устройств к вашему компьютеру по сети Ethernet (Интернет/LAN/WAN) так, словно они подключены к системе напрямую. Не имеет значения, находитесь ли вы в другой стране или соседнем офисе, вы всегда можете воспользоваться удаленным сканером, принтером, веб-камерой, модемом, USB-донглом и любым другим оборудованием, как будто они подключены непосредственно к вашему ПК.

Программа USB Network Gate приятно удивит не умудренных компьютерными знаниями пользователей простотой своего использования. Достаточно подключить нужное USB-устройство к компьютеру, найти его во вкладке «share local USB devices» и нажать кнопку «share», — устройство станет доступно в локальной сети и интернете. Для соединения через интернет удаленному компьютеру нужно будет предоставить IP-адрес сервера.

На клиентском компьютере, в свою очередь, необходимо выбрать во второй вкладке программы появившееся устройство, а затем получить к нему доступ нажатием кнопки «connect». Если же сервер с подключенным девайсом находится в другой подсети, то его необходимо добавить через пункт «add server».

Заключение

Если вам необходим совместный доступ к накопителю, веб-камере, электронной подписи, дактилоскопическому сканеру, принтеру, МФУ или любому другому поддерживаемому USB-устройству из любой точки мира, то USB Network Gate — простое и качественное решение. Программа имеет пробную 14-дневную версию для тестирования и ознакомления с функционалом. Стоимость лицензионной копии варьируется в зависимости от максимального количества одновременно подключаемых к сети USB-устройств. Есть редакции USB Network Gate под операционные системы Windows, Linux, Mac и Android.

Скачать программу вы можете на официальном сайте.

Источник

Здравствуйте, товарищи-сисадмины и компьютерщики! Сегодня я сделаю небольшой обзор на одну программку, которая позволяет прокинуть USB устройства через сеть Ethernet.

Где это может быть полезным? Сложно навскидку сказать, но вот некоторые области применения:

  1. Для обмена файлами в пределах локальной сети, если есть сложности в передачи USB-накопителя или прямом расшаривании USB-накопителя.
  2. Для получения доступа к периферии (веб-камеры, мыши, клавиатуры, принтеры, сканеры).

Честно говоря, я не тестировал, как будет происходить доступ к устройствам ввода-вывода – просто нет такой возможности. Но вот на примере USB-накопителя покажу в статье. Работает вполне неплохо.

Находим на просторах Интернета программу USB Network Gate и ставим её на компьютер, который выступает в роли сервера. После запуска увидим нечто подобное (на вкладке “Локальные USB-устройства“):

Перечислен список всех наших USB-устройств. Самым нижним обозначено устройство хранения данных “Mass Storage Device“, нажмём кнопку “Открыть доступ” напротив этого пункта.

Теперь установим программу на клиентской машине, то есть на той, с которой нужно получать доступ к ресурсам сервера. Увидим следующую картину (на вкладке “Удалённые USB-устройства“):

Нажмём кнопку “Добавить сервер” и увидим окно ввода IP-адреса сервера:

Ввожу IP-адрес того узла в сети, на котором установил серверную часть в самом начале и вижу следующую картину:

Нажатие на кнопку “Подключить” приведёт к монтированию удалённого USB-устройства к локальному компьютеру:

При этом в системе появится та самая флешка, которая физически подключена совершенно в другом месте! :) Вот это номер. На сервере отобразится следующая картина:

То есть поясняется, к какому хосту подключено то или иное USB-устройство. Ну разумеется, имеется возможность отключить это устройство и прекратить доступ.

Настройки программы для проброса USB по сети

Кроме того, на стороне сервера есть возможность задать некоторые настройки доступа для каждого из устройств:

Например, я вот указал описание устройства (чтобы было понятно), а также установил пароль для доступа к ресурсу. Ну и ряд дополнительных возможностей, которые вы можете видеть на скриншоте выше.

Доступ по паролю работает! При попытке подключения к устройству, появилось приглашение ввести пароль:

Ну что можно сказать по этому поводу… Утилита явно неплохая, несмотря на то, что коммерческая. Довольно таки неплохо справляется со своей задачей – пробросом USB устройств по сети.

Выводы

Итак, пару слов о данной программе. Мне понравилась задумка – люблю различные решения, которые могут иногда выручить в сложной ситуации. Никогда не знаешь, где может пригодиться это, а знать, что такая возможность имеется – очень даже полезно!

Один минус – программа платная, но в ознакомительных целях использовать её ограниченную версию вполне можно, разрабы не обидятся, надеюсь.

Друзья! Вступайте в нашу группу Вконтакте, чтобы не пропустить новые статьи! Хотите сказать спасибо? Ставьте Like, делайте репост! Это лучшая награда для меня от вас! Так я узнаю о том, что статьи подобного рода вам интересны и пишу чаще и с большим энтузиазмом!

Также, подписывайтесь на наш канал в YouTube! Видео выкладываются весьма регулярно и будет здорово увидеть что-то одним из первых!

Обновлено 26.07.2021

Usb по сети в виртуализации

Добрый день, амигос, рад, что ты заглянул ко мне на сайт, сегодня мы рассмотрим такой вопрос, как организовать usb по сети и, как это использовать в виртуализации. Тема довольно актуальная, и встречается такая задача все чаще. Особенно у тех компаний, где есть инфраструктура удаленных рабочих столов RDS с 1С приложениями, Directum или Tessa.

Usb через сеть

Как вы уже знаете в нашу жизнь, давно и на долго вошла виртуализация. Мощности серверов растут, и естественно появились технологии рационального их использования, подразумевающие изоляцию и нормальную утилизацию ресурсов, что породило виртуальные машины, которые уже используют и на хостингах и дата центрах. Я уже рассказывал про все это, если интересно посмотрите по ссылкам слева и выше.

Как вы знаете иногда некоторые лицензионные программы, требую для работы usb ключ. Раньше в классическом варианте, когда были только физические сервера, с работой такой схемы проблем не было, но с появление виртуализации она выплыла на ружу.

К сожалению, у некоторых гипервизоров, нет возможности пробрасывать на прямую с сервера USB устройства. Примером может служить Hyper-V от компании Microsoft, который с 2008 года до сих пор не несет в себе такую возможность в Windows Server 2008R2, хотя в 2012 R2, попытки уже предприняты, в отличии от компании vMvare, которая это позволяет и я уже рассказывал как пробросить USB модем в vmware esxi.

Не спешите расстраиваться, адепты редмондсого гиганта, на выручку вам приходит технология USB over IP или AnywhereUSB. USB over IP позволяет подключить usb через сеть.

Суть проброса USB по локальной сети.  Есть устройство AnywhereUSB — это небольшой сетевой usb хаб. Ниже примерные модели, представленные на рынке.

  • AnywhereUSB /2 – 2 порта USB, самая простая из модельного ряда

Usb по сети в виртуализации-2

  • AnywhereUSB/ 5 – 5 портов USB, тут уже может удовлетворить потребности средней компании.

Usb по сети в виртуализации-3

  • AnywhereUSB /14 – 14 портов USB, самая топовая мне она нравится больше всего, но и она не лишена своих косяков. Бывают случаи, что она может зависнуть, и представьте, что все 14 USB-токенов, становятся не доступными, народ на терминальных фермах негодует, бизнес теряет деньги, или вот еще распространенная ошибка, когда у вас в системе не происходит подключение к ключу, и вы видите в утилите сообщение с содержимым «Can not find Remote Hub». Но все же аппаратные решение предоставления USB по локальной сети, в разы стабильнее, программных.

Usb по сети в виртуализации-4

Usb по сети в виртуализации-6

  • Подключение USB через сеть, можно так же осуществлять и через немецкое оборудование компании SEH, например, myUTN-800, но в отличии от DIGI, оно еще работает и с LINUX платформами, я таким образом пробрасывал токен в CentOS 7, очень удобно. Он стоит чуток подороже, своего конкурента, но оно того стоит. Его внешний вид представлен на фото ниже. Он так же имеет до 14 USB портов.

myUTN-800-02

В конце 2020 года вы уже не сможете купить у производителя версию SEH UTN-800, ее заменила 20-ти портовая dongleserver ProMAX, про которую я уже делал подробный обзор, там привнесли очень много нововведений и улучшений. Внешний вид устройства слегка претерпел изменение.

Вид спереди dongleserver ProMAX

Добавили вентияцию для USB ключей 🙂 уж видимо они очень грелись, хотя возможно, что это просто элемент дизайна. В любом случае сделать проброс с данного USB маршрутизатора так же по времени занимает около 5 минут, но оборудование стоит за 100 000 рублей и по карману не всем.
Монтирование dongleserver ProMAX в стойку

  • DistKontrolUSB-64 — это китайское оборудование, которое не так давно появилось на рынке. Чем данная железка выгодно отличается от SEH и DIGI, то это своей ценой, в несколько раз ниже. DistKontrolUSB-64 занимает аж три стоичных юнита и имеет 64 USB порта, так же в линейке есть оборудование с 16, 32 и 48 портами. Со стороны клиента устанавливается приложение USBoverIP-Client, через которое идет подключение к серверу. Есть версия USBoverIP-Client для Windows так и MacOS, легко работает на физических устройствах, так и на виртуальных машинах Hyper-V или Vmware.

DistKontrolUSB-64

В отличии от других вендоров у DistKontrolUSB-64 есть встроенный WIFI модуль, который позволяет производить подключения устройств USB по сети не только по проводному Ethernet, а еще и через WIFI, что согласитесь очень классно.

Настройка AnywhereUSB

Давайте рассмотрим, как настраивается железка, для того, чтобы сделать доступ юсб по сети.  Вот, как это будет выглядеть схематично. У вас есть разного рода USB устройства или ключи безопасности, которые вы подключаете в один из 14 портов, далее устройство проксирует трафик по локальной сети до них, с помощью специального программного обеспечения, на стороне клиента.

Usb по сети-8

Для настройки и управления устройством предусмотрено несколько интерфейсов:
• Web интерфейс для настройки, мониторинга и администрирования;
• AnywhereUSB утилита конфигурирования;
• Telnet Command-Line Interface;
• Simple Network Management Protocol (SNMP).

Для настройки устройства рассмотрим Web интерфейс — как наиболее удобный и простой вариант.

Управление IP адресом

Существует несколько вариантов присвоения IP адреса AnywhereUSB:
• Статический IP;
• Динамическое присвоение IP — Using Dynamic Host Configuration Protocol (DHCP);
• Auto Private IP Addressing (APIPA), наиболее известен как Auto-IP;

Как понимаете самый правильный способ это статический ip адрес. Задается он в пункте Network Configuration. Заведите себе правило, везде на серверах использовать статику, чтобы все ваши клиенты подключив USB Токен по сети, не бегали в догонялки за ним, если вдруг на сервере стоит динамическая адресация.

Usb по сети-1

В этом же мню очень удобно задавать сетевые службы, доступные на нем. Обратите внимание на стандартные порты подключения. При желании вы их можете переназначить. По опыту могу сказать, что Telnet работает стабильнее, чем тот же ssh. Вообще старайтесь, минимизировать количество служб управления, либо же изолируйте ее с помощью VLAN.

usb локальная сеть

Далее указываем DNS сервера, через «Advanced Network Settings» можно у них даже задать приоритет.

Usb по сети-3

Самым важным шагом в настройке USB-ключей предоставляемых по сети различным серверам, это задание порт-групп (RealPort USB). По сути RealPort USB это группы объединяющие физические порты с USB ключами в логические группы, для проброса нескольких токенов на один сервер или виртуальную машину. Без создания RealPort групп, вы не сможете подключить ни одного клиента к вашему USB хабу.

Создаются они в меню «Applications — RealPort USB». Сам алгоритм, очень простой, слева у вас будут реальные USB порты, идущие по порядку, чуть правее, вы указываете в какой группе по счету должен быть, тот или иной порт. Не забываем вписывать описание, оно очень пригодится, можно задавать, только латинские буквы. После этого, вы можете считать, что проброс USB по локальной сети, осуществлен процентов на 80.

Не забывайте включать галку «Dynamic Group Assignment (DGA)», чтобы порты применялись сразу, без перезагрузки DIGI.

Создание RealPort USB групп

На вкладке «Conection Management»  можно посмотреть текущие подключения. По сути это все клиенты, кто подключил ваш USB девайс по локальной сети.

Usb по сети-4

Для увеличения безопасности, вы можете включить защиту паролем (Секретный ключ), можно это сравнить с двухфакторной аутентификацией. Делается это в пункте «RealPort», включите функцию «Enable RealPort Authentication» и введите секретное слово в Shared Secret.

USB по сети. DIGI устройства

Далее можете посмотреть сводную информацию по системе. Тут версия прошивок и загрузчика. Советую сразу проверить последняя она или нет.

Usb по сети-5

Теперь, что дальше нужно сделать на виртуальной машине для сетевого взаимодействия USB токена и клиента, тут все до безобразия логично, нужно поставить там драйвера от AnywhereUSB и задать ip адрес устройства. Как видите я уже подключил ее и у нее есть внутренний Ip адрес.

Usb по сети-6

С помощью специальной утилиты, Anywhere View можно проверить доступность и занятость всех устройств. Пожалуй это самый простой и надежный метод проброса токенов, флешек и различных модемов в ваши виртуальные машины по локальной сети, сами устройства стоят по разному, но если вы уж потратились на софт и гипервизоры, думаю при необходимости купите и это :).

Usb по сети-7

Вообще реализовать подобную схему с пробросом USB устройств по локальной сети много, есть и программные, но лучше всегда использовать железо.

Привет, Хабр! В прошлой статье мы рассмотрели историю и принцип работы технологии USB over IP, узнали, как ее применяют на базе готового аппаратного решения.

Для личного использования, однако, аппаратное решение скорее не подойдет: нужно приобретать дорогостоящее оборудование, что нецелесообразно. Поэтому под катом рассказываю, как организовать клиент-серверный комплекс USB over IP на современных ОС и автоматизировать этот процесс.

Итак, USBIP прекрасно работает не только на специализированном оборудовании, но и на современных операционных системах. Это позволяет недорого или вообще без денежных вложений решать небольшие кейсы.

В данной статье мы рассмотрим организацию клиент-серверного комплекса USB over IP. В качестве клиента выступит облачный сервер Selectel (ОС — Ubuntu 20.04), а сервером будет классический bare metal-сервер, с той же версией Ubuntu. Помимо облачного клиента на Linux, мы выполним проброс устройства на клиент Windows 10.

Настройка сервера


Для начала установим необходимые инструменты и модули для работы. Все необходимые модули входят в состав пакета linux-tools. Выполняем его установку (у меня версия 5.4.0-100-generic):

root@Descartes:~# apt-get install linux-tools-`uname -r`

Далее проверяем доступные для загрузки USBIP модули ядра:

root@Descartes:~# find /lib/modules/$(uname -r) -name '*.ko'| grep usbip

/lib/modules/5.4.0-100-generic/kernel/drivers/usb/usbip/usbip-core.ko
/lib/modules/5.4.0-100-generic/kernel/drivers/usb/usbip/usbip-host.ko
/lib/modules/5.4.0-100-generic/kernel/drivers/usb/usbip/vhci-hcd.ko
/lib/modules/5.4.0-100-generic/kernel/drivers/usb/usbip/usbip-vudc.ko

Для работы сервера нам потребуются:

  • usbip-core — основа USBIP-сервера,
  • usbip-host — управление USB-устройствами,
  • vhci-hcd — модуль экспорта виртуальных USB-устройств.

Выполним запуск необходимых нам модулей:

root@Descartes:~# modprobe usbip-core
root@Descartes:~# modprobe usbip-host
root@Descartes:~# modprobe vhci-hcd

Чтобы не запускать данные модули вручную каждый раз, добавим их в конфигурационный файл modules.conf:

root@Descartes:~# vi /etc/modules-load.d/modules.conf

usbip-core
usbip-host
vhci-hcd

Чтобы USB-сервер работал в фоновом режиме, мы запустим его в качестве демона, а после проверим BusID подключенного накопителя. Этот ID понадобится нам позже для проброса ключей в клиентскую часть. Запускаем USB-сервер в качестве демона:

root@Descartes:~# usbipd -D

Проверяем список подключенных устройств:

root@Descartes:~# usbip list -l

 - busid 1-1 (058f:6387)
   unknown vendor : unknown product (058f:6387)
 - busid 1-13.1 (0557:2419)
   unknown vendor : unknown product (0557:2419)

где BusID 1-1 — это наш USB-накопитель, подключенный в сервер.

Так как теперь нам известен BusID флешки, которой мы хотим поделиться с внешним миром, выполним следующую команду:

root@Descartes:~# usbip bind -b 1-1
usbip: info: bind device on busid 1-1: complete

Теперь устройство готово быть подключенным к удаленным клиентским устройствам. Далее рассмотрим настройку клиентской части.

Настройка клиента на Linux

По аналогии с сервером нам потребуется пакет linux-tools под необходимую версию ядра. Выполняем установку:

root@Racio:~# apt-get install linux-tools-`uname -r`

Подключаем удаленное устройство:

root@Racio:~# usbip attach --remote=188.124.55.21 --busid=1-1

Находим подключенный девайс среди остальных блочных устройств. В клиентской системе девайс определился как sda4-устройство:

root@Racio:~# fdisk -l
Device     Boot Start      End  Sectors  Size Id Type
/dev/sda4  *      256 31129599 31129344 14.9G  c W95 FAT32 (LBA)

Настройка клиента на Windows

Одним из вариантов подключения устройств для Windows является использование отдельного ПО — VirtualHere USB Client. Эта программа практически исключает какую-либо настройку руками.

Но мы пойдем по более интересному пути, где для Windows-клиента проброс будет осуществлен с помощью пакета usbip-client. Этот пакет содержит необходимые конфигурационные файлы для работы, в том числе каталог безопасности. Благодаря нему в будущем у нас не возникнет проблем с сертификатами. Пакет работает с Windows 7 и 10, а также с Windows Server 2008 и 2021.

Распакованный usbip-client необходимо подключить к нашей ОС как виртуальное устройство. Windows не видит старые устройства, у которых нет поддержки технологии Plug-and-Play. Чтобы добавить для них драйверы, нужно использовать утилиту ручной настройки «Мастер установки оборудования».

Для этого необходимо:

  1. Зайти в диспетчер устройств → ДействиеУстановить старое устройство.
  2. Выбрать пункт с ручной установкой оборудования и вместо конкретного типа оборудования выбрать пункт Показать все устройства. Далее выбираем Установить с диска и выбираем USBIPEnum.Inf файл из распакованного архива.
  3. Мастер установки распознает оборудование USB/IP Enumerator, его и устанавливаем.

После этого в диспетчере устройств в системных устройствах мы увидим установленный и подписанный драйвер USB/IP Enumerator.

Проверяем доступные для подключения USB-устройства:

C:Usersusbip usbip -l 188.124.55.21
1-1: Alcor Micro Corp. : Transcend JetFlash Flash Drive (058f:6387)
        : /sys/devices/pci0000:00/0000:00:14.0/usb1/1-1
        : (Defined at Interface level) (00/00/00)
        :  0 - Mass Storage / SCSI / Bulk (Zip) (08/06/50)

где 1-1 – BusID удаленного девайса.

Подключаем девайс к системе:

C:Usersusbip usbip -a 188.124.55.21 1-1
new usb device attached to usbvbus port 1

Автоматизация клиента и сервера


Каждый раз прописывать команды и организовывать связность устройств вручную как минимум муторно. Как максимум — невозможно: например, если конечный клиент — простой обыватель, не подозревающий о существовании подобной «магии». Поэтому в дополнение к классическому пробросу USB-ключа нам также стоит автоматизировать этот процесс и на стороне клиента, и на стороне сервера.

Рассмотрим, как реализовать это на практике.

Автоматизация серверной части

Аналогично разделу с базовой настройкой сервера необходимо добавить модули в автозапуск, без этого никуда:

root@Descartes:~# vi /etc/modules
usbip-core
usbip-host
vhci-hcd

Далее создаем юнит в systemd, который будет обращаться к скрипту usbipd и расшаривать наш USB-девайс автоматически после старта сетевых служб ОС:

root@Descartes:~# vi /etc/systemd/system/usbipd.service

[Unit]
Description=USBIPd
After=network.target

[Service]
ExecStart=/bin/sh /root/script/usbipd
Type=oneshot
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Обновляем конфигурацию systemd и добавляем юнит в автозапуск:

root@Descartes:~#systemctl daemon-reload
root@Descartes:~#systemctl enable usbipd

После чего создаем сам скрипт автообновления инструментов и расшаривания устройства usbipd:

root@Descartes:~# vi /scripts/usbipd

#!/bin/sh
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin

bindID='1-1' # BusID нашего USB-устройства на сервере

kernel_version=$(uname -r) - # создание переменной, содержащей текущую версию ядра системы
apt install linux-tools-$kernel_version # установка инструментов проброса для актуальной версии ядра
usbipd -D 
sleep 1
usbip bind -b $bindID # делаем USB-устройство на сервере доступным для проброса

usbip attach --remote=localhost --busid=$bindID
sleep 3

usbip detach --port=00

Выдаем разрешение на запуск скрипта:

root@Descartes:~# chmod ugo+x usbipd

Последние три строки скрипта вынесены отдельно неслучайно. ПО на стороне сервера может работать неидеально. Иногда при попытке подключения устройства к клиенту под управлением ОС Windows может возникнуть проблема, когда клиент попросту не видит на сервере устройства с BusID 1-1:

usbip -a 188.124.55.21 1-1 
usbip err: usbip_windows.c: 829 (attach_device) cannot find device

Проблема решается путем проброса USB-девайса сервера самому себе с его последующим отключением, что и содержится в последних трех строках скрипта.

Как можно было заметить, значения параметров BindID и port в скрипте являются статичными. Это связано с тем, что сервер изначально настраивается на проброс одного единственного USB-устройства, который будет получать одни и те же значения описанных выше параметров.

Автоматизация клиентской части (Windows)

Автоматизацию клиентской машины под управлением Windows мы осуществим за счет создания исполнительного bat-файла и планировщика заданий, который будет этот файл выполнять при запуске системы. В bat-файл добавляем инструкции, необходимые для подключения:

cd C:UsersMaksonDesktopusbip
usbip.exe -a 188.124.55.21 1-1

Запускаем планировщик заданий, где указываем следующие параметры:

  • во вкладке Общие ставим галочку Выполнять с наивысшим приоритетом,
  • во вкладке Триггеры указываем При запуске (либо любой другой),
  • во вкладке Действия указываем путь до нашего bat-файла. В моем случае это C:UsersMaksonDesktopusbipscript.bat,
  • во вкладке Условия снимаем галочку с пункта Останавливать задачу, выполняемую дольше.

Остальные настройки можно оставить по умолчанию.

Сохраняем, находим созданную задачу и выполняем ее ручной запуск для проверки работоспособности.

Автоматизация клиентской части (Linux)

Аналогично серверу создаем новый юнит для запуска автоматического подключения USB-устройства:

root@Descartes:~# vi /etc/systemd/system/usbip_client.service

[Unit]
Description=usbip_client
After=network.target

[Service]
ExecStart=/bin/sh /root/script/usbip_client 
Type=oneshot
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Создаем скрипт подключения:

root@Descartes:~# vi /root/script/usbip_client

#!/bin/sh
apt-get install linux-tools-`uname -r` -y
sleep 1
usbip attach --remote=188.124.55.21 --busid=1-1
sleep 1
echo "Подключенные устройства:"
usbip port 

Даем разрешение на запуск скрипта:

root@Descartes:~# chmod ugo+x usbip_client

Обновляем конфигурацию systemd и добавляем юнит в автозапуск:

root@Descartes:~#systemctl daemon-reload
root@Descartes:~#systemctl enable usbip_client

Как USBIP в очередной раз «спас мир»


Удаленный доступ к USB-устройствам по сети продолжает решать многие задачи в мире IT. Это может быть организация доступа к камере видеонаблюдения в серверной стойке современного дата-центра, где, как правило, запрещено размещать собственные точки Wi-Fi. Или же настройка удаленного доступа к аппаратным USB-ключам с дорогостоящими лицензиями проприетарного ПО, что защищает их от физического воздействия человека (поломки, утери и т.д.).

Методы, описанные в тексте, позволяют использовать USB-устройства без лишних рисков и затрат на обслуживание, а также выполнять задачи, где нет альтернативных решений.

Понравилась статья? Поделить с друзьями:
  • Проверить web камеру онлайн windows 10
  • Проблемы с установкой microsoft visual c 2015 x64 для windows
  • Пробрасываем порты на windows для управления ккт по tcp ip
  • Проверить udp порты на открытость windows 10
  • Проблемы с текстурами в играх на windows 10