UPnP実現の例

UPnP実現の例

UPnPの目的は、ネットワーク機器同士を簡単に接続して利用できるようにするというものです。これまで前回説明してきましたが、例えばTCP/IPを利用して接続する場合、お互いの通信に必要なネットワークを決め、適切なIPアドレスを振り、その上で適切なプロトコルを使って通信するという面倒な手順になります。

大きな目的は以下の2つになります。

・ネットワーク機器を簡単に接続できるようにする。
・特定のネットワークに依存しない構造とする。

代表例としてIGD(Internet Gateway Device)を簡単に動作を説明します。IGDとは要するにUPnP対応のブロードバンドルータのことです。

まずIGDと各UPnPクライアントは、お互いにSSDP(Simple Service Discovery Protocol)と呼ばれるプロトコルを使い、各々の存在をLAN内に通知します。これを受けてお互いの存在を確認するとともに、必要ならばIPアドレスの割り当てをお互いに実施します。同時にIGDは、上位にあたるインターネットプロバイダーからWAN側のIPアドレスを取得します。これらの手順は原則として完全に自動です。

一度設定が終ったら、あとはクライアントからのインターネットアクセスは、IGD内のNATの機能を使ってインターネットにアクセスできるようになります。このあたりは別に普通のブロードバンドルータと変わりありません。