[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP4226606B2 - 通信装置、通信方法、ならびに、プログラム - Google Patents

通信装置、通信方法、ならびに、プログラム Download PDF

Info

Publication number
JP4226606B2
JP4226606B2 JP2006028193A JP2006028193A JP4226606B2 JP 4226606 B2 JP4226606 B2 JP 4226606B2 JP 2006028193 A JP2006028193 A JP 2006028193A JP 2006028193 A JP2006028193 A JP 2006028193A JP 4226606 B2 JP4226606 B2 JP 4226606B2
Authority
JP
Japan
Prior art keywords
packet
key code
communication
unit
terminal device
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
Application number
JP2006028193A
Other languages
English (en)
Other versions
JP2007208887A (ja
Inventor
昌二 森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konami Digital Entertainment Co Ltd
Original Assignee
Konami Digital Entertainment Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Konami Digital Entertainment Co Ltd filed Critical Konami Digital Entertainment Co Ltd
Priority to JP2006028193A priority Critical patent/JP4226606B2/ja
Publication of JP2007208887A publication Critical patent/JP2007208887A/ja
Application granted granted Critical
Publication of JP4226606B2 publication Critical patent/JP4226606B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Description

本発明は、通信相手を適切に制限するのに好適な通信装置、通信方法、ならびに、これらをコンピュータにて実現するプログラムに関する。
従来から、家庭内LAN(Local Area Network)とインターネットとを中継する際に、アドレス変換やポート変換を行うルータ装置やゲートウェイ装置の技術が提案されている。このような技術は、たとえば、以下の文献に開示されている。
特開2000−99469号公報 特開2002−344443号公報
[特許文献1]には、開放型分散ネットワークに接続された資源に対するアクセス権管理にかかわる主体を、特定資源の利用を行うユーザと、ユーザの特定の特徴について証明、保証を行う検証者と、特定資源について、特定ユーザの利用可否を判断する権限付与者とに分離し、ユーザが、公開名、鍵および当該ユーザを特徴づける複数のプロファイル情報を保持し、検証者が、ユーザからの発行依頼を受けて、プロファイル情報の個々の内容を当該ユーザに発行し、権限付与者が、ユーザから資源利用要求があると、該ユーザにプロファイル情報の提示を要求し、提示されたプロファイル情報の内容を確認して、資源の利用可否を判断する技術が開示されている。
[特許文献2]には、一方の暗号装置が、自装置を識別するための識別子(IPアドレス)を変更後、「変更前の識別子」と暗号用鍵および認証用鍵を用いて暗号化した「セキュリティアソシエーション開放」とを含むセキュリティアソシエーション切断通知を、通信相手である他方の暗号装置に対して送信し、他方の暗号装置が、上記暗号用鍵および上記認証用鍵を用いて当該セキュリティアソシエーション切断通知を復号し、相互認証を行い、旧セキュリティアソシエーションを切断する技術が開示されている。
このほか、ユニバーサルプラグアンドプレイ(UPnP;Universal Plug and Play)といった、ルータ装置やゲートウェイ装置が、インターネット側(グローバルネットワーク側)の通信ポートを開いて、NAT(Network Address Translation;「IPマスカレード」ともいう。)等のアドレス変換を行って家庭内LAN側の端末と外部端末との通信を可能にする技術も提案されている。
この際に、特定のIPアドレスを有する端末からの通信のみ、許可する「ホワイトリスト」や、特定のIPアドレスを有する端末からの通信を拒絶する「ブラックリスト」などを維持管理する技術も提案されている。
しかしながら、UPnPなどの技術では、あるポートがある相手に対して開放されると、そのポートは任意の相手に対して開放されることとなってしまい、セキュリティ上の問題が生ずる。
特に、グローバルネットワークに対する通信口に対して動的にIPアドレスが割り振られる端末同士がインターネットを介したP2P(Peer To Peer)通信を行う等には、ホワイトリストやブラックリストを作ることができないため、許可される通信相手を適切に維持管理する必要がある。
したがって、グローバルネットワーク側の通信相手に対して、通信を許可するか否かを簡易に適切に制御する技術が強く求められている。
本発明は、上記のような課題を解決するもので、通信相手を適切に制限するのに好適な通信装置、通信方法、ならびに、これらをコンピュータにて実現するプログラムを提供することを目的とする。
以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。
本発明の第1の観点にかかる通信装置は、生成部、送信部、判断部、許可部、受信部を備え、以下のように構成する。なお、本通信装置は、典型的にはルータ、ゲートウェイ、ファイアウォールなどの機器として機能するが、単独のコンピュータ上に本通信装置を構成し、当該コンピュータにおける通信相手を適切に制限することとしても良い。
すなわち、生成部は、鍵符号を生成する。当該鍵符号は、典型的には、ランダムに生成される整数、整数列、文字、もしくは、文字列など、種々のものを採用することができる。この鍵符号によって、通信を行っても良い相手か否かを判断する。
一方、送信部は、生成された鍵符号を指定するパケットを、コンピュータ通信網を介して、通信を許可すべき相手に送信する。通信を許可すべき相手にこのパケットが到達すると、その相手は、パケット内の鍵符号を取得して、取得した鍵符号を指定して、通信許可を要求するパケットを、当該通信装置に送信してくる。
そこで、判断部は、当該コンピュータ通信網から到来するパケットに、生成された鍵符号が指定されているか否かを判断する。一般に、コンピュータ通信網を介した通信においては、いわゆるバケツリレー方式による通信が行われるため、当該通信装置に到来したパケットの内容を、当該通信装置自身が受信して以降の処理を行うか、捨てるか、他の通信機器にたらい回しに送信するか、の判断を、パケットに含まれる宛先や送付経路設定に基づいて行っている。本発明では、この判断を行う際に、あわせて、パケットの内部に、先に生成した鍵符号が(バイト列として)含まれているか否かを判断する。
そして、当該到来したパケットに生成された鍵符号が指定されている場合、許可部は、当該到来したパケットの送信元との通信を許可する。本通信装置が生成した鍵符号は、通信を許可したい相手に対して送られたものであるから、当該鍵符号を指定したパケットの送信元は、割り符を持っていることになり、当該送信元からのパケットは、当該通信装置自身が処理することにする。
そこで、受信部は、当該コンピュータ通信網から到来するパケットのうち、通信を許可された送信元から送信されたパケットを受信する。
たとえば、本通信装置がルータ等の場合は、許可した相手からのパケットの宛先がルータに接続されたLAN内であれば、LAN内に当該パケットを送り込むこととなる。一方、許可していない相手からのパケットの宛先がルータに接続されたLAN内であれば、当該パケットは捨てる、もしくは、接続を拒否することとして、適切に通信相手の制限を行う。
本発明では、通信相手を任意の相手に開放したりはせずに、生成される鍵符号を割り符として用いることによりこの割り符を使っている送信元との通信を許可するので、本発明によれば、通信相手を適切に制限することができるようになる。
また、本発明の通信装置において、生成された鍵符号を指定するパケットには、当該通信装置において受信を行うポート番号がさらに指定され、受信部は、通信を許可された送信元から送信されたパケットのうち、当該指定されたポート番号を介するパケットを受信するように構成することができる。
すなわち、送信元の制限付き開放を、ポート単位で行うのである。これにより、通信に用いるポート番号を動的に変化させることが可能となる。
本発明によれば、本通信装置をルータ等として機能させた場合にLAN内の複数のノートが同時に外部と通信するような状況でNAPT(Network Address Port Translation)などを用いるときであっても、ポートを開放することができ、通信相手の制限を適切に行うことができるようになる。
また、本発明の通信装置において、送信部は、当該鍵符号を指定するパケットを所定のサーバ装置に送信し、当該到来したパケットであって、生成された鍵符号が指定されるパケットの当該到来したパケットの送信元は、当該鍵符号を当該サーバ装置から知得して、当該パケットを当該通信装置に送信するように構成することができる。
たとえば、通信対戦ゲームを実装する場合には、サーバ装置がある端末(のプレイヤー)と別の端末(のプレイヤー)とのマッチング(紹介)を行った後、当該端末同士がピアツーピアで直接通信し合う形態を取ることが多いが、本発明は、このような態様に対応するものである。
上記の例でいえば、一方の端末から、相手のマッチングを行うサーバ装置に鍵符号を送ると、サーバ装置がマッチング相手の端末にその鍵符号を伝達する。これによって、相手の端末が、鍵符号を指定したパケットを一方の端末に送信すると、このパケットの送信の向きの通信が可能となる。これを双方が行うことにより、双方向通信において通信相手を適切に制限するのである。
本発明によれば、通信相手を紹介するような固定されたサーバ装置に鍵符号を登録することで、当該サーバ装置が紹介する相手のみを通信相手として許可することができるようになる。
また、本発明の通信装置は、取消部をさらに備え、当該取消部は、通信を許可された送信元から送信されたパケットを最後に受信してからの経過時間が所定の閾時間を超えると、当該送信元に対する通信の許可を取り消すように構成することができる。
本発明は、上記発明の好適実施形態に係るもので、通信相手の許可に時間制限を設けるものであり、一旦通信を許可した相手であっても、一定時間が経過すれば、通信の許可を取り止めるものである。たとえば、上記の通信対戦の例では、ピアツーピアで通信対戦の一試合を行うのに十分な時間を閾時間とすれば良い。
本発明によれば、一旦通信を許可した相手であっても、一定時間が経過すればその許可が取り消されるので、ダイヤルアップ接続やDHCP(Dynamic Host Configuration Protocol)などにより、通信相手のIPアドレスが変化する場合であっても、本来許可すべきでない相手に通信を許可してしまう危険性を減らすことができる。
また、本発明の通信装置は、取消部をさらに備え、当該鍵符号を生成してからの経過時間が所定の閾時間を超えると、当該送信元に対する通信の許可を取り消すように構成することができる。
本発明は、上記発明の好適実施形態に係るもので、鍵符号に有効期限を設けるものであり、一旦通信を許可した相手であっても、有効期限の後は、通信の許可を取り止めるものである。たとえば、上記の通信対戦の例では、ピアツーピアで通信対戦の一試合を行うのに十分な時間を閾時間とすれば良い。
本発明によれば、一旦通信を許可した相手であっても、有効期限の後はその許可が取り消されるので、ダイヤルアップ接続やDHCP(Dynamic Host Configuration Protocol)などにより、通信相手のIPアドレスが変化する場合であっても、本来許可すべきでない相手に通信を許可してしまう危険性を減らすことができる。
また、本発明の通信装置において、許可部は、生成された鍵符号が指定されて到来したパケットの送信元の数があらかじめ定めた閾個数を超えると、当該新たに到来したパケットの送信元との通信を許可しないように構成することができる。
本発明は、上記発明の好適実施形態に係るもので、鍵符号が利用できる外部の送信元の個数に制限を設けるものであり、一定以上の送信元との通信は先着順で許可するが、それ以降の通信は許可しない、というものである。
このとき、送信元の個数を数えるときの、送信元を区別する単位は、たとえば、送信元のIPアドレス、送信元のIPアドレスとポート番号の組合せ、送信元のMACアドレス、送信元の端末の識別番号などを採用することができる。
本発明によれば、通信の許可に必要な鍵符号を知得しているような相手であっても、一定の数以上からのアクセスがあった場合には、これを許可しないこととして、鍵符号が盗聴や傍受、漏曳した場合であっても、本来許可すべきない相手に通信を許可してしまう危険性を減らすことができる。
また、本発明の通信装置は、中継部をさらに備え、当該中継部は、受信されたパケットを、当該通信装置に接続される端末装置に中継するように構成することができる。
本発明は、上記発明の好適実施形態に係るもので、中継部が、NAT(Network Address Translation)やNAPTなどのIPマスカレード機能を有するように構成する場合に適用することができる。
本発明によれば、当該通信装置をルータ、ゲートウェイ、ファイアウォール等として機能させることができるようになる。
本発明のその他の観点に係る通信方法は、生成部、送信部、判断部、許可部、受信部を備える通信装置にて実行され、生成工程、送信工程、判断工程、許可工程、受信工程を備え、以下のように構成する。
すなわち、生成工程では、生成部が、鍵符号を生成する。
一方、送信工程では、送信部が、生成された鍵符号を指定するパケットを、コンピュータ通信網を介して、通信を許可すべき相手に送信する。
さらに、判断工程では、判断部が、当該コンピュータ通信網から到来するパケットに、生成された鍵符号が指定されているか否かを判断する。
そして、許可工程では、許可部が、当該到来したパケットに生成された鍵符号が指定されている場合、当該到来したパケットの送信元との通信を許可する。
一方、受信工程では、受信部が、当該コンピュータ通信網から到来するパケットのうち、通信を許可された送信元から送信されたパケットを受信する。
本発明のその他の観点に係るプログラムは、コンピュータを上記の通信装置として機能させ、コンピュータに上記の通信方法を実行させるように構成する。
また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記憶媒体に記録することができる。
上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記憶媒体は、コンピュータとは独立して配布・販売することができる。
本発明によれば、通信相手を適切に制限するのに好適な通信装置、通信方法、ならびに、これらをコンピュータにて実現するプログラムを提供することができる。
以下に本発明の実施形態を説明するが、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
図1は、本発明の実施形態の一つに係る通信装置が、プログラムを動作させることによって実現されるルータ装置の概要構成を示す模式図である。以下、本図を参照して説明する。
ルータ装置101は、フラッシュEEPROM(Electrically Erasable Programmable Read Only Memory)102に記録されているプログラムを、CPU 103が実行することによって、各種の動作を行う。この際に、RAM(Random Access Memory)104が、一時的な記憶領域として利用される。
フラッシュEEPROM 102には、CPU 103が実行するプログラムのほか、各種の設定データが記憶されている。たとえば、通常のルータでは、通信相手として許可する端末のIPアドレスや、通信相手として拒絶する端末のIPアドレス等が、ホワイトリストやブラックリストとして、フラッシュEEPROM 102に記録される。
ルータ装置101は、ネットワークインターフェースカード(NIC;Network Interface Card)LAN側NIC 105とWAN側NIC 106とを備えており、LANとWANの通信のゲートウェイとして機能する。たとえば、通常のNAPTルータとして機能する場合を考える。
LAN側NIC 105にパケットが到達したことが検知されると、CPU 103は、パケットの宛先を確認して、そのパケットがWANに送出すべきものか、それともLAN内の端末に送出すべきものかを識別する。
WANに送出すべきものである場合には、送信元端末のLAN内でのIPアドレスとポート番号とを、WAN側NIC 106のIPアドレスおよび動的に割り当てたポート番号に書き換えて、WAN側NIC 106を介して外部(典型的にはインターネット)に送出する。
一方、LAN内のいずれかの端末に送るべきものである場合には、LAN側NIC 105が宛先のLAN内でのIPアドレスの端末に、そのままパケットを送出する。
WAN側NIC 106は、逆向きに、上記と同様の処理を行う。
上記のようなNAPT処理は、特に、ゲーム装置がLAN側に複数台接続されており、当該ゲーム装置にて同じゲームソフトが異なるユーザによって動作させられている場合に必要となる。
一般に、ゲームソフトが利用する通信ポートのポート番号は同じものが使用されるため、NATのみでは、複数台のゲーム装置をLAN側に接続した場合に対応できないからである。本実施形態に係るルータ装置101では、異なるLAN側IPアドレスを持つ端末が同じポート番号を用いてWAN側と通信しようとする場合には、WAN側IPアドレスとして両者に同じアドレスを割り当てる一方で、WAN側ポート番号は異なるものとして、アドレスおよびポート番号の変換を行い、適切にIPマスカレードを行う。
このほか、ルータ装置101は、LAN側の端末からはウェブサーバとして機能するようにすることもできる。この場合、LAN側端末でLAN側NIC 105のIPアドレスにウェブブラウザからアクセスすることによって表示されるフォームに、各種の設定値を入力してルータ装置101にフォームを送信することにより、ルータ装置101のフラッシュEEPROM 102に保存される設定値が変更されるように構成するのが一般的である。
図2は、上記のルータ装置上に実現される通信装置の実施形態の概要構成を示す模式図である。以下、本図を参照して説明する。なお、本通信装置は、いわゆるルータとして機能するため、通常のルータ機器が構成される情報処理装置と同様のハードウェアの上で、以下に説明するような機能を果たすためのプログラムを実行することにより、実現される。
さて、本実施形態の通信装置201は、生成部202、送信部203、判断部204、許可部205、受信部206、取消部207、中継部208を備える。本通信装置201は、上記のようにルータとして機能するため、LAN側の端末とWAN側のインターネットとの通信の仲立ちを、NAPTにより行う。NAPTに係るアドレスおよびポートの変換作業は、中継部208において行われるが、上記のようなフラッシュEEPROM 102に不揮発に記録されたホワイトリスト/ブラックリストのほか、ポート単位の有効期限付きの一時的なホワイトリストをRAM 104内に記録して、パケットの受け入れ中継をするか否かを決定する。
本実施形態の通信装置201は、上記のような一般的なルータ装置101の機能に新たな機能を追加するものであり、理解を容易にするため、以下では、通常のルータとは異なる機能に着目して説明する。これらの機能が実行される処理には、おおまかに分けて、LAN側からLAN側NIC 105にパケットが到達したときのLANパケット処理と、WAN側からWAN側NIC 106にパケットが到達したときのWANパケット処理の2つがある。これらの処理は、ルータ装置101の各部が、適宜上記の生成部202、送信部203、判断部204、許可部205、受信部206、中継部208として共働することによって実現されるものである。以下、順に説明する。なお、本図には、実施例2にて説明する取消部207も図示されている。
図3は、LANパケット処理の制御の流れを示すフローチャートである。以下、本図を参照して説明する。
LANパケット処理では、まず、ルータ装置101のLAN側NIC 105が、LAN内から送信されたパケットが到達したか否かを調べる(ステップS301)。到達していなければ(ステップS301;No)、待機して(ステップS302)から、ステップS301に戻る。この待機中には、他の処理をコルーチン的に実行することができる。また、NICが受信割り込み機能を有している場合には、受信割り込みによって、パケットの到達を検知することとしても良い。
パケットが到達している場合(ステップS301;Yes)、当該パケットの宛先を調べる(ステップS303)。宛先が、LAN内の他の端末である場合には(ステップS303;LAN内)、そのパケットを宛先にたらい回しに中継して(ステップS304)、ステップS301に戻る。
一方、宛先が、当該ルータ装置101である場合(ステップS303;自身)、パケットの種類を調べる(ステップS306)。パケットの種類を調べる手法としては、ルータ装置101のどのポート番号を宛先としているかによって判断するのが一般的であるが、パケット内部に各種の情報を埋め込むこととして、ルータ装置101そのものに処理をさせることとしても良い。
ここでは、パケットの種類として、
(1)LAN側端末からの鍵符号生成要求パケット
(2)それ以外のパケット
の2種類を考える。
それ以外のパケットである場合(ステップS306;それ以外)としては、HTTP(HyperText Transfer Protocol)に基づいてルータ装置101の設定を変更するための通信が行われる場合などが考えられるが、通常のルータと同様に、対応する処理を実行して(ステップS310)、ステップS301に戻る。
一方、本発明に特徴的な、LAN側端末からの鍵符号生成要求パケットである場合(ステップS306;鍵要求)、CPU 103は、鍵符号生成要求パケットに指定されている以下の情報を吟味する。
(a)パケットの送信元のLAN側IPアドレス・ポート番号。
(b)鍵符号を送るべきサーバ装置のグローバルIPアドレス・ポート番号。これはパケットの直接の宛先ではなく、ルータ装置101がLAN側端末からの要求を受けて鍵符号を送信する際の宛先である。
ついで、生成部202が、当該LAN側IPアドレス・ポート番号(a)に対してランダムに鍵符号を生成する(ステップS307)。したがって、CPU 103が生成部202として機能する。
ここで生成される鍵符号は、ランダムに生成される整数、整数列、文字、もしくは、文字列など、種々のものを採用することができるが、より下層の通信レイヤにおけるパケットサイズ内に納まるような長さとすると、通信効率を高めることができる。
また、あらかじめ定めた候補の中からいずれかを選択するような「ランダム」な決め方をしても良い。すなわち、鍵符号の候補が、定数としてあらかじめ所定の個数用意されており、その中からいずれかを、「ランダム」に決める、というものである。「ランダム」な決め方としては、通常の擬似乱数を用いるのでも良いし、現在時刻や使用しているネットワークカードのMACアドレス、IPアドレスなどを適宜種として参照することとしても良い。
さらに、送信部203が、生成された鍵符号を指定する鍵符号指定パケットを、WAN側NIC 106およびコンピュータ通信網を介して、通信を許可すべき相手であるサーバ装置(b)に送信する(ステップS308)。
この際には、パケットの送信元のIPアドレスとしては、WAN側NIC 106のIPアドレスを、パケットの送信元のポート番号としては、LAN側IPアドレス・ポート番号(a)に対してNAPTにより動的に割り当てられたWAN側IPポート番号(c)を指定することが望ましい。
前述した通り、サーバ装置が通信対戦ゲームのマッチングサーバである場合には、鍵符号指定パケットに指定された以下の情報が、当該LAN側端末の対戦相手に伝達される。
(c)鍵符号の生成要求をしたLAN端末にNAPTによって割り当てられたWAN側IPアドレス(これは、WAN側NIC 106のIPアドレスに等しい。)とWAN側ポート番号。
(d)生成された鍵符号。
この2つの情報を知得した端末は、後述するように、当該WAN側IPアドレス・ポート番号(c)宛に鍵符号(d)を含むパケットを送ることによって、鍵符号の生成要求をした端末との通信が許可されることとなる。
そして、RAM 104内に確保された鍵符号テーブルに、鍵符号の生成要求をした端末のLAN側IPアドレス・ポート番号(a)、当該端末のWAN側ポート番号(c)、生成された鍵符号(c)の3つ組を追加記録して(ステップS309)、ステップS301に戻る。
このほか、ルータ装置101が、他の鍵符号生成サーバ装置に鍵符号の生成を依頼して、鍵符号を取得することとしても良い。この場合は、ルータ装置101と他の鍵符号生成サーバ装置とが共働して、生成部202として機能することとなる。また、鍵符号生成サーバ装置としては、上記のマッチングサーバなどを利用することもできる。
一方、到達したパケットの宛先がWAN側のグローバルIPアドレス・ポートである場合(ステップS303;外部)、当該パケットの送信元のLAN側IPアドレス・ポートに対してNAPTにより割り当てられたWAN側IPアドレス・ポートを、当該パケットの送信元フィールドに書き込んでNAPTを行い、当該書き変えがされたパケットをWAN側NIC 106を介して宛先に送信して(ステップS311)、ステップS301に戻る。NAPTにおけるIPアドレス・ポートの変換テーブルもRAM 104内に記憶されるが、これらのNAPT処理は一般的に行われているIPマスカレードの技術をそのまま適用することができる。
図4は、WANパケット処理の制御の流れを示すフローチャートである。以下、本図を参照して説明する。
WANパケット処理では、まず、ルータ装置101のWAN側NIC 106が、WAN側(典型的にはインターネットである。)から送信されたパケットが到達したか否かを調べる(ステップS401)。到達していなければ(ステップS401;No)、待機して(ステップS402)から、ステップS401に戻る。この待機中には、他の処理をコルーチン的に実行することができる。また、LANパケット処理同様に、受信割り込みを利用しても良い。
パケットが到達している場合(ステップS401;Yes)、判断部204は、当該パケットの宛先を調べる(ステップS403)。宛先が、当該ルータ装置101のWAN側NIC 106のIPアドレス以外である場合(ステップS403;外部)、そのパケットを宛先にたらい回しに中継して(ステップS404)、ステップS401に戻る。
一方、宛先が当該ルータ装置101のWAN側NIC 106のIPアドレスである場合(ステップS403;流入)、判断部204は、当該パケットの宛先となっているポート番号が、鍵符号テーブルにWAN側ポート番号として登録されているものであるか否かを調べ(ステップS405)、そうである場合(ステップS405;Yes)、判断部204は、RAM 104内に用意された鍵符号ホワイトリストに、当該パケットの送信元が登録されているか否かを調べる(ステップS406)。
このように、CPU 103は、WAN側NIC 106等と共働して判断部204として機能する。
ここで、RAM 104内に用意された鍵符号ホワイトリストとは、WAN側ポート番号と、当該WAN側ポートを介しての通信が許可された外部の機器(ステップS401において到達したパケットの送信元)のIPアドレス・ポート番号と、を対応付けて記憶するものである。
登録されていない場合(ステップS406;No)、判断部204は、鍵符号テーブルで当該WAN側ポート番号に対応付けて登録されている鍵符号が、パケットの中身に指定されているか否かを調べる(ステップS407)。
指定されていれば(ステップS407;Yes)、許可部205は、当該パケットの送信元のIPアドレス・ポート番号を、当該WAN側ポート番号に対応付けて、鍵符号ホワイトリストに追加登録して(ステップS408)、ステップS401に戻る。
このように、CPU 103は、RAM 104等と共働して許可部205として機能する。
なお、ある鍵符号について、鍵符号ホワイトリストに登録できる送信元の数に上限を設け、ステップS408においては先着順に登録ができることとし、それ以降の登録はできないようにしても良い。鍵符号が盗聴、傍受、漏曳などされてしまっても、通信を許可したくない相手をできるだけ避けることができるようになる。
なお、鍵符号ホワイトリストにおける送信元の区別の手法としては、当該送信元のIPアドレス・ポート番号を利用するのが典型的であるが、たとえば、あらかじめ割り当てられた識別番号やセッション番号を使用しても良いし、MACアドレスやCPU IDなどを利用することもできる。
一方、指定されていなければ(ステップS407;No)、そのままステップS401に戻り、当該送信元との通信に応答せずに拒否して、いわゆるStealthモードの振舞いをする。
なお、ステップS408の後に、当該パケットを、後述するNAPTによりLAN側に流入させる処理を行ってからステップS401に戻るように構成することも可能である。
また、鍵符号をパケット内に指定する手法であるが、所定のフレーム構造を規定して、当該フレーム構造にしたがって鍵符号を格納することとしても良いし、単にバイト列として当該鍵符号がパケットの内容の部分列として含まれているか否かを確認するだけとしても良い。
さて、ステップS406において、鍵符号ホワイトリストに、WAN側ポート番号とパケットの送信元のIPアドレス・ポート番号の組が登録されている場合(ステップS406;Yes)、受信部206は、当該パケットのLAN側への流入を受け付けるため、通常のNAPTにおけるIPアドレス・ポート変換テーブルや鍵符号テーブルを参照して、当該WAN側ポート番号に対応付けられるLAN側端末のLAN側IPアドレス・ポート番号(これが、宛先となる。)を取得し(ステップS409)、中継部208は、当該パケットの宛先を取得したLAN側IPアドレス・ポート番号に書き換えてNAPTを行い、当該書き換えがされたLAN側NIC 105を介して宛先の端末に送信して(ステップS410)、ステップS401に戻る。
また、ステップS405において、当該パケットの宛先となっているポート番号が、鍵符号テーブルにWAN側ポート番号として登録されているものでない場合(ステップS405;No)、通常のルータパケット処理を行って(ステップS411)、ステップS401に戻る。
通常のルータパケット処理としては、たとえば、通常のホワイトリストとブラックリストに基づく管理を行ったり、NAPTのIPアドレス・ポート変換テーブルに登録されている場合のみ、IPマスカレードによってLAN側にパケットを流入させたり、パケットを捨ててStealthモードとしたり、等、種々の手法を採用することができる。
上記のように、CPU 103は、LAN側NIC 105やWAN側NIC 106と共働して、受信部206および中継部208として機能する。
なお、上記の説明では、理解を容易にするため、パケットの受入の際のACK(ACKnowlegment)の返送については説明を省略しているが、Stealthモードにしない場合には、TCP/IP通信の基本技術に基づいて、ACKを返すようにするのが一般的である。
本実施形態によれば、通信相手を任意の相手に開放したりはせずに、ランダムに生成される鍵符号を割り符として用いることによりこの割り符を使っている送信元との通信を許可するので、本発明によれば、通信相手を適切に制限することができるようになる。
上記実施形態では、鍵符号を通知してきたWAN側の機器は、一旦鍵符号ホワイトリストに登録されると、そのまま登録され続けるものとしていたが、鍵符号そのものに有効期限を設けることも可能である。
有効期限の設定方法としては、
(a)鍵符号を生成した時刻から(鍵符号テーブルに鍵符号が登録されてから)、所定の閾時間が経過した場合に無効となる。
(b)鍵符号ホワイトリストに通信を許可されたIPアドレスが登録されてから、所定の閾時間が経過した場合に無効となる。
(c)通信を許可されたIPアドレスからのパケットが最後に到達してから、所定の閾時間が経過した場合に無効となる。
等の手法が考えられる。
それぞれ、鍵符号テーブルや鍵符号ホワイトリストに、有効期限のフィールドを追加するとともに、(a)(b)では登録時に有効期限を設定し、(c)ではパケットの流入を受け入れるごとに有効期限を延長する。そして、ステップS302やステップS402の待機時間等に有効期限が過ぎた場合には、鍵符号テーブルや鍵符号ホワイトリストから、当該許可対象のデータを削除する処理を行う。
この場合、CPU 103がRAM 104と共働して取消部207として機能することとなる。
本実施形態によれば、一旦通信を許可した相手であっても、一定時間が経過すればその許可が取り消されるので、ダイヤルアップ接続やDHCPなどにより、通信相手のIPアドレスが変化する場合であっても、本来許可すべきでない相手に通信を許可してしまう危険性を減らすことができる。
このほか、本通信装置201がルータ装置101上に実現されている場合には、取消部207が許可を取り消すタイミングとして、以下のような態様を考えることができる。
すなわち、鍵符号に対して割り当てられたLAN側端末とのパケットのやりとりが、一定時間以上なければ、当該鍵符号テーブルや鍵符号ホワイトリストから、当該許可対象のデータを削除するのである。検出の手法としては、
(a)当該LAN側端末に対してパケットを送信したが、応答のアクノリッジが返ってこないままタイムアウトした場合。
(b)一定時間ごとにLAN内の状況を問い合わせるブロードキャストメッセージを送ることとしているときに、当該LAN側端末からの返答がないままタイムアウトした場合。
などが考えられる。
また、LAN側端末がソフトウェア的に通信装置201に鍵符号を無効にする旨の指示を出すこととしても良い。
たとえば、LAN側端末が送信元との通信の許可を個別に判断して、不要と思う相手の通信の許可を取り消す旨の指定をしたパケットを通信装置201に送信すると、取消部207が機能するものである。
このほか、ソフトウェア的に電源をオフできるような機器の場合には、当該機器の電源が切れることを通知するようなパケットをLAN内にブロードキャストし、これをルータ装置101が知得すると、当該LAN側端末の鍵符号を無効にする、というものである。
上記実施形態では、通信装置201をルータ装置101上に実現することとしていたが、直接インターネットに接続されるような単独のコンピュータやゲーム装置を、本発明の通信装置201とすることも可能である。
この場合、コンピュータ等は、アプリケーションプログラムの制御に基づいて鍵符号を生成し、当該鍵符号を通信を許可したい相手に直接もしくはサーバ装置を介して間接的に送る。この場合、中継部208は不要であり、受信部206が受信したパケットをそのまま処理することとなる。
また、上記実施形態と同様に、鍵符号を送ってきた相手のIPアドレス(やポート番号)を鍵符号ホワイトリストに登録することによって、通信機器の適切な制限を行うことができる。
なお、上記の実施形態では、NAPTを例にあげて説明したが、本発明の原理を適用するにあたっては、必ずしもポート番号に関する処理は必須ではない。何らかの形式で宛先が特定できれば十分であり、たとえば、IPアドレス単位やIPアドレス・ネットマスク単位で通信の許可の制御を行う態様においても、同様の処理を行うことが可能であり、これらの態様も本発明の範囲に含まれる。
以上説明したように、本発明によれば、通信相手を適切に制限するのに好適な通信装置、通信方法、ならびに、これらをコンピュータにて実現するプログラムを提供することができる。
本発明の実施形態の一つに係る通信装置が、プログラムを動作させることによって実現されるルータ装置の概要構成を示す模式図である。 ルータ装置上に実現される通信装置の実施形態の概要構成を示す模式図である。 LANパケット処理の制御の流れを示すフローチャートである。 WANパケット処理の制御の流れを示すフローチャートである。
符号の説明
101 ルータ装置
102 フラッシュEEPROM
103 CPU
104 RAM
105 LAN側NIC
106 WAN側NIC
201 通信装置
202 生成部
203 送信部
204 判断部
205 許可部
206 受信部
207 取消部
208 中継部

Claims (7)

  1. コンピュータ通信網と、端末装置と、の間の通信を中継するルータとして機能する通信装置であって、
    当該端末装置から送信されたパケットを受信するLAN側受信部、
    前記LAN側受信部により受信されたパケットが、鍵符号を送るべき宛先を指定する鍵符号生成要求パケットである場合、鍵符号を生成する生成部、
    前記生成された鍵符号と、当該端末装置のWAN側ポート番号と、を指定する鍵符号指定パケットを、当該コンピュータ通信網内の当該鍵符号生成要求パケットに指定される宛先に送信する送信部、
    当該コンピュータ通信網から到来する当該端末装置のWAN側ポート番号を宛先とするパケットに、前記生成された鍵符号が指定されているか否かを判断する判断部、
    当該到来した当該端末装置のWAN側ポート番号を宛先とするパケットに前記生成された鍵符号が指定されている場合、当該到来したパケットの送信元との通信を許可する許可部、
    当該コンピュータ通信網から到来するパケットのうち、前記通信を許可された送信元から送信された当該端末装置のWAN側ポート番号を宛先とするパケットを受信するWAN側受信部
    前記WAN側受信部により受信されたパケットを、当該端末装置に中継する中継部
    を備えることを特徴とする通信装置。
  2. 請求項1に記載の通信装置であって、
    前記送信部は、当該鍵符号を指定する鍵符号指定パケットを所定のサーバ装置に送信し、
    当該到来したパケットであって、前記生成された鍵符号が指定されるパケットの当該到来したパケットの送信元は、当該鍵符号を当該サーバ装置から知得して、当該パケットを当該通信装置に送信する
    ことを特徴とする通信装置。
  3. 請求項1または2に記載の通信装置であって、
    前記通信を許可された送信元から送信されたパケットを最後に受信してからの経過時間が所定の閾時間を超えると、当該送信元に対する通信の許可を取り消す取消部
    をさらに備えることを特徴とする通信装置。
  4. 請求項1または2に記載の通信装置であって、
    当該鍵符号を生成してからの経過時間が所定の閾時間を超えると、当該送信元に対する通信の許可を取り消す取消部
    をさらに備えることを特徴とする通信装置。
  5. 請求項1または2に記載の通信装置であって、
    前記許可部は、前記生成された鍵符号が指定されて到来したパケットの送信元の数があらかじめ定めた閾個数を超えると、当該新たに到来したパケットの送信元との通信を許可しない
    ことを特徴とする通信装置。
  6. LAN側受信部、生成部、送信部、判断部、許可部、WAN側受信部、中継部を備え、コンピュータ通信網と、端末装置と、の間の通信を中継するルータとして機能する通信装置が実行する通信方法であって、
    前記LAN側受信部が、当該端末装置から送信されたパケットを受信するLAN側受信工程、
    前記LAN側受信工程にて受信されたパケットが、鍵符号を送るべき宛先を指定する鍵符号生成要求パケットである場合、前記生成部が、鍵符号を生成する生成工程、
    前記送信部が、前記生成された鍵符号と、当該端末装置のWAN側ポート番号と、を指定する鍵符号指定パケットを、当該コンピュータ通信網内の当該鍵符号生成要求パケットに指定される宛先に送信する送信工程、
    前記判断部が、当該コンピュータ通信網から到来する当該端末装置のWAN側ポート番号を宛先とするパケットに、前記生成された鍵符号が指定されているか否かを判断する判断工程、
    当該到来した当該端末装置のWAN側ポート番号を宛先とするパケットに前記生成された鍵符号が指定されている場合、前記許可部が、当該到来したパケットの送信元との通信を許可する許可工程、
    前記WAN側受信部が、当該コンピュータ通信網から到来するパケットのうち、前記通信を許可された送信元から送信された当該端末装置のWAN側ポート番号を宛先とするパケットを受信するWAN側受信工程、
    前記中継部が、前記WAN側受信工程にて受信されたパケットを、当該端末装置に中継する中継工程
    を備えることを特徴とする通信方法。
  7. コンピュータを、コンピュータ通信網と、端末装置と、の間の通信を中継するルータとして機能する通信装置として機能させるプログラムであって、当該プログラムは、当該コンピュータを、
    当該端末装置から送信されたパケットを受信するLAN側受信部、
    前記LAN側受信部により受信されたパケットが、鍵符号を送るべき宛先を指定する鍵符号生成要求パケットである場合、鍵符号を生成する生成部、
    前記生成された鍵符号と、当該端末装置のWAN側ポート番号と、を指定する鍵符号指定パケットを、当該コンピュータ通信網内の当該鍵符号生成要求パケットに指定される宛先に送信する送信部、
    当該コンピュータ通信網から到来する当該端末装置のWAN側ポート番号を宛先とするパケットに、前記生成された鍵符号が指定されているか否かを判断する判断部、
    当該到来した当該端末装置のWAN側ポート番号を宛先とするパケットに前記生成された鍵符号が指定されている場合、当該到来したパケットの送信元との通信を許可する許可部、
    当該コンピュータ通信網から到来するパケットのうち、前記通信を許可された送信元から送信された当該端末装置のWAN側ポート番号を宛先とするパケットを受信するWAN側受信部、
    前記WAN側受信部により受信されたパケットを、当該端末装置に中継する中継部
    として機能させることを特徴とするプログラム。
JP2006028193A 2006-02-06 2006-02-06 通信装置、通信方法、ならびに、プログラム Expired - Fee Related JP4226606B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006028193A JP4226606B2 (ja) 2006-02-06 2006-02-06 通信装置、通信方法、ならびに、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006028193A JP4226606B2 (ja) 2006-02-06 2006-02-06 通信装置、通信方法、ならびに、プログラム

Publications (2)

Publication Number Publication Date
JP2007208887A JP2007208887A (ja) 2007-08-16
JP4226606B2 true JP4226606B2 (ja) 2009-02-18

Family

ID=38487903

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006028193A Expired - Fee Related JP4226606B2 (ja) 2006-02-06 2006-02-06 通信装置、通信方法、ならびに、プログラム

Country Status (1)

Country Link
JP (1) JP4226606B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5166094B2 (ja) * 2008-03-27 2013-03-21 株式会社野村総合研究所 通信中継装置、ウェブ端末、メールサーバ装置、電子メール端末およびサイトチェックプログラム
US8549625B2 (en) * 2008-12-12 2013-10-01 International Business Machines Corporation Classification of unwanted or malicious software through the identification of encrypted data communication
JP5617108B2 (ja) * 2011-07-14 2014-11-05 岩▲崎▼ 哲夫 静的nat形成装置、リバースプロキシサーバ及び仮想接続制御装置
JP5620937B2 (ja) * 2012-03-29 2014-11-05 富士フイルム株式会社 制御システムおよび被制御装置ならびにそれらの動作制御方法
JP2016148951A (ja) * 2015-02-10 2016-08-18 株式会社三菱東京Ufj銀行 取引装置、取引方法、及び取引システム
US10469477B2 (en) * 2015-03-31 2019-11-05 Amazon Technologies, Inc. Key export techniques

Also Published As

Publication number Publication date
JP2007208887A (ja) 2007-08-16

Similar Documents

Publication Publication Date Title
JP4246705B2 (ja) 宅内端末装置及び通信システム
JP4727126B2 (ja) 近距離無線コンピューティング装置用のセキュア・ネットワーク・アクセスの提供
US8583912B2 (en) Communication system of client terminals and relay server and communication method
RU2584752C2 (ru) Устройство и способ реализации сети передачи данных, используемой для удаленного управления жилищем
KR100814400B1 (ko) IPv4/IPv6 통합 네트워크 시스템의 보안 통신방법 및 그 장치
JP2009111437A (ja) ネットワークシステム
US8935759B2 (en) Apparatus and method for establishing a peer-to-peer communication session with a client device
JP2008153905A (ja) ネットワーク中継プログラム、ネットワーク中継装置、通信システム、ネットワーク中継方法
JP4226606B2 (ja) 通信装置、通信方法、ならびに、プログラム
EP2567504A2 (en) Apparatus and method for establishing a peer-to-peer communication session with a host device
JP2006033206A (ja) 認証システム、ネットワーク集線装置及びそれらに用いる認証方法並びにそのプログラム
Richardson et al. Opportunistic encryption using the internet key exchange (ike)
JP2006109152A (ja) ネットワーク上で通信を行う接続要求機器、応答機器、接続管理装置、及び通信システム
JP4003634B2 (ja) 情報処理装置
JP4420057B2 (ja) 通信方法、情報処理システム及び情報処理装置
JP2007336401A (ja) 通信制御装置、認証システムおよび通信制御プログラム
JP2008187686A (ja) トンネル通信システム、制御装置およびトンネル通信装置
US20060072618A1 (en) Packet-sending communication apparatus with forwarding-address automatic-recognition function, communication system and programs thereof
JP3472098B2 (ja) 移動計算機装置、中継装置及びデータ転送方法
JP3964814B2 (ja) データ送信装置、データ送信システム及びデータ送信制御方法
JP2006352710A (ja) パケット中継装置及びプログラム
JP2007266863A (ja) 通信システム、通信方法、ならびに、プログラム
JP2005130096A (ja) 通信装置、方法、及び、プログラム
Shvecov NAT and Connections Management Facilities
Spencer Sun Feb 10 11: 15: 06 2002 Page 2 pr-l66-w80 draft-richardson-ipsec-opportunistic-05. txt

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080515

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080527

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080716

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: 20081118

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081126

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111205

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121205

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131205

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees