- ベストアンサー
UPnPのNAT越えの仕組みが分からない
通常、外部からルータに届いたパケットはNAT設定にしたがってプライベートIPへ変換されると理解しているのですが、UPnP対応ルータとWinXP使用環境下ではポート解放していなくても外部からのアクセスが可能と聞きます。 その仕組みがどうしても理解出来ません。 ルータに届くパケットには宛先としてグローバルIPとポート番号が記述されているのが普通と思いますが、ルータに複数のクライアントがぶら下がっているとして一体どうやって目的のプライベートIPアドレスを探し出してパケットを転送するのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
UPnP環境ではまず、ルーターがブロードキャストで、UPnP対応である自分の存在をネットワーク全体に知らせます。(TCP Monitor Plusあたりのソフトで見るとわかります。ルーターのアドレスから、頻繁にブロードキャストをしています。) そして、そのパケットを受け取ったUPnP対応のOS(WinXP等)は、自分の上で動いている、外部からのアクセスを受ける必要のあるソフト(MSN Messenger等)を検出し、自分のLAN用IPアドレスとともにUPnPルーターに通知します。 こうすることで、ルーターはWANの特定ポート宛に入ってきたトラフィックを、LAN内の特定のマシンの特定ポートに転送する仕組みをつくり、外部からのアクセスがLAN内のマシンで受けられるようになります。 本来なら手動でするはずの“ポート開け”の作業を、PCのOSとルーターが協力して、自動的にできるようにした仕組みがUPnPです。
その他の回答 (1)
- fireghl
- ベストアンサー率43% (27/62)
回答No.1
簡単に言うと、ルータが自動で一時的にポートフォワーディングの設定をしてくれるということです。
お礼
わかりやすい説明ありがとうございました。 お礼が遅れて申し訳ありませんでした。