JP3803654B2 - LAN間接続装置及びそのUPnPデバイス公開方法 - Google Patents
LAN間接続装置及びそのUPnPデバイス公開方法 Download PDFInfo
- Publication number
- JP3803654B2 JP3803654B2 JP2003142764A JP2003142764A JP3803654B2 JP 3803654 B2 JP3803654 B2 JP 3803654B2 JP 2003142764 A JP2003142764 A JP 2003142764A JP 2003142764 A JP2003142764 A JP 2003142764A JP 3803654 B2 JP3803654 B2 JP 3803654B2
- Authority
- JP
- Japan
- Prior art keywords
- url
- upnp
- http
- processing unit
- lan
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 30
- 238000012545 processing Methods 0.000 claims description 125
- 238000012546 transfer Methods 0.000 claims description 63
- 230000004044 response Effects 0.000 claims description 37
- 238000010586 diagram Methods 0.000 description 21
- 238000004891 communication Methods 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Description
【発明が属する技術分野】
本発明はLAN(Local Area Network)をWAN(Wide Area Network)に接続するLAN間接続装置に関する。特に、本発明は、LAN側のUPnP(Universal Plug and Play)デバイス情報をWAN側に公開するUPnPデバイス方法公開に関する。
【0002】
【従来の技術】
従来の通信中継装置では、WAN側端末が通信中継装置に対してLAN側端末のサービス情報のリストをリクエストし、指定したサービス情報をリクエストし、指定したサービス情報に含まれるポート番号を用いたURLによりHTTPリクエスト行い、HTTPリクエストを受信した通信中継装置ではNAT変換テーブルでアドレス変換をしてポート番号に対応するLAN側端末のIPアドレス、ポート番号を取得してWAN側端末から送信されたIPパケットのリダイレクトを行っている(例えば、特許文献1参照。)。
また、従来の機器制御装置では、サーバとデジタル機器とがUPnPインタフェースで接続されるものもある(例えば、特許文献2参照。)。
【0003】
【特許文献1】
特開2002−141954(段落0092〜0106、図10)
【特許文献2】
特開2003−022225(段落0016、図1)
【0004】
図13は本発明の前提となるネットワークの概略構成であり、WAN側ホストがLAN側ホストにアクセスする例を説明する図である。なお、全図を通して同一の構成要素には同一の番号、符号を付して説明を行う。
本図に示すように、区間α側のLAN側ネットワーク101と区間βのWAN側ネットワーク102に分けられ、LAN側ネットワーク101はローカルネットであり、WAN側ネットワーク102はインターネットを含むグローバルネットであり、Webサービスを使用して情報の公開を可能にする。
【0005】
LAN側ネットワーク101上には複数のホストA、Bで示すUPnPホスト103が接続され、UPnPホスト103はパーソナルコンピュータ、ネットワーク家電製品等を含むUPnPデバイスであり、プライベートIP(Internet Protocol)アドレスが用いられるホストである。
WAN側ネットワーク102上に複数のホストX、Yで示すようにWAN側ホスト104が存在し、WAN側ホスト104はHTTP(Hypertext Transfer Protocol)が使用可能でグローバルIPアドレスが用いられるホストである。
【0006】
区間α側のLAN側ネットワーク101と区間β側のWAN側ネットワーク102との間にホストRで示すLAN間接続装置105が接続され、LAN間接続装置105はUPnPホスト103をWAN側ホスト104に接続する。
図14は図13におけるLAN間接続装置105の概略構成を示すブロック図である。本図に示すように、LAN間接続装置105にはLANポート201、WANポート202が設けられる。
【0007】
LANポート201はLAN間接続装置105に1つ以上存在し、LAN側ネットワーク101でパケットの送受信を行う。
WANポート202はLAN間接続装置105に1つ以上存在し、WAN側ネットワーク102上でパケットの送受信を行う。
LANポート201とWANポート202の間には転送パケット処理部203が設けられ、転送パケット処理部203はポート変換を含むNAT(Network Address Translation)セッションテーブル211を有する。
【0008】
インターネット上では、相互に、URL(Uniform ResourceLocator)を用いてHTTP要求を行い、該当するHTMLデータを送信することが可能である。
一方、UPnPホスト103からは、LAN間接続装置105のNATセッションテーブル211でプライベートIPアドレスをグローバルIPアドレスに変換して、WAN側ホスト104へURLを用いてHTTP要求を行い、WAN側ホスト104からUPnPホスト103へ該当するHTMLデータを送信することができる。
【0009】
他方、WAN側ホスト104からは、UPnPホスト103へURLを用いてHTTP要求を行うことはできない。UPnPホスト103がグローバルIPアドレスを持たず、WAN側ネットワーク102上に存在しないためである。
しかし、UPnPホスト103がHTTPを使用することが可能である場合には、WAN側ホスト104からUPnPホスト103にURLを用いてHTTP要求を行い、UPnPホスト103からHTMLデータを得ることができれば非常に便利である。
【0010】
【発明が解決しようとする課題】
しかしながら、上記従来技術のように、WAN側ホスト104からUPnPホスト103にURLを用いてHTTP要求を行い、UPnPホスト103からHTMLデータを得ようとすると複雑な処理を行う必要があるという問題点がある。
【0011】
したがって、本発明は上記問題点に鑑みて、WAN側ホスト104からUPnPホスト103にURLを用いてHTTP要求を行い、UPnPホスト103からHTMLデータを容易に得られるようにできるLAN間接続装置及びそのUPnPデバイス公開方法を提供する。
【0012】
【課題を解決するための手段】
本発明は前記問題点を解決するために、HTTPが使用可能である複数のUPnPデバイスが接続されるLAN側ネットワークと複数のWAN側ホストが接続されるWAN側ネットワークとを接続するLAN間接続装置において、前記UPnPデバイスの各々に対して、前記LAN側ネットワーク上で使用可能なHTTP要求の制御用URLと、前記WAN側ネットワーク上で使用可能なHTTP要求の公開用URLを生成するUPnP処理部と、前記UPnPデバイスの各々について前記UPnP処理部により生成された前記制御用URLと前記公開用URLを対にして保存するUPnPデバイス情報データベースと、前記UPnPデバイス情報データベースを参照して前記WAN側ホストからのHTTP要求のURLが公開用URLと一致する場合、HTTP要求に対してNAT処理を追加し、公開用URLを制御用URLに書き換え、書き換えられた制御用URLのHTTP要求を前記UPnPデバイスに転送し、前記UPnPデバイスからのHTMLデータのHTTP応答に対してNAT処理を行い、前記WAN側ホストに転送を行う転送パケット処理部とを備えることを特徴とするLAN間接続装置を提供する。
【0013】
この手段により、WAN側ホストからUPnPデバイスにURLを用いてHTTP要求を行い、UPnPデバイスからHTMLデータを容易に得られ、UPnPデバイスを公開することが可能になり、UPnPデバイスが動的なIPアドレスであってもWAN側ホストからのアクセスを容易にする。
さらに、前記転送パケット処理部と前記UPnPデバイス情報データベースにはHTTP処理部が接続され、前記HTTP処理部は、前記UPnPデバイス情報データベースを参照して、公開用URLのリストをHTMLデータとして形成し、さらに、公開用URLが不明であった内容をHTMLデータとして形成し、前記WAN側ホストから公開用URLのリストを要求するHTTP要求が前記LAN間接続装置にあった場合、前記WAN側ホストから前記LAN間接続装置への公開用URLが不明である場合、前記転送パケット処理部は前記HTTP処理部からHTMLデータをそれぞれ取得し前記WAN側ホストへ応答を行う。
【0014】
この手段により、前記WAN側ホストが公開用URLを知らなくても、公開用URLの間違いがあり不明であっても、WAN側ホストからUPnPデバイスにURLを用いてHTTP要求を行い、UPnPデバイスからHTMLデータを容易に得られ、UPnPデバイスを公開することが可能になる。
さらに、前記WAN側ホストからのHTTP要求のURLが公開用URLと一致する場合の前記転送パケット処理部のNAT処理時に該当するUPnPデバイスに対してチェックフラグをONにし、前記UPnPデバイスからのHTTP応答に対してチェックフラグがONになった前記UPnPデバイスから該当するUPnPデバイスを検索してNAT処理を行う。
【0015】
この手段により、チェックフラグをONとして、HTTP応答処理を限定し、処理速度を高める。
さらに、前記転送パケット処理部は、前記UPnPデバイスからのHTMLデータのHTTP応答にハイパーリンクとして制御用URLが埋め込まれている場合、前記UPnPデバイス情報データベースを参照して、埋め込まれた制御用URLを公開用URLに書き換える。
【0016】
この手段により、UPnPデバイスからの付加情報がWAN側ホストに公開可能になる。
さらに、前記転送パケット処理部は前記制御用URLのドメイン名を前記UPnPホストのIPアドレスとし、前記公開用URLのドメイン名、ディレクトリ名をそれぞれ前記LAN間接続装置のドメイン名、前記制御用URLとする。
【0017】
この手段により、制御用URLと公開用URLの形成が容易になる。
さらに、前記公開用URLのドメイン名であるLAN間接続装置のドメイン名と前記公開用URLのディレクトリ名である制御用URLとの間にドメイン名として使用されない区切りキャラクタを入れる。
この手段により、LAN間接続装置のURLと公開用URLとの区別することが可能になる
【0018】
さらに、前記転送パケット処理部は書き換えられた制御用URLの前記UPnPデバイスにHTTP要求を転送する前にセキュリティのチェックを行う。
この手段により、UPnPデバイスへの通信をすべてLAN間接続装置が一度受信しているので、UPnPデバイス側でセキュリティ機能を有していなくてもセキュリティの制御が可能になる。
【0019】
さらに、本発明は、HTTPが使用可能である複数のUPnPデバイスが接続されるLAN側ネットワークと複数のWAN側ホストが接続されるWAN側ネットワークとを接続するLAN間接続装置のUPnPデバイス公開方法において、前記UPnPデバイスの各々に対して、前記LAN側ネットワーク上で使用可能なHTTP要求の制御用URLと、前記WAN側ネットワーク上で使用可能なHTTP要求の公開用URLを生成する工程と、前記UPnPデバイスの各々について生成された前記制御用URLと前記公開用URLを対にして保存する工程と、保存した前記制御用URLと前記公開用URLの対を参照して前記WAN側ホストからのHTTP要求のURLが公開用URLと一致する場合、HTTP要求に対してNAT処理を追加し、公開用URLを制御用URLに書き換え、書き換えられた制御用URLのHTTP要求を前記UPnPデバイスに転送する工程と、前記UPnPデバイスからのHTMLデータのHTTP応答に対してNAT処理を行い、前記WAN側ホストに転送を行う工程とを備えることを特徴とするLAN間接続装置のUPnPデバイス公開方法を提供する。
【0020】
この手段により、上記発明と同様に、WAN側ホストからUPnPデバイスにURLを用いてHTTP要求を行い、UPnPデバイスからHTMLデータを容易に得られ、UPnPデバイスを公開することが可能になり、UPnPデバイスが動的なIPアドレスであってもWAN側ホストからのアクセスを容易にする。
【0021】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して説明する。
図1は本発明に係るLAN間接続装置の概略構成を示すブロック図である。本図に示すように、図14と比較して、LAN間接続装置105にはUPnP処理部204が設けられ、UPnP処理部204はLANポート201に接続され、UPnPホスト103のコントロールポイントとして機能し、LAN側ネットワーク101上に存在するUPnPホスト103を検出し、LANポート201で受信したパケットからUPnPホスト103のデバイス情報を自動的に収集し、デバイス情報の学習を行う。
【0022】
ここで、LAN側ネットワーク101のUPnPホスト103の各々では、HTTPが使用可能であり、さらに、LAN側ネットワーク101上で使用可能で、WAN側ネットワーク102では使用できない制御用URLを有し、相互にHTTP要求を行い、HTTP応答としてHTMLデータを送信している。
UPnP処理部204のデバイス情報の学習では、UPnPホスト103の制御用URL、LAN間接続装置105のURLから公開用URLを後述するように生成する。公開用URLはWAN側ネットワーク102上で使用可能であり、UPnPホスト103では使用できない。
【0023】
UPnP処理部204にはメモリであるUPnPデバイス情報データベース205が接続され、UPnPデバイス情報データベース205ではUPnPデバイス情報データベース205により収集されたデバイス情報、学習されたデバイス情報を含むデータベースを書き込み、保存する。
転送パケット処理部203にはHTTP処理部206が接続され、HTTP処理部206は、UPnPデバイス情報データベース204と、転送パケット処理部203に接続され、転送パケット処理部203の通知により、WAN側ネットワーク102側から受信したHTTP要求に対しLAN側ネットワーク101側に存在するUPnPデバイスのリスト等を、WAN側ネットワーク102からアクセス可能な公開用URLとして、HTMLデータで表示する。
【0024】
転送パケット処理部203にはUPnPデバイス情報データベース205に接続され、さらに、NATセッションテーブル211の他にURL書換部212が設けられ、URL書換部212はWANポート202からHTTP要求のパケット、LANポート201からHTTP応答のパケットをそれぞれ受信すると、UPnPデバイス情報データベース205を参照して公開用URLを制御用URLに、制御用URLを公開用URLにそれぞれ書き換えるというALG(Aplication Layer Gateway)処理を行い、LANポート201、WANポート202にそれぞれ送信する。
【0025】
NATセッションテーブル211では、転送パケット処理部203にWANポート202から受信したHTTP要求のパケットに公開用URL等が含まれる場合には、NATセッションテーブル211にNAT情報を追加し、このとき、一般的なNAT処理動作のみを行っているエントリと判別するためのチェックフラグをONにする。
【0026】
なお、書き換えられた制御用URLを受信したUPnPホスト103では、LAN間接続装置105に対してHTMLデータのHTTP応答を行う。
さらに、URL書換部212では、WANポート202から受信したHTTP要求がUPnPホスト103のリスト要求である場合にはHTTP処理部206にその通知を行い、HTTP処理部206で表示されたHTMLのリストデータをHTTP応答としてWANポート202を経由して送信する。
【0027】
このようにして、UPnPホスト103を検出して適切な形に加工してWebにて公開することにより、特別な設定を行わなくてもWAN側ネットワーク102からUPnPホスト103へのアクセスを可能にする。
さらに、UPnPホスト103を利用することにより、UPnPホスト103が動的なIPアドレスであってもWAN側ネットワーク102からのアクセスを容易にする。
【0028】
図2は図1におけるUPnP処理部203がUPnPホスト103から取得するデバイス情報例の一部を示す図である。
本図に示すように、UPnP処理部203ではUPnPのDescriptionステージで交換されるメッセージ中に存在するUPnPデバイスの記述情報として、一例として、タグ名(説明)、IPaddress、friendlyName(装置(UPnPデバイス)の名称)、manufacturer(装置のメーカ名)、UDN(装置識別子)、serviceType(装置が提供するサービス(装置に複数存在))、制御用URL(装置に複数存在)を取得する。
【0029】
さらに、UPnP処理部203ではUPnPのDiscoveryステージでLAN側ネットワーク101側に存在するUPnPホスト103であるホストA、Bを検出し、次にDescriptionステージへ移行してホストA、Bを含むUPnPホスト103をそれぞれのIPaddress、friendlyName(デバイス名)、manufactruer、serviceType(デバイスタイプ)、デバイスの制御用URL名の情報を取得し、UPnPデバイス情報データベース204に登録を行い、それぞれのUPnPホスト103の制御用URLに対してWAN側ネットワーク102からアクセス可能な公開用URLを後述のように生成する。
【0030】
図3は図1におけるUPnPデバイス情報データベース204のデータベースの内容例を示す図である。
本図に示すように、UPnPデバイス情報データベース204は、一例として、UPnPホスト103のIPaddress、friendlyName(デバイス名)、manufactruer、serviceType(デバイスタイプ)、デバイスの制御用用URL、公開用URLで構成される。
【0031】
ここで、一例として、UPnP処理部204のデバイス情報の学習では、UPnPホスト103のホストAに対して、LAN間接続装置105のURL(http://hoge.com)、デバイスの制御用URL(http://192.168.0.4:8001/ctr21)により公開用URL(http: //hoge.com/~_~http://192.168.0.4:8001/ctr21)を生成する。
【0032】
hoge.comはLAN間接続装置105のWAN側ネットワーク102上のホスト名又はドメイン名である。
すなわち、制御用URLはUPnPホスト103のIPアドレスをドメイン名とし、公開用URLはLAN間接続装置105のドメイン名をドメイン名とし、制御用URLをディレクトリ名とする。
【0033】
このようにして、制御用URLと公開用URLの形成を容易にする。
このように、公開用URLではLAN間接続装置105のURLとUPnPデバイスの制御用URLとで形成されるが、LAN間接続装置105のURLとUPnPデバイスの制御用URLとの間に区切りキャラクタが設けられる。この区切りキャラクタは一般にホスト名のキャラクタとして使用されないキャラクタであればなんでもよい。この例ではDELEGATEサーバの例にならい、「~_~」を使用している。
【0034】
これにより、LAN間接続装置105のURLと公開用URLとの区別することが可能になる。
図4は図1における転送パケット処理部203のNATセッションテーブル211を示す図である。
本図に示すように、転送パケット処理部203でNAT処理を行う際には、一般的にNATセションテーブル211を形成し、NATセッションテーブル211に応じてパケットのNAT処理を行う。
【0035】
NATセッションテーブル211は、一例として、PrivateIp、LocalPort、GlobalIp、GlobalPort、RemoteIp、RemotePort、CheckFlagで構成される。
一例として、公開用URL(http://hoge.com/~_~http://192.168.0.4:8001/ctr21)のHTTP要求に対して、NATセッションテーブル211には、PrivateIp(192.168.0.4)、LocalPort(8001)、GlobalIp(hoge.comに対応するIPアドレス)、GlobalPort(8001)、RemoteIp(ホストXのIPアドレス)、RemotePort(1025)、CheckFlag(チェックフラグ)(ON)がNATセッションテーブル211に追加される。
【0036】
CheckFlagをONとして、HTTP応答処理を限定し、処理速度を高める。
図5はLAN間接続装置105の転送パケット処理部203における第1の概略転送処理例のシーケンスを示す図である。
LAN間接続装置105の転送パケット処理部203では、WAN側ネットワーク102のWAN側ホスト104からLAN間接続装置105に対して公開用URL宛にHTTP要求が送信されると、このHTTP要求を受信する。
【0037】
転送パケット処理部203では、UPnPデバイス情報データベース205を参照して、受信したHTTP要求の公開用URLに該当する制御用URLがUPnPホスト103に存在する場合には公開用URLを書き換えた制御用URL宛にHTTP要求を転送する。
LAN側ネットワーク101のUPnPホスト103ではHTTP要求を受信すると、HTMLデータのHTTP応答をLAN間接続装置105の転送パケット処理部203に対し送信する。
【0038】
転送パケット処理部203では、UPnPホスト103からのHTTP応答を受信すると、NATセッションテーブル211を参照して、CheckFlag(チェックフラグ)がONである中から該当するUPnPホスト103を検索してPrivateIpをGlobalIp等に変換を行い、WAN側ネットワーク102のWAN側ホスト104へHTTP応答を転送する。
【0039】
このようにして、所望のUPnPホスト103の情報がWAN側ホスト104に公開可能になる。
図6はLAN間接続装置105の転送パケット処理部203における第2の概略転送処理例のシーケンスを示す図である。
本図に示すように、図5と比較して、LAN間接続装置105の転送パケット処理部203では、LAN側ネットワーク101のUPnPホスト103からのHTTP応答を受信した場合に、UPnPホスト103からWAN側ネットワーク102のWAN側ホスト104への'content-type=text/html’である通信内容を監視しており、ハイパーリンクとして、埋め込まれているURLのうち、制御用URLが埋め込まれている場合は、UPnPデバイス情報データベース205を参照して、埋め込まれている制御用URLを公開用URLに変換する。
【0040】
例えば、HTTP応答のメッセージ中に、'a href=http://192.168.0.4:8000/foo.html'なる制御用URLがある場合、'a herf=http://hoge.com/~_~http://192.168.0.4:8000/foo.html'なる公開用URLのように変換が行われ、HTTP応答の転送が行われる。
このようにして、所望のUPnPホスト103の付加情報がWAN側ホスト104に公開可能になる。
【0041】
図7はLAN間接続装置105の転送パケット処理部203における第3の概略転送処理例のシーケンスを示す図である。
本図に示すように、図5と比較して、LAN間接続装置105では、WAN側ネットワーク102のWAN側ホスト104からLAN間接続装置105宛に、LAN側ネットワーク101のUPnPホスト103に対する公開用URLのリスト公開のHTTP要求が送信されると、このHTTP要求を受信する。
【0042】
LAN間接続装置105の転送パケット処理部203では、UPnPホスト103に対する公開用URLのリスト公開のHTTP要求に対して、HTTP処理部206からUPnPホスト103に対する公開用URLの公開リストのHTMLデータを得て、WAN側ネットワーク102のWAN側ホスト104にHTTP応答を送信する。
【0043】
その後のシーケンスは図5のシーケンスと同様である。
このようにして、WAN側ネットワーク102のWAN側ホスト104の要求時に、LAN側ネットワーク101のUPnPホスト103に対する公開用URLのリスト情報を公開表示し、UPnPホスト103の公開URLを知らなくても、所望のUPnPホスト103の公開を要求することが可能になる。
【0044】
図8はLAN間接続装置105の転送パケット処理部203における第4の概略転送処理例のシーケンスを示す図である。
本図に示すように、図5と比較して、LAN間接続装置105の転送パケット処理部203では、WAN側ネットワーク102のWAN側ホスト104からLAN間接続装置105に対して公開用URL宛にHTTP要求が送信されると、このHTTP要求を受信する。
【0045】
転送パケット処理部203では、UPnPデバイス情報データベース205を参照して、受信したHTTP要求の公開用URLに該当する制御用URLがUPnPホスト103に存在せず、例えば、LocalPortに誤りがあり、受信した公開用URLが不明である場合には、HTTP処理部206からLAN側ネットワーク101のUPnPホスト103の公開用URLが不明であり、公開用URLのリスト公開が可能である内容のHTMLデータを得て、WAN側ネットワーク102のWAN側ホスト104にHTTP応答を送信する。
【0046】
その後のシーケンスは図7のシーケンスと同様である。
このようにして、公開用URLがLAN間接続装置105に届けば、不明であっても、公開用URLが不明であるとの応答を行い、必要に応じて公開用URLのリスト公開を要求ができ、所望のUPnPホスト103に対して情報公開を要求することができる。
【0047】
図9は本発明に係るLAN間接続装置105における転送パケット処理部203の一連の動作でWANポート202に受信したパケットの処理を説明するフローチャートである。
ステップS301において、LAN間接続装置105のWANポート202でパケットを受信する。
【0048】
ステップS302において、転送パケット処理部203では、受信したパケットが自装置宛のHTTP要求であるか否かを判断する。
ステップS303において、自装置宛であるがHTTP要求でない場合には、NATセッションテーブル211で通常のNAT処理を行い処理を終了する。
ステップS304において、自装置宛のHTTP要求である場合、TCPセッションが確立したか否かを判断する。
【0049】
ステップS305において、TCPセッションが確立していない場合、WAN側ネットワーク102のWAN側ホスト104からTCP(Transmission Control Protocol)−SYN(Synchronize Flag)パケットが送信され、WAN側ネットワーク102のWAN側ホスト104とLAN間接続装置105の間でTCPセッションの確立処理を行い、ステップS304に戻る。
【0050】
ステップS306において、TCPセッションが確立した場合、HTTP要求のメッセージを最後まで受信したか否かを判断する。
具体的には、WAN側ネットワーク102のWAN側ホスト104がHTTPのGET要求(リクエスト)を送信する。例えば、WAN側ホスト104のホストXがUPnPホスト103のホストAにアクセスしようとする場合、ホストAのIPアドレスが192.168.0.4で、UPnPデバイス情報データベース205には公開用URL(http: //hoge.com/~_~http://192.168.0.4:8001/ctr21)が登録されているので(図3参照)、WAN側ホスト104が'GET/~_~http://192.168.0.4:8001/ctr21'というHTTPのGET要求(リクエスト)を送信する。
【0051】
ステップS307において、HTTP要求のメッセージを最後まで受信していない場合、HTTP要求のメッセージバッファ処理を行い、ステップS306に戻る。
ステップS308において、HTTP要求のメッセージを最後まで受信した場合、UPnPデバイス情報データベース205を参照する。
【0052】
ステップS309において、HTTP要求のメッセージを解析し、UPnPデバイス情報データベース205にHTTP要求のURLと一致する公開用URLが存在するか否か、又は公開用URL配下に存在するURLであるか否かを判断する。
ステップS310において、一致する公開用URLが存在しない場合、HTTP処理部206に通知を行い、処理を終了する。
【0053】
ステップS311において、一致する公開用URLが存在する場合、NATセッションテーブル211に変換データを追加し、一般的なNAT処理動作のみ行っているエントリと判別するためにチェックフラグをONにする。
ステップS312において、HTTP要求のパケットの公開用URLを制御用URLに書き換える。
【0054】
上記例では、ホストXからのGET要求(リクエスト)'GET/~_~http://192.168.0.4:8001/ctr21'が'GET/ctr21'に戻る。
ステップS313において、さきほど追加したNATセッションテーブル211のとおりに、一例として、LAN側ネットワーク101のUPnPホスト103のホストAであるIPアドレス192.168.0.4のポート番号8001に対し、TCPコネクションを確立し、書き換えを行ったHTTP要求の内容を転送し、処理を終了する。なお、一般的なNAT動作と同様に、以後、ホストAとホストX間の通信は、NATセッションテーブル211を基に行われる。
【0055】
図10は本発明に係るLAN間接続装置105におけるHTTP処理部206の一連の動作で、図9のステップS310における通知時の処理を説明するフローチャートである。
ステップS321において、HTTP処理部206では、転送パケット処理部203からの通知が、公開用URLが不明であるという通知であるか否かの判断を行う。
【0056】
ステップS322において、不明であるという通知の場合、公開用URLが不明である内容のHTMLデータを生成し、ステップS326に進む。
ステップS323において、不明であるという通知でない場合、転送パケット処理部203からの通知がLAN側ネットワーク101のUPnPホスト103のホストに対する公開用URLのリスト要求の通知であるか否かを判断する。。公開用URLのリスト要求の通知でない場合、処理を終了する。
【0057】
ステップS324において、公開用URLのリスト要求の通知である場合、HTTP処理部206では、UPnPデバイス情報データベース205の参照を行う。
ステップS325において、上記参照に基づいて、UPnPホスト103に対する公開用URLのリストのHTMLデータを生成する。
【0058】
ステップS326において、HTTP処理部206では、転送パケット処理部203に生成したHTMLデータを送信し、処理を終了する。
図11は本発明に係るLAN間接続装置105におけるHTTP処理部206の一連の動作で、LANポート201に受信したパケットの処理を説明するフローチャートである。
【0059】
ステップS331において、転送パケット処理部203では、LANポート201でパケットを受信したか否かを判断する。
ステップS332において、LANポート201でパケットを受信した場合、NATセッションテーブル211の該当するIPアドレスに対してチェックフラグがONになっているか否かを判断する。
【0060】
ステップS333において、チェックフラグがOFFになっている場合、NATセッションテーブル211で通常のNAT処理を行い処理を終了する。
ステップS334において、該当するチェックフラグがONになっている場合、HTTP応答のHTMLデータにハイパーリンク(hyperlink)に制御用URLが含まれているか否かを判断する。
【0061】
ステップS335において、HTTP応答のHTMLデータにハイパーリンク(hyperlink)に制御用URLが含まれている場合、UPnPデバイス情報データベース205を参照して、制御用URLを公開用URLに書き換える処理を行い、ステップS336に進む。
ステップS336において、UPnPデバイス情報データベース205を参照してHTTP応答の制御用URLを公開用URLに書き換え処理を行う。
【0062】
ステップS337において、WAN側ネットワーク102のWAN側ホスト104にHTTP応答を転送処理し、処理を終了する。
ステップS338において、LANポート201でパケットを受信しない場合にはHTTP処理部206から送信が有るか否かを判断する。送信がなければ処理を終了する。
【0063】
ステップS339において、HTTP処理部206から送信が有る場合、WAN側ホスト104にHTMLデータの送信を転送パケット処理部203に行い、ステップS337に進む。
図12は図9の変形例で、セキュリティ処理を追加した例を説明するフローチャートである。
【0064】
本図に示すように、図9と比較して、ステップS353において、すなわち、公開用URL書き換え後、LAN側ネットワーク101のUPnPホスト103への転送処理前にセキュリティ条件のチェックを行う。セキュリティ条件のチェックは、相手ホストのIPアドレス、HTTPのBASIC認証などである。をセキュリティ条件に含む場合、認証情報のチェック後、認証情報を削除してステップS355に進む。
【0065】
ステップS354において、HTTPのBASIC認証をセキュリティ条件に含まない場合、LAN側ネットワーク101のUPnPホスト103への転送処理をリジェクトし、処理を終了する。
このようにして、UPnPホスト103への通信をすべてLAN間接続装置105が一度受信しているので、UPnPホスト103側でセキュリティ機能を有していなくてもセキュリティの制御が可能になる。
【0066】
【発明の効果】
以上説明したように、本発明によれば、UPnPデバイスの各々に対して、LAN側ネットワーク上で使用可能なHTTP要求の制御用URLと、WAN側ネットワーク上で使用可能なHTTP要求の公開用URLを生成し、UPnPデバイスの各々についてUPnP処理部により生成された制御用URLと公開用URLを対にして保存し、保存した制御用URLと公開用URLの対を参照してWAN側ホストからのHTTP要求のURLが公開用URLと一致する場合、HTTP要求に対してNAT処理を追加し、公開用URLを制御用URLに書き換え、書き換えられた制御用URLのHTTP要求をUPnPデバイスに転送し、UPnPデバイスからのHTMLデータのHTTP応答に対してNAT処理を行い、WAN側ホストに転送を行うようにしたので、WAN側ホストからUPnPデバイスにURLを用いてHTTP要求を行い、UPnPデバイスからHTMLデータを容易に得られ、UPnPデバイスを公開することが可能になり、UPnPデバイスが動的なIPアドレスであってもWAN側ホストからのアクセスを容易にする。
【0067】
さらに、書き換えられた制御用URLのUPnPデバイスにHTTP要求を転送する前にセキュリティのチェックを行うようにしたので、UPnPデバイスへの通信をすべてLAN間接続装置が一度受信しているので、UPnPデバイス側でセキュリティ機能を有していなくてもセキュリティの制御が可能になる。
【図面の簡単な説明】
【図1】本発明に係るLAN間接続装置の概略構成を示すブロック図である。
【図2】図1におけるUPnP処理部203がUPnPホスト103から取得するデバイス情報例の一部を示す図である。
【図3】図1におけるUPnPデバイス情報データベース204のデータベースの内容例を示す図である。
【図4】図1における転送パケット処理部203のNATセッションテーブル211を示す図である。
【図5】LAN間接続装置105の転送パケット処理部203における第1の概略転送処理例のシーケンスを示す図である。
【図6】LAN間接続装置105の転送パケット処理部203における第2の概略転送処理例のシーケンスを示す図である。
【図7】LAN間接続装置105の転送パケット処理部203における第3の概略転送処理例のシーケンスを示す図である。
【図8】LAN間接続装置105の転送パケット処理部203における第4の概略転送処理例のシーケンスを示す図である。
【図9】本発明に係るLAN間接続装置105における転送パケット処理部203の一連の動作でWANポート202に受信したパケットの処理を説明するフローチャートである。
【図10】本発明に係るLAN間接続装置105におけるHTTP処理部206の一連の動作で、図9のステップS310における通知時の処理を説明するフローチャートである。
【図11】本発明に係るLAN間接続装置105におけるHTTP処理部206の一連の動作で、LANポート201に受信したパケットの処理を説明するフローチャートである。
【図12】図9の変形例で、セキュリティ処理を追加した例を説明するフローチャートである。
【図13】本発明の前提となるネットワークの概略構成であり、WAN側ホストがLAN側ホストにアクセスする例を説明する図である。
【図14】図13におけるLAN間接続装置105の概略構成を示すブロック図である。
【符号の説明】
101…LAN側ネットワーク
102…WAN側ネットワーク
103…UPnPホスト
104…WAN側ホスト
105…LAN間接続装置
201…LANポート
202…WANポート
203…転送パケット処理部
204…UPnP処理部
205…UPnPデバイス情報データベース
206…HTTP処理部
211…NATセッションテーブル
212…URL書換部
Claims (8)
- HTTPが使用可能である複数のUPnPデバイスが接続されるLAN側ネットワークと複数のWAN側ホストが接続されるWAN側ネットワークとを接続するLAN間接続装置において、
前記UPnPデバイスの各々に対して、前記LAN側ネットワーク上で使用可能なHTTP要求の制御用URLと、前記WAN側ネットワーク上で使用可能なHTTP要求の公開用URLを生成するUPnP処理部と、
前記UPnPデバイスの各々について前記UPnP処理部により生成された前記制御用URLと前記公開用URLを対にして保存するUPnPデバイス情報データベースと、
前記UPnPデバイス情報データベースを参照して前記WAN側ホストからのHTTP要求のURLが公開用URLと一致する場合、HTTP要求に対してNAT処理を追加し、公開用URLを制御用URLに書き換え、書き換えられた制御用URLのHTTP要求を前記UPnPデバイスに転送し、前記UPnPデバイスからのHTMLデータのHTTP応答に対してNAT処理を行い、前記WAN側ホストに転送を行う転送パケット処理部とを備えることを特徴とするLAN間接続装置。 - さらに、前記転送パケット処理部と前記UPnPデバイス情報データベースにはHTTP処理部が接続され、前記HTTP処理部は、前記UPnPデバイス情報データベースを参照して、公開用URLのリストをHTMLデータとして形成し、さらに、公開用URLが不明であるとの内容をHTMLデータとして形成し、前記WAN側ホストから公開用URLのリストを要求するHTTP要求が前記LAN間接続装置にあった場合、前記WAN側ホストから前記LAN間接続装置への公開用URLが不明であった場合、前記転送パケット処理部は前記HTTP処理部からHTMLデータをそれぞれ取得し前記WAN側ホストへ応答を行うことを特徴とする、請求項1に記載のLAN間接続装置。
- 前記WAN側ホストからのHTTP要求のURLが公開用URLと一致する場合の前記転送パケット処理部のNAT処理時に該当するUPnPデバイスに対してチェックフラグをONにし、前記UPnPデバイスからのHTTP応答に対してチェックフラグがONになった前記UPnPデバイスから該当するUPnPデバイスを検索してNAT処理を行うことを特徴とする、請求項1に記載のLAN間接続装置。
- 前記転送パケット処理部は、前記UPnPデバイスからのHTMLデータのHTTP応答にハイパーリンクとして制御用URLが埋め込まれている場合、前記UPnPデバイス情報データベースを参照して、埋め込まれた制御用URLを公開用URLに書き換えることを特徴とする、請求項1に記載のLAN間接続装置。
- 前記転送パケット処理部は前記制御用URLのドメイン名を前記UPnPホストのIPアドレスとし、前記公開用URLのドメイン名、ディレクトリ名をそれぞれ前記LAN間接続装置のドメイン名、前記制御用URLとすることを特徴とする、請求項1に記載のLAN間接続装置。
- 前記公開用URLのドメイン名であるLAN間接続装置のドメイン名と前記公開用URLのディレクトリ名である制御用URLとの間にドメイン名として使用されない区切りキャラクタを入れることを特徴とする、請求項1に記載のLAN間接続装置。
- 前記転送パケット処理部は書き換えられた制御用URLの前記UPnPデバイスにHTTP要求を転送する前にセキュリティのチェックを行うことを特徴とする、請求項1に記載のLAN間接続装置。
- HTTPが使用可能である複数のUPnPデバイスが接続されるLAN側ネットワークと複数のWAN側ホストが接続されるWAN側ネットワークとを接続するLAN間接続装置のUPnPデバイス公開方法において、
前記UPnPデバイスの各々に対して、前記LAN側ネットワーク上で使用可能なHTTP要求の制御用URLと、前記WAN側ネットワーク上で使用可能なHTTP要求の公開用URLを生成する工程と、
前記UPnPデバイスの各々について生成された前記制御用URLと前記公開用URLを対にして保存する工程と、
保存した前記制御用URLと前記公開用URLの対を参照して前記WAN側ホストからのHTTP要求のURLが公開用URLと一致する場合、HTTP要求に対してNAT処理を追加し、公開用URLを制御用URLに書き換え、書き換えられた制御用URLのHTTP要求を前記UPnPデバイスに転送する工程と、
前記UPnPデバイスからのHTMLデータのHTTP応答に対してNAT処理を行い、前記WAN側ホストに転送を行う工程とを備えることを特徴とするLAN間接続装置のUPnPデバイス公開方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003142764A JP3803654B2 (ja) | 2003-05-20 | 2003-05-20 | LAN間接続装置及びそのUPnPデバイス公開方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003142764A JP3803654B2 (ja) | 2003-05-20 | 2003-05-20 | LAN間接続装置及びそのUPnPデバイス公開方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004349895A JP2004349895A (ja) | 2004-12-09 |
JP3803654B2 true JP3803654B2 (ja) | 2006-08-02 |
Family
ID=33530733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003142764A Expired - Fee Related JP3803654B2 (ja) | 2003-05-20 | 2003-05-20 | LAN間接続装置及びそのUPnPデバイス公開方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3803654B2 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4337591B2 (ja) * | 2004-03-19 | 2009-09-30 | 株式会社日立製作所 | 情報処理装置、ネットワークシステムおよびネットワークシステムの制御方法 |
JP4799005B2 (ja) * | 2005-02-10 | 2011-10-19 | 富士通株式会社 | 情報処理装置 |
KR100813969B1 (ko) * | 2006-01-18 | 2008-03-14 | 삼성전자주식회사 | 원격 사용자 인터페이스의 상태 정보를 저장하고 복구하는방법 및 장치 |
JP4889688B2 (ja) * | 2008-06-24 | 2012-03-07 | 三菱電機株式会社 | ネットワークシステム |
JP4780732B2 (ja) * | 2008-10-01 | 2011-09-28 | Necアクセステクニカ株式会社 | ユーザ端末、リモートメンテナンス方法およびリモートメンテナンス制御プログラム |
JP5448489B2 (ja) * | 2009-02-10 | 2014-03-19 | キヤノン株式会社 | 情報処理装置及びその制御方法、情報処理システム、及び、プログラム |
JP5405617B2 (ja) * | 2012-04-20 | 2014-02-05 | 株式会社Nttドコモ | 移動通信端末及びプログラム |
JP5775562B2 (ja) * | 2013-12-18 | 2015-09-09 | キヤノン株式会社 | 情報処理装置及びその制御方法、及び、プログラム |
JP6006257B2 (ja) * | 2014-04-15 | 2016-10-12 | Necプラットフォームズ株式会社 | ポートマッピング装置、ルーター、ポートマッピング方法、及びポートマッピングプログラム |
-
2003
- 2003-05-20 JP JP2003142764A patent/JP3803654B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004349895A (ja) | 2004-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4965559B2 (ja) | リソースアドレスリクエスト管理方法及び関連するゲートウェイ装置 | |
JP3703457B2 (ja) | アドレス通知方法、プログラム、及び、装置 | |
US6839757B1 (en) | System and method for automatically discovering accessible services on a computer network and providing automatic access thereto | |
KR101410927B1 (ko) | 범용 플러그 앤 플레이 디바이스에 원격 액세스하는 방법및 시스템 | |
EP2291979B1 (en) | Remote access between upnp devices | |
US20020083172A1 (en) | Systems, methods and computer program products for responding to client requests directed to networked embedded devices via proxy services | |
US20070204051A1 (en) | Proxy Dns For Web Browser Request Redirection In Public Hotspot Accesses | |
JP2005287045A (ja) | Ipネットワークに接続された装置の発見の方法、及び、この方法を実行する装置 | |
CN101238453A (zh) | 建立用于归属到归属通信的名字解析系统 | |
JP2009503923A (ja) | ローカル・エリア・ネットワークへ遠隔アクセスする方法、及び当該方法を実行する交換ノード | |
JP2006519431A (ja) | UPnPデバイスの変化に反応する方法およびシステム | |
JP4524906B2 (ja) | 通信中継装置、通信中継方法、および通信端末装置、並びにプログラム記憶媒体 | |
JP3803654B2 (ja) | LAN間接続装置及びそのUPnPデバイス公開方法 | |
JP2004120534A (ja) | ルータと中継装置、フォワーディング方法 | |
US10033830B2 (en) | Requesting web pages and content rating information | |
JP2004506988A (ja) | Havi及び他のインターネット動作装置での資源要求の転送 | |
JPH09233112A (ja) | アドレス変換装置 | |
KR100953093B1 (ko) | 이종 UPnP네트워크를 통한 멀티미디어 서비스 방법 및 시스템 | |
JP2004350133A (ja) | 接続制御方法、接続制御プログラム、及び、接続装置 | |
JP2001345841A (ja) | 通信ネットワークシステム、データ通信方法、および通信中継装置、並びにプログラム提供媒体 | |
JP2002183009A (ja) | インターネット網で個人識別子による通信サービスを提供する装置及びその方法 | |
JP4633034B2 (ja) | 情報処理システム及び情報処理方法、並びに情報処理プログラム | |
Bergner | Improving performance of modern peer-to-peer services | |
JP2015201758A (ja) | 中継装置、通信システム、情報処理方法及びプログラム | |
JP5084716B2 (ja) | Vpn接続装置、dnsパケット制御方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060104 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060119 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060310 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060417 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060508 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3803654 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100512 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110512 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110512 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120512 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120512 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130512 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140512 Year of fee payment: 8 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |