質問
これは、ツールを使用してX Windowのプロトコルを追跡することは可能ですか?私は、wiresharkのは、ホストに、このようなアイデアは良いフレームワークだと思いましたが、サポートはありませんようです。何がこの目標を達成するために行われるべき?
解決
WiresharkののないのXウィンドウプロトコルを分析する能力を有する。
しかし:あなたは、最初のWiresharkのは、それを分析することができます前に、X-クライアント(アプリ)とX-Serverの間の実際のXウィンドウ・トラフィックをキャプチャできるようにする必要があります。
。 アプリ(X-Windowsクライアント)とX-Windows Serverの両方のローカルマシン上で実行している間にX-Windowsのトラフィックは、おそらく「UNIXドメインソケット」クライアントとサーバの間の直接のプロセス間通信(IPC)を行うにはを使用しています。そこ使用なし基本的なネットワークプロトコルはませんので、トラフィックは、Wiresharkのことで解剖)のために(私の知る限り)捕捉ではありません。
私はXを扱ってきましたが、私は基本的に必要とされるのはX-Serverは、サーバーがためにリスニング(と受け入れる)ネットワーク接続をされるようなボックス上で実行されているということだと思いますので、これは、しばらくしています。リモート・ノード上のXCLIENTアプリ(またはローカル・ノードが?)それから、ネットワークを介してXサーバに接続している場合、あなたはその後、Wiresharkので解剖のために、そのトラフィックをキャプチャすることができるようになります。
Xが複雑になっています。あなたがXを実行しているの詳細に慣れていない場合は、いくつかの読書をするか、または追加情報を求める必要があります。私は長い間Xに関連する詳細を空白にしました。
他のヒント
これはstrace
を使用してUnixソケットを通過するX-ウィンドウのプロトコルをキャプチャするために原理的には可能です。そして、それはWiresharkを使ってtext2pcap
ためにこのパケットをラップすることが可能である。
例:
とUNIXソケットにPID 1998とX-サーバーに行くキャプチャXウィンドウプロトコルフレームファイルディスクリプタ41:
bash$ sudo strace -e trace=read,write -e read=41 -p 1998 2>&1 | grep '^[ ]|' >/tmp/xdata.log
Wiresharkのためにキャプチャされたデータを準備します:
bash$ text2pcap -T 1234,6000 /tmp/xdata.log /tmp/xdata.dump
これで1が/tmp/xdata.dump
上のwiresharkを使用することができます。
戻る80年代には、サーバとクライアントの間に配置されるだろうプロキシプログラムあるXwindowオープンソースがありました。これは、メッセージの種類、または各方向に渡すデータの量をカウントするために「C」、容易に変更可能で書かれていました。また、人々が割り込みハンドラで間違った関数を使用する場合しまう不正なXprotocolを認識しました。 私は名前を覚えて、多分「あるXwindowプロキシ」かもしれないのヘルプ...
で検索することができません私は、X Windowのプロトコルが何であるかわからないんだけど、あなたは、WiresharkのためのLuaの解剖を作ることができます: