Txhawb USB / IP

Lub luag haujlwm ntawm kev txuas USB ntaus ntawv mus rau lub PC tej thaj chaw deb ntawm lub network hauv zos tsis tu ncua tshwm sim. Hauv qab no qhov kev txiav yog keeb kwm ntawm kuv qhov kev tshawb nrhiav hauv qhov kev taw qhia no, thiab txoj hauv kev rau kev npaj ua tiav raws li qhov project qhib USB/IP nrog cov lus piav qhia ntawm cov teeb meem ua tib zoo ntsia los ntawm ntau tus neeg raws txoj kev no, nrog rau txoj hauv kev los hla lawv.

Part XNUMX, keeb kwm

Yog hais tias lub tshuab yog virtual, tag nrho cov no yog ib qho yooj yim. Kev ua haujlwm ntawm USB xa mus los ntawm tus tswv tsev mus rau lub tshuab virtual tau tshwm sim hauv VMWare 4.1. Tab sis hauv kuv qhov teeb meem, tus yuam sij kev nyab xeeb, txheeb xyuas tias yog WIBU-KEY, yuav tsum tau txuas nrog cov tshuab sib txawv ntawm lub sijhawm sib txawv, thiab tsis yog cov virtual nkaus xwb.
Thawj qhov kev tshawb nrhiav rov qab rau xyoo 2009 tau coj kuv mus rau ib qho khoom siv hu ua TrendNet TU2-NU4
Tshaj:

  • qee zaum nws txawm ua haujlwm

Txais:

  • tsis ib txwm ua haujlwm. Cia peb hais tias Guardant Stealth II tiv thaiv tus yuam sij tsis pib los ntawm nws, cog lus nrog qhov yuam kev "lub cuab yeej tsis tuaj yeem pib."
  • Lub software rau kev tswj hwm (nyeem: mounting thiab unmounting USB li) yog heev tsis zoo. Cov kab lus hloov pauv, automation - tsis yog, peb tsis tau hnov. Txhua yam ua tiav nrog koj txhais tes. Npau suav phem.
  • Tus tswj software tshawb nrhiav cov khoom siv nws tus kheej hauv lub network los ntawm kev tshaj tawm, yog li nws tsuas yog ua haujlwm hauv ib ntu ntawm lub network. Koj tsis tuaj yeem qhia tus IP chaw nyob ntawm cov khoom kho vajtse manually. Puas yog cov khoom kho vajtse ntawm ib lub subnet sib txawv? Ces koj muaj teeb meem.
  • Cov neeg tsim khoom tau muab tso rau ntawm lub cuab yeej, xa cov ntawv ceeb toom kab mob tsis muaj txiaj ntsig.

Qhov thib ob tshwm sim nyob rau hauv ib lub sij hawm tsis deb li ntawd, thiab coj kuv mus rau lub ntsiab lus ntawm tsab xov xwm - USB/IP project. Attracts nrog nws qhib, tshwj xeeb tshaj yog txij li cov txiv neej los ntawm ReactOS Lawv tau kos npe rau tus tsav tsheb rau Windows, yog li tam sim no txawm nyob rau x64 txhua yam ua haujlwm yam tsis muaj kev sib tw zoo li kev sim hom. Ua tsaug ntau rau pab pawg ReactOS! Txhua yam suab zoo nkauj, cia peb sim xav nws, puas yog tiag? Hmoov tsis zoo, qhov project nws tus kheej kuj raug tso tseg, thiab koj tsis tuaj yeem suav txog kev txhawb nqa - tab sis qhov twg peb tsis tau ploj mus, qhov chaws nyob ntawd, peb mam li txiav txim siab nws!

Qhov thib ob, server-Linux

USB / IP neeg rau zaub mov uas sib koom USB li hauv lub network tsuas tuaj yeem ntsia tau rau hauv Linux-based OS. Zoo, Linux yog Linux, nruab Debian 8 ntawm lub tshuab virtual hauv kev teeb tsa tsawg, qauv tes txav:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install usbip

Tsim los. Tom qab ntawd Is Taws Nem qhia tias koj yuav tsum rub tawm usbip module, tab sis - nyob zoo, thawj zaug rake. Yog tsis muaj xws li module. Qhov no yog vim hais tias feem ntau ntawm cov phau ntawv nyob rau hauv lub network xa mus rau lub qub ceg 0.1.x, thiab nyob rau hauv qhov tseeb 0.2.0 lub usbip modules muaj ntau lub npe.

Yog li no:

sudo modprobe usbip-core
sudo modprobe usbip-host
sudo lsmod | grep usbip

Zoo, cia peb ntxiv cov kab hauv qab no rau /etc/modules kom thauj lawv tau txais thaum lub kaw lus pib:

usbip-core
usbip-host
vhci-hcd

Cia peb pib lub usbip server:

sudo usbipd -D

Tsis tas li ntawd, kev txawj ntse thoob ntiaj teb qhia peb tias usbip los nrog cov ntawv sau uas tso cai rau peb tswj hwm tus neeg rau zaub mov - qhia tias cov cuab yeej twg nws yuav sib koom hauv lub network, saib cov xwm txheej, thiab lwm yam. Ntawm no lwm lub vaj lub cuab tam tos peb - ​​cov ntawv sau no hauv 0.2.x ceg muaj, dua, tau hloov npe. Koj tuaj yeem tau txais cov npe ntawm cov lus txib siv

sudo usbip

Tom qab nyeem cov lus piav qhia ntawm cov lus txib, nws pom tseeb tias txhawm rau muab cov khoom siv USB xav tau, usbip xav nrhiav nws Bus ID. Nyob zoo cov neeg saib, rake tus naj npawb peb hauv arena: Bus ID uas yuav muab rau peb lsusb (nws yuav zoo li qhov pom tseeb tshaj plaws) - tsis haum nws! Qhov tseeb yog tias usbip tsis quav ntsej kho vajtse zoo li USB hubs. Yog li ntawd, peb yuav siv cov built-in hais kom ua:

user@usb-server:~$ sudo usbip list -l
 - busid 1-1 (064f:0bd7)
   WIBU-Systems AG : BOX/U (064f:0bd7)

Nco tseg: ntawm no thiab ntxiv rau hauv cov npe kuv yuav piav qhia txhua yam siv qhov piv txwv ntawm kuv tus yuam sij USB tshwj xeeb. Koj lub npe kho vajtse thiab VID: PID khub tuaj yeem thiab yuav txawv. Kuv lub npe hu ua Wibu-Systems AG: BOX/U, VID 064F, PID 0BD7.

Tam sim no peb tuaj yeem qhia peb lub cuab yeej:

user@usb-server:~$ sudo usbip bind --busid=1-1
usbip: info: bind device on busid 1-1: complete

Hlo, comrades!

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)

Peb zoo siab, cov phooj ywg! Tus neeg rau zaub mov tau qhia cov khoom siv hauv lub network, thiab peb tuaj yeem txuas nws! Txhua yam uas tseem tshuav yog ntxiv autostart ntawm usbip daemon hauv /etc/rc.local

usbipd -D

Qhov thib peb, tus neeg siv-sab thiab tsis meej pem

Kuv tam sim ntawd sim txuas cov cuab yeej sib koom hauv lub network mus rau lub tshuab khiav Debian ntawm tib lub server, thiab txhua yam txuas nrog zoo kawg nkaus:

sudo usbip attach --remote=localhost --busid=1-1

Cia peb mus rau Windows. Hauv kuv rooj plaub nws yog Windows Server 2008R2 Standard Edition. Phau ntawv official hais kom koj nruab tus tsav tsheb ua ntej. Cov txheej txheem tau piav qhia zoo kawg nkaus hauv readme nrog rau tus neeg siv Windows, peb ua txhua yam raws li sau tseg, txhua yam ua haujlwm. Nws kuj ua haujlwm ntawm XP yam tsis muaj teeb meem.

Thaum unpacked tus neeg siv khoom, peb sim mount peb tus yuam sij:

C:Program FilesUSB-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

Aw oh. Ib yam dab tsi mus tsis ncaj ncees lawm. Cia peb siv Google txuj ci. Muaj cov lus tsis txaus ntseeg hais tias ib yam dab tsi tsis ncaj ncees lawm nrog rau qhov tsis tu ncua; nyob rau hauv cov neeg rau zaub mov, cov neeg tsim tawm tau hloov cov txheej txheem version thaum tsiv mus rau version 0.2.0, tab sis hauv Win client lawv tsis nco qab ua qhov no. Txoj kev daws teeb meem yog los hloov qhov tsis tu ncua ntawm qhov chaws thiab rov tsim kho tus neeg siv khoom.

Tab sis kuv yeej tsis xav rub tawm Visual Studio rau cov txheej txheem no. Tab sis kuv muaj tus laus Hiew. Hauv qhov chaws, qhov tsis tu ncua tau tshaj tawm tias yog ob lo lus. Cia peb saib 0x00000106 hauv cov ntaub ntawv, hloov nws nrog 0x00000111. Tsis txhob hnov ​​qab, qhov kev txiav txim byte yog thim rov qab. Qhov tshwm sim yog ob qhov sib tw, peb thaj:

[usbip.exe]
00000CBC: 06 11
00000E0A: 06 11

Aw... yes!

C:Program FilesUSB-IP>usbip -a %server-ip% 1-1
new usb device attached to usbvbus port 1

Qhov no tuaj yeem yog qhov kawg ntawm zaj dab neeg, tab sis lub suab paj nruag tsis ua si ntev. Tom qab rebooting tus neeg rau zaub mov, kuv pom tias lub cuab yeej ntawm tus neeg siv khoom tsis tau teeb tsa!

C:Program FilesUSB-IP>usbip -a %server-ip% 1-1
usbip err: usbip_windows.c: 829 (attach_device) cannot find device

Yog tag nrho. Txawm tias txhua tus paub Google tsis tuaj yeem teb qhov no rau kuv. Thiab nyob rau tib lub sijhawm, cov lus txib kom tso saib cov khoom siv muaj nyob rau ntawm tus neeg rau zaub mov kom raug qhia tau zoo - ntawm no nws yog, tus yuam sij, koj tuaj yeem mount nws. Kuv sim mount los ntawm Linux - nws ua haujlwm! Yuav ua li cas yog tias peb sim tam sim no los ntawm Windows? Oh ntshai heev - nws ua haujlwm!

Qhov kawg rake: ib yam dab tsi tsis tau sau rau hauv server code. Thaum sib koom ib lub cuab yeej, nws tsis nyeem tus naj npawb ntawm USB descriptors los ntawm nws. Thiab thaum mounting ib lub cuab yeej los ntawm Linux, daim teb no tau sau rau hauv. Hmoov tsis zoo, kuv paub txog Linux kev txhim kho ntawm qib "ua && ua rau nruab" qib. Yog li ntawd, qhov teeb meem tau daws tau siv ib qho kev qias neeg hack - ntxiv rau /etc/rc.local

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

Qhov kawg

Tom qab qee qhov kev nyuaj siab, nws ua haujlwm. Qhov xav tau tau ua tiav, tam sim no tus yuam sij tuaj yeem txuas rau txhua lub PC (thiab unmounted, tau kawg, ib yam nkaus), suav nrog sab nraud ntu ntu ntawm lub network. Yog tias koj xav tau, koj tuaj yeem ua qhov no los ntawm kev hais kom ua lub plhaub ntawv. Qhov zoo yog qhov kev txaus siab yog dawb kiag li.
Kuv vam tias kuv qhov kev paub dhau los yuav pab tau cov neeg nyiag nkag mus nyob ib puag ncig lub rake uas tau sau rau ntawm kuv lub hauv pliaj. Ua tsaug rau koj mloog!

Tau qhov twg los: www.hab.com

Ntxiv ib saib