【发布时间】:2016-05-10 10:59:03
【问题描述】:
Linux 支持虚拟can 接口。它由以下人员启用:
modprobe vcan
sudo ip link add dev vcan0 type vcan
sudo ifconfig vcan0 up
使用cam-utils 时,例如camsniffer 和cansend
cansend vcan0 321#1212
cansniffer vcan0
我可以看到罐头数据包;但仅在同一主机内。我试过 Ubuntu VirtualBox 机器。来宾和主机操作系统都使用主机专用适配器vboxnet0 互连。
还尝试了 SocketCAN socket(PF_CAN, SOCK_RAW, CAN_RAW),但无法在其他机器上接收(在同一台机器上工作)尝试使用广播管理器 socket(PF_CAN, SOCK_DGRAM, CAN_BCM) 执行 stderr 时说“不支持操作”
简单地说,可以在 Linux 主机之间发送和接收 CAN 数据包吗?它的虚拟机(vboxnet0)或物理连接(以太网)无关紧要。
注意:我分别使用 Ubuntu 16.04 和 12.04 作为主机和来宾操作系统。
【问题讨论】: