Перейти к содержанию

Рекомендуемые сообщения

Опубликовано

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

http://usbip.sourceforge.net

Необходимо установленный Entware плюс например отдельная flash USB (использовать подключенное устройство на котором стоит Entware нельзя так как данное устройство которое будет использовано для USBIP будет от монтировано от системы).

1. Включить в прошивке поддержку - " Модули ядра подсистемы USB over IP "

2. Загрузить модули поддержки

/ # insmod /lib/modules/3.4.113/usbip-core.ko
/ # insmod /lib/modules/3.4.113/usbip-host.ko

3. Для работы USBIP загрузить

/ # opkg list | grep usbip
usbip - 1.1.1-10a - USB-over-IP (common)
usbip-client - 1.1.1-10a - USB-over-IP (client)
usbip-server - 1.1.1-10a - USB-over-IP (server)
/ # opkg install usbip usbip-client usbip-server

usbip - находиться "libusbip", usbip-client находиться "usbip", usbip-server - находиться демон для сервера "usbipd"

4. Запустим на роутере демон и определимся с USB устройством

/ # df
Filesystem           1K-blocks      Used Available Use% Mounted on
...
/dev/sdb1            483392508  45263768 438128740   9% /tmp/mnt/01.....60
/dev/sdb2              4679210   1640294   2789265  37% /tmp/mnt/b7be...........01
/dev/sdb2              4679210   1640294   2789265  37% /opt
/dev/sda1             59475964   2488172  56987792   4% /tmp/mnt/22.....CB
/dev/sda2               928987    376545    502881  43% /tmp/mnt/34be...........01
/ # 

Будем использовать flash подключенную к USB2 порту, к USB3 подключен винт HDD

/opt/sbin # ./usbipd -D -d &
/opt/sbin # libusbip: debug: usbip_host_driver.c:189:[refresh_exported_devices] bind usbip-host.ko to a usb device to be exportable!

26585 root      6208 S    ./usbipd -D -d

Опция -D запуск демона, -d для отладки (потом можно отключить)

/opt/sbin # ./usbip list -l
Local USB devices
=================
 - busid 1-2 (13fe:5500)
         1-2:1.0 -> usb-storage

 - busid 2-1 (1f75:0621)
         2-1:1.0 -> usb-storage
/opt/sbin # 

Список устройств в системе для использования, но мы определись что использовать устройство flash на 1-2 (13fe:5500)

/opt/sbin # usbip bind -b 1-2
bind device on busid 1-2: complete
/opt/sbin # 

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

/opt/sbin # df
Filesystem           1K-blocks      Used Available Use% Mounted on
...
/dev/sdb1            483392508  45263768 438128740   9% /tmp/mnt/01D....60
/dev/sdb2              4679210   1640299   2789260  37% /tmp/mnt/b7be.....401
/dev/sdb2              4679210   1640299   2789260  37% /opt
/opt/sbin # 

Настройки на роутере окончены

5. Приступим к Windows для работы необходимо я использовал две версии USBIP для Windows, т.е. установить драйвер  usbipenum для нужной windows

- https://sourceforge.net/projects/usbip/

скачал "usbip_windows_v0.2.0.0_signed.zip" взял из нее драйвера (установка в диспетчере через добавление устройства с выбранной папки - usbipenum_x...sys), сам релиз usbip не подойдет так как он v2, а установленный 1.1.1-10а

- https://www.dropbox.com/s/oox021z1d7zblmu/usbip.zip

скачал usbip.zip в которой релиз usbip запускается и стыкуется с версией на роутере

usbip.exe -a 192.168.1.1 1-2

После некоторого ожидания Windows определила подключенное устройство по USB и появился диск, как при обычном подключении устройства к USB. Скорости ниже, ну flash как бы не быстрая на запись/чтения. Попробовал запись/скопировать с данного устройства на Windows - все работает. Чтение было с нее 15МБ, запись на нее 4-5МБ.

6. Так же возможен доступ из вне к данному устройству, но тут не проверял так как нет в данном месте белого IP и на роутере нужно прописать правило в настройках "Межсетевой экран" взяв за основу

iptables -I INPUT -p tcp -m tcp --dport 3240 -j ACCEPT

ну т.е. в WEB разрешить TCP входящие на порт 3240.

 

Без имени-2.jpg

  • Спасибо 1
  • Лайк 2
  • Не согласен 1
  • 3 недели спустя...
Опубликовано (изменено)

Пробовал не так давно этот метод расшаривания, у него есть один существенный не достаток: не более одного клиента.

Изменено пользователем Kiborg_Man
Опечатка
  • 3 недели спустя...
Опубликовано

Интересное решение. Правда вижу только одно применение - постоянно примонтированный сетевой диск на телефоне. Так сказать доступ к домашнему файлохранилищу через постоянно установленный впн. 

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

Опубликовано
В 19.02.2019 в 12:08, vasek00 сказал:

ну т.е. в WEB разрешить TCP входящие на порт 3240.

Проверил на рутере, включенном "подчиненным" в домашнюю сеть, все работает. Собственно, самое интересное для меня было - работа юсб-устройств через хаб. С флешками все ок. А вот ключи пока не попробовал. Думаю, что будет работать, но проверять надо уже в рабочих условиях, что не совсем просто :)

Спасибо за пост 👍

Опубликовано
23 часа назад, plagioklaz сказал:

Правда вижу только одно применение - постоянно примонтированный сетевой диск на телефоне.

У меня есть такой практический интерес - Кинетик + usb-хаб + пачка флешек/ключей в этот хаб. В этом случае при переезде систем с хоста на хост - не надо идти/ехать/лететь перетыкать флешки 😉

  • 9 месяцев спустя...
  • 2 месяца спустя...
Опубликовано
В 10.01.2020 в 21:30, Павел сказал:

Доброго времени суток.

Интересно можно ли расшарить таким образом USB устройство (сканер например)?

 

Это не совсем правильный уровень решения проблемы, лучше sane.

Опубликовано
2 минуты назад, Павел сказал:

А если нет поддержки сканера в Sane.....

Значит вам не повезло с softscaner-ом...

Опубликовано
14 часа назад, Павел сказал:

А если нет поддержки сканера в Sane....

Попробуйте VirtualHere. У меня МФУ HP два года так работает на ура.

Опубликовано
3 часа назад, Игорь Слесаренко сказал:

Попробуйте VirtualHere. У меня МФУ HP два года так работает на ура.

Вы вот это имеете в виду:

VirtualHere USB Server ?

  • 1 месяц спустя...
  • 7 месяцев спустя...
Опубликовано
В 26.04.2020 в 18:55, Александр Сухоруков сказал:

Похоже можно, если не одновременно. Подходит. Спасибо!

 

А Вы не могли бы подробно написать процесс установки и запуска с нуля данного ПО ? Спасибо.

Опубликовано (изменено)
11 час назад, darut сказал:

А Вы не могли бы подробно написать процесс установки и запуска с нуля данного ПО ? Спасибо.

1. Подключаем к Keenetic USB HUB, в него включаем USB Flash (HDD) и сканер (МФУ, другое нужное устройство)
2. Устанавливаем Entware
3. Копируем в папку /opt/etc/init.d файл S80vhusbd (выкладывал ранее) и выставляем ему разрешения 755 (chmod 755 S80vhusbd)
4. Скачиваем virtualhere сервер для архитектуры mipsel (https://www.virtualhere.com/sites/default/files/usbserver/vhusbdmipsel) в папку /opt/home
5. Запускаем демон /opt/etc/init.d/S80vhusbd start
6. Посмотреть статус работы можно так: /opt/etc/init.d/S80vhusbd status
7. На комп с Windows, OSX, Linux устанавливаем клиент под нужную архитектуру (https://www.virtualhere.com/usb_client_software)
8. Настраиваем на клиенте адрес сервера 192.168.1.1:7575 (IP своего Keenetic, порт 7575)
9. В окне VirtualHere Client скрываем USB устройство с Entware (Игнорировать..) для предотвращения случайного его использования (чтобы Entware не уложить)
10. В окне VirtualHere Client выбираем и использум свой сканер (МФУ, другое нужное устройство), должно все работать как при прямом подключении в usb.

Изменено пользователем Игорь Слесаренко
Опубликовано
16 минут назад, Игорь Слесаренко сказал:

1. Подключаем к Keenetic USB HUB, в него включаем USB Flash (HDD) и сканер (МФУ, другое нужное устройство)
2. Устанавливаем Entware
3. Копируем в папку /opt/etc/init.d файл S80vhusbd (выкладывал ранее) и выставляем ему разрешения 755 (chmod 755 S80vhusbd)
4. Скачиваем virtualhere сервер для архитектуры mipsel (https://www.virtualhere.com/sites/default/files/usbserver/vhusbdmipsel) в папку /opt/home
5. Запускаем демон /opt/etc/init.d/S80vhusbd start
6. Посмотреть статус работы можно так: /opt/etc/init.d/S80vhusbd status
7. На комп с Windows, OSX, Linux устанавливаем клиент под нужную архитектуру (https://www.virtualhere.com/usb_client_software)
8. Настраиваем на клиенте адрес сервера 192.168.1.1:7575 (IP своего Keenetic, порт 7575)
9. В окне VirtualHere Client скрываем USB устройство с Entware (Игнорировать..) для предотвращения случайного его использования (чтобы Entware не уложить)
10. В окне VirtualHere Client выбираем и использум свой сканер (МФУ, другое нужное устройство), должно все работать как при прямом подключении в usb.

 

Спасибо Вам большое человеческое! Сегодня-завтра буду пробовать и отпишусь.

  • 1 месяц спустя...
Опубликовано

Здравствуйте!
Подскажите пожалуйста, правильно ли я понимаю:

1. Чтобы работал проброс usb надо ли, чтобы флешка с Entware была постоянно подключена к роутеру? 

2. Можно подключить usb концентратор (лучше с активным питанием) и пробрасывать через него несколько устройств?

 

Опубликовано
1 час назад, kumena сказал:

Здравствуйте!
Подскажите пожалуйста, правильно ли я понимаю:

1. Чтобы работал проброс usb надо ли, чтобы флешка с Entware была постоянно подключена к роутеру? 

2. Можно подключить usb концентратор (лучше с активным питанием) и пробрасывать через него несколько устройств?

 

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

2. Да, так. Если устройства с низким потреблением (флешка, принтер, сканер) то и без доп питания можно.

  • 2 недели спустя...
Опубликовано

Для устройств с прошивками 3+ (kernel linux 4.9.x) добавлены пакеты "usbip2", "usbip2-client", "usbip2-server"

~ # lsusb | rev | grep gnus | rev
Bus 001 Device 023: ID 04e8:341b Samsung Electronics Co., Ltd SCX-4200 series
~ #
~ # usbip version
usbip (usbip-utils 2.0)
~ #
~ # usbip list -l
 - busid usb1 (1d6b:0002)
   Linux Foundation : 2.0 root hub (1d6b:0002)

 - busid usb2 (1d6b:0003)
   Linux Foundation : 3.0 root hub (1d6b:0003)

 - busid 1-2 (04e8:341b)
   Samsung Electronics Co., Ltd : SCX-4200 series (04e8:341b)

 - busid 1-1 (0781:5571)
   SanDisk Corp. : Cruzer Fit (0781:5571)

~ # usbip bind -b 1-2
usbip: info: bind device on busid 1-2: complete
~ #

 

  • 4 недели спустя...
Опубликовано (изменено)

Добрый день

On 2/12/2021 at 9:27 AM, TheBB said:

Для устройств с прошивками 3+ (kernel linux 4.9.x) добавлены пакеты "usbip2", "usbip2-client", "usbip2-server"

Модули ядра для usbip загружены

root@kn-1010:/lib/modules/4.9-ndm-4$ insmod /lib/modules/4.9-ndm-4/usbip-core.ko
root@kn-1010:/lib/modules/4.9-ndm-4$ insmod /lib/modules/4.9-ndm-4/usbip-host.ko
root@kn-1010:/lib/module/4.9-ndm-4s$ insmod /lib/modules/4.9-ndm-4/vhci-hcd.ko
root@kn-1010:/lib/modules/4.9-ndm-4$ lsmod | grep usbip
usbip_host 13415 0 - Live 0x894d4000
usbip_core 5530 2 vhci_hcd,usbip_host, Live 0x8cf28000
usbcore 138181 10 vhci_hcd,usbip_host,xhci_mtk,snd_usb_audio,usbextras,snd_usbmidi_lib,usbhid,usb_storage,usblp,xhci_hcd, Live 0x8d600000

Пакеты установлены версии 2 - "usbip2", "usbip2-client", "usbip2-server"

удаленный сервер Debian 10.8 c usbipd (usbip-utils 2.0) удачно отдает листинг устройств

root@kn-1010:/opt$ usbip list -r 192.168.1.2
Exportable USB devices
======================
 - 192.168.1.2
        2-1: JMicron Technology Corp. / JMicron USA Technology Corp. : unknown product (152d:9561)
           : /sys/devices/pci0000:00/0000:00:14.0/usb2/2-1
           : (Defined at Interface level) (00/00/00)

и при попытке коннекта получаю на кинетике

root@kn-1010:/opt$ usbip --debug attach -r 192.168.1.2 -b 2-1
usbip: debug: usbip.c:141:[run_command] running command: `attach'
libusbip: debug: vhci_driver.c:242:[usbip_vhci_driver_open] available ports: 0
usbip: error: open vhci_driver
usbip: error: query

на сервере в логе usbipd

usbipd: info: connection from 192.168.1.1:51560
usbipd: info: received request: 0x8003(5)
usbipd: info: found requested device: 2-1
usbip: info: connect: 2-1
usbipd: info: request 0x8003(5): complete

Будьте добры, подскажите где я неправ и куда копать? Спасибо :)

Изменено пользователем Denys Kyselov
add debug info at attach command
  • 3 года спустя...
Опубликовано
В 09.12.2020 в 10:16, Mechanics сказал:

1. Подключаем к Keenetic USB HUB, в него включаем USB Flash (HDD) и сканер (МФУ, другое нужное устройство)
2. Устанавливаем Entware
3. Копируем в папку /opt/etc/init.d файл S80vhusbd (выкладывал ранее) и выставляем ему разрешения 755 (chmod 755 S80vhusbd)
4. Скачиваем virtualhere сервер для архитектуры mipsel (https://www.virtualhere.com/sites/default/files/usbserver/vhusbdmipsel) в папку /opt/home
5. Запускаем демон /opt/etc/init.d/S80vhusbd start
6. Посмотреть статус работы можно так: /opt/etc/init.d/S80vhusbd status
7. На комп с Windows, OSX, Linux устанавливаем клиент под нужную архитектуру (https://www.virtualhere.com/usb_client_software)
8. Настраиваем на клиенте адрес сервера 192.168.1.1:7575 (IP своего Keenetic, порт 7575)
9. В окне VirtualHere Client скрываем USB устройство с Entware (Игнорировать..) для предотвращения случайного его использования (чтобы Entware не уложить)
10. В окне VirtualHere Client выбираем и использум свой сканер (МФУ, другое нужное устройство), должно все работать как при прямом подключении в usb.

мех...24 год и все работает! благодарю!)

 

  • 2 месяца спустя...
Опубликовано
В 09.12.2020 в 10:16, Mechanics сказал:

1. Подключаем к Keenetic USB HUB, в него включаем USB Flash (HDD) и сканер (МФУ, другое нужное устройство)
2. Устанавливаем Entware
3. Копируем в папку /opt/etc/init.d файл S80vhusbd (выкладывал ранее) и выставляем ему разрешения 755 (chmod 755 S80vhusbd)
4. Скачиваем virtualhere сервер для архитектуры mipsel (https://www.virtualhere.com/sites/default/files/usbserver/vhusbdmipsel) в папку /opt/home
5. Запускаем демон /opt/etc/init.d/S80vhusbd start
6. Посмотреть статус работы можно так: /opt/etc/init.d/S80vhusbd status
7. На комп с Windows, OSX, Linux устанавливаем клиент под нужную архитектуру (https://www.virtualhere.com/usb_client_software)
8. Настраиваем на клиенте адрес сервера 192.168.1.1:7575 (IP своего Keenetic, порт 7575)
9. В окне VirtualHere Client скрываем USB устройство с Entware (Игнорировать..) для предотвращения случайного его использования (чтобы Entware не уложить)
10. В окне VirtualHere Client выбираем и использум свой сканер (МФУ, другое нужное устройство), должно все работать как при прямом подключении в usb.

Подскажите пожалуйста, какую версию virtualhere сервер нужно использовать для Ultra (KN-1811)? Вопрос возник потому, что в описании установки пакетов https://help.keenetic.com/hc/ru/articles/360021214160-Установка-системы-пакетов-репозитория-Entware-на-USB-накопитель для Ultra (KN-1811) написано, что необходимо использовать архив aarch64 — aarch64-installer.tar.gz... 

Опубликовано
6 часов назад, IAA сказал:

какую версию virtualhere сервер нужно использовать для Ultra (KN-1811)?

VirtualHere USB Server for Linux (ARM64)

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

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

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.