3D 프린터와 소프트웨어 간에 TCP를 통해 전송되는 데이터를 모니터링하는 데 문제가 있습니다.
USB 케이블을 통해 Raspberry Pi에 3D 프린터를 연결했습니다. 저는 rasbperry에서 ser2net을 사용하여 프린터에서 프린터 소프트웨어를 실행하고 있고 Rasperry와 동일한 네트워크에 있는 노트북으로 TCP를 통해 직렬 포트 데이터를 전달하고 있습니다. 내 노트북에서는 socat을 사용하여 Rasberry의 전달된 직렬 포트에서 데이터를 수신하는 가상 직렬 포트(ttyACM1)를 설치합니다. 지금까지는 훌륭하게 작동하고 있으며 노트북에 있는 소프트웨어를 사용하여 원격으로 프린터를 사용할 수 있습니다.
하지만 이제 소프트웨어에서 프린터로 전송되는 데이터를 모니터링하려고 할 때 문제가 발생합니다. 직렬 포트 데이터를 스니핑하기 위해 다른 소프트웨어를 사용해 보았지만 소프트웨어를 실행할 때마다 프린터 소프트웨어와 가상 직렬 포트 간의 연결이 끊어졌습니다.
그렇다면 가상 포트와 소프트웨어 간의 연결을 취소하지 않고 어떻게 소프트웨어를 동시에 사용하고 소프트웨어에서 프린터로 전송된 데이터를 스니핑할 수 있습니까?
이 설정에서 사용하는 명령과 소프트웨어는 다음과 같습니다.
존재하다산딸기프린터가 ttyACM0에 연결되었습니다.
*ser2net.conf:
3333:raw:0:/dev/ttyACM0:115200,8DATABITS,NONE,1STOPBIT,XONXOFF,RTSCTS
내랩탑:
$sudo socat pty,raw,echo=0,link=/dev/ttyACM1 tcp:10.1.1.107:3333
(ttyACM1->/dev/pts/30은 이제 /dev/에 나타납니다)
예를 들어 가로채려고 하면 다음과 같습니다.
$sudo interceptty /dev/ttyACM1
프린터 소프트웨어가 실행 중이고 데이터를 스니핑하는 경우 프린터 연결이 끊어졌음을 나타냅니다. 차단을 사용하여 ttyACM1에서 데이터를 계속 읽을 수 있습니다. 가로채기를 끄면 프린터를 다시 찾습니다.
프린터를 사용하는 동안 데이터를 스니핑하는 방법이 있나요?