4

私は、私と似たような質問をたくさん閲覧してきました: 人々は、100% 確実に自分の外部 IP アドレス (インターネット接続を要求したときに ISP から割り当てられたもの) を知りたがっています。これらの質問に対する最も具体的な答えは次のとおりです。Web サービスに問い合わせない限り、自分のインターネット IP アドレスを知ることはできません。

ルーターがそれを知っているのはなぜですか?私は、それが ISP 自体から取得され、「書き留められた」ことを期待しています。

それで、私の質問は次のとおりです。すべてのルーター間で、その情報 (つまり、ISP によって署名された私の IP アドレス) を渡すように依頼する普遍的で標準化された方法はありますか? COM の相互運用性や、アンマネージ コードで呼び出す何かが含まれていてもかまいません。

詳しく説明すると、ISP から割り当てられた 100% 正確な IP アドレスを取得する方法が必要です。つまり、その 1 つのアドレスだけが必要です。他のインターフェイスやその他のアドレスのリストではありません。これを達成することが不可能だとは本当に信じがたいです。

編集:申し訳ありませんが、他の質問は私が尋ねたこととは何の関係もありません. ルーターに、パブリック IP を照会するための何らかの標準 API があるかどうかを尋ねていました。これらの答えのいずれかが私の質問に対する答えであることがわかりません。


解決済み:そのような基準があります。WANIPConnection と呼ばれる UPnP 標準です。GetExternalIPAddress という「アクション」があります。ただし、C# プログラムから使用するのは非常に難しいようです。しかし、私は自分の質問を編集しているので、将来それを読んだ人なら誰でもその答えがYESであることがわかります. UPnP フォーラムhttp://www.upnp.org/へのリンクは、これをさらに追求したい場合に備えてあります。このオープン ソース プロジェクトhttp://opentools.homeip.net/dev-tools-for-upnpもあります。この最後のプロジェクトには多くの小さなソフトウェア (ツール) があり、すべてのソース コード (C または C++ で記述) が利用可能です。私はそれほど頭がよくないので、自分の問題を解決する方法を理解できませんでしたが、もう一度、誰かがこれをさらに追求したい場合は、

4

0 に答える 0