Hi Zhai,
On 12/11/19 8:19 PM, Zhai Zhaoxuan wrote:
Hi Shuah,
For me, I want to let the remote control software passing some virtual
device (e.g. ethernet device) to the remote computer.
More specifically, the remote computer is connected to a private
network, and the local computer is connected to the Internet. And the
local can only connect to the remote computer using RDP/SPICE protocols,
some other softwares such as vmware client, or even remote management cards.
All these protocols or softwares support USB redirection.
Does USB redirection support virtual devices? My understanding
it is usually a physical device connected to the local system.
So I can
create a virtual ethernet device with usbip,
How are you creating the virtual device?
let them
Who is them here?
redirect the USB
ethernet device to the remote computer, and enable NAT forward.
Is this virtual device is exported by USBIP host driver on your local
machine?
Then I am able to access the private network with local computer.
Currently, I am writing a user-space program. It runs usbip protocol,
and can be connected and attached to the vhci.
Why do you need to write a user-space program and what does it do?
Where does this vhci run? On the local system? I still don't fully
follow the use-case.
But the USB redirection will always reset the USB device before it
passing the device to the remote computer.
Does USB redirection support virtual devices?
And now, this "reset" results the device be disabled and never be
enabled again. So the redirection fails.
In addition to this, I think usbip is a great module to allow the user
emulate some other devices and passing them to the remote computer
easily. For example, the virtual serial port can be emulated in
user-space, and communicate with the remote computer over SPICE. And
then, I can get the console output from the remote computer or send
console command to it.
thanks,
-- Shuah