在 Linux 上嗅探串行端口

在 Linux 上嗅探串行端口

如何在Linux上嗅探通过串行端口传输的数据包?

答案1

有以下几种选择:

  • 瑟斯尼夫是一个在两个串行端口之间建立隧道/嗅探的简单程序。

  • 串行到网络代理 (ser2net)为用户提供一种从网络连接到串行端口的连接方式。

  • 串口间谍充当串行直通设备。它监听两个串行端口上的传入数据并将其转发,这样设备就像直接连接一样。它还会在数据通过端口时记录数据。

  • 服务端是符合 RFC 2217 标准的串行端口重定向器。它允许您通过网络共享串行端口。它基于 sredird。RFC2217 协议是 telnet 的扩展,允许更改通信端口参数。

  • 驅逐是一款用于检查串行线路上传输的数据的 KDE 应用程序。它可以用作二进制终端,通过定义的端口(点对点模式)发送和接收数据,并在单独的视图上显示这些数据。每个视图都可以配置为以十六进制、十进制、八进制、二进制和原始 ASCII 显示数据。还可以通过终端仿真视图执行 I/O,定义辅助端口并使用“Y”型电缆(监听模式)监控两个外部主机之间的流量。

  • 零调制解调器创建伪终端的虚拟网络。它可以用作适配器来连接两个通常需要串行接口卡的程序。

  • ttywatch监控、记录和多路复用终端 I/O。它内置了完整的日志轮换,并且可以使用 telnet 以及本地 TTY 端口。

  • 串行线路嗅探器(slsnif) 是一个串行端口日志记录实用程序。它监听指定的串行端口并记录通过此端口的所有双向数据。

答案2

我试过截取复制到 GitHub),并成功使用它。首先我在感兴趣的端口上运行它:

interceptty /dev/ttyACM0 

然后我将被测程序连接到/dev/pts/5Interceptty 创建的伪终端。


我尝试使用slsnif,但是我发现出现了错误:

Failed to open a pty: No such file or directory

此邮件列表项目表示 slsnif 仅支持“传统”伪终端(/dev/ttyp0等),当前 Linux 内核可能未使用这些伪终端。

答案3

尝试使用气动马达(Debian 打包)或slsniff。请注意,slsniff 使用已弃用的终端仿真模型。

相关内容