Usb redirector настройка windows

Обновлено: 04.07.2024

Этот программный продукт позволяет использовать общие USB-устройства удаленно через локальную сеть, WLAN или Интернет, как если бы они были подключены к вашему компьютеру напрямую! USB Redirector обеспечивает быстрое разрешение ваших удаленных потребностей USB! Он может выступать как USB-сервер и USB-клиент, а также доступен отдельный облегченный БЕСПЛАТНЫЙ клиент. USB Redirector использует обычное соединение TCP / IP для связи.

USB Redirector перенаправление через TCP/IP:

  • Доступ к USB-устройствам на виртуальной машине Hyper-V или любой другой виртуальной машине.
  • Организуйте полнофункциональный USB-сервер для пользователей в вашей корпоративной или домашней сети.
  • Используйте USB-устройства на компьютере, где порты USB повреждены или отсутствуют.
  • Перенаправляйте USB-устройства между компьютерами в домашней сети или через Интернет.
  • Перенаправьте USB-устройства между Windows и Linux с помощью USB Redirector для Linux .
  • Ограничьте физический доступ к USB-устройству, но сделайте его доступным для пользователей в вашей сети.

USB Redirector работает в качестве фоновой службы:

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

Бесплатный клиент доступен!

Мы предоставляем облегченный клиент USB Redirector, который можно использовать для подключения USB-устройств, к которым предоставляется общий доступ к полнофункциональному перенаправителю USB. USB Redirector Client абсолютно бесплатен, если вы перенаправляете устройства между компьютерами под управлением Windows (для подключения к системам под управлением Linux требуется коммерческая лицензия ). Он доступен для скачивания в разделе « Загрузки ».

Совместное использование устройства USB

ПРИМЕЧАНИЕ: когда устройство USB является общим, оно не может использоваться локально, поскольку оно приобретается для индивидуального использования удаленными клиентами USB! Чтобы снова сделать устройство доступным локально, необходимо отменить его.

  • Шаг 3 Установите USB Redirector Client на компьютер, на котором вам необходимо удаленно использовать USB-устройства. Это будет ваш USB-клиент.
  • Шаг 4 Создайте прямое соединение с USB-клиента на USB-сервер или обратное соединение с USB-сервера на USB-клиент.

Добавление USB-сервера

  • Шаг 5 В списке доступных USB-устройств выберите нужное и нажмите « Подключить» .

Подключение USB-устройства на удаленной стороне

  • Результат : теперь вы можете использовать перенаправленное USB-устройство на удаленном компьютере:

Используйте USB-устройство удаленно

Лицензирование

USB Redirector лицензируется для каждого компьютера. Вам следует приобрести лицензию для каждого из компьютеров, которые будут работать в качестве USB-сервера (т. Е. Компьютера, к которому физически подключены USB-устройства). Мы предлагаем различные виды лицензий, которые позволяют одновременно перенаправлять разное количество USB-устройств. Лицензия должна быть применена на USB-сервере.

Для подключения USB-устройств к удаленному компьютеру вы можете воспользоваться нашим БЕСПЛАТНЫМ клиентом USB Redirector * Клиент USB Redirector бесплатен для подключения USB-устройств, используемых совместно с USB Redirector .

Системные Требования

USB Redirector работает в следующих операционных системах (32-разрядных и 64-разрядных):

Когда человек много лет рыл бункер и запасал там продукты, он должен испытывать глубокое моральное удовлетворение, если бункер понадобился. Он будет довольный заявлять: «А я говори-и-и-ил!» То же касается и того, кто делал запасы продуктов в кладовой, когда все закупались в магазинах только на сегодня. А вот с нашим комплексом для удалённой работы Redd как-то и не хочется злорадствовать. Он проектировался для удалёнки в мирное время. И использовался задолго до первых новостей из Китая.

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

Но так как сейчас удалёнка у всех на устах, возникло желание поделиться одной наработкой, которая может кому-то помочь. Это не наша разработка, я проводил исследования в рамках работы над сервисом удаленной работы с отладочными платами All-Hardware. Вот их результаты сейчас и опишу. Проект USB/IP известен многим. Но он давно свёрнут авторами. Самые свежие драйверы были под WIN7. Сегодня я опишу, где скачать вариант для WIN10, и покажу, как я его проверял. Кроме того, разработчики современного аналога уверяют, что у них сделан не только Windows-клиент, но и Windows-сервер (правда, в этом режиме я тестирование не вёл: задача того не требовала). Но кому-то это тоже может оказаться полезным.




Введение

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

Кто-то так пробрасывает ключи защиты. Мы же проверяли возможность удалённого доступа к JTAG-адаптеру.

Проект USB/IP активно развивался до 2013 года. Затем Windows-ветка остановилась. В целом, был выпущен даже двоичный подписанный драйвер. Но он был под Windows 7. Linux-ветка же продолжила развитие, и этот сервис оказался встроенным в саму операционную систему. По крайней мере, в сборку Debian он точно встроен. Причём для Linux имеется и клиент, и сервер, а для Windows исходно был сделан только клиент. Сервер под Windows сделан не был.

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

Вариант под актуальную версию Windows

Но как бы ни была хороша Windows 7, а она уже мертва. В рамках работ над All-Hardware мы рассматривали разные варианты решения одной из проблем, и надо было просто проверить ряд альтернатив по принципу «подойдёт — не подойдёт». Тратить много человеко-часов на проверку было невозможно. А переделка драйвера под Windows 10 могла затянуть в себя. Поэтому был проведён поиск в сети, который вывел на проект usbip-win. На момент его обнаружения свежий вариант был датирован 23 февраля 2020 года, то есть проект живой. Он может быть собран и под WIN7, и под WIN10. К тому же, в отличие от оригинального проекта, может быть собран не только Windows-клиент, но и Windows-сервер.

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

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

Сначала я расскажу, как проводилась проверка в рамках нашего проекта. Там всё кончилось не очень хорошо. Проверяли адаптер ST-LINK, установленный в корпус комплекса Redd, благо я уже отмечал, что в комплексе используется ОС Linux сборки Debian, а эта сборка содержит встроенный сервис USB/IP.

Согласно статье, устанавливаем сервис:


Дальше в статье подробно рассказано, как автоматизировать процесс загрузки сервиса. Как я разбираюсь в Линуксе, я уже многократно писал. Плохо разбираюсь. У меня нет привычки с умным лицом цитировать чужие тексты, слабо понимая суть. Поэтому я ещё раз напомню ссылку на замечательную статью, где всё рассказано, а сам покажу, что делал я при каждом старте ОС (благо всё было нужно только для проверки):


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

Теперь смотрим, как зовут устройство:


Получается, что нам нужно устройство и busid, равным 1-5.4.1.3.


Всё, сервер готов к работе.

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

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

usbip.exe install

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


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


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

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

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

Более весёлая часть: подготовка

Чтобы не тратить на сервер целую PC, для проверки, я сделал этакий комплекс Yelloww (чисто по цвету пластика, из которого сделан корпус):


Роль сервера выполняет Raspberry Pi с установленной ОС Raspbian (это тот же Debian, а значит, там имеется требуемый сервер). Одна из «голубых пилюль» выступает в роли адаптера CMSIS DAP, вторая — в роли отлаживаемого устройства.

Точно так же ставим и настраиваем сервис. Разве что здесь список устройств, допустимых к экспорту, намного скромнее:


Понятно, что здесь экспортируем и импортируем устройство busid=1-1.4.

И вот тут конкретно с CMSIS DAP у меня периодически возникает небольшая проблемка. В менеджере устройств я вижу такую неприятность:


Напомню, что статья пишется по принципу «Лучше неплохая, но сегодня, чем идеальная, но завтра». Проблемы удалённой работы возникают прямо сейчас. Надеюсь, в обозримом будущем они уже будут не актуальны. А пока актуальны — показываю, как я обхожу данную проблему вручную. Сначала я отключаю устройство:


Затем сразу же включаю:


И оно начинает работать без проблем. В Keil меняем отладчик на CMSIS DAP:



При работе по локальной сети всё просто летает. Но понятно, что локальная сеть никому не интересна. Я попробовал пробросить порт устройства у себя дома, а затем удалённо зайти на машину на работе и потрассировать «прошивку» оттуда. Связь у моего домашнего провайдера весьма и весьма тормозная, особенно — от меня наружу. Прошивается контроллер примерно втрое медленнее, чем при прямом подключении к USB. Трассировка… Ну около секунды на строку, точно не больше. В общем, терпимо. С хорошими провайдерами, надеюсь, будет лучше.

Заключение

Проект usbip-win является современной заменой для проекта USB/IP. Он живёт и развивается. При этом он предоставляет для ОС Windows не только функцию клиента, но и функцию сервера. Совместимость с Linux-версией сохранена.

Устойчивость работы удалённого USB-устройства неожиданно поразила. Я был уверен, что возникнут таймауты. Возможно, где-то они и возникнут, но для JTAG-адаптеров не было замечено ни одного сбоя. К сожалению, не все USB-устройства могут быть проброшены через сеть по причине низкого быстродействия получившейся системы. Но в случае с JTAG-адаптерами можно рассмотреть альтернативные вещи. В частности, CMSIS-DAP вместо ST-LINK.

Оба рассмотренных проекта (usbip-win и CMSIS-DAP) могут быть скачаны с GitHub в виде исходных кодов.

Если это поможет кому-то организовать удалённый доступ к оборудованию, я буду рад. Использование Raspberry Pi позволит бросить оборудование в произвольных местах.

В статье пойдет речь о настройке сервера для сетевой передачи устройства USB на другой компьютер. Подобная конструкция, как правило, необходима для проброса различных USB-ключей на виртуальные машины. Серверная часть будет настраиваться на базе Linux CentOS 7, клиентская — Windows. В качестве серверного ПО будем использовать usb-redirector-linux. Внимание — данный продукт нельзя использовать бесплатно, если раздача USB устройства идет с сервера Linux. В большей степени, инструкция предназначена для тех, кто планирует купить данных продукт.

Подготовка сервера

Для корректной установки программы, необходимо обновить систему:

После сервер необходимо перезагрузить:

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

usb-redirector-linux собирается из исходников. Для начала ставим пакеты, необходимые для сборки:

yum install wget gcc kernel-devel

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

Копируем ссылку на скачивание пакета usb-redirector-linux

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

Распаковываем скачанный архив и переходим в каталог исходников модулей:

tar -zxvf usb-redirector-linux-x86_64.tar.gz

Собираем исходник с указанием исходника ядра:

* каталог 3.10.0-862.3.3.el7.x86_64, скорее всего, будет другим — это зависит от версии ядра.

Возвращаемся в корень каталога, который появился после распаковывания архива:

Устанавливаем usb-redirector следующей командой:

Проброс USB устройства

Переходим в каталог, куда была установлена программа:

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

Получим что-то на подобие:

================= USB SERVER OPERATION SUCCESSFUL ===============
List of local USB devices:

1: USB Keyboard SIGMACHIP Composite USB Device
Vid: 1c4f Pid: 0026 Port: 2-1.4
Status: plugged

2: ET99 Token OEM USB Human Interface Device
Vid: 096e Pid: 0303 Port: 2-1.3
Status: plugged

Чтобы расшарить токен ET99, вводим:

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

Заходим на страницу загрузки USB Redirector и скачиваем клиентскую часть — в нашем случае для Windows:

Скачиваем USB Redirector Client

Скачанный архив распаковываем и запускаем установщик. Отвечаем на все вопросы мастера нажатием Далее.

После окончания установки запускаем программу - нажимаем Add USB Server и прописываем IP-адрес нашего сервера:

Добавляем USB Redirector Server

Появится список расшаренных устройств — просто нажимаем правой кнопкой мыши на необходимый и кликаем Connect USB Device.

В этой статье описывается, почему определенные USB-устройства недоступны для RemoteFX usb-перенаправления и как сделать их доступными.

Применяется к: Windows 7 Пакет обновления 1
Исходный номер КБ: 2653326

Симптомы

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

  • Принтер
  • Аудиозапись/воспроизведение
  • Массовые служба хранилища устройства (примеры включают жесткие диски, диски CD/DVD-RW, флэш-накопители и считыватели карт памяти)
  • Считыватель смарт-карт
  • PTP Camera
  • MTP Media Player
  • Apple iPod/iPod Touch/iPhone/iPad
  • КПК Blackberry
  • Windows Мобильный PDA
  • Сетевой адаптер

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

Причина

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

Решение

Предусмотрен механизм переопределения, позволяющий выборочно включить использование определенных типов устройств в категориях, упомянутых в разделе "Симптомы" с помощью RemoteFX перенаправления USB. Типы устройств, включенные с помощью этого механизма, будут доступны для перенаправления USB RemoteFX и будут отображаться в удаленном подключении к настольным компьютерам в категории Другие поддерживаемые RemoteFX USB-устройства. Для использования устройства через RemoteFX usb-перенаправление необходимо выбрать устройство для удаленного доступа с помощью пользовательского интерфейса удаленного подключения к рабочему столу, строки файлов usbdevicestoredirect:s: RDP или другого метода.

В этот раздел, описание метода или задачи включены действия, содержащие указания по изменению параметров реестра. Однако неправильное изменение параметров реестра может привести к возникновению серьезных проблем. Поэтому следует в точности выполнять приведенные инструкции. Для дополнительной защиты создайте резервную копию реестра, прежде чем редактировать его. Так вы сможете восстановить реестр, если возникнет проблема. Дополнительные сведения о том, как создать и восстановить реестр, щелкните следующий номер статьи, чтобы просмотреть статью в базе знаний Майкрософт: 322756 Как создать и восстановить реестр в Windows
Чтобы включить тип устройства для перенаправления RemoteFX USB, выполните следующие действия:

Удалите все экземпляры устройств хранения USB из клиента.

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

Определите соответствующий GUID класса интерфейса для типа устройства, который необходимо сделать доступным. Примеры:

Тип устройства GUID класса интерфейса
Жесткий диск
CD-ROM

Полный список всех классов интерфейса интерфейса устройств, определенных системой, перейдите на следующий веб-сайт Microsoft Developer Network: System-Defined Device Interface Classes

Для устройства с несколькими GUID-интерфейсами класса, которые должны быть доступны с помощью этого механизма, в реестр должен быть добавлен только один соответствующий GUID класса интерфейса.

Добавление следующих GUID-интерфейсов не поддерживается:

  • GUID_CLASS_USB_DEVICE
  • GUID_CLASS_USB_HOST_CONTROLLER
  • GUID_CLASS_USBHUB
  • GUID_DEVINTERFACE_USB_DEVICE
  • GUID_DEVINTERFACE_USB_HOST_CONTROLLER
  • GUID_DEVINTERFACE_USB_HUB

Найдите следующий ключ в реестре клиентского компьютера (то есть компьютер, использующий приложение удаленного подключения к рабочему столу для подключения к другому компьютеру):

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services\Client\UsbSelectDeviceByInterfaces
В этом ключе используйте следующий формат, чтобы добавить значение guID для каждого класса интерфейса устройства, которое необходимо сделать доступным:

Тип: REG_SZ (String) Name: Любые уникальные строковые данные: GUID класса интерфейса в следующем формате: , где каждый x представляет гексадецимальную цифру, случай нечувствительный. Пример, RemoteFX USB-перенаправление дисков CD-ROM, добавьте следующее значение:

Тип: REG_SZ: 100 Data:

Или запустите следующую команду из командной подсказки администратора:

reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services\Client\UsbSelectDeviceByInterfaces" /v 100 /t REG_SZ /d /f

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

Дополнительная информация

Инструкции по настройке развертывания RemoteFX USB для Windows 7 SP1 перейдите на следующий веб-сайт Microsoft Technet:
Настройка перенаправления USB Microsoft RemoteFX с помощью пошагового руководства

Дополнительные сведения о перенаправлении usb RemoteFX, просмотрите следующую статью в блоге служб удаленного рабочего стола:
Введение Microsoft RemoteFX USB-перенаправления: часть 3

Читайте также: