いつも参考にさせていただいています。
さて、質問ですが、ADSL等回線のブロードバンドルータに繋いだLAN側PCからWAN側のIPアドレスを取得する方法がないでしょうか。
どなたか、ご教授お願いします。
UPnP対応のルータであれば、NAT Traversal APIを使ってWAN側のグローバルIPアドレスをLAN内のパソコンで取得できるようです。
ただ、このAPIをデフォルトで使えるのはWinXPだけで、WinMe と Win98ではWinXPのCDからインストールしなければ使えません。そして、残念ながらNAT Traversal は、Win 2000ではサポートされません。
IPを返すMailサーバーにHelloコマンドを渡すと返り値として
テキストで接続IPなどを返してくれます。
メールを送るという行為の中で行えるのでインフラ面のモラルの問題もないと思います。
汎用性を持たせるためにはSMTPサーバーと同等の仕組み(DNSLookup)が必要になります。
自分がメールアドレスを持っているPopサーバーが対応しているのなら
メールチェックのインフラでIPが取得できるはずです。
又無難なHttpを利用して
確認君
http://www.ugtop.com/spill.shtml
又は
http://www.ugtop.com/i/i-spill.shtml
のように継続的にあるサイトの返り値を利用する方法や
自分の管理する外部のCGIでIPと時間だけ返す方法などは
頒布用ソフトでのIP取得に関してはモラル面でも問題ない方法だと思います。
又UPnPを使っていない環境で
Httpコンポーネントでルーターの内部にアクセスして
特定タグ内のテキストからIPを取り出すという方法も
けっこう手間だけど無難な方法ではないでしょうか。
ツイート | ![]() |