2012-05-02 7 views
0

java-eeの中でどのように私たちのシステムで送受信しているパケットヘッダ(source_IP、destination_IP、Source_Port、Destination_Portのみ)の詳細をソケット経由で得ることができますか? ブラウザを開くたびにそして222のパケット転送は、すべて222 source_IP Destination_ip source_port DESTINATION_PORT 192.168.5.10 64.34.119.12 2121 2929 の詳細を行なわれるならば、私たちのjava-EEプログラムの出力は よう休耕くるようwww.stackoverflow.com など任意のサイトを開きます64.34.119.12 192.168.5.10。 。
。 。 。 。 。 。 。 。 など...javaソケットとウェブプログラミング

+0

質問が不明です。 –

+0

詳細をご説明ください。http://stackoverflow.com/faq#howtoask –

+0

これはあなたを助けるかもしれませんhttp://stackoverflow.com/questions/2642487/how-can-you-access-the-packet-information -in-a-jpcap-packet –

答えて

0

はい、任意のマシン上の特定のインターフェイスを経由しているすべてのパケットをキャプチャすることができます.Wiresharkなどのツールがあります。オープンソースなのでソースを見ると、あなたがそれらのうち、必要なものを選ぶ:)

+1

WiresharkはJavaでプログラミングされていません – Andreas

0

ソケットが2台のマシン間のエンドポイント通信であるようないくつかのライブラリの助けを借りてすることができます。 サーバソケットを使用すると、宛先IPとポートを取得できます。 クライアントビューでも、ソースIPを取得することはできません。ポート。使用しているポートだけがあなたのサーバーに接続しています。

0

私が知る限り、あなたは普通のjavaでこれを行うことはできません。 Javaでは、ソケット経由でポイントツーポイント接続のみが可能です。すべてのパケットをキャプチャするには、ネットワークカードもプロミスキャスモードでなければなりません。普通のjavaではこのモードに切り替えることもできません。あなたはRMIを使ってネイティブコードを呼び出すことができますが、あなたはプラットフォームに依存しています。