Universal Plug and Play(UPnP)関連、Port 1900と5000って?

文書作成日 2002/8/25 最終更新日 2005/6/12

Universal Plug and Play(UPnP)について

 UPnP関連の問題で、UDPのport 1900でのトラフィックが起動時に勝手に生じることがあります。またコマンドプロンプトで[netstat -an]を実行しますと、port 5000がなぜかListeningに。

 UPnPは、ネットワークに接続するだけで(面倒な設定をせずに)すぐ利用できるような仕組みの機器のための、便利な(そして迷惑な)機能です。
 そしてSSDPはUPnPで利用するプロトコル。SSDPDSはUPnPのための相手を見つけるためのサービスです。
 UPnPとSSDPはそれぞれUDP 1900とTCP 5000のポートを利用します。
 Windows Meでは元々有効になっていませんけど、Windwos XPでは起動時に勝手にこれらのサービスが開始されます。

 このサービスは外部からのハッキングの恐れがあり、対策としてユニバーサル プラグ アンド プレイ (UPnP) に含まれる未チェックのバッファによりシステムが侵害される (MS01-059)のパッチがリリースされました。
 でもインストールしてもサービス自体は無効にはなりません(つまり勝手に起動することには変わりがないのです、謎)。
 文書番号ユニバーサル プラグ アンド プレイ サービスを使用するサービス拒否攻撃を防ぐ方法(JP315056)では、このパッチはデータ転送の相手を制御できるようになるだけみたいです(MS様、停止する方法を書いてください)。

 そしてなぜ起動時に、239.255.255.250へのUDP 1900のマルチキャストアドレスへのトラフィックが勝手に起きるのでしょう?
 Microsoftのサイトに、このような説明がありました。 
 

 UPnP コントロール ポイントが開始されると、ネットワークで利用可能なデバイスとサービスを検出するため、HTTPMU を通して SSDP 検索要求を送信できます。 

 
 そしてこのトラフィックは、ルーターからLANに接続しているパソコンへ送信され、送信元ポート1900・送信先239.255.255.250・送信先ポート1900として流れて、パーソナルファイアーウォールの警告に表示されてしまいます。

 Windows XPでこれらのサービスを無効化するには[コントロールパネル] - [管理ツール] - [サービス]を開き、[SSDP Discovery Service]と[Universal Plug and Play Device Host]を[無効]にします。
 これで[netstat -an]の結果から、TCP 5000が消えているはず、です。

 もちろん念のため、不要ならルーターのポートフィルタリング機能でUDP1900と5000のポートをふさいでおきましょう。

 UPnPを制御するためのツールと、UPnPのハッキング問題の情報は、こちら

ルーターとUPnP NAT Traversal

 ブロードバンドルーターには、[UPnP NAT Traversal]という機能が組み込まれていることがあります。これはグローバルIPアドレスとプライベートIPアドレスをうまく対応させてマッピングさせる機能です。Windows Messengerを使うひとにとっては、とっても役立つ機能でしょう。

 Windows Messengerなど、フレームのデータ部にIPアドレスなどを書き込むアプリケーションは、NAT利用時にルーターの内側からは利用できないこともあります。このような問題を解決する目的で、この機能が実装されているブロードバンドルーターが店頭に並ぶようになりました。
 もしこの機能を利用するひとは、UPnPを無効にしないようにオススメします♪

 関連項目
 Windows ME のユニバーサル プラグ アンド プレイ機能の概要
 http://support.microsoft.com/default.aspx?kbid=262458
 Windows XP のユニバーサル プラグ アンド プレイ(UPnP)
 http://www.microsoft.com/japan/windowsxp/pro/techinfo/planning/upnp/default.asp
トップページよくあるWindowsトラブルなどのトピック>Universal Plug and Play(UPnP)関連、Port 1900と5000って?

ご意見はフォームメールへ
This contents was written by tef_tef.