{
  "added_at": "2026-11-09",
  "category": "protocol-analysis",
  "description_en": "Record, filter, compare and replay SocketCAN traffic with tools for raw CAN, ISO-TP and J1939 analysis.",
  "description_zh": "使用面向原始 CAN、ISO-TP 和 J1939 分析的工具，记录、过滤、比较及重放 SocketCAN 流量。",
  "entry_url": "https://awesomerea.org/resources/can-utils/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/can-utils/",
  "evidence_url": "https://github.com/linux-can/can-utils/blob/834ceef1f1eabec67625389172eebf1050d2f42b/README.md",
  "group": "tools",
  "id": "can-utils",
  "json_url": "https://awesomerea.org/resources/can-utils/record.json",
  "kind": "tool",
  "markdown_url": "https://awesomerea.org/resources/can-utils/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/can-utils/index.md",
  "name": "can-utils",
  "name_zh": "can-utils",
  "record_type": "resource",
  "relationship": "foundation",
  "requirements": [
    "Needs the Linux SocketCAN subsystem and an appropriate CAN or virtual-CAN interface. The project documents native Linux and cross-compiled Android/Raspberry Pi builds using CMake.",
    "candump and cansniffer expose frames and changing bytes; they do not infer proprietary signal semantics. ISO-TP and J1939 commands additionally depend on the corresponding kernel support."
  ],
  "requirements_zh": [
    "需要 Linux SocketCAN 子系统及合适的 CAN 或虚拟 CAN 接口。项目说明了使用 CMake 的 Linux 原生构建及 Android／树莓派交叉编译。",
    "candump 和 cansniffer 显示帧及变化字节，不负责推断专有信号语义。ISO-TP 和 J1939 命令还依赖相应的内核支持。"
  ],
  "targets": [
    "protocol"
  ],
  "url": "https://github.com/linux-can/can-utils",
  "verification": "source-reviewed",
  "verified_at": "2026-10-29"
}
