(57)【特許請求の範囲】
【請求項１】
内部ネットワークに接続された装置に対してＩＰアドレスを割振る割振り機能を備えた、アドレス割当装置であって、
前記内部ネットワークに接続された装置のＩＰアドレスを、外部ネットワークで用いられる前記内部ネットワークを識別するための単一の、ルータに割振られたパブリックＩＰアドレスと同じＩＰアドレスに設定することを特徴とした、アドレス割当装置。
【請求項２】
外部ネットワークに接続するための、グローバルインターフェイスと、
内部ネットワークに接続するための、ローカルインターフェイスと、
前記外部ネットワークで用いられるパブリックＩＰアドレスと、前記内部ネットワークで用いられるプライベートＩＰアドレスとを相互に変換する変換手段と、
前記内部ネットワークに接続された第１の装置のＩＰアドレスを、前記内部ネットワークを識別するための単一の、ルータに割振られたパブリックＩＰアドレスと同じＩＰアドレスに設定する設定手段とを備え、
前記変換手段は、前記グローバルインターフェイスからＩＰパケットを受信した際、受信したＩＰパケットのアドレス情報と、データベースに記憶しているアドレス情報とを比較し、その結果に基づいて変換を行なうか否かを決定することを特徴とする、ルータ。
【請求項３】
前記内部ネットワークに接続された第２の装置に対して、プライベートＩＰアドレスを割振る第２の割振り手段をさらに備えた、請求項２に記載のルータ。
【請求項４】
中継を行なうＩＰパケットに対してフィルタリングを行なう送受信フィルタをさらに備えた、請求項２または３に記載のルータ。
【請求項５】
外部ネットワークに接続するための、グローバルインターフェイスと、
内部ネットワークに接続するための、ローカルインターフェイスと、
前記外部ネットワークで用いられるパブリックＩＰアドレスと、前記内部ネットワークで用いられるプライベートＩＰアドレスとを相互に変換する変換手段と、
前記内部ネットワークに接続された第１の装置に対して、パブリックＩＰアドレスを割振る第１の割振り手段とを備え、
前記第１の割振り手段は、前記第１の装置のＩＰアドレスを、ルータに割振られたパブリックＩＰアドレスと同じアドレスに設定し、
前記変換手段は、前記グローバルインターフェイスからＩＰパケットを受信した際、受信したＩＰパケットのアドレス情報と、データベースに記憶しているアドレス情報とを比較し、その結果に基づいて変換を行なうか否かを決定することを特徴とする、ルータ。
【請求項６】
前記内部ネットワークに接続された第２の装置に対して、プライベートＩＰアドレスを割振る第２の割振り手段をさらに備えた、請求項５に記載のルータ。
【請求項７】
中継を行なうＩＰパケットに対してフィルタリングを行なう送受信フィルタをさらに備えた、請求項５または６に記載のルータ。
【請求項８】
前記ローカルインターフェイスに、上位ＩＰ装置に付与されたＩＰアドレスを割当てる、請求項２または５に記載のルータ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明はアドレス割当装置およびルータに関し、特に内部ネットワークに接続された装置に対してＩＰアドレスを割振る割振り機能を備えたアドレス割当装置およびルータに関する。
【０００２】
【従来の技術】
従来より、ＮＡＴ（network address translation）またはＮＡＰＴ（network address port translation）機能を備えたルータ装置が知られている。このようなルータ装置は、外部ネットワークに接続するためのグローバルインターフェイスと、内部ネットワークに接続するためのローカルインターフェイスとを備えている。外部ネットワークの具体例として、インターネットなどが挙げられ、内部ネットワークの具体例として、ＬＡＮ（local area network）などが挙げられる。
【０００３】
ルータは、受信されたＩＰパケットのヘッダ部分に含まれた外部ネットワークで使用されるパブリックＩＰアドレスを、内部ネットワークで使用されるプライベートＩＰアドレスに付け替え、またはプライベートＩＰアドレスをパブリックＩＰアドレスに付け替えることで、インターフェイス間の通信を行なう装置である。
【０００４】
【発明が解決しようとする課題】
しかしながら、ルータ装置を介しては通信できないアプリケーションが存在するという問題があった。
【０００５】
図１２は、ルータ装置を介して送受信されるＩＰパケットの構成を示す図である。図を参照して、ＩＰパケットはヘッダ部分とデータ部分とにより構成され、ルータ装置はヘッダ部分に書込まれたパブリックＩＰアドレスまたはプライベートＩＰアドレスを変更することで、外部ネットワークと内部ネットワークとの間の通信を行なう。
【０００６】
しかしながら、アプリケーションによっては通信を行なう装置のＩＰアドレスの情報をＩＰパケットのヘッダ部分のみだけではなく、データ部分に書込むものがある。このようなＩＰパケットの通信においても、ルータ装置はヘッダ部分のＩＰアドレス情報だけを書換えるだけであるため、ヘッダ部分のＩＰアドレス情報とデータ部分のＩＰアドレス情報とに矛盾が生じ、通信が不可能となるものである。
【０００７】
すなわち、アプリケーションはデータ部分の任意の場所に任意の形式でＩＰアドレス情報を書込むため、ルータ装置においては、データ部分のＩＰアドレス情報を書換えることができないのである。
【０００８】
この発明は上述の問題点を解決するためになされたものであり、通信の不具合を解消することができるアドレス割当装置およびルータを提供することを目的としている。
【０００９】
【課題を解決するための手段】
上記目的を達成するため、この発明のある局面に従うと、アドレス割当装置は、内部ネットワークに接続された装置に対してＩＰアドレスを割振る割振り機能を備えた、アドレス割当装置であって、内部ネットワークに接続された装置のＩＰアドレスを、外部ネットワークで用いられる内部ネットワークを識別するための単一の、ルータに割振られたパブリックＩＰアドレスと同じＩＰアドレスに設定することを特徴とする。
【００１０】
この発明に従うと、内部ネットワークに接続された装置に対して、外部ネットワークで用いられる内部ネットワークを識別するための単一のパブリックＩＰアドレスを割振ることが可能となるため、当該装置を用いた通信の不具合を解消することが可能となる。
【００１１】
この発明の他の局面に従うとルータは、外部ネットワークに接続するためのグローバルインターフェイスと、内部ネットワークに接続するためのローカルインターフェイスと、外部ネットワークで用いられるパブリックＩＰアドレスと、内部ネットワークで用いられるプライベートＩＰアドレスとを相互に変換する変換手段と、内部ネットワークに接続された第１の装置のＩＰアドレスを、内部ネットワークを識別するための単一の、ルータに割振られたパブリックＩＰアドレスと同じＩＰアドレスに設定する設定手段とを備える。変換手段は、グローバルインターフェイスからＩＰパケットを受信した際、受信したＩＰパケットのアドレス情報と、データベースに記憶しているアドレス情報とを比較し、その結果に基づいて変換を行なうか否かを決定することを特徴とする。
【００１２】
この発明に従うと、内部ネットワークに接続された第１の装置に対して、内部ネットワークを識別するための単一のパブリックＩＰアドレスを割振ることができるため、当該装置を用いた通信の不具合を解消することが可能となる。
【００１４】
また、ルータに割振られたパブリックＩＰアドレスと同じアドレスを第１の装置に対して割振ることで、通信における矛盾をなくすことができ、通信の不具合を解消することが可能となる。
【００１５】
好ましくはルータは、内部ネットワークに接続された第２の装置に対して、プライベートＩＰアドレスを割振る第２の割振り手段をさらに備える。
【００１６】
この発明に従うと、第１の装置とは異なる第２の装置に対してはプライベートＩＰアドレスを割振ることができるため、内部ネットワークに接続された装置間の通信が可能となる。
【００１７】
好ましくはルータは、中継を行なうＩＰパケットに対してフィルタリングを行なう送受信フィルタをさらに備える。
【００１８】
この発明に従うと、送受信フィルタによりデータのフィルタリングを行なうことができるため、装置の使い勝手が向上する。
【００１９】
【発明の実施の形態】
図１は、本発明の実施の形態の１つにおけるＮＡＴ（またはＮＡＰＴ）機能を備えたルータ１００と、それに接続されるネットワークの構成を示す図である。
【００２０】
図を参照して、ルータ１００は、外部ネットワークと内部ネットワークとの間に接続され、外部ネットワークで用いられるパブリックＩＰアドレスと、内部ネットワークで用いられるプライベートＩＰアドレスとを相互に変換する機能を有する。
【００２１】
さらに、ルータ１００は、内部ネットワークに接続されたコンピュータなどの装置に対して、パブリックＩＰアドレスを割振る機能を備えている。
【００２２】
図１において、内部ネットワークには、複数のコンピュータ４００ａ〜４００ｃが接続されている。ルータ１００は、そのローカルインターフェイスにより、内部ネットワークに接続される。
【００２３】
外部ネットワークにおいて、ルータ１００は、そのグローバルインターフェイスにより、上位ＩＰ装置２００（回線プロバイダのルータなど）に接続される。上位ＩＰ装置２００は、インターネット３００に接続される。これにより、ルータ１００を介して、コンピュータ４００ａ〜４００ｃは、インターネット３００に接続することが可能である。
【００２４】
また、ルータは上位ＩＰ装置２００のパブリックＩＰアドレス（Ａ）と同じアドレスを、そのローカルインターフェイスに割当て、そのグローバルインターフェイスのパブリックＩＰアドレス（Ｂ）と同じアドレスを、内部ネットワーク内の１台のコンピュータ（ここではコンピュータ４００ａとする）に割当てる。
【００２５】
パブリックＩＰアドレス（Ｂ）と同じアドレスが割当てられなかったコンピュータ（ここではコンピュータ４００ｂ，４００ｃ）には、従来どおり、プライベートＩＰアドレス（Ｙ）、（Ｚ）が割当てられる。
【００２６】
さらに、ルータ１００のローカルインターフェイスには、パブリックＩＰアドレス（Ａ）とともに、プライベートＩＰアドレス（Ｘ）が割当てられ、ルータのローカルインターフェイスはＩＰ上で論理的に二重化される。
【００２７】
ここに、アドレスを８ビット×４で表記する方法を採用すると、プライベートＩＰアドレスの具体例としては、
１０．ｘ．ｘ．ｘ
１７２．１６．ｘ．ｘ〜１７２．３１．ｘ.ｘ
１９２．１６８．ｘ．ｘ（ｘは１〜２５５の数値）
が一般に用いられる。パブリックＩＰアドレスとしては、それ以外のＩＰアドレスが用いられる。
【００２８】
コンピュータにアクセスするためには、上記ＩＰアドレスとプロトコル番号（１〜６５５３５）とポート番号（１〜６５５３５）とが必要となる。このＩＰアドレスとプロトコル番号とポート番号とをセットにして「アドレス情報」と呼ぶ。
【００２９】
図２は、ルータ１００のハードウェア構成を示すブロック図である。図を参照して、ルータ１００は、装置全体の制御を行なうＣＰＵ１０３と、外部ネットワークとルータとのインターフェイスとして働くグローバルインターフェイス１０１と、内部ネットワークとルータとのインターフェイスとして働くローカルインターフェイス１０５と、信号の伝達を行なうバス１０７と、送信元のＩＰアドレスや送信先のＩＰアドレスなどの情報を一時的に記憶するための揮発性メモリ１０９と、後述するフローチャートで示されるルータの制御プログラムなどを記録する不揮発性メモリ１１１とを備えている。
【００３０】
図３は、ルータが行なう外部ネットワークと内部ネットワークとの中継処理を示すフローチャートである。
【００３１】
図を参照して、ステップＳ１０１ａでローカルインターフェイスを介して内部ネットワークからＩＰパケットの受信が行なわれるか、またはステップＳ１０１ｂでグローバルインターフェイスを介して外部ネットワークからＩＰパケットの受信が行なわれると、ステップＳ１０３で当該ＩＰパケットのフィルタリング（受信側）が行なわれる。これにより、不要なＩＰパケットの通過が禁止される。
【００３２】
ステップＳ１０５で、揮発性メモリ１０９に記録された情報（送信元送信先ＩＰアドレス情報一覧）に基づいて、ＩＰパケットのヘッダ部内のＩＰアドレスなどを書換える処理（ＩＰ中継処理）が行なわれる。
【００３３】
その後、ＩＰパケットを外部ネットワークまたは内部ネットワークに送信する場合には、ステップＳ１０７で送信側フィルタリング処理が行なわれ、ステップＳ１０９ａまたはステップＳ１０９ｂにより、ローカルインターフェイスまたはグローバルインターフェイスを介してＩＰパケットが送信される。
【００３４】
また、ＩＰ中継処理の後に、そのＩＰパケットがルータに対するものであった場合には、ステップＳ１１１で自分宛のＩＰパケットとして処理が行なわれる。
【００３５】
次に、本実施の形態におけるルータの機能について説明する。
ルータは、ルータのローカルインターフェイスを論理的に二重化する機能と、上位ＩＰ装置に付与されたＩＰアドレス（パブリックＩＰアドレス（Ａ））を、ルータのローカルインターフェイスに割当てる機能とを有している。さらに、ルータは、グローバルインターフェイスに割振られたＩＰアドレス（パブリックＩＰアドレス（Ｂ））を、ローカルインターフェイスに接続されたコンピュータ（ＩＰホスト）に自動的に割振るアドレス割当て機能を有している。
【００３６】
揮発性メモリにより、「通信中のＩＰパケットの送信元ＩＰアドレス情報と送信先アドレス情報との組合せ一覧」を記憶する記憶部が構成される。ルータは記憶部内に記憶された組合せ一覧と通信が行なわれるＩＰパケットとを比較する機能と、論理的に二重化されたローカルインターフェイスとグローバルインターフェイスとの間の通信を振分けるスイッチ機能とを備える。
【００３７】
これにより、単一のパブリックＩＰアドレスだけしか使用できないネットワーク環境において、ＮＡＴ（またはＮＡＰＴ）ルータの機能を保持したまま、パブリックＩＰアドレスを割振られたコンピュータがＩＰパケットのデータ部分にアドレス情報を書込むアプリケーションを使用することが可能となる。
【００３８】
次に、ルータ１００が行なう処理の概略について説明する。まず、ルータは事前処理として、予めルータのローカルインターフェイスを論理的に二重化しておく。その後、以下の(１）〜（５）に示されるようなＩＰアドレス割振り処理を行なう。
【００３９】
（１）  上位ＩＰ装置２００が自動でルータのグローバルインターフェイスに割振るパブリックＩＰアドレスと、上位ＩＰ装置２００のパブリックＩＰアドレスがルータに付与される。
【００４０】
（２）  ルータは、論理的に二重化されたローカルインターフェイスの１つに上位ＩＰ装置のパブリックＩＰアドレスを設定し、もう一方には、利用者によって指定されたプライベートＩＰアドレスを設定する。
【００４１】
（３）  ルータは、ローカルインターフェイス側に最初に接続されたコンピュータ、または利用者によって指定されたＩＤ（ＭＡＣアドレスなど）を持つコンピュータに対して、ルータのグローバルインターフェイスに割振られたパブリックＩＰアドレスを付与する。
【００４２】
（４）  パブリックＩＰアドレスが割振られたコンピュータ以外のコンピュータであって、ローカルインターフェイス側に接続されたコンピュータに対して、プライベートＩＰアドレスを付与する。
【００４３】
（５）  上位ＩＰ装置２００から自動でルータのグローバルインターフェイスに割振るパブリックＩＰアドレスと、上位ＩＰ装置のパブリックＩＰアドレスとが変更されるごとに、上記（１）〜（３）の処理を繰返して実行する。
【００４４】
また、ルータは、ＩＰ中継処理として、以下の（１）〜（４）で示される処理を実行する。
【００４５】
（１）  ルータが受信したＩＰパケットと、記憶した、送信元ＩＰアドレス情報と送信先ＩＰアドレス情報の組の一覧とを比較する。
【００４６】
（２）  受信したＩＰパケットの送信元ＩＰアドレス情報と、記憶した送信先ＩＰアドレス情報、ならびに受信したＩＰパケットの送信先ＩＰアドレス情報と記憶した送信元ＩＰアドレス情報がともに一致した場合には、ルータはＮＡＴ変換を行ない、ローカルインターフェイスまたはグローバルインターフェイスに対して中継を行なう。
【００４７】
（３）  ＩＰパケットのＩＰアドレス情報と、記憶した送信元ＩＰアドレス情報および送信先ＩＰアドレス情報の組の一覧とが一致せず、かつグローバルインターフェイスでＩＰパケットを受信した場合には、許可が設定されていればＩＰパケットをローカルインターフェイスにアドレス変換せずに中継し、許可が設定されていなければ廃棄する。そして、送信元ＩＰアドレス情報と送信先ＩＰアドレス情報の組を記憶する。
【００４８】
（４）  ＩＰパケットのＩＰアドレス情報と、記憶した送信元ＩＰアドレス情報および送信先ＩＰアドレス情報の組の一覧とが一致せず、かつローカルインターフェイスでＩＰパケットを受信した場合は、以下のように処理を行なう。
【００４９】
（ａ）  受信したＩＰパケットの送信先ＩＰアドレスが、ルータのローカルインターフェイスに割当てられたプライベートＩＰアドレスのネットワークに所属するアドレス、またはルータのグローバルインターフェイスに割当てられたパブリックＩＰアドレスであれば、論理的に二重化されているローカルインターフェイスに中継を行なう。
【００５０】
（ｂ）  受信したＩＰパケットの送信先ＩＰアドレスが、ルータのローカルインターフェイスに割当てられたプライベートＩＰアドレス、またはルータのローカルインターフェイスに割当てられたパブリックＩＰアドレスと同一であれば、ルータ自身宛の通信として処理を行なう。
【００５１】
（ｃ）  受信したＩＰパケットの送信先ＩＰアドレスが上記のいずれにも当てはまらない場合は、ＩＰパケットの送信元アドレス情報変換を行なって、グローバルインターフェイスへ中継を行ない、送信元ＩＰアドレス情報と送信先ＩＰアドレス情報の組を記憶する。
【００５２】
さらに、ルータは以下のようなセキュリティチェック機能を有している。すなわち、グローバルインターフェイスからローカルインターフェイスへの中継、およびローカルインターフェイスからグローバルインターフェイスへの中継においてどのような場合でも送受信ＩＰフィルタの処理を行ない、不当なＩＰパケットが通過することを防いでいる。
【００５３】
以上のようにして、本実施の形態においてはルータのローカル側に存在するコンピュータなどのＩＰ装置に対してパブリックＩＰアドレスを割振ることで、ＩＰパケットのデータ部分にＩＰアドレス情報を書込むアプリケーションを使用可能としている。また、従来のＮＡＴ／ＮＡＰＴルータの機能も引き続き実現することができ、加えてパブリックＩＰアドレスを割振られたコンピュータに対するＩＰパケットであって、指定されたＩＰヘッダを持つパケットを送信しないセキュリティ機能を実現している。
【００５４】
図４および図５は、ルータの行なうＩＰアドレス割振り処理を示すフローチャートである。
【００５５】
図４は、利用者によりパブリックＩＰアドレスを割振るコンピュータの指定（ＩＤ設定）がされていた場合の処理を示すフローチャートであり、図５は、利用者によりＩＤ設定がされていなかった場合の処理を示すフローチャートである。
【００５６】
図４を参照して、ステップＳ１０１において、ＩＰ装置（コンピュータなど）からローカルインターフェイスにアドレス要求が来たかが判定され、ＹＥＳとなるまで待機する。ＹＥＳであれば、ステップＳ１０３で、要求を出したＩＰ装置は特定ＩＤを持っているかが判断される。ＹＥＳであれば、ステップＳ１０５で、上位ＩＰ装置２００からルータにＩＰアドレスが割当てられているかが判定される。ＹＥＳであれば、ステップＳ１０７で、ルータに割当てられたパブリックＩＰアドレス（パブリックＩＰアドレス（Ｂ））を要求を送信したＩＰ装置に割当てる。
【００５７】
ステップＳ１０３でＮＯであれば、ステップＳ１１１で当該ＩＰ装置に対してはプライベートＩＰアドレスを割当てる。
【００５８】
また、ステップＳ１０５でＮＯであれば、ステップＳ１０９で仮のＩＰアドレスをＩＰ装置に割当てる。
【００５９】
図５を参照して、利用者によりＩＤ設定がされていなかった場合には、ステップＳ２０１において、ルータのローカルインターフェイスにＩＰ装置からのアドレス要求が来たかが判定され、ＹＥＳとなるまで待機する。
【００６０】
ステップＳ２０１でＹＥＳとなれば、ステップＳ２０３で、グローバルＩＰアドレス、または仮ＩＰアドレスを他のＩＰ装置に割当てていないかが判定される。ＹＥＳであれば、ステップＳ２０５で上位ＩＰ装置２００からＩＰアドレスがルータに割当てられているかが判定され、ＹＥＳであれば、ステップＳ２０７でルータのグローバルインターフェイスに割当てられたパブリックＩＰアドレスをＩＰ装置に割当てる。
【００６１】
ステップＳ２０３でＮＯであれば、ステップＳ２１１で当該ＩＰ装置に対してはプライベートＩＰアドレスを割当てる。
【００６２】
また、ステップＳ２０５でＮＯであれば、ステップＳ２０９で仮のＩＰアドレスをＩＰ装置に割当てる。
【００６３】
図６は、ルータのローカルインターフェイスへのＩＰアドレス割振り処理を示すフローチャートである。
【００６４】
図を参照して、ステップＳ５０１で、ルータのローカルインターフェイスに、設定されたプライベートＩＰアドレスを割当てる。ステップＳ５０３で、上位ＩＰ装置２００からルータのグローバルインターフェイスにＩＰアドレスが割振られているかが判定される。ＹＥＳであれば、ステップＳ５０５で、上位ＩＰ装置のＩＰアドレスをルータのローカルインターフェイスに割当てる。ステップＳ５０７で、ルータのグローバルインターフェイスにＩＰアドレスが新規追加、または変更されたかが判定され、ＹＥＳであればステップＳ５０５へ戻る。
【００６５】
また、ステップＳ５０３でＮＯであれば、ステップＳ５０９で仮のＩＰアドレスをルータのローカルインターフェイスに割当てる。
【００６６】
図７〜図９は、ルータがローカルインターフェイスからＩＰパケットを受信した際のＩＰ中継処理を示すフローチャートである。なお、図７〜図９のフローチャートは一連の処理を示している。
【００６７】
図７を参照して、ステップＳ３０１で、ローカルインターフェイスからＩＰパケットを受信したのであれば、受信フィルタでＩＰパケットをチェックする。ステップＳ３０３で、当該パケットの受信が許可されているかが判定され、ＮＯであればステップＳ３１７で当該ＩＰパケットを廃棄する。
【００６８】
一方、受信が許可されているのであれば、ステップＳ３０５で、受信したＩＰパケットの送信元および送信先のＩＰアドレスの情報と、データベース（記憶部）に記憶されている送信元および送信先のＩＰアドレス情報の組の一覧とを比較する。
【００６９】
ステップＳ３０７において、データベースに同じ情報が存在しているかが判定され、ＹＥＳであればステップＳ３０９でＩＰパケットの送信元ＩＰアドレス情報を、ルータのグローバルインターフェイスのＩＰアドレス情報で書換える。次に、ステップＳ３１１で送信フィルタでＩＰパケットをチェックする。ステップＳ３１３で送信が許可されているかが判定され、ＮＯであればステップＳ３２９で当該ＩＰパケットを廃棄し、送信が許可されていれば、ステップＳ３１５でグローバルインターフェイスから当該ＩＰパケットを送信する。
【００７０】
なお、ステップＳ３０７でＮＯであれば、ステップＳ３５１でＩＰパケットの送信先ＩＰアドレス情報が、ルータのローカルインターフェイスに割当てられたプライベートＩＰアドレスと同じネットワークに所属するアドレスであるか、またはルータのグローバルインターフェイスに割当てられたパブリックＩＰアドレスであるかが判定される。ＹＥＳであれば、ステップＳ３５３で送信フィルタでＩＰパケットをチェックする。ステップＳ３５５で送信が許可されているかが判定され、ＮＯであればステップＳ３５９で当該ＩＰパケットを廃棄し、送信が許可されていれば、ステップＳ３５７でローカルインターフェイスから当該ＩＰパケットを送信する。
【００７１】
ステップＳ３５１でＮＯであれば、ステップＳ３６１で、ＩＰパケットの送信先ＩＰアドレス情報が、ルータのローカルインターフェイスに割当てられたＩＰアドレスであるかが判定され、ＹＥＳであればステップＳ３６３で当該ＩＰパケットはルータ自身に対する通信として処理をする。
【００７２】
ステップＳ３６１でＮＯであれば、ステップＳ３６５で、データベースに送信先および送信元のＩＰアドレス情報の組を記憶し、ステップＳ３０９へ進む。
【００７３】
図１０および図１１は、グローバルインターフェイスからＩＰパケットを受信した際のルータのＩＰ中継処理を示すフローチャートである。図１０および図１１に示されるフローチャートは、一連の処理を示す。
【００７４】
図を参照して、グローバルインターフェイスからＩＰパケットを受信したときには、ステップＳ４０１で受信フィルタにより当該ＩＰパケットのチェックを行なう。
【００７５】
ステップＳ４０３で受信が許可されているかが判定され、ＮＯであればステップＳ４１７で当該ＩＰパケットを破棄する。
【００７６】
受信が許可されているのであれば、ステップＳ４０５で、受信したＩＰパケットの送信元および送信先のＩＰアドレス情報と、データベースに記憶している送信元および送信先のＩＰアドレス情報の組の一覧とを比較する。
【００７７】
ステップＳ４０７においてデータベースに同じ情報が存在しているかが判定され、ＹＥＳであればステップＳ４０９でＩＰパケット内のヘッダ部分の送信先ＩＰアドレス情報を記憶されたＩＰアドレス情報をもとに書換える。
【００７８】
ステップＳ４１１で送信フィルタでＩＰパケットをチェックし、ステップＳ４１３で送信が許可されているかが判定される。許可されていなければ、ステップＳ４２３で当該ＩＰパケットを廃棄し、許可されていればステップＳ４１５でローカルインターフェイスからＩＰパケットを送信する。
【００７９】
また、ステップＳ４０７で、データベースに同じ情報が存在していなければ、ステップＳ４１９でローカルインターフェイス側のグローバルＩＰアドレスを持った装置への送信が許可されているかが判定され、ＹＥＳであればステップＳ４１１へ進み、ＮＯであればステップＳ４２１で当該ＩＰパケットを破棄する。
【００８０】
なお、上述の実施の形態においてアドレスの割当てを行なう装置の具体例としてルータを例に挙げたが、サーバや他のコンピュータ関連機器などの装置によりアドレスの割当てを行なうようにしてもよい。
【００８１】
また、上述の実施の形態における装置で行なわれる処理は、ハードウェア回路を用いて実施してもよいし、ソフトウェアにより実施してもよい。
【００８２】
また、上述の実施の形態におけるフローチャートの処理を実行するプログラムを提供することも可能であるし、そのプログラムをＣＤ−ＲＯＭ、フレキシブルディスク、ハードディスク、ＲＯＭ、ＲＡＭ、メモリカードなどの記録媒体に記録してユーザに提供することにしてもよい。また、プログラムはインターネットなどの通信回線を介して、装置にダウンロードするようにしてもよい。
【００８３】
また、上述の実施の形態においてはネットワークに接続される機器の例としてコンピュータを挙げたが、その他の携帯端末やＩＴ家電などをネットワークに接続する場合でも本発明を実施することが可能である。
【００８４】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【図１】  本発明の実施の形態の１つにおけるＮＡＴ（またはＮＡＰＴ）機能を備えたルータとそれに接続されるネットワークの構成を示す図である。
【図２】  ルータ１００のハードウェア構成を示すブロック図である。
【図３】  ルータの行なう中継処理を示すフローチャートである。
【図４】  利用者によりＩＤ設定がされていた場合のＩＰアドレス割振り処理を示すフローチャートである。
【図５】  利用者によりＩＤ設定がされていなかった場合のＩＰアドレス割振り処理を示すフローチャートである。
【図６】  ルータのローカルインターフェイスへのＩＰアドレス割振り処理を示すフローチャートである。
【図７】  ローカルインターフェイスからＩＰパケットを受信した際のＩＰ中継処理を示すフローチャートである。
【図８】  図７に続くフローチャートである。
【図９】  図８に続くフローチャートである。
【図１０】  グローバルインターフェイスからＩＰパケットを受信した際のＩＰ中継処理を示すフローチャートである。
【図１１】  図１０に続くフローチャートである。
【図１２】  ＩＰパケットの構成を示す図である。
【符号の説明】
１００  ルータ、１０１  グローバルインターフェイス、１０３  ＣＰＵ、１０５  ローカルインターフェイス、１０７  バス、１０９  揮発性メモリ、１１１  不揮発性メモリ、２００  上位ＩＰ装置、３００  インターネット、４００ａ〜４００ｃ  コンピュータ。
【図１】
0003672882.tif 000002
【図２】
0003672882.tif 000003
【図３】
0003672882.tif 000004
【図４】
0003672882.tif 000005
【図５】
0003672882.tif 000006
【図６】
0003672882.tif 000007
【図７】
0003672882.tif 000008
【図８】
0003672882.tif 000009
【図９】
0003672882.tif 000010
【図１０】
0003672882.tif 000011
【図１１】
0003672882.tif 000012
【図１２】
0003672882.tif 000013