Domitura USB/IP

Negotium ligandi USB fabrica ad PC remotam per network locali regulariter oritur. Sub inciso historia inquisitionum mearum hac in parte exposita est, et via ad solutionem promptae solutionis in fonte aperto fundatam. USB/IP in hac via a variis impedimenta diligenter descripta, nec non vias praeterire.

Pars prima, historica

Si apparatus virtualis est - haec omnia facile sunt. Munus USB ab hospite ad virtualem machinam transmittuntur in VMWare 4.1. At in casu meo, clavis securitatis, WIBU-KEY cognoscibilis, diversis temporibus diversis machinis connecti debuit, et non solum virtuales.
Primus circumitus inquisitionis in distans 2009 me plumbum ad ferrum vocavit TrendNet TU2-NU4
pros,

  • interdum etiam operatur

cons:

  • non semper operatur. Pone tutelam tutelae Furtim II clavem per eam non incipere, iurans per errorem "machinam inchoari non posse".
  • Procuratio procuratio (legi - ascendens et ineffabilis USB machinas) pathicus ad extremum est. Mandata lineae virgas, automationes, non audiverunt. Omnia per manus iusta sunt. Somnum exterreri.
  • moderamen programmatum perquirit ipsum ferrum in retis diffundendo, ergo hoc solum operatur intra unum segmentum retis iaci. Inscriptio IP ferri manu non potes. Ferrum in aliis subnet? Habes igitur quaestionem.
  • tincidunt in fabrica notatos, supervacuum est cimex nuntia mittere.

Secunda rotunditas temporibus non ita distantibus accidit, et me ad articulum perduxit. USB/IP project. Allicit perspicue, praesertim cum latinae e WikiChristian aurigam pro eis subscripsi Windows, ita nunc omnia etiam in x64 sine ullis solutionibus ut modo probationis operantur. Gratiae maximae turmae ReactOS pro hoc! Omnia optime sonant, experiamur ut videamus an revera vera sint. Infeliciter, ipsum proiectum derelictum est, et auxilium difficile invenitur—sed adhuc in eo laboramus, fons codex ibi est, inveniemus!

Pars duarum, server-linux

Servus USB/IP qui instrumenta USB per rete communicat constitui potest tantum in LinuxSystema operativum fundatum. Linux Linux est, ergo in machina virtuali illud instituamus. Debian Octo in configuratione minima, motu manus normali:

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

Habitavit. Praeterea, Penitus suggerit necesse esse ut moduli usbiporum comprehendantur, sed - salve, primum rastrum. Nulla ut volutpat augue. Et quia plerique manuales in retiacula referunt ad ramum vetustiorem 0.1.x, et in novissima 0.2.0 modulorum usbiporum diversa nomina habent.

Ille est cur:

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

Bene, lineas sequentes ad /etc/modus addamus, ut eos automatice ad systema startup oneratis:

usbip-core
usbip-host
vhci-hcd

Sit scriptor satus servo usbip:

sudo usbipd -D

Praeterea, mens universalis docet nos usbip venire cum scriptis quae permittit nos ministrare administrare - ostende quam fabricam communicet super retiaculum, statum, et cetera. Hic aliud instrumentum hortum nos manet - haec scripta in 0.2.x ramo iterum nominata sunt. Potes ut indices mandatorum

sudo usbip

Post descriptionem mandatorum perlectis, manifestum fit ut USB artificium communicare possit, usbip cognoscere velle suum Bus ID. Carissimi spectatores, numerus ternarius in arena est: Bus ID qui nobis dabit lsusb * (videatur manifestissima via) - non convenit. Ita est quod usbip hardware quasi USB modioli ignorat. Utemur ergo in structo mandato;

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

Nota: in sequentibus in schedulis omnia describam utens exemplo mei clavis specificae USB. Ferramenta nomen tuum et VID:PID par possunt et differre possunt. Meus appellatur Wibu-Systems AG: BOX/U, VID 064F, PID 0BD7.

Nunc consilium nostrum communicare possumus:

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

Eia, socii!

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)

Tres clamores, socii! Servus frustum ferreum super retiaculum communicavit et eam coniungere possumus! Reliquum est, ut autostart daemonis usbip ad /etc/rc.local addere

usbipd -D

Pars tertia, clientelam et confundens

Instrumentum commune cum machina rete currente coniunge. Debian Statim in eodem servo id tentavi, et omnia perfecte coniuncta sunt:

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

Progrediamur ad WindowsIn meo casu erat Windows Server Editio Standard 2008R2. Liber officialis petit ut primum rector instituatur. Modus procedendi bene describitur in fasciculo "readme" incluso cum cliente Windows; instructiones secuti sumus et omnia recte functionaverunt. Etiam sine ullis difficultatibus in XP operatur.

Post clientem fasciculum, clavem nostram conscendere conamur:

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

Oh oh. Aliquid abiit iniuriam. Arte Google utimur. In fragmentis commemoratis constantibus aliquid falsum esse, in parte server, tincidunt versionem protocolli mutaverunt cum in versionem 0.2.0 mutaverunt, sed hoc facere obliti sunt in cliente Vincere. Proposita solutio est constantem in fonte codicem mutare et clientem reficere.

Sed vere non vis huius agendi causa de Studio Visuali download. Sed vetus Hiew. In codice fons, perpetuus ut duplici verbo declaratur. Inspiciamus in tabella pro 0x00000106, reposuit cum 0x00000111. Memento, byte ordo praeposterus. Ex duobus par, commissuram:

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

Eeeee... sic!

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

Hoc finire potuit, sed musica non diu canebat. Post reboing servo, inveni machinam in cliente non ascendi!

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

Et hoc est. Ne Google quidem omnisciens hoc respondere potuit. Interea, mandatum ad machinas in servo praesto exhibendas id satis recte ostendit — ecce, clavis, eam figere potes. Conor eam figere sub... Linux - Operatur! Et si id subtus experiamur Windows? O, horror – operatur! (or) Proh horror – operatur!

Problema ultimum: aliquid in codice servi deest. Cum instrumentum communicatur, numerum descriptorum USB ex eo non legit. Et cum instrumentum sub... Linux, hoc spatium impletum est. Infeliciter, cum progressu sub Linux "Make && make install" mihi notum est. Itaque problema solutum est artificio satis sordido — addendo illud ad /etc/rc.local.

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

Pars finalis

Post aliquot fiddling, operatur. Optatum effectum consecutum est, nunc clavis ad PC (insuperatae, utique etiam), ad quasvis retis iacientes segmentum adscendi potest. Si vis, concha scriptione uti potes. Quod est delicatus - voluptas absolute libera est.
Spero experientiam meam adiuvabit habrazhiteli ut circumcirca rastellam quae in fronte impressa est. Gratias tibi ago pro attente!

Source: www.habr.com

Emptum certos hospites pro locis cum praesidio DDoS, VPS VDS servers 🔥 Eme hospitium interretiale fidum cum praesidio DDoS, servitores VPS VDS | ProHoster