ВсёПросто

Проброс USB-диска в виртуальную машину Hyper-V

Содержание

Подключение к виртуальной машине Hyper-V дополнительного виртуального жесткого диска

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

Подключить позднее можно и основной диск, например, с ранее установленной гостевой ОС, и любой другой виртуальный жесткий диск – хоть пустой, хоть с данными. Виртуальные жесткие диски форматов VHDX и VHD, с которыми работает Hyper-V, создаются в штатной утилите управления дисками Windows.

Но для работы Hyper-V  их, конечно же, проще создать средствами гипервизора и тут же в едином процессе подключить к нужной виртуальной машине.

Ниже рассмотрим процесс подключения к виртуальной машине Hyper-V еще одного, помимо основного, виртуального жесткого диска.

1. Применение дополнительных виртуальных жестких дисков

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

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

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

Файл VHDX или VHD дополнительного диска можно также использовать в качестве двустороннего средства переноса данных между физическим компьютером и виртуальными машинами.

Подключение и отключение виртуальных жестких дисков в Windows на физическом компьютере осуществляется с помощью команд в контекстном меню, вызванном на файлах VHDX и VHD в системном проводнике.

Это команды «Подключить» и «Извлечь» соответственно.

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

Для подключения диска виртуальная машина должна быть выключена.

Выбираем нужную виртуальную машину в окне диспетчера Hyper-V и открываем окно ее параметров. Это можно сделать как из контекстного меню, так и нажав кнопку «Параметры» в правой части окна.

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

В нашем случае для примера выбрана виртуальная машина поколения 2, а таковые предусматривают подключение виртуальных дисков только к контроллеру SCSI.

Соответственно, работая с виртуальными машинами поколения 2, в окне параметров делаем клик на пункте оборудования «SCSI-контроллер». Далее выбираем объект подключения – «Жесткий диск». И жмем «Добавить».

Виртуальные машины Hyper-V поколения 1 работают с виртуальными дисками, подключаемыми и к контроллеру SCSI, и к контроллеру IDE. К последнему в обязательном порядке нужно подключать виртуальные жесткие диски, с которых производится загрузка гостевой Windows.

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

  Но к выбору SCSI-контроллера все равно придется прибегнуть, если встанет необходимость подключить к виртуальной машине поколения 1 более 4-х дисков (включая основной с установленной гостевой ОС). Подключить к каждому из 2-х возможных каналов IDE можно только по 2 диска. Итого – 4.

Тогда как по каналу SCSI к виртуальной машине подключается до 256 виртуальных дисков. Так, каждый из 4-х контроллеров SCSI предусматривает подключение 64-х дисков. Но в виртуальных машинах поколения 1 нельзя загружаться с дисков, подключенных к SCSI-контроллеру.

В виртуальных машинах поколения 1 делаем выбор контроллера – SCSI или IDE – в зависимости от ситуации. Затем также выбираем объект подключения — «Жесткий диск». Жмем «Добавить».

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

3. Подключение к виртуальной машине имеющегося VHDX- и VHD-диска

После нажатия кнопки «Добавить» увидим форму добавления VHDX-диска для виртуальных машин поколения 2 и VHDX- или VHD-диска для машин поколения 1. С помощью кнопки обзора в этой форме можно добавить имеющийся диск VHDX или VHD. После открытия его в окне проводника жмем кнопку «Применить» внизу окна параметров.

И, собственно, все – можно включать и тестировать виртуальную машину.

4. Создание нового VHDX- и VHD-диска и его подключение к виртуальной машине

Чтобы к виртуальной машине подключить новый жесткий диск, потребуется больше шагов – такой диск нужно создать средствами Hyper-V, затем инициализировать и распределить дисковое пространство средствами гостевой Windows. Рассмотрим все это в деталях.

В форме добавления дисков VHDX и VHD в параметрах виртуальной машины для создания нового диска жмем кнопку «Создать».

Увидим приветственное окно мастера. Жмем «Далее».

Окно выбора формата диска — VHDX или VHD — появится только при работе с виртуальными машинами поколения 1. Выбираем формат файла диска и жмем «Далее».

Формат файла диска VHDX для виртуальных машин поколения 2 предусматривается по умолчанию. Потому создание диска начинается с выбора его типа – фиксированный, динамический, разностный. Для каждого типа в этом окне имеется небольшая справка об их специфике. В нашем случае выбран динамический тип диска. Жмем «Далее».

Указываем место хранения файла диска на компьютере и задаем этому диску имя. Жмем «Далее».

Окно настройки нового диска предусматривает не только создание пустого диска с нераспределенным пространством, но также создание нового диска с попутным копированием на него структуры и данных других дисков – физических жестких дисков и SSD, а также виртуальных VHDX- и VHD-дисков. В процессе копирования содержимого физического диска нельзя исключать отдельные разделы диска, папки или файлы. Потому этот процесс при больших объемах дисков будет мучительно долгим.

В случае копирования содержимого физических или виртуальных жестких дисков создаваемый диск перенимает их структуру и, следовательно, не требует инициализации и распределения дискового пространства отдельным этапом. Копирование содержимого имеющихся дисков – не наш случай. В нашем случае выберем первый пункт и создадим пустой диск с предлагающимся по умолчанию размером в 127 Гб. Жмем «Далее».

Готово.

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

Но новый пустой диск нужно еще инициализировать и распределить его пространство. К рассмотрению этого вопроса вернемся в самом конце.

5. Операции с дисками, подключенными к виртуальной машине

Управление всеми подключенными к виртуальной машине дисками осуществляется в окне параметров. Для выбранного диска в числе SCSI- или IDE-контроллеров доступны такие функции:

Такие изменения, как смена файла жесткого диска или его удаление, необходимо применять кнопкой «Применить» внизу окна параметров.

6. Выставление загрузки с дополнительного жесткого диска

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

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

Затем переключаемся уже на дополнительный жесткий диск, для которого нужно установить приоритет загрузки. Позицию его контроллера выставляем с 1 на 0. Жмем внизу кнопку «Применить».

Все – виртуальная машина загрузится с дополнительного диска. Чтобы вернуть все назад, нужно проделать обратный путь.

7. Отдельный мастер создания виртуальных жестких дисков Hyper-V

Hyper-V имеет в своем составе отдельный мастер создания виртуальных жестких дисков формата VHDX и VHD. С его помощью диски можно создавать без попутного подключения к конкретным виртуальным машинам. Мастер запускается при нажатии команды «Создать» в правой части окна диспетчера Hyper-V.

8. Инициализация нового жесткого диска и распределение дискового пространства

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

Запускаем виртуальную машину. В операционной системе открываем утилиту управления дисками. Она доступна в системах Windows 8.1 и 10 в контекстном меню на кнопке «Пуск».

В Windows 7 можно прибегнуть к штатной службе «Выполнить». Нужно нажать клавиши Win+R, ввести в поле службы «Выполнить» команду diskmgmt.msc и нажать «Ок».

У Windows пока что нет доступа к новому жесткому диску. В окне утилиты управления дисками увидим, что второй диск, отображающийся как Диск 1, не проинициализирован.

Как правило, процесс подключения нового жесткого диска автоматически сопровождается окном его инициализации при запуске утилиты управления дисками. Если этого не произошло, вызываем на новом диске контекстное меню и выбираем «Инициализировать диск».

В окне инициализации нужно выбрать стиль разделов диска. Для виртуальных машин поколения 2 это будет второй вариант – стиль GPT. А в случае с виртуальными машинами поколения 1 нужно выбирать вариант первый – MBR. Жмем «Ок».

После инициализации увидим, что новый жесткий диск отображается нераспределенным пространством. На базе этого пространства можно формировать разделы диска. В нашем случае обойдемся единственным разделом. На нераспределенном пространстве диска вызываем контекстное меню и выбираем «Создать простой том».

Далее следуем мастеру и местами вносим кое-какие правки.

Теперь новый жесткий диск виртуальной машины оформлен в раздел.

Он виден в системном проводнике, и на него можно помещать данные.

Как пробросить USB over IP в Vmware и Hyper-V. Настройка digi anywhereusb

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

Сегодня, я бы хотел расписать все максимально подробно, о пробросе USB over IP в виртуальные машины Vmware и Hyper-V и пошаговой настройке digi anywhereusb, на стороне сервера и на стороне клиента.

Думаю, эта небольшая инструкция будет очень полезна начинающим инженерам систем виртуализации.

Проблемы с пробросом USB устройств

Я думаю, сейчас уже выражением виртуальная машина, никого не удивишь, наверное подавляющее системных администраторов свои физические сервера отдали под гипервизоры Hyper-V или Vmware и это понятно, так как это более рациональная утилизация ресурсов.

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

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

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

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

Это очень применяется на терминальных фермах Windows Server, где очень часто установлен 1С. Подробнее о принципах работы USB over IP, читайте по ссылке слева.

Общий принцип проброса USB over IP в Vmware и Hyper-V

Вы покупаете специальное устройство, например Digi AnywhereUSB/14.

https://www.digi.com/products/usb-and-serial-connectivity/usb-over-ip-hubs/anywhereusb

Производите его настройку, в которую входит:

После чего вы втыкаете в нее все свои токены, например, E-token или Рутокен, выглядит это вот так.

После чего осталось, только произвести манипуляции на стороне клиента.

Настройка клиента для USB over IP

Вся настройка заключается в установке специального программного обеспечения anywhereusb remote hub configuration utility. Она включает в себя драйвера и утилиту для мониторинга подключения USB Токенов.

Так как в моем примере у меня устройство AnywhereUSB-14, то драйвера я буду скачивать по данной ссылке:

https://www.digi.com/support/productdetail?pid=4680

Обратите внимание, что поддерживается только семейство операционных систем Windows от семерки до Windows 10 и все серверные релизы.

Я в примере выберу Windows 10 и постараюсь пробросить на нее Etoken по технологии USB over IP. Скачиваем драйвер для вашей разрядности системы. Как определить разрядность ОС Windows читайте по ссылке.

Запускаем установочный файл с драйверами. У вас появится мастер установки AnywhereUSB. На первом окне нажимаем next

Соглашаемся с лицензионным соглашением и нажимаем next

нажимаем install для установки anywhereusb remote hub configuration utility.

Оставляем галку «Lanch AnywhereUSB Configuration Utility» и нажимаем Finish. Установка драйверов для USB over IP закончена.

Настройка Anywhereusb Remote Hub Configuration Utility

В результате установки драйверов для вашего устройства USB over IP , на виртуальной машине Vmware или Hyper-V вы обнаружите две утилиты:

  1. AnywhereUSB Configuration Utility — утилита управленияподключением
  2. USB Device Viewer — утилита проверки подключения etoken по технологии USB over IP

Открываем AnywhereUSB Configuration Utility, чтобы обнаружить и подключить наш Etoken. Первым делом вы переходите в меню Edit-Discovery List.

В поле Ip адрес указываете ip вашей железки DIGi и нажимаете кнопку Add. Теперь она будет присутствовать в списке обнаружения.

Обратите внимание она сразу укажет какие группы доступны для подключения по технологии USB over IP, они будут помечены статусом Avaliable.

Далее в меню Edit-Connection list, теперь добавим тот же Ip для соединения сервера и клиента, тут же можно сразу задать группу к которой будет идти подключение (Group Number) и нажимаем Add.

Думаю вам понятна разница между Discovery List и Connection list. Первый просто показывает, что доступно на устройстве, а второй уже автоматически подключается к нему.

В результате вы увидите статус: Connection Successful to Remote Hub, а если не повезет, то Can not find Remote Hub. Если необходимо будет отключить USB Токен, то нажмите Disconnect.

Если необходимо будет переключить группу, то делается это на отключенном устройстве в Connection list, через правый клик по нему. Там будет пункт Configure. Обратите внимание, что тут есть пункты для шифрования трафика между клиентом и сервером USB over IP.

То, что у вас появился статус Connection Successful to Remote Hub, еще не говорит, что устройство работает и проброс на виртуальную машину Vmware или Hyper-V осуществлен.

Чтобы удостовериться, что все хорошо, вам необходимо воспользоваться утилитой USB Device Viewer. В идеале у вас должен быть куст RealPortUSB с ip адресом вашего устройства и на порту должен отображаться ваш токен со статусом DeviceConnected.

Вот теперь можно говорить, что подключение по USB over IP, работает.

Публикации / Cloudzone.Ru

При переносе серверов приложений в виртуальную среду MicrosoftHyper-V часто возникает целый ряд нетривиальных технических задач.

Выбор способа подключения USB-устройств (в частности, ключей аппаратной защиты HASP) к виртуальным машинам стал для нас одной из первых таких задач, возникшей сразу с внедрением услуг аренды приложений 1С (SaaS) на виртуальных серверах в инфраструктуре компании IT-Lite.

Поддержка подключения физических USB-устройств к виртуальным машинам начисто отсутствует в MicrosoftHyper-V. В качестве выхода из ситуации напрашивается подключение ключей через Hasp License Manager по сети, но такой подход не решает проблему окончательно ввиду существующих ограничений: только один клиентский ключ защиты можно подключить к одному серверу Hasp License Manager.

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

Решение 1. Belkin Network USB Hub

http://www.belkin.com/networkusbhub/

Рис. 1 Комплект Belkin
Network USB Hub
Рис. 2 Belkin Network
USB Hub, вид сзади
Рис. 3 Web-интерфейсРис. 4 Belkin Network USB
Hub Control Center

Программно-аппаратное решение, предназначенное для SOHO-сегмента, состоящее из небольшой коробочки размером 165х165х19мм с пятью USB2.0-портами, одним портом 10/100Base-TX (auto-sensing and auto-uplink RJ45).

Блок питания внешний 12В 2А, либо 5В 4А, что внушает сомнения в возможности получить стандартные 0,5А на всех пятиUSB-портах одновременно (хотя для ключей HASP это и не требуется) и ПО Belkin Network USB Hub Control Center под Windows 32bit/64bit и MacOSX.

К сожалению, официально в Россию устройство не поставляется. В комплекте идет само устройство, блок питания, инструкция по установке, диск с ПО и патч-корд 0,5м (см. рис. 1).

Рассмотрим аппаратную часть (рис. 2): устройство черного цвета выполнено из глянцевого черного пластика (очень легко царапается). На задней стороне имеется три USB-порта, сетевой интерфейс, разъем питания и кнопка сброса. На передней – два USB-порта и индикатор питания. USB-порты никак не пронумерованы.

Имеется web-интерфейс, который позволяет управлять сетевыми настройками, просматривать список подключенных USB-устройств, журнал подключения устройств и обновлять прошивку. Доступ к web-интерфейсу защищен паролем (авторизация требуется только при изменении настроек) (см. рис. 3).

Прилагаемое ПО включает дистрибутив на нескольких языках (исключая русский) и занимает около 76Мб. Его установка не вызывает никаких трудностей.

После установки в системе появляется новое системное устройство SXUPTPDriver, а в автозагрузку добавляется приложение control.exe.

Нами подтверждена «нормальная» установка без перезагрузки, и стабильная работаПО на серверных ОС от WindowsServer 2003 до WindowsServer 2008R2.

ПО Belkin Network USB Hub Control Center отличается довольно удобной реализацией (см. рис.

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

Есть возможность автоматического подключения USB-устройств на загрузки Windows и переподключения USB-устройств автоматически при сбоях сети (число попыток переподключения явно нигде не устанавливается и равно бесконечности).

Подключенные USB-устройства привязываются к USB-портам хаба, то есть старое устройство в новом порту трактуется как новое устройство и автоматически не переподключается. Удобна возможность задать любому USB-устройству индивидуальное имя, которое, однако, также привязывается к порту: если, например, назвать HASP-ключ в порту 1 именем «key1», то при подключении его в порт 2, он не будет опознан как «key1».

Особенности применения устройства в промышленной среде:

Приложение Belkin Network USB Hub Control Center не работает как сервис, то есть предполагает интерактивный вход в систему. Это «лечится» либо с помощью утилиты типа serviceany или через шедулер на событие systemstart.

Полностью отсутствует аутентификация при подключении USB-устройств к целевой системе – кто первый успел подключить, тот и прав. Проблема не очень критичная ввиду присутствия функции автоматического подключения устройств на загрузке приложения Network USB Hub Control Center – переподключить уже подключённое устройство к другому хосту можно только отключив его на первом.

Belkin Network USB Hub Control Center использует broadcast для обнаружения хабов – в связи с этим хабы видны только в пределах 1 сети. Кроме того, в настройках Control Center (General/Connected Hubs/Refreshoptions…) можно явно указать ip-адреса хабов, до которых есть маршрутизация у хостовой системы, и они будут работать.

При числе USB-ключей защиты более трёх на один хаб наблюдается случайное зависание Belkin Network USB Hub Control Center. Причем сам Control Center продолжает работать и видит ключи, но сервис Hasp License Manager ключей уже не видит. Помогает ручной перезапуск Belkin Network USB Hub Control Center. Отследить момент зависания возможно лишь по отказу работы 1С ввиду отсутствия ключа защиты.

В связи с вышеуказанными проблемами было найдено следующее решение.

Решение 2. Digi AnywhereUSB

http://www.digi.com/products/usb/anywhereusb.jsp#overview

Рис. 5 DigiAnywhereUSB
вид спереди
Рис. 6 AnywhereUSB Remote Hub

Configuration Utility

В линейке AnywhereUSB представлены три  продукта: AnywhereUSB®/2, AnywhereUSB®/5 и AnywhereUSB® TS.Первые два продукта имеют по два и пять USB1.1 портов соответственно, а последний – четыре USB и четыре RS-232 (разъем RJ-45). Блок питания у всех устройств внешний, 5В, 2.9А (производителем заявлено 0.5А на каждый USB-порт).

В качестве примера рассмотрим AnywhereUSB®/5. Остальные устройства линейки отличаются только размером и числом портов. Устройство представляет собой коробку размером 110,5х182,9х26,1мм.

На передней панели расположены пронумерованные индикаторы активности каждого USB-порта и индикатор статуса системы (мигает при нормальной работе).

На задней панели расположены: разъем питания (у AnywhereUSB®/2 есть фиксация посредством гайки), порт 10/100 Base-T Ethernet и пять пронумерованных портов USB (см. рис. 5). Устройство не имеет web-интерфейса и управляется полностью через прилагаемое ПО.

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

Из ОС поддерживаются только Windows версии от XPдо 2008 Server 32bit/64bit. Установка проста и проблем не вызывает, перезагрузка не требуется. Интерфейс утилиты настройки представлен на рис.6.

Утилита позволяет искать устройства в сети посредством broadcast (можно добавлять IP-адреса устройств и вручную), изменять сетевые настройки устройств, перезагружать их и подключать к целевой ОС, просматривать состояние хабов, журнал событий и информацию об установленных драйверах.

При подключении хаба в системе появляются устройства AnywhereUSBRemoteHub, AnywhereUSBHostController [ip-адрес хаба] и AnywhereUSBRootHub.

Для хабов с числом портов больше двух, число устройств удваивается:AnywhereUSBHostController [ip-адрес хаба] 0 и AnywhereUSBHostController [ip-адрес хаба] 1, AnywhereUSBRootHub0 и AnywhereUSBRootHub1.

Просмотр подключенных к USB-портам устройств реализован через утилиту AnywhereUSBView.

Стоит отметить весьма странное соответствие номеров логических портов физическим, представленное в таблице 1 для DigiAnywhereUSB®/5:

Физические порты 1 2 3 4 5 Порты AnywhereUSB Root Hub 0 Порты AnywhereUSB Root Hub 1
3 2 1
2 1

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

Что позволяет, без каких либо манипуляций и настроек, подключать к нему USB-устройства, и они будут сразу обнаружены операционной системой. Переподключение при обрыве связи происходит автоматически с интервалом, который настраивается через AnywhereUSBRemoteHubConfigurationUtility, 5секунд по умолчанию.

Проблем типа «зависаний» и «пропадания» ключей в процессе эксплуатации выявлено не было.

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

Решение 3. Fabula Tech USBoverNetwork

http://www.fabulatech.com/usb-over-network.html

Рис. 7 Серверный
интерфейс
Рис. 8  Клиентский
интерфейс

Решение полностью программное, представляет собой клиент-серверное приложение: сервер под Window 32bit/64bit, Linux, WindowsCE, а клиент пока только под Windows. Есть 15-ти дневная ознакомительная версия.

Дистрибутивы клиента и сервера представляют собой отдельные пакеты. Установка сервера USBovernetwork проблем не вызывает, а перезагрузка ОС не требуется.

Однако, для того, чтобы сервер видел USB-устройства в системе, должны быть установлены их драйвера.

Серверная часть работает как сервис – USBoverNetwork (Server) service. Основное и единственное окно программы представлено на рис. 7. Программа позволяет просматривать подключенные USB-устройства и предоставлять к ним доступ.

В настройках программы можно включить опцию предоставления доступа ко всем подключенным устройствам автоматически и задать исключения.

Каждому подключенному устройству назначается уникальный последовательный номер – ID, он привязывается к паре «устройство-порт» – то есть при подключении определенного устройства только в определенный порт его ID не изменяется.

При «расшаривании» устройства в системе появляется новое устройство Shared USB Device в группе Fabula Tech Shared USB Devices. В его свойствах можно посмотреть логические номера хаба и порта, к которому подключено устройство.

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

В свойствах устройства, в панели USBoverNetworkServer, можно задать каждому устройству nickname. Однако посмотреть nickname можно только в свойствах устройств в серверной или клиентской части программы.

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

В настройках программы можно устанавливать порт для соединения с клиентской частью (по умолчанию TCP 33000) , также есть поддержка SSL-шифрования трафика.

Клиентская часть также работает как сервис, получивший название USBoverNetwork (Client) service.

Интерфейс программы представлен на рис. 8. Он позволяет подключаться к серверам USBoverNetwork Server с указанием IP-адреса и порта сервера вручную, либо с помощью выбора хоста из сетевого окружения Windows, при этом наличие на том или ином хосте установленного USBoverNetworkServer никак не отображается.

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

Можно персонально для каждого устройства в его свойствах задать автоподключение по ID устройства и автоматическое переподключение по факту его доступности .

Также есть возможность автоматического подключения всех устройств с определенного сервера (задается в свойствах сервера).

В процессе эксплуатации USBoverNetwork были выявлены следующие особенности:

  1. Отсутствие аутентификации при подключении устройств, кроме как глобально — на уровне подключения к серверу при использовании SSL. Уже занятое устройство без возможности  совместного доступа к нему можно подключить к новому клиенту только отключив его на том клиенте, к которому было подключено ранее;
  2. При подключении устройств через USB-хаб на 7 портов, часть устройств может не обнаруживаться после перезагрузки физического сервера, на котором установлен USBoverNetworkServer. Проблема, скорее всего, была именно в хабе и решалась последовательным отключением хаба от сервера и питания от хаба, перезагрузкой сервера с последующим подключением хаба после загрузки ОС. Однако в нормальном режиме работы, без перезагрузок сервера, никаких проблем, например, зависания клиентской или серверной части, или необнаружения ключей 1С, выявлено не было.
  3. Крайне неудобно по причинам, описанным выше, поддерживать актуальной информацию о том, какой USB-ключ к какому USB-порту подключен.

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

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

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

Михаил Басенин технический эксперт