Linux は仮想缶インターフェースをサポートしています。それは以下によって有効にされました:
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 マシンを試しました。ゲスト OS とホスト OS は、ホストオンリー アダプターを使用して相互接続されます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 をそれぞれホストとゲスト OS として使用しました。