4

デバイスの IP アドレスを Web ブラウザに入力してアクセスするユーザー コントロールが組み込まれたハードウェアがあります。デバイスは、x-over イーサネット ケーブルと静的 IP を介して PC に直接接続されています。デバイスの制御を C# アプリケーションに統合する必要があります。

私が考えたのは、パケット スニファーを使用して PC とデバイス間のトラフィックを監視すると同時に、Web ブラウザーでデバイスのコントロールを操作することでした。次に、PC が送信しているパケットが、その時点で使用しているコントロールに対応していることを確認します。次に、C# アプリケーションで HTTP または TCP パケットのクラスを作成し、Socket クラスを使用してそれらをデバイスに送信します。

しかし、私はネットワーク プロトコルの経験があまりないため、Wireshark を使用して PC とデバイス間のトラフィックを監視しているときに、どのパケットが何を行っているかを調べるときに、どこから始めればよいかわかりません。誰にもアイデアはありますか?私は何に対してもオープンです。ありがとう!!

編集:私のデバイスが何であるかを正確に説明するのは難しいですが、基本的には精巧なセンサーであり、通常は産業用アプリケーションで使用されるため、私がある程度慣れているModbusを使用している可能性があります. パケットを調べて、どのプロトコルが使用されているかを知る方法を知っていますか? (Wireshark を使用して) PC からデバイスに送信されるパケットが 1 つの HTTP パケット、次に 5 つの TCP パケットのパターンで発生し、ブラウザでコントロールが開いている限り同じシーケンスが繰り返されることに気付きました。何が起こっているのかをよりよく理解できるリソースはありますか?

4

2 に答える 2

3

これがブラウザ制御の場合、私の最初の考えは、デバイスがブラウザに送信するWebページを調べて、コントロールを操作するときにブラウザが何をするように指示されているかを確認することです。これは、Wiresharkをいじるよりもはるかに簡単なようです。

これを不可能にする何かが欠けていますか(Flashベースの制御システムなど)?HTMLまたはJavascript、およびHTML POSTメッセージまたはAjaxのようなもう少し洗練されたもので行われた場合、インターフェースの作成は比較的簡単です。

于 2010-09-16T15:57:13.977 に答える
2

デバイスに応じて、modbus プロトコルのバリアント ( http://en.wikipedia.org/wiki/Modbus ) を使用するか、あいまいで独自のものを使用します。

最善の方法は、パケットの類似性を認識できるまで、同じコマンドをデバイスに何度も送信し続けることです。

専有の場合は、おそらくコマンド/データ ペアまたは XML BLOB のような単純なものになります。本当に運が悪い場合は、圧縮またはエンコードされますが、ゲームやキャッシュ マシンをハッキングしている場合を除き、これはほとんどありません。

多くの場合、デバイスの製造元に仕様を提供できるかどうかを尋ねます。

于 2010-09-16T15:10:16.253 に答える