AnywhereUSB产品是通过以太网扩展USB口,由于USB是一种需要驱动的接口,操作系统需要通过设备驱动才能访问USB设备,当通信出现异常时,就需要调试手段来了解哪个环节出问题。进一步操作之前,请先根据用户指南进行trouble shooting: https://www.digi.com/resources/documentation/digidocs/PDFs/90000630.pdf在线版

AnyWhereUSB的调试抓包分为两个部分:电脑驱动端和AWUSB设备端,以及Wireshark的网络包。准备好软件后,我们可以同时来抓取这三种包:

相关软件的准备

1. win7开启telnet客户端功能:在控制面板>程序和功能>打开或关闭windows功能>,勾选“telnet客户端”并应用。这样就可以在命令行使用telnet命令,因为稍后在抓固件的trace包时,需要telnet到设备上执行一个命令。

2. 安装AnywhereUSB驱动和配置工具,有32位或64位版本,请根据自己的电脑选择,如果您已经安装请略过,否则请到官网下载。

3. 安装Wireshark网络抓包工具,可以直接百度一下,从百度软件中心下载,或是点击这里直接下载wireshare win32位版本,安装完成请重新启动一下。

4. 解压awusb_tracelog.zip到C盘根目录,并把文件夹重命名为C:\tracelog,这个文件夹用来抓windows驱动端的包。

5. 创建一个新的文件夹“c:\awusb_trace”,并把tppfmt.exe放在这个文件夹下,这个文件夹用来抓AnywhereUSB设备本身的包。

开始抓包过程

1. 以管理员身份运行一个命令行终端,到C:\tracelog目录下,运行startawtrace,开始抓系统驱动端的包。

cd c:\tracelog
startawtrace

2. 再以管理员身份运行第二个命令行终端,telnet上AnywhereUSB,也就是在命令行执行

telnet a.b.c.d     这里a.b.c.d指AnywhereUSB设备的IP地址

然后在出来的AnywhereUSB终端窗口输入开启trace抓包

# set trace state=on mask=rusb:+*,usb:+*

为了得到抓包结果,还需要运行tppfmt.exe,切换到第一个命令行的终端

cd c:\awusb_trace
tppfmt

3.准备好wireshark抓包,点击捕获>选项,在默信出为的“输入”页面中选中连到内网的接口,在wireshark的过滤器上,输入host a.b.c.d(就是AnywhreUSB的IP地址),切换到“输出”,在捕获到永久文件里配置一个log文件的保存地址,然后点击开始按钮开始抓网络包。

4. 重现问题,现在所有的抓包都在后台运行着,可以开始制造问题了,使用平时会出现问题的操作,等到问题出现,再去停止抓包。

5。停止抓包,先回到tppfmt.exe的窗口,按ESC键停止抓设备端的包,

6. 然后再切到第一个命令行终端,到驱动端的抓包目录去停止驱动端抓包

cd c:\tracelog
stopawtrace

再切到wireshark程序,按下停止按钮。

7. 收集log包,现在c:\tracelog, c:\awusb_trace目录下都有.etl或.tld的抓包文件,连同wireshark的.pcap-ng,一共三个文件一起打包发给Digi研发。

8. 升级固件再次抓包。 如果您需要升级到最新固件,右以浏览AnywereUSB的web配置页面,里面有一个更新固件的选项,可以升到到最新固件后,重复上述步骤。 当前最新的固件是v1.95