在云桌面场景下虽然各大厂商(如Citrix、VMware)已经开发了USB重定向等技术来解决虚拟桌面对于外设接入的问题,并且通过这些原厂提供的重定向技术可以解决大部分的外设连接问题(比如U盘、U盾等);但是在纷繁复杂的外设生态中,总有许多外设由于种种原因无法在连接到虚拟桌面中。特别是一些类似于加密狗之类的USBKey设备,针对类似的无法直接重定向的一些外接设备,可以尝试通过USB over network这款软件来实现USB设备的共享。
usb over network是一款USB设备共享软件,通过其研发的USB虚拟化技术,将USB协议栈的远程USB设备在客户虚拟拷贝的每个共享硬件方面建立精确的完全模拟。usb over network在 IP 网络上共享 USB 接口的外围设备,提出了基于 IP 的 扩展 USB 总线 iUSB 的概念,并且通过在客户端的 USB 驱动层中 加入虚拟主控制器接口(VHCI)和在服务器端的 USB 驱动层中加入 虚拟设备驱动(VDD)来实现 iUSB。由于包括了一个与操作系统无关 的协议 iUSB,使得网络上的USB设备可以跨平台、透明地被访问, 这是 iUSB 的主要优点。
USB Over Network软件主要分为USB over Network Client客户端和USB over Network Server服务端构成,USB over Network Server主要安装在提供USB数据共享的电脑中,而USB over Network Client安装在需要获取共享内容的客户端平台中,即可实现USB数据通过网络环境实现共享!
在本文档示例中将会展示如何通过usb over network将原先无法通过VMware Horizon 7重定向技术的外设设备映射到虚拟桌面中,本场景的外设是一款名为神思电子的SS628(100)的×××阅读机。软件版本则是VMware Horizon 7.7+Windows7的虚拟桌面。本外设为读取并记录×××信息的机器,其需要通过USB接入PC机连接软件一并使用。经过测试和咨询客服,该产品无法通过包括远程桌面(RDP)、Citrix、VMware等虚拟桌面和远程桌面技术。
通过USB Deview这款软件可以查看到的device class显示为“加密设备”,所以这个外设并不是通用性的USB设备。
从上述的介绍中可以得知usb over network可分为Server和Client端,Server端是指接入终端设备的计算机,而Client端则是最终使用该外设所在的计算机;在虚拟桌面场景中则是瘦客户机是Server端,而虚拟桌面中的系统为Client端。在安装和配置前,先确保Server和Client端均安装了该外设的驱动程序,因为两端都需要识别该设备。
针对本场景首先在瘦客户机系统上安装usb over network
在类型选择上瘦客户机选择“Server”
许可上可以选择试用,或者使用正式的许可
选择安装路径,本示例保持默认
保持默认点击安装
安装完成,打开该程序
在该程序界面中可以看到连接的外接设备,选中想要分享的设备,点击上方的“share device”将该设备共享
分享成功后会在左下角有个分享的图标,表示该设备已经被分享
现在server端已经准备好,并且将外设共享出去,接下来就是准备client端,客户端的安装过程和server端的类似,注意在下方步骤中选择client即可,
注意如果安装中可能会要求安装相应设备和软禁,点击安装即可
安装完成客户端后,随机打开然后通过左上角的“add server”添加服务器,在服务器中输入准备好的服务端的IP或主机名,通过这个界面就可以清楚了解到Server端的IP地址需要设置成固定IP或者通过域名访问并确保域名对应的IP是实时正确的,端口保持默认的33000即可
添加服务器后可以看到在服务器端共享的设备,选中该设备点击连接
连接成功后返回服务器端可以看到当前连接的客户端IP,说明已经成功将设备共享成功了
共享成功后可以在虚拟桌面的设备管理器中查看到该密码设备
并且应用也可以识别该硬件,可以正常使用
注意事项:
1:该软件安装完成后其会自动注册成服务,通过服务的方式在运行;请确保对应的服务正常运行并且是开机自启动。所以Server和Client端可以不需要手工点击该应用,其会后台自动运行
2:在虚拟桌面场景,如果用户的瘦客户机被锁定或标准化;建议将共享出来的设备设置“永久的”,也就是在action中选择“permanent”,而不是每次重启都会重置,然后Server端也要选择开机自动分享,而客户端则开机自动连接分享。这样就达到一个开机自启动、 热插拔适应的场景。
3:程序默认是通过33000端口进行连接,也可以按照实际情况更改。