ポートに記録されたパケットを監視できるポート監視ツールはありますか?特にJavaで書かれたプログラムが有効であることを確認したいので、私の小さなアプリケーションがポートにメッセージを書き込んでいることを確認するためのツールが必要です。どうすればいいですか?
ベストアンサー1
ソカット(ほぼ)すべてを(ほぼ)すべてに接続するツールです。ティーストリームをコピーできます。ユースケースでは、シリアルポートを/dev/ttyS0
PTYに接続し/tmp/ttyV0
、アプリケーションをPTYとして指定してtee
観察できるどこかにsocatの入出力を配置できます。
Google検索「socatシリアルポートptyティーデバッグ」は、いくつかの「標準プログラム」の例を示します。そのうちの1つは次のとおりです。
socat /dev/ttyS0,raw,echo=0 \
SYSTEM:'tee in.txt | socat - "PTY,link=/tmp/ttyV0,raw,echo=0,waitslave" | tee out.txt'
これらのファイルにはキャプチャされたデータが含まれin.txt
ます。out.txt
コメント後の更新:
socat
一見すると構文が混乱しているように見えますが、実際には2つの入れ子になったドアだけです。
このように強力で汎用性の高いツールに支払うのは小さな価格です。- シリアルポートを設定したり別のioctlを送信する必要がある場合は、socatがそれをプロキシできないため、socatを呼び出す前にこれを実行してください。
- 2006年の単一目的ツールは
interceptty
少し簡単な構文を持っていますが、TTY(ioctlsをプロキシしている間)だけを傍受することができ、パッケージマネージャにはないかもしれません。 (ほとんどのLinuxディストリビューションは追加したことがない彼らの倉庫に。 )