Usb по сети оборудование. Ethernet over usb – сетевая флешка. Добавление пользователей управляемого USB over IP концентратора

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

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

Следущий выбор - програмно-аппартные устройства для решения задачи проброса (эмуляции) USB портов на удаленной машине. Простые, эффективные и недорогие устройства. Выбор остановился на решениях компании Digi International -

AnywhereUSB представляет собой компактное устройство USB hub – с дополнительным подключением Ethernet кабеля.

Модели AnywhereUSB

Для использования доступны 3 модели устройств, рассчитанных на разное количество USB портов:
1. AnywhereUSB /2 – 2 порта USB

2. AnywhereUSB/ 5 – 5 портов USB

3. AnywhereUSB /14 – 14 портов USB

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

Для настройки и управления устройством предусмотрено несколько интерфейсов:
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;

Сетевые сервисы легко конфигурируются через web интерфейс

Для желающих тонко настроить все параметры сетевого интерфейса доступны соответствующие инструменты

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

Текущие подключения:

Состояние устройства:

С настройкой устройства все просто и понятно, теперь перейдем к машине, на которую осуществляется проброс USB портов.

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

Настройка проста и интуитивно понятна.

Все, что необходимо для настройки:
1. Установить драйвера для AnywhereUSB;
2. Указать IP адрес устройства.

Устройство подключено, в окне доступна информация о состоянии устройства.

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

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

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

Детальную информацию об устройствах AnywhereUSB, скачать драйвера и документацию можно найти сайте компании Digi International -

P.S. Данный обзор написал мой коллега, который, к сожалению, пока не является хабраюзером.

Протокол удаленного рабочего стола

Доступ к USB через RDP

Распространенная проблема, с которой вы можете столкнуться при подключении к удаленному рабочему столу - это невозможность получения доступа к локальным USB устройствам. USB Network Gate позволяет работать с любыми локальными USB-устройствами даже при работе с удалённым рабочим столом. Более того, вы можете настроить удаленный компьютер на автоматическое обнаружение и мгновенное подключение USB-устройств.

Изоляция USB устройств во время сеанса

В многопользовательской среде терминальных серверов сложно получить эксклюзивные права на использование USB-устройств. USB Network Gate позволяет передавать USB-устройство в распоряжение конкретному пользователю в сеансе RDP. Другие пользователи не смогут получить доступ к устройству в это время. На данный момент эта функция доступна для USB-накопителей и USB-камер в тестовом режиме.

Поддержка проброса USB в RemoteFX

USB Network Gate поддерживает нативный проброс USB RemoteFX (MS-RDPEUSB), позволяя пробрасывать общие устройства с локального компьютера под управлением Linux на удаленный клиент Windows, не устанавливая на последний USB Network Gate. Обратите внимание, что ваши USB-устройства должны поддерживаться

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

Часть первая, историческая

Если машина виртуальная - всё это несложно. Функционал проброса USB от хоста в виртуалку появился еще в VMWare 4.1. Но в моём случае ключик защиты, опознающийся как WIBU-KEY, нужно было в разное время подключать к разным машинам, и не только виртуальным.
Первый виток поиска в далеком 2009-м году привел меня к железке под названием TrendNet TU2-NU4
Плюсы:
  • иногда даже работает
Минусы:
  • работает не всегда. Допустим, ключ защиты Guardant Stealth II через неё не заводится, ругаясь ошибкой «устройство не может быть запущено».
  • ПО для управления (читай - монтирования и размонтирования USB-устройств) убого до крайности. Ключи командной строки, автоматизация - не, не слышали. Всё только руками. Кошмар.
  • управляющее ПО ищет саму железку в сети широковещанием, поэтому работает это только в пределах одного broadcast-сегмента сети. Указать IP-адрес железки руками нельзя. Железка в другой подсети? Тогда у вас проблема.
  • разработчики забили на устройство, слать баг-репорты бесполезно.
Второй виток случился во времена уже не столь отдаленные, и привел меня к теме статьи - . Привлекает открытостью, тем более, что ребята из ReactOS подписали им драйвер для Windows, так что теперь даже на x64 всё работает без всяких костылей вроде тестового режима. За что команде ReactOS огромное спасибо! Звучит всё красиво, попробуем пощупать, так ли оно на деле? К сожалению, сам проект тоже подзаброшен, и на поддержку рассчитывать не приходится - но где наша не пропадала, исходник есть, разберемся!

Часть вторая, серверно-линуксовая

Сервер USB/IP, расшаривающий USB-девайсы по сети, может быть поднят только в Linux-based OS. Ну что ж, линукс так линукс, устанавливаем на виртуалку Debian 8 в минимальной конфигурации, стандартное движение руками:

Sudo apt-get update sudo apt-get upgrade sudo apt-get install usbip
Установились. Дальше интернет подсказывает, что нужно бы загрузить модуль usbip, но - здравствуйте, первые грабли. Нет такого модуля. А всё оттого, что большинство руководств в сети относятся к более старой ветке 0.1.x, а в крайней 0.2.0 модули usbip имеют другие названия.

Поэтому:

Sudo modprobe usbip-core sudo modprobe usbip-host sudo lsmod | grep usbip
Ну и добавим в /etc/modules такие строки, чтобы загружать их автоматически при старте системы:

Usbip-core usbip-host vhci-hcd
Запустим сервер usbip:
sudo usbipd -D
Дальше всемирный разум нам подсказывает, что в комплекте с usbip идут скрипты, позволяющие нам управлять сервером - показать, какое устройство он будет расшаривать по сети, посмотреть статус, и так далее. Тут нас поджидает еще один садовый инструмент - эти скрипты в ветке 0.2.x, опять же, переименованы. Получить список команд можно с помощью

Sudo usbip
Почитав описание команд, становится понятно, что для того, чтобы расшарить требуемый USB-девайс, usbip хочет узнать его Bus ID. Уважаемые зрители, на арене грабли номер три: тот Bus ID, который выдаст нам lsusb (казалось бы, самый очевидный путь) - ей не подходит! Дело в том, что железки вроде USB-хабов usbip игнорирует. Поэтому, воспользуемся встроенной командой:

User@usb-server:~$ sudo usbip list -l - busid 1-1 (064f:0bd7) WIBU-Systems AG: BOX/U (064f:0bd7)
Примечание: здесь и далее в листингах я буду всё описывать на примере моего конкретного USB-ключа. Ваши название железки и пара VID:PID могут и будут отличаться. Моя называется Wibu-Systems AG: BOX/U, VID 064F, PID 0BD7.

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

User@usb-server:~$ sudo usbip bind --busid=1-1 usbip: info: bind device on busid 1-1: complete
Ура, товарищи!

User@usb-server:~$ sudo usbip list -r localhost Exportable USB devices ====================== - localhost 1-1: WIBU-Systems AG: BOX/U (064f:0bd7) : /sys/devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb1/1-1: Vendor Specific Class / unknown subclass / unknown protocol (ff/00/ff)
Троекратное ура, товарищи! Сервер расшарил железку по сети, и мы можем её подключать! Осталось только дописать автозапуск демона usbip в /etc/rc.local

Usbipd -D

Часть третья, клиентская и запутанная

Подключить расшаренное устройство по сети к машине под управлением Debian я попробовал сразу же на том же сервере, и всё прекрасно подключилось:

Sudo usbip attach --remote=localhost --busid=1-1
Переходим к Windows. В моем случае это был Windows Server 2008R2 Standard Edition. Официальное руководство просит сначала установить драйвер. Процедура прекрасно описана в прилагаемом к windows-клиенту readme, делаем всё как написано, всё получается. На XP тоже работает без каких-либо трудностей.

Распаковав клиент, пробуем примонтировать наш ключик:

C:\Program Files\USB-IP>usbip -a %server-ip% 1-1 usbip err: usbip_network.c: 121 (usbip_recv_op_common) recv op_common, -1 usbip err: usbip_windows.c: 756 (query_interface0) recv op_common usbip err: usbip_windows.c: 829 (attach_device) cannot find device
Ой-ой. Что-то пошло не так. Используем навык гугла. Встречаются отрывочные упоминания, что что-то там не так с константами, в серверной части разработчики при переходе на версию 0.2.0 изменили версию протокола, а вот в клиенте под Win сделать это забыли. Предлагаемое решение - поменяйте константу в исходнике и пересоберите клиент.

Вот только очень мне не хочется качать Visual Studio ради этой процедуры. Зато у меня есть старый-добрый Hiew. В исходнике константа объявлена как двойное слово. Поищем в файле 0х00000106, заменяя на 0х00000111. Не забываем, порядок байт обратный. Итог - два совпадения, патчим:

00000CBC: 06 11 00000E0A: 06 11
Ииии… да!

C:\Program Files\USB-IP>usbip -a %server-ip% 1-1 new usb device attached to usbvbus port 1
На этом можно было бы закончить изложение, но музыка играла недолго. Перезагрузив сервер, я обнаружил, что устройство на клиенте не монтируется!

C:\Program Files\USB-IP>usbip -a %server-ip% 1-1 usbip err: usbip_windows.c: 829 (attach_device) cannot find device
И всё. На это мне не смог ответить даже всезнающий гугл. А при этом команда отобразить доступные на сервере устройства вполне корректно показывает - вот он, ключ, можете монтировать. Пробую примонтировать из-под Linux - работает! А если теперь попробовать из-под Windows? О ужас - это работает!

Грабли последние: что-то там в коде сервера не дописано. При расшаривании устройства он не считывает с него количество USB-дескрипторов. А при монтировании устройства из-под Linux, это поле заполняется. К сожалению, с разработкой под Linux я знаком на уровне «make && make install». Поэтому проблема решена с помощью довольно грязного хака - добавлением в /etc/rc.local

Usbip attach --remote=localhost --busid=1-1 usbip port usbip detach --port=00

Часть заключительная

После некоторых мытарств, это работает. Желаемое получено, теперь ключ можно примонтировать к любому ПК (и размонтировать, конечно же, тоже), в том числе - за пределами широковещательного сегмента сети. Если хочется - можно это сделать с помощью скрипта командной оболочки. Что приятно - удовольствие абсолютно бесплатное.
Надеюсь, что мой опыт поможет хабражителям обойти те грабли, которые отпечатались у меня на лбу. Спасибо за внимание!

От компьютера, не имеющего выход в глобальную, или локальную сеть, пользы очень мало. Но, на такое устройство, как сетевая карта, пользователи не обращают внимания до тех пор, пока оно не перестаёт работать, или когда к машине, находящейся в локальной сети не потребуется подключить Интернет. Вот тогда у «чайников» и возникают проблемы.

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

Как установить сетевую плату, если нет свободных PCI

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

Однако если все PCI – слоты уже используются другими устройствами (видеокарта, звуковая карта, TV-тюнер и т.д.), или же для пользователя открытый кейс является дремучим лесом, то самый быстрый и простой вариант решить проблему «умершей» встроенной сетевой карты – это поставить внешний адаптер.

Что такое сетевой usb-адаптер

Внешние сетевые карты обычно совсем небольшого размера (примерно с коробок спичек), выполнены в пластиковом корпусе и имеют USB шнур для подключения.

Что касается производителя, то такие девайсы выпускают все известные изготовители компьютерных сетевых устройств: D-Link, TP-LINK, Edimax, Intel, Acer и др.

Подключение сети Ethernet через USB

Подключить внешнюю сетевую карту сможет каждый. Для этого USB кабель нужно подключить в любой свободный USB – порт компьютера. Обычно такие адаптеры устанавливаются по технологии plug’n’play. То есть все необходимые драйвера будут инсталлированы Windows автоматически.


На этом процесс подключения сетевого адаптера окончен. Теперь необходимо просто подсоединить сетевой кабель к разъёму в адаптере.

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

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

Что это такое?

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

Внешняя USB сетевая карта представляет собой миниатюрный гаджет, в котором объединены два устройства:

  1. USB вилка, используемая для подключения карты к устройству.
  2. Розетка, служащая для присоединения проводной линии связи или устройства для подключения сети WIFI.

Разъем подключения может быть выполнен в разнообразной форме, но чаще встречаются контакты для подключения обыкновенного телефонного провода (LAN для витой пары) или штепсель для волоконно-оптической линии связи (ВОЛС). Рядом с розеткой обычно находится несколько индикаторов, которые сообщают о правильности подключения и наличии сигнала.

Когда может понадобиться?

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


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

Для мобильных устройств

Сетевая карта USB ETHERNET может понадобиться и для подключения планшета или даже телефона к оптическому кабелю или витой паре. Такое оригинальное решение может стать единственно возможным, если мобильное устройство не имеет беспроводного адаптера, или же он вышел из строя. Единственный минус - аппарат станет стационарным.

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

На что обратить внимание при выборе?

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

  1. К какой сети вы будете подключать устройство - витой паре, оптическому волокну или к системе WIFI?
  2. Какими дополнительными возможностями она должна будет обладать?
  3. Устройство будет использоваться дома или на предприятии?

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

Дополнительный функционал

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

  1. BootRom позволит включать ПК с удаленного устройства.
  2. PCI BUS-Mastering повысит производительность ЭВМ за счет того, что возьмет на себя часть вычислений, связанных с потоковой передачей данных.
  3. Wake-on-LAN - еще одна функция, которая позволит загрузить ПК, только подключенный уже к локальной сети, полезна для устройств системных администраторов.
  4. TCP Checksum Offload - с этой функцией ваша USB сетевая карта самостоятельно будет обрабатывать служебную информацию, снимая нагрузку с процессора.
  5. Jumbo Frame повысит скорость получения больших объемов данных.
  6. Interrupt Moderation. С этой функцией количество запросов к центральному процессору заметно уменьшиться.

Помимо этого, стоит обратить внимание на пропускную способность вашего устройства и сетевой карты. На внешнем приспособление она варьируется от 1о до 1000 Мбит/с и более. Главное, чтобы ваш ПК или планшет тоже был способен обрабатывать данные с такой скоростью.

Что подойдет для компании?

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

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