2011-03-21 54 views
3

私はWebアプレットからデフォルトゲートウェイのIPアドレスとMACアドレスにアクセスする方法を見つけようとしていますが、これは可能でしょうか?javaでデフォルトのゲートウェイのIPアドレスとMACアドレスを取得できますか?

+2

より良い質問は、「あなたはどちらかを知ることによって達成できると思いますか?」です。おそらく(無言の)目標が何であれ達成するためのより良い戦略があります。 –

+0

これはあなたを助けるでしょうhttp://stackoverflow.com/q/11930/329637 – RoflcoptrException

答えて

0

IPアドレス?確実なこと。アプレットをサーバーに接続し直してください。アプレットはホストしているサーバーへのhttp接続を開くことができます。

たMACとデフォルトGWは、外部のプログラムを経由して得ることができるシステム固有のものですが、私はそれらが(実際には、彼らはおそらくサポートされていない)アプレットのサンドボックスでサポートされている100%わかりません。

1

あなたはgetting the SSID on a Wifi networkのように、Javaでの事のようなものを行うことはできません。この低レベルのハードウェア情報は、クロスプラットフォームでJavaで取得することはできません。Javaでは、トランスポート(TCP)レベルでのみ使用することができます。

あなたがこの種の情報が必要な場合は、Runtime.getRuntime().exec(...)を使用して、出力を解析するOSコマンド・ツールを起動してみてください。しかし、異なったOSを扱わなければならないということは、異なるコマンドツールと出力を意味します。

しかし、アプレットの世界では、OSコマンドツールを起動することも、ファイルを開くこともできません。アプレットがユーザコンピュータの危険にさらされる可能性のある低レベルのタスクを実行できないようにしています。

あなたがアプレットに署名する場合は、通常のデスクトップアプリケーションのように同じ操作を実行する権限を持っているが、これは範囲外です。

問題を別の方向に集中させてください。

1

java.net.NetworkInterfacehttp://download.oracle.com/javase/6/docs/api/java/net/NetworkInterface.html#getHardwareAddress())のメソッドを使用して、JavaのインターフェイスのMacアドレスを取得できます。私はそれがアプレットの内部で動作するかどうかは確かではありませんが、私は自分自身でそのメソッドをテストしたことはありませんが、何かがあった場合、このメソッドはそれです。

関連する問題