- ベストアンサー
IPアドレスの取得
いつもお世話になっております。 LAN上でIPアドレスを取得するとそのホストのローカルIPを取得しますよね。 そうではなくルーターのWAN側のグローバルIPを取得したいのですがなにか方法があるのでしょうか???
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
J2EEのjavax.activationのパッケージを使えばURLからOutputStreamでMIMEパッケージされたストリームデータがサーバから取得できます。 その中のcontenttypeがtext/htmlの物をStringオブジェクトとしてキャストしてindexofで検索したらどうでしょう? 詳しくはJAVADOCを見てくださいね
その他の回答 (2)
- stsu
- ベストアンサー率62% (83/132)
回答No.2
WAN側とはインターネット環境のことでしょうか? そうだとしたら、診断サイトを利用するのが最も 簡単ですね。 いくつかサイトは存在しますが、そのうちの1つ を参考URLで紹介します。 → 左側の「診断くん」をクリックすると実際に 接続しに来た場所(例えば相談者の自宅等) の情報を見ることが可能です。
- Te-Sho
- ベストアンサー率52% (247/472)
回答No.1
一番簡単な方法はルーターのステータス画面のURLに対してHTTPリクエストを出して、そのHTTPレスポンスのHTMLから任意のIPアドレスを取得する方法でしょうか? ルーターによって設定画面が違うのでルーター個別になってしまうとは思いますが。
質問者
補足
さっそくのご回答ありがとうございます HTTPリクエストを出すということは GETでリクエストをしてルーターのリソースレスポンスを取得して、そのレスポンスの中からIPアドレスらしきものを、正規表現等でとってくるというイメージでよろしいのでしょうか?
補足
回答ありがとうございます。 少し説明不足でせた。。。 プログラミング上で取得したいのですが。。 たとえばInetAddressクラス等を使用すると実行したマシンのIPアドレス、つまりローカルIPアドレスを取得するので、どうしたらグローバルIPを取得できるのかなと思ったもので。。。