(57)【要約】【課題】本願の発明者らが先に提案した暗号化通信システム「ＴＣＰ２」を利用して、ＩＰｖ４との互換があり、機能の制限も生じることのないアドレス解決を実現する。【解決手段】クライアント１１１では、ＩＰアドレスとＴＣＰ２アドレスとポート番号を用いて通信パケットを用意する。この通信パケットがＬＡＮ１１０とインターネット３１０とを繋ぐＴＣＰ２ルータ３１２に送られると、ＴＣＰ２ルータ３１２は送信元のＩＰアドレスをローカルアドレスからグローバルアドレスに書き替える。そしてこの場合に、ＴＣＰ２アドレスは「ＴＣＰ２」の技術によって唯一無二に定められているので、ＴＣＰ２ルータ３１２では、ＴＣＰ２アドレスは書き替える必要がないと共に、送信元のポート番号も書き替える必要がなくなる。そしてＴＣＰ２ルータ３１２内には、変更前のＩＰアドレスと、ＴＣＰ２アドレス及びポート番号のテーブルが作られる。【選択図】図７
2008022057.tif 000002
【特許請求の範囲】
【請求項１】
接続要求を行うコンピュータと該接続要求を受け付けるコンピュータとの間で、ＴＣＰ又はＵＤＰに該当するプロトコルを取り扱う通信システムであって、
前記接続要求を行うコンピュータは、前記ＴＣＰパケット又はＵＤＰパケットに対して当該コンピュータ及び／又は当該コンピュータを使用する者の固有の識別アドレスを付加する手段を有し、
前記接続要求を受け付けるコンピュータは、前記ＴＣＰパケット又はＵＤＰパケットから前記識別アドレスを判別して前記識別アドレスを認証し、前記識別アドレスが予め設定された範囲で一致する場合には接続を許可し、前記識別アドレスが予め設定された範囲で一致しない場合には接続を拒否すると共に、
前記接続要求を行うコンピュータ及び／又は前記接続要求を受け付けるコンピュータの個々の前記識別アドレスをＩＰアドレスと共に登録する登録手段が設けられ、
前記識別アドレスを用いて前記接続要求を行うコンピュータ及び／又は前記接続要求を受け付けるコンピュータに対するアドレス解決を行う
ことを特徴とする通信システム。
【請求項２】
接続要求を行うコンピュータと該接続要求を受け付けるコンピュータとの間で、ＴＣＰ又はＵＤＰに該当するプロトコルを取り扱う通信システムに用いるアドレス解決方法であって、
前記接続要求を行うコンピュータにおいて、前記ＴＣＰパケット又はＵＤＰパケットに対して当該コンピュータ及び／又は当該コンピュータを使用する者の固有の識別アドレスを付加し、
前記接続要求を受け付けるコンピュータにおいて、前記ＴＣＰパケット又はＵＤＰパケットから前記識別アドレスを判別して前記識別アドレスを認証し、前記識別アドレスが予め設定された範囲で一致する場合には接続を許可し、前記識別アドレスが予め設定された範囲で一致しない場合には接続を拒否すると共に、
前記接続要求を行うコンピュータ及び／又は前記接続要求を受け付けるコンピュータの個々の前記識別アドレスをＩＰアドレスと共に登録手段に登録し、
前記識別アドレスを用いて前記接続要求を行うコンピュータ及び／又は前記接続要求を受け付けるコンピュータに対するアドレス解決を行う
ことを特徴とする通信システムにおけるアドレス解決方法。
【請求項３】
接続要求を行うコンピュータと該接続要求を受け付けるコンピュータとの間で、ＴＣＰ又はＵＤＰに該当するプロトコルを用いた通信を行うための通信プログラムであって、
前記接続要求を行うコンピュータには、前記ＴＣＰパケット又はＵＤＰパケットに対して当該コンピュータ及び／又は当該コンピュータを使用する者の固有の識別アドレスを付加する機能を搭載し、
前記接続要求を受け付けるコンピュータには、前記ＴＣＰパケット又はＵＤＰパケットから前記識別アドレスを判別して前記識別アドレスを認証し、前記識別アドレスが予め設定された範囲で一致する場合には接続を許可し、前記識別アドレスが予め設定された範囲で一致しない場合には接続を拒否する機能を搭載すると共に、
前記接続要求を行うコンピュータ及び／又は前記接続要求を受け付けるコンピュータの個々の前記識別アドレスをＩＰアドレスと共に登録手段に登録する機能が設けられ、
前記識別アドレスを用いて前記接続要求を行うコンピュータ及び／又は前記接続要求を受け付けるコンピュータに対するアドレス解決を行う
ことを特徴とする通信プログラム。
【請求項４】
請求項３に記載の通信プログラムをコンピュータで読み取り可能に記憶した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばＷＡＮ（Wide Area Network）とＬＡＮ（Local Area Network）を接続して通信を行う場合に使用して好適な通信システム、アドレス解決方法、通信プログラム及び記録媒体に関する。詳しくは、通信システムで用いる識別アドレスを利用して、良好なアドレス解決が行われるようにしたものである。
【背景技術】
【０００２】
従来のアドレス解決では、いわゆるＭＡＣ（Media Access Control）アドレスを利用するものが知られている（例えば、特許文献１参照。）。すなわちこの方法では、所定の通信カードに付加された識別コードを用いて、通信の宛先等の特定を行っている。
【０００３】
また、本願の発明者らは、先に「ＴＣＰ２」と命名した暗号化通信システムを提案している（例えば、特許文献２参照。）。すなわち「ＴＣＰ２」では、第４層のトランスポート層に暗号化機能を追加して、外部からの不正侵入に強い通信システムを実現した。
【０００４】
従来の技術では、ＭＡＣアドレスを利用してアドレス解決を行うものが知られている。また、本願の発明者らは、先に「ＴＣＰ２」と命名した新規な暗号化通信システムを提案しているものである。
【特許文献１】特開２００６−２００８５号公報
【特許文献２】国際公開ＷＯ２００５／０１５８２７号パンフレット
【発明の開示】
【発明が解決しようとする課題】
【０００５】
現在のインターネットで利用されているインターネットプロトコル（ＩＰｖ４）では、アドレス資源を３２ビットで管理しているため、識別できるコンピュータの最大数は42億9496万7296台である。しかし、近年のインターネットの急速な普及により、アドレス資源の枯渇が予想以上に早く生じるとの危惧が関係者の間に高まり、１２８ビットでアドレスを管理するＩＰｖ６が開発されている。
【０００６】
ところが、ＩＰｖ６はＩＰｖ４との互換がなされていないなどの理由で普及が進んでおらず、ユーザはＩＰｖ４との互換の下でアドレス解決を行う方向が期待されている。その対処方法として実施されているのが、特許文献１にも開示されているＭＡＣアドレス等を用いるアドレス解決である。ここでは、特定の通信カードに付与された識別コードを用いて、その通信カードの装備されたコンピュータを特定している。
【０００７】
しかしながら、ＮＡＰＴ（Network Address Port Translation）と呼ばれるこの方法では、アドレス変換の際に同時にポート番号も変更されてしまう。すなわち、図１１には、従来の通信システムの構成が示されている。この構成において、例えばＬＡＮ１００に繋がれたクライアント１０１から、ＬＡＮ２００に繋がれたサーバ２０１に、ＷＡＮとしてのインターネット３００を介して接続する場合を考える。
【０００８】
この場合に、まずクライアント１０１では、例えば図中の表（Ａ）に示すように宛先及び送信元のＩＰアドレスとポート番号を用いて通信パケットを用意する。ここで、宛先のＩＰアドレスは、ドメイン名しか判らない場合には、ＤＮＳ（Domain Name System）３０１等に問い合わせて記入される。なお、ＤＮＳ３０１は図中の表（Ｂ）に示すようなドメイン名とグローバルアドレスの読み替えテーブルを有している。また、宛先のポート番号「８０」は指定である。
【０００９】
これに対して、送信元のＩＰアドレスはＬＡＮ１００内のローカルアドレスであり、ポート番号は任意に定められている。そこで、この通信パケットがＬＡＮ１００とインターネット３００とを繋ぐルータ３０２に送られると、ルータ３０２は送信元のＩＰアドレスをローカルアドレスからグローバルアドレスに書き替える。また、送信元のポート番号はＬＡＮ１００内で同じ番号が重ならないように、適当な番号に書き替えられる。なお、ルータ３０２内には、接続時に図中の表（Ｃ）に示すような変更前のＩＰアドレスと、変更前、変更後のポート番号によるテーブルが作られる。
【００１０】
これによりルータ３０２からは、図中の表（Ｄ）に示すような宛先及び送信元のＩＰアドレスとポート番号の付加された通信パケットが、グローバルアドレスで指定されたルータ３０３に向けて送信される。そしてこのルータ３０３には図中の表（Ｅ）に示すような変更前アドレスとポート番号のテーブルが設けられており、それに従ってグローバルアドレスがローカルアドレスに書き替えられてＬＡＮ２００に向け送信される。これによって、図中の表（Ｆ）に示すような通信パケットが、ＬＡＮ２００に繋がれたサーバ２０１で受信される。
【００１１】
そしてサーバ２０１からの返信は、上記の図中の表（Ｆ）で宛先と送信元を入れ替えた通信パケットが送信され、ルータ３０３で送信元（図中では宛先）のローカルアドレスがグローバルアドレスに書き替えられる。さらに、ルータ３０２では図中の表（Ｃ）のテーブルに従って、宛先（図中では送信元）のＩＰアドレス及びポート番号が元に戻され、図中の表（Ａ）で宛先と送信元を入れ替えた形の通信パケットがクライアント１０１で受信される。このようにしてクライアント１０１とサーバ２０１間の接続が行われている。
【００１２】
ところがこの通信システムにおいて、図中の表（Ｃ）に示したルータ３０２内の書き替えポート番号のテーブルは、例えばインターネットの接続時のみに作られているものであって、接続が終了すると消滅されてしまう。このため、従来のＮＡＰＴ方式では、例えばインターネット側から内部のコンピュータにアクセスするような利用ができず、また、エラーメッセージや制御メッセージを転送するＩＣＭＰ（Internet Control Message Protocol）も利用できないなどの機能の制限が発生してしまうものである。
【００１３】
この発明はこのような問題点に鑑みて成されたものであって、本発明の目的は、本願の発明者らが先に提案した新規な暗号化通信システム「ＴＣＰ２」を利用することにより、ＩＰｖ４との互換があって機能の制限も生じることのない、全く新規なアドレス解決を提案することである。
【課題を解決するための手段】
【００１４】
上記の課題を解決し、本発明の目的を達成するため、請求項１に記載された発明は、接続要求を行うコンピュータと該接続要求を受け付けるコンピュータとの間で、ＴＣＰ又はＵＤＰに該当するプロトコルを取り扱う通信システムであって、接続要求を行うコンピュータは、ＴＣＰパケット又はＵＤＰパケットに対して当該コンピュータ及び／又は当該コンピュータを使用する者の固有の識別アドレスを付加する手段を有し、接続要求を受け付けるコンピュータは、ＴＣＰパケット又はＵＤＰパケットから識別アドレスを判別して識別アドレスを認証し、識別アドレスが予め設定された範囲で一致する場合には接続を許可し、識別アドレスが予め設定された範囲で一致しない場合には接続を拒否すると共に、接続要求を行うコンピュータ及び／又は接続要求を受け付けるコンピュータの個々の識別アドレスをＩＰアドレスと共に登録する登録手段が設けられ、識別アドレスを用いて接続要求を行うコンピュータ及び／又は接続要求を受け付けるコンピュータに対するアドレス解決を行うことを特徴とする通信システムである。
【００１５】
また、請求項２に記載された発明は、接続要求を行うコンピュータと該接続要求を受け付けるコンピュータとの間で、ＴＣＰ又はＵＤＰに該当するプロトコルを取り扱う通信システムに用いるアドレス解決方法であって、接続要求を行うコンピュータにおいて、ＴＣＰパケット又はＵＤＰパケットに対して当該コンピュータ及び／又は当該コンピュータを使用する者の固有の識別アドレスを付加し、接続要求を受け付けるコンピュータにおいて、ＴＣＰパケット又はＵＤＰパケットから識別アドレスを判別して識別アドレスを認証し、識別アドレスが予め設定された範囲で一致する場合には接続を許可し、識別アドレスが予め設定された範囲で一致しない場合には接続を拒否すると共に、接続要求を行うコンピュータ及び／又は接続要求を受け付けるコンピュータの個々の識別アドレスをＩＰアドレスと共に登録手段に登録し、識別アドレスを用いて接続要求を行うコンピュータ及び／又は接続要求を受け付けるコンピュータに対するアドレス解決を行うことを特徴とする通信システムにおけるアドレス解決方法である。
【００１６】
さらに請求項３に記載された発明は、接続要求を行うコンピュータと該接続要求を受け付けるコンピュータとの間で、ＴＣＰ又はＵＤＰに該当するプロトコルを用いた通信を行うための通信プログラムであって、接続要求を行うコンピュータには、ＴＣＰパケット又はＵＤＰパケットに対して当該コンピュータ及び／又は当該コンピュータを使用する者の固有の識別アドレスを付加する機能を搭載し、接続要求を受け付けるコンピュータには、ＴＣＰパケット又はＵＤＰパケットから識別アドレスを判別して識別アドレスを認証し、識別アドレスが予め設定された範囲で一致する場合には接続を許可し、識別アドレスが予め設定された範囲で一致しない場合には接続を拒否する機能を搭載すると共に、接続要求を行うコンピュータ及び／又は接続要求を受け付けるコンピュータの個々の識別アドレスをＩＰアドレスと共に登録手段に登録する機能が設けられ、識別アドレスを用いて接続要求を行うコンピュータ及び／又は接続要求を受け付けるコンピュータに対するアドレス解決を行うことを特徴とする通信プログラムである。
【００１７】
そして請求項４に記載された発明は、請求項３に記載の通信プログラムをコンピュータで読み取り可能に記憶した記録媒体である。
【発明の効果】
【００１８】
本発明の通信システム、アドレス解決方法、通信プログラム及び記録媒体によれば、ＴＣＰ又はＵＤＰのようなトランスポート層のプロトコル自体に相互認証できる機能を追加し、この相互認証機能を備えたトランスポート層のプロトコルをサーバと各クライアント端末に採用することにより、クライアント端末自体で接続要求のあった他のクライアント端末との接続許可又は接続拒否のための処理が可能になると共に、上記の相互認証機能を利用してＩＰｖ４との互換があり、機能の制限も生じることのない、全く新規なアドレス解決を実現することができる。
【発明を実施するための最良の形態】
【００１９】
以下、図面を参照して本発明による通信システム、アドレス解決方法、通信プログラム及び記録媒体の実施の形態例を説明する。
ここでは、先に本願の発明者らが先に提案した新規な暗号化通信システム「ＴＣＰ２」におけるユーザコードについて説明する。
【００２０】
まず、図１は、本発明による通信システム、アドレス解決方法、通信プログラム及び記録媒体を利用するネットワークの適用例を示すブロック図である。グループＡ〜Ｃは１つのＬＡＮ１０に収容されているクライアント端末群を示している。グループＤのクライアント端末は、ＬＡＮ１０とは異なるＬＡＮ２０に収容されているクライアント端末である。ＬＡＮ１０とＬＡＮ２０とは、外部ネットワーク３０を介して接続されている。
【００２１】
ＬＡＮ１０に収容されているグループＡに属するクライアント端末Ａ１，Ａ２，Ａ３，・・・は、例えば会社の取締役クラスが使用するクライアント端末としてのセキュリティレベルが設定されている。また、ＬＡＮ１０に収容されているクライアント端末の中で、グループＢに属するクライアント端末Ｂ１，Ｂ２，Ｂ３・・・は、例えば部長や課長などの管理職クラスのセキュリティレベルが設定されているクライアント端末である。
【００２２】
そして、同じくＬＡＮ１０に収容されているクライアント端末の中で、グループＣに属するクライアント端末Ｃ１、Ｃ２、Ｃ３・・・は、例えば担当者レベルのセキュリティレベルが設定されているクライアント端末である。当然のことながら、グループＡに属するクライアント端末のセキュリティレベルが最も高く設定され、グループＣに属するクライアント端末のセキュリティレベルが最も低く設定されることになる。
【００２３】
一方、ＬＡＮ１０とは異なるＬＡＮ２０に収容されるグループＤに属するクライアント端末Ｄ１，Ｄ２，Ｄ３・・・は、例えば会社の支所や支店に存在しているクライアント端末であり、グループＣに属するクライアント端末Ｃ１〜Ｃ３と同レベルのセキュリティレベルが設定されているものとする。
【００２４】
上述したように、ＬＡＮ１０に収容されているクライアント端末は、それぞれのグループ毎に異なるセキュリティレベルが設定されているが、各グループに属するクライアント端末には、そのセキュリティレベルに応じてアクセス権限が設定されることになる。すなわち、取締役クラスのセキュリティレベルが設定されるクライアント端末Ａ１、Ａ２、Ａ３・・・には、グループＡ、グループＢ、グループＣの何れに属するクライアント端末に対してもアクセスできるアクセス権限が設定されている。
【００２５】
また、管理職クラス（部課長クラス）のセキュリティレベルを有するグループＢに属するクライアント端末Ｂ１，Ｂ２，Ｂ３・・・、及びグループＣに属する担当者レベルのクライアント端末Ｃ１，Ｃ２，Ｃ３・・・には、それぞれのセキュリティレベルに相当するアクセス権限が設定されている。このように、ＬＡＮ１０が収容する各グループに属するクライアント端末には、インストールサーバＩＳが通信プロトコルをインストールする際に、そのセキュリティレベルに応じたアクセス権限が設定されるようになっている。
【００２６】
また、ＬＡＮ２０は、例えば、会社の支所や支店が保有するＬＡＮであり、このＬＡＮ２０に収容されているクライアント端末Ｄ１、Ｄ２、Ｄ３・・・は、例えばＬＡＮ１０のグループＣに属するクライアント端末Ｃ１、Ｃ２、Ｃ３・・・と同一のセキュリティレベルのクライアント端末と考えてよい。ＬＡＮ２０に収容されている各クライアント端末にも、インストールサーバＩＳが通信プロトコルをインストールする際に、そのセキュリティレベルに応じたアクセス権限が設定されるようになっている。
【００２７】
また、ＬＡＮ１０又はＬＡＮ２０に収容されるそれぞれのクライアント端末は、通信インターフェース４０、記憶手段５０、及び認証手段６０を備えている。図１では、ＬＡＮ１０のグループＣに属する担当者レベルのセキュリティレベルが設定されるクライアント端末Ｃ１だけに上述の通信インターフェース４０、記憶手段５０、認証手段６０が記載されているが、これらの手段はＬＡＮ１０とＬＡＮ２０に収容される全てのクライアント端末及び不図示のサーバも具備しているものである。
【００２８】
通信インターフェース４０は、ＬＡＮ１０あるいはＬＡＮ２０に収容されるそれぞれのクライアント端末間で通信を行う際に、その接続部となるインターフェースを構成する部分である。記憶手段５０には、各クライアント端末の識別アドレスが記憶されている。認証手段６０は、それぞれのクライアント端末のセキュリティレベルに応じて設けられるマスクされた識別アドレスを用いて接続要求の許可あるいは接続要求の拒否を判別する手段である。この認証手続については後で詳細に説明する。
【００２９】
上述したように、ＬＡＮ１０及びＬＡＮ２０に収容される各クライアント端末には、インストールサーバＩＳによって、ＴＣＰ／ＩＰ、ＵＤＰ／ＩＰ等の通信プロトコルのアプリケーションプログラムがインストール（ダウンロード）される。なお、通信プロトコルのアプリケーションプログラムは、ＣＤ−ＲＯＭやＰＣカードのような記録媒体から各クライアント端末のハードディスクにダウンロードすることもできるが、ＰＣカードやＣＤ−ＲＯＭを各クライアント端末に挿入して通信プロトコルを利用可能にしてもよい。
【００３０】
また、外部ネットワーク４０に接続されているインストールサーバＩＳには、ＴＣＰ／ＩＰ、ＵＤＰ／ＩＰ等の通信プロトコルのアプリケーションプログラムのシリアル番号、ＣＰＵのＩＤ等の端末の機器情報、氏名等のユーザ情報、ＭＡＣアドレス（Media Access Control：通信を行うコンピュータやルータなどのハードウエアが独自に持つアドレス、「物理アドレス」ともいう。）、ルータのＩＰアドレス等のＬＡＮ１０及びＬＡＮ２０に接続されている周辺機器の情報が保存されている。
【００３１】
そして、インストールサーバＩＳが、通信プロトコルのアプリケーションプログラムを各クライアント端末にイストールする際に、インストールサーバＩＳから、ＬＡＮ１０とＬＡＮ２０に収容される各クライアント端末に対して、後述するＴＣＰ２に係る識別アドレス（以下、「ＴＣＰ２アドレス」という。）が付与され、各クライアント端末の記憶手段５０に保存される。このＴＣＰ２アドレスが、各クライアント端末間の通信における端末間の相互認証に利用されることになる。
【００３２】
さらに図２は、それぞれのクライアント端末にインストールされるＴＣＰ／ＩＰ、ＵＤＰ／ＩＰ、及びＴＣＰｓｅｃ／ＩＰ、ＵＤＰｓｅｃ／ＩＰ等の通信プロトコルスタックを示す図である。
【００３３】
図２に示すように、「ＴＣＰ２」に用いられるプロトコルスタックは、最下層に相当する物理層（第１層）と、データリンク層（第２層）にＮＩＣ（Network Interface Card）のドライバ１１が配列されている。このドライバ１１は、コンピュータなどのハードウエアをネットワークに接続するためのインターフェースカードのドライバであり、データ送受信制御のためのソフトウエアである。例えばEthernet（登録商標）に接続するためのＬＡＮボード又はＬＡＮカードがこれに相当する。
【００３４】
第３層のネットワーク層には、一部がトランスポート層（第４層）まで延びたＩＰエミュレータ（emulator）１３が存在している。このＩＰエミュレータ１３は、暗号化通信を行うプロトコルである「ＩＰｓｅｃｏｎ ＣＰ」１３ｂと、「ＩＰ ｏｎ ＣＰ」１３ａを用途に応じて切り換えて使う働きをするものである。ここで、「ｏｎ ＣＰ」とは、クラッキング・プロテクタ（ＣＰ）による、「進入」「攻撃」の監視、破棄、切断ないし通過制限の対象となっていること、又は、設定によりなりうることを示している。
【００３５】
また、ネットワーク層には、ＡＲＰ（Address Resolution Protocol）１２が配列されている。このＡＲＰ１２は、ＩＰアドレスからEthernet（登録商標）の物理アドレスであるＭＡＣアドレスを求めるのに使われるプロトコルである。さらに、ネットワーク層には、ＩＰのエラーメッセージや制御メッセージを転送するプロトコルであるＩＣＭＰ１４ａ、同一のデータを複数のホストに効率よく配送する又は配送を受けるために構成されるホストのグループを制御するためのプロトコルであるＩＧＭＰ１４ｂ等が設けられる。
【００３６】
なお、ＩＰエミュレータ１３は、各種のセキュリティ機能を従来のＩＰ周辺のスタックに整合させるためのソフトウエア又はファームウエアである。すなわち、各種のセキュリティ機能を、後述するＴＣＰ、ＵＤＰ、ソケット（Socket）インターフェース等に整合させるためのソフトウエア、又はファームウエア、ないしはハードウエア（電子回路、電子部品）である。従ってこのＩＰエミュレータ１３により、ＩＰｓｅｃの暗号化・復号化及び認証情報付加・認証等の前後の適合処理を行うことができる。
【００３７】
さらにＩＰエミュレータ１３の上層のトランスポート層（第４層）には、ＴＣＰエミュレータ１５とＵＤＰエミュレータ１６が配置される。ＴＣＰエミュレータ１５は、暗号化通信を行うプロトコルである「ＴＣＰｓｅｃｏｎ ＣＰ」１５ｂと、通常の通信プロトコルである「ＴＣＰ ｏｎ ＣＰ」１５ａを用途に応じて切り換えて使う働きをする。同様に、ＵＤＰエミュレータ１６は、暗号化通信を行うプロトコルである「ＵＤＰｓｅｃｏｎ ＣＰ」１６ｂと、通常の通信プロトコルである「ＵＤＰ ｏｎ ＣＰ」１６ａを用途に応じて切り換えて使う働きをする。
【００３８】
ただし、ＴＣＰｓｅｃ１５ｂ及びＴＣＰ１５ａ、ＵＤＰｓｅｃ１６ｂ及びＵＤＰ１６ａは、そのいずれもクラッキング・プロテクタ（ＣＰ）を備えているため、そのいずれを選択した場合でも、クラッカーによる「進入」「攻撃」に対する防御機能を実現することができる。また、ＴＣＰがエラー補償機能を有するのに対して、ＵＤＰはエラー補償機能を持たないが、その分転送速度が速く、かつブロードキャスト機能を備えているという特徴がある。さらにＴＣＰエミュレータ１５とＵＤＰエミュレータ１６は、上位層であるソケットとのインターフェースの役割も果たしている。
【００３９】
さらにトランスポート層（第４層）の上層のセッション層（第５層）には、ＴＣＰ及びＵＤＰ等のプロトコルとデータのやりとりを行うソケットインターフェース１７が設けられる。このソケットは、ＩＰアドレスとポート番号を組み合わせたネットワークアドレスを意味しており、実際には、一連のヘッダの追加ないし削除をまとめて行うための、単一のソフトウエアプログラムモジュール（実行プログラム等）あるいは単一のハードウエアモジュール（電子回路、電子部品等）からなっている。
【００４０】
そして、このソケットインターフェース１７は、さらに上位のアプリケーションからの統一的なアクセス方式を提供するものであり、引数の種類や型など従来と同様のインターフェースを保つようにしている。
【００４１】
この図２に示すソケット１７、ＴＣＰエミュレータ１５、ＵＤＰエミュレータ１６、「ＴＣＰｓｅｃｏｎ ＣＰ」１５ｂ、「ＵＤＰｓｅｃ ｏｎ ＣＰ」１６ｂ、「ＴＣＰ ｏｎ ＣＰ」１５ａ、「ＵＤＰｏｎ ＣＰ」１６ａ、「ＩＣＭＰ ｏｎ ＣＰ」１４ａ、「ＩＧＭＰ ｏｎ ＣＰ」１４ｂ、ＩＰエミュレータ１３、「ＩＰｏｎ ＣＰ」１３ａ、及び「ＡＲＰｏｎＣＰ」１２からなるプロトコルスタックが、本願発明者が提案した暗号化通信システムを実現するためのプロトコルスタック「ＴＣＰ２」である。
【００４２】
次に、ＴＣＰ２において、特に重要な機能である「データ漏洩」を防ぐ機能であるＴＣＰｓｅｃ１５ｂ及びＵＤＰｓｅｃ１６ｂについて説明する。
【００４３】
ＴＣＰｓｅｃ１５ｂ及びＵＤＰｓｅｃ１６ｂのための暗号化・復号化の方法（アルゴリズム、ロジック（論理））としては、公知の秘密鍵（共通鍵）暗号アルゴリズムが用いられる。例えば、秘密鍵暗号アルゴリズムであるＤＥＳ（Data Encryption Standard）や、その改良版としての３ＤＥＳが用いられる。また、その他の暗号アルゴリズムとしては、ＩＤＥＡ（International Data Encryption Algorithm）も用いられる。この暗号アルゴリズムは、データを６４ビットのブロックに区切って暗号化するもので、暗号鍵の長さは１２８ビットである。
【００４４】
また、ＴＣＰｓｅｃ１５ｂ及びＵＤＰｓｅｃ１６ｂの暗号方式として、ＦＥＡＬ（Fastdata Encipherment Algorithm）、ＭＩＳＴＹ、ＡＥＳ（Advanced Encryption Standard）といった暗号方式も利用されるほか、また、独自に作成した秘密の暗号化・復号化アルゴリズムを利用することもできる。ここで、ＦＥＡＬは、暗号化と復号化に同じ鍵を用いる秘密鍵型の暗号方式である。このＦＥＡＬは、ＤＥＳに比べて高速に暗号化と復号化ができるという利点がある。
【００４５】
図３は、本発明の実施の形態例に用いられるＴＣＰ２アドレスの例を示している。このＴＣＰ２アドレスは、８０ビット（２進数８０桁）からなり、図示のように、［分類コード］［企業団体コード］［ホストコード］［ユーザコード］［予備コード］の４つに分類したコードから構成される。［分類コード］は２ビット、［ユーザコード］は３２ビット、［分類コード］は３ビットと固定で割り付けられている。［分類コード］は、企業団体コードとホストコードに配分されるビット数４３ビットの配分割合を決定するコードであり、２ビットで４種類（図３のＡ〜Ｄ）に分けて定義することを可能としている。
【００４６】
そこで分類コード「００」では、図３のＡに示すように、４３ビットの内、［企業団体コード］に７ビットを割り付け、［ホストコード］に３６ビットを割り付ける。この結果、分類コード「００」では、企業団体を最大２７（128）団体定義することができ、１団体当りのホスト割り当て数は２３６台となる。つまり分類コード「００」では、割り付けられる企業団体が少なくなる反面、ホスト数を多く割り付けることができる。従ってこの分類コード「００」は、団体数としては少ないが、多くのクライアントを持っている通信業者（通信キャリア）のような企業団体向けとして好適なものとなる。
【００４７】
次に、分類コード「０１」では、図３のＢに示すように、４３ビットの内、［企業団体コード］に１５ビットを割り付け、［ホストコード］に２８ビットを割り付ける。この結果、分類コード「０１」では、企業団体を最大２１５（32768）団体定義することができるが、その反面、１団体当りのホスト割り当て数は２２８台となるのである。従ってこの分類コード「０１」で分類される団体は、支店や支所を国内外に多く抱える大企業向きの分類コードである。
【００４８】
また、分類コード「１０」では、図３のＣに示すように、４３ビットの内、［企業団体コード］に２５ビットを割り付け、［ホストコード］に１８ビットを割り付ける。この結果、分類コード「１０」は、企業団体を最大２２５団体定義することができるが、１団体当りのホスト割り当て数は２１８（262144）台となる。従ってこの分類コード「１０」は大企業より支店や支所の多くない中堅企業に好適である。
【００４９】
最後の分類コード「１１」では、図３のＤに示すように、４３ビットの内、［企業団体コード］に３１ビットを割り付け、［ホストコード］に１２ビットを割り付ける。この結果、分類コード「１１」は、企業団体を最大２３１団体定義することができるが、１団体当りのホストは２１２（4096）台しか割り当てることができない。従ってこの分類コード「１１」は、分類コード「００」とは正反対で、割り付けられる企業団体が多くなる反面、ホスト数の割付が小さくなる。これは例えば中小企業団体のような、企業数が多く一つ一つの企業ではそれほどホスト数を増やす必要がない団体向けの分類コードとなる。
【００５０】
さらに、上述した［企業団体コード］は、ＴＣＰ２を使用する企業団体に対して、ＴＣＰ２アドレスの割付管理部門が、ユニークに割り当てを行うコードである。これを行うことで、全てのＴＣＰ２使用団体に、ユニークなＴＣＰ２アドレスを割り当てることが可能となる。また、［ホストコード］は、ネットワークに接続した、ＴＣＰ２を実装するコンピュータ機器の固体を示すコードであり、企業団体内のＴＣＰ２管理部門が、企業団体内のＴＣＰ２アドレスをユニークに割り当てるコードである。
【００５１】
従って、これら分類コード、企業団体コード、ホストコードの３つのコードで、ＴＣＰ２を実装するネットワークに接続したコンピュータ機器の全てにユニークなＴＣＰ２アドレスを割り付けることができ、これらのコードによりネットワークに接続したＴＣＰ２を実装したコンピュータ機器を全て識別することができるようになる。なお、［ホストコード］は、企業内での組織などにしたがってグループ分けされるコードである。
【００５２】
最後に「ユーザコード」は、ネットワークに接続され、ＴＣＰ２が実装された各コンピュータ機器を使用するユーザを識別するコードである。１つのコンピュータ機器を複数の人が使用する場合には、１つのコンピュータ機器に対応して複数のユーザコードが存在することになる。特定のユーザが、ＴＣＰ２を使用する際には、その個人にユニークなユーザＩＤ、パスワード、さらには生態認証情報等を必要とするのであるが、これらの情報を３２ビットのユーザコードとして決定しておくためのものである。
【００５３】
なお、［予備コード］は、今後、ＴＣＰ２アドレスを拡張する際に使用するコードであり、現時点で必要とするものではない。
【００５４】
さらに図４は、図３のＣに示す分類コード「１０」の例、すなわち１８ビットが［ホストコード］に割り付けられている場合について、この［ホストコード］を会社の組織にしたがって分割する例を示したものである。なお、図４では、１８ビット割り付けられている［ホストコード］を４階層にグループ化し、図４のＣに示すように「事業部コード」、「部コード」、「課コード」、「機器コード」としている。
【００５５】
次に、図５と図６に基づいて、サーバとクライアント端末の間、あるいはクライアント端末同士の通信とユーザ認証の仕組みを説明する。
【００５６】
図５は、実際のコンピュータ機器（サーバあるいはクライアント端末）のグルーピング制御を説明する上のシステム構成例を示す図である。この図５に示す例は、分類コードが２（２進数の「１０」）で、企業団体コードが２３の例である。そして図５に示すように、サーバには「ホストコード」として、事業部コード３、部コード４、機器コード１が割り当てられている。
【００５７】
そこで、図６の（１）は、上記サーバの持つコードを、ＴＣＰ２アドレスとして２進数で示したものである。ここで課コード及びユーザコードは“０”となっていることから、このサーバは、この部に所属するすべてのユーザが共同で利用するサーバであることがわかる。
【００５８】
すなわち、図５に示すクライアント端末Ｂとクライアント端末ＣＸは同一の課であるＸ課に属するクライアント端末であり、クライアント端末Ｂは、例えば図１のＬＡＮ１０のグループ（Ｂ）に属する管理職（課長）クラスのセキュリティを持つクライアント端末Ｂ１〜Ｂ３の１つを示している。このクライアント端末Ｂは、例えば事業部コード３、部コード４、課コード５、機器コード６、ユーザコード１を有している。このユーザコードが１であることは、一人のユーザ（課長）がクライアント端末Ｂを独占して使用することを示している。
【００５９】
一方、クライアント端末ＣＸは、図１のグループ（Ｃ）に属する担当者クラスのセキュリティを持つクライアント端末Ｃ１〜Ｃ３のいずれか１つの端末でクライアント端末Ｂと同じＸ課に属するクライアント端末を例示したものである。従って図６の（２）に示すように、事業部コード３、部コード４、課コード５までは、クライアント端末Ｂのコードと同じであるが、機器コードには“７”が割り当てられ、クライアント端末Ｂの機器コード“６”と異なっている。
【００６０】
また、図６の（３）のＴＣＰ２アドレスに示されるユーザコードの末尾の３ビットには「？？？」が付されているが、これはユーザコード２〜７（「０１０」〜「１１１」）の６人のユーザがこの端末を共同で利用することを意味している。理論的には、ユーザは最大で８人まで利用可能である。
【００６１】
これに対して、クライアント端末ＣＹは、事業部コード３、部コード４で、クライアント端末Ｂ、ＣＸと一致しているが、課コードが“６”となっている。つまりクライアント端末ＣＹはクライアント端末Ｂ、ＣＸの属するＸ課と異なるＹ課に属する端末である。また、図６の（４）のＴＣＰ２アドレスから分かるように、クライアント端末ＣＹの機器コードは“７”であり、ユーザコードの下４桁は「？？？？」である。
【００６２】
つまり、このクライアント端末ＣＹは、ユーザコード８〜１５（２進数で「１０００」〜「１１１１」）までのコードが割り当てられ、８人のユーザが共同利用するクライアント端末であるといえる。なお、４桁の「？」は最大で１６人のユーザがこのクライアント端末ＣＹを利用することができることを意味している。
【００６３】
さらに、図６を用いて、それぞれのクライアント端末間あるいはクライアント端末とサーバ間の通信接続の可能性について説明する。
【００６４】
図６の（１）のサーバは、部内からのホストコンピュータ全てからの接続要求を許可にするため、図６の（１）に示す「通信許可コード」をその記憶手段５０の設定データベースに保存している。
【００６５】
すなわち、この「通信許可コード」は、「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、「予備コード」をＴＣＰ２アドレスと同じに設定し、「課コード」、「機器コード」、「ユーザコード」を未設定「０」としている。また、「通信許可マスク情報」としては、「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、「予備コード」の全てのビットを「１」に設定し、「課コード」、「機器コード」、「ユーザコード」をすべて「０」に設定している。
【００６６】
また、図５のサーバは、図６の（１）に示すように、「通信禁止コード」と「通信禁止マスク情報」をその記憶手段５０（図１参照）内の設定データベースに具備している。これは、クライアント端末ＣＹの特定のユーザのアクセスを拒否するために設けられたものである。
【００６７】
すなわち、「通信禁止コード」としては、接続を禁止するユーザが使用するクライアント端末が属するＴＣＰ２アドレスである「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、「課コード」、「機器コード」、「ユーザコード」、「予備コード」を全て設定する。そして、「通信禁止マスク情報」として、「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、「課コード」、「機器コード」、「ユーザコード」、「予備コード」の全ビットを「１」に設定する。
【００６８】
これに対し、図５のクライアント端末ＣＸは、図６の（２）に示すように、そのＴＣＰ２設定データベースに、通信許可コードと通信許可マスク情報を持っている。これは、Ｘ課内からのクライアント端末からの接続要求を許可にするために設けられるものである。
【００６９】
従って、通信許可コードとしては、「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、Ｘ課の「課コード」、「予備コード」をＴＣＰ２アドレスと同じに設定する。そして、「機器コード」、「ユーザコード」を未設定「０」とする。また、「通信許可マスク情報」として、「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、「課コード」、「予備コード」の全てのビットを「１」に設定し、「機器コード」、「ユーザコード」を全て「０」に設定する。
【００７０】
これにより、Ｘ課のクライアント端末Ｂは、クライアント端末ＣＸに接続することが可能となる。同様に、クライアント端末Ｂは、クライアント端末ＣＸと同等なセキュリティレベルを有するＸ課に属する全てのクライアント端末にアクセスすることができる。
【００７１】
一方、クライアント端末Ｂは、例えば課長の占有する端末であり、Ｘ課に属するクライアント端末であっても、例えば特別なクライアント端末ＣＸからの接続要求を拒否することができるように設定される。このため、クライアント端末Ｂは、「通信禁止コード」として、「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、「課コード」、「機器コード」、「予備コード」に禁止するクライアント端末ＣＸが使用するＴＣＰ２アドレスのコードと同じコードを設定している。
【００７２】
そして、「通信禁止マスク情報」として、「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、「課コード」、「機器コード」、「予備コード」の全てのビットを「１」とし、「ユーザコード」の全ビットを「０」に設定する。この「通信禁止コード」、「通信禁止マスク情報」は、「通信許可コード」、「通信許可マスク情報」に優先するため、クライアント端末ＣＸ（担当者）からクライアント端末Ｂ（課長）への接続は拒否されることになる。
【００７３】
以上説明したように、図５に示すクライアント端末ＣＸは、Ｘ課内にある全てのクライアント端末からの接続要求を許可にするように設定されように、そのための情報がクライアント端末ＣＸの記憶手段５０の設定データベースに保存されている。
【００７４】
すなわち図６の（３）に示すように、「通信許可コード１」として、「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、Ｘ課の「課コード」及び「予備コード」をＸ課に属するクライアント端末、例えばクライアント端末ＢのＴＣＰ２アドレスと同じに設定し、「機器コード」、「ユーザコード」を未設定“０”とする。そして、通信許可マスク情報１として、「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、「課コード」、「予備コード」の全てのビットを“１”に設定する。
【００７５】
また、クライアント端末ＣＸは、「通信禁止コード」及び「通信禁止マスク情報」をその記憶手段５０の設定データベース内に保有しない。さらに、クライアント端末ＣＸは、例外的に他の課であるＹ課のクライアント端末Ｃからの接続要求だけを許可にするため、通信許可コード２として、「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、「課コード」、「機器コード」、「予備コード」をＹ課のクライアント端末ＣのＴＣＰアドレスと同じに設定し、「ユーザコード」を未設定“０”とする。
【００７６】
そして、通信許可マスク情報２として、「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、「課コード」、「予備コード」を全てのビットを“１”に設定し、「機器コード」、「ユーザコード」を全て“０”に設定する。これにより、クライアント端末ＣＹからクライアント端末ＣＸへの接続が許可されることになる。
【００７７】
次に、図５のクライアント端末ＣＹは、Ｙ課内の全てのクライアント端末からの接続要求を許可にするため、通信許可コード１として、「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、「課コード」、「予備コード」を設定し、「機器コード」、「ユーザコード」を未設定“０”とする。そして、通信許可マスク情報１として、「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、「課コード」、「予備コード」の全てのビットを“１”に設定し、「機器コード」、「ユーザコード」を全て“０”に設定する。
【００７８】
さらに、クライアント端末ＣＹは、例外的に他の課であるＸ課のクライアント端末Ｂからの接続要求だけを許可にするため、通信許可コード２として、「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、「課コード」、「予備コード」をＸ課のクライアント端末ＣＸのＴＣＰ２アドレスと同じに設定し、「機器コード」と「ユーザコード」を未設定“０”とする。
【００７９】
そして、通信許可マスク情報２の「分類コード」、「企業団体コード」、「事業部コード」、「部コード」、「課コード」、「予備コード」の全てのビットを“１”に設定し、「機器コード」、「ユーザコード」を全て“０”に設定する。これにより、クライアント端末ＣＹは、クライアント端末ＣＸからの接続要求を許可することができる。
【００８０】
以上説明したように、ＴＣＰ２を用いたサーバとクライアント端末間、あるいはクライアント端末同士の通信では、それぞれのクライアント端末あるいはサーバに接続許可を与えるクライアント端末あるいは接続を禁止するクライアント端末を自由に設定できるので、情報の漏洩や盗難を防ぐことができ、より確実にクライアント端末間及びクライアント端末とサーバ間通信のセキュリティを保つことができる。
【００８１】
そこで図７には、従来技術で述べた図１１に相当する通信システムの構成が示されている。この構成において、例えばＬＡＮ１１０に繋がれたクライアント１１１から、ＬＡＮ２１０に繋がれたサーバ２１１に、ＷＡＮとしてのインターネット３１０を介して接続する場合を考える。
【００８２】
この場合に、まずクライアント１１１では、例えば図中の表（Ａ）に示すように宛先及び送信元のＩＰアドレスとＴＣＰ２アドレスとポート番号を用いて通信パケットを用意する。ここで、宛先のＩＰアドレスとＴＣＰ２アドレスは、ドメイン名しか判らない場合には、ＴＣＰ２−ＤＮＳ３１１等に問い合わせて記入される。なお、ＴＣＰ２−ＤＮＳ３１１は図中の表（Ｂ）に示すようなドメイン名とグローバルアドレス及びＴＣＰ２アドレスの読み替えテーブルを有している。また、宛先のポート番号「８０」は指定である。
【００８３】
これに対して、送信元のＩＰアドレスはＬＡＮ１１０内のローカルアドレスであり、ポート番号は任意に定められている。そこで、この通信パケットがＬＡＮ１１０とインターネット３１０とを繋ぐＴＣＰ２ルータ３１２に送られると、ＴＣＰ２ルータ３１２は送信元のＩＰアドレスをローカルアドレスからグローバルアドレスに書き替える。なおここでＴＣＰ２ルータ３１２では、従来のルータとは異なる処理が行われるので、ＴＣＰ２ルータとして示す。
【００８４】
そしてこの場合において、ＴＣＰ２アドレスは上述の「ＴＣＰ２」の技術で唯一無二に定められている。従ってこの場合には、ＴＣＰ２ルータ３１２では、ＴＣＰ２アドレスは書き替える必要がないと共に、このＴＣＰ２アドレスによって端末の特定が行われることから、送信元のポート番号も書き替える必要がなくなる。なお、ＴＣＰ２ルータ３１２内には、接続時に図中の表（Ｃ）に示すように変更前のＩＰアドレスと、不変のＴＣＰ２アドレス及びポート番号のテーブルが作られる。
【００８５】
これによりＴＣＰ２ルータ３１２からは、図中の表（Ｄ）に示すような宛先及び送信元のＩＰアドレスとＴＣＰ２アドレス、ポート番号の付加された通信パケットが、グローバルアドレスで指定されたＴＣＰ２ルータ３１３に向けて送信される。そしてこのＴＣＰ２ルータ３１３には図中の表（Ｅ）に示すような変更前アドレスとＴＣＰ２アドレス、ポート番号のテーブルが設けられており、それに従ってグローバルアドレスがローカルアドレスに書き替えられてＬＡＮ２１０に向け送信される。これによって、図中の表（Ｆ）に示すような通信パケットが、ＬＡＮ２１０に繋がれたサーバ２１１で受信される。
【００８６】
そしてサーバ２１１からの返信は、上記の図中の表（Ｆ）で宛先と送信元を入れ替えた通信パケットが送信され、ＴＣＰ２ルータ３１３で送信元（図中では宛先）のローカルアドレスがグローバルアドレスに書き替えられる。さらに、ＴＣＰ２ルータ３１２では図中の表（Ｃ）のテーブルに従って、宛先（図中では送信元）のＩＰアドレスが元に戻され、図中の表（Ａ）で宛先と送信元を入れ替えた形の通信パケットがクライアント１１１で受信される。このようにしてクライアント１１１とサーバ２１１間の接続が行われている。
【００８７】
さらに図８には、上述の処理の流れをシーケンス図で示す。この図８において、最初にクライアント１１１からＴＣＰ２−ＤＮＳ３１１に対してドメイン名に基づくＤＮＳ２要求が行われる（ステップＳ１）。このＤＮＳ２要求に対してＴＣＰ２−ＤＮＳ３１１からは、ドメイン名に対応するグローバルアドレスとＴＣＰ２アドレスが応答される（ステップＳ２）。これにより通信パケットが生成され、ＴＣＰ２ルータ３１２に送信される（ステップＳ３）。なお、応答にＴＣＰ２アドレスを含むことからＤＮＳ２と称する。
【００８８】
ＴＣＰ２ルータ３１２では、送信元のローカルアドレスをグローバルアドレスに変換してＴＣＰ２ルータ３１３に向けて送信する（ステップＳ４）。これに対して、ＴＣＰ２ルータ３１３はサーバ２１１に対してＡＲＰ２要求を行う（ステップＳ５）。このＡＲＰ２要求に対してサーバ２１１からはローカルアドレスとＴＣＰ２アドレスが応答される（ステップＳ６）。なお、応答にＴＣＰ２アドレスを含むことからＡＲＰ２と称する。
【００８９】
これによりＴＣＰ２ルータ３１３では、宛先グローバルアドレスをローカルアドレスに変換し、このローカルアドレスとＴＣＰ２アドレスを付加した通信パケットをサーバ２１１に送信する（ステップＳ７）。これに対してサーバ２１１は、応答の通信パケットを形成してＴＣＰ２ルータ３１３に返信する（ステップＳ８）。さらに、ＴＣＰ２ルータ３１３は送信元のローカルアドレスをグローバルアドレスに変換してＴＣＰ２ルータ３１２に送信する（ステップＳ９）。
【００９０】
そして、ＴＣＰ２ルータ３１２では、宛先のグローバルアドレスをローカルアドレスに変換し、このローカルアドレスとＴＣＰ２アドレスを付加した通信パケットをクライアント１１１に送信する（ステップＳ１０）。このようにして、クライアント１１１とサーバ２１１の間での通信が行われる。
【００９１】
また、図９には、上述のＴＣＰ２における送信側の処理のフローチャートを示す。この図９において、クライアント１１１からサーバ２１１へ送信が開始されると、最初にサーバ２１１のＩＰアドレスが判っているか否か判断される（ステップＳ１１）。そしてＩＰアドレスが判っていないとき（ＮＯ）は、クライアント１１１のＴＣＰ２のＤＮＳ２機能によりＴＣＰ２−ＤＮＳ３１１に問合せ、サーバ２１１のドメインネームからＩＰアドレスとＴＣＰ２アドレスを取得する（ステップＳ１２）。
【００９２】
さらに、クライアント１１１から通信パケットの宛先（ＴＣＰ２ルータ３１２のＩＰアドレス）に通信パケットを送信する（ステップＳ１３）。ＴＣＰ２ルータ３１２は、テーブル（Ｃ）にクライアント１１１のＩＰアドレス（ローカルアドレス）、ＴＣＰ２アドレス、ポート番号を登録する（ステップＳ１４）。また、ＴＣＰ２ルータ３１２でローカルアドレスをグローバルアドレスに変換する（ステップＳ１５）。そしてＴＣＰ２ルータ３１２から通信パケットの宛先（ＴＣＰ２ルータ３１３のＩＰアドレス）に通信パケットを送信する（ステップＳ１６）。
【００９３】
また、ＴＣＰ２ルータ３１３に通信パケットが届くと、テーブル（Ｅ）に宛先のＴＣＰ２アドレスが登録されているかを解析する（ステップＳ１７）。そして登録されているときは、登録されているＴＣＰ２アドレスからサーバ２１１のＩＰアドレス（ローカルアドレス）を取得する（ステップＳ１８）。さらに、サーバ２１１のＩＰアドレス（ローカルアドレス）に向けて通信パケットを送信する（ステップＳ１９）。以上によって送信が完了される。
【００９４】
あるいは、ステップＳ１７でテーブル（Ｅ）に宛先のＴＣＰ２アドレスが登録されていないときは、ＴＣＰ２ルータ３１３のＴＣＰ２のＡＲＰ２機能で、通信パケット内にある宛先のＴＣＰ２アドレスからサーバ２１１のＩＰアドレス（ローカルアドレス）を取得する（ステップＳ２０）。その後は、ステップＳ１９でサーバ２１１のＩＰアドレス（ローカルアドレス）に向けて通信パケットを送信し、これにより送信が完了される。
【００９５】
これに対して、図１０には、上述のＴＣＰ２における返信側の処理のフローチャートを示す。この図１０において、サーバ２１１からクライアント１１１へ返信が開始されると、最初にサーバ２１１から通信パケットの宛先（ＴＣＰ２ルータ３１３のＩＰアドレス）に通信パケットを送信する（ステップＳ２１）。次に、ＴＣＰ２ルータ３１３はテーブル（Ｅ）にサーバ２１１のＴＣＰ２アドレスが登録されているか否か判断する（ステップＳ２２）。
【００９６】
ここで、登録されていないとき（ＮＯ）は、ＴＣＰ２ルータ３１３のテーブル（Ｅ）にクライアント１１１のＩＰアドレス（ローカルアドレス）、ＴＣＰ２アドレス、ポート番号を登録する（ステップＳ２３）。さらに、ＴＣＰ２ルータ３１３でローカルアドレスをグローバルアドレスに変換する（ステップＳ２４）。また、ＴＣＰ２ルータ３１３から通信パケットの宛先（ＴＣＰ２ルータ３１２のＩＰアドレス）に通信パケットを送信する（ステップＳ２５）。
【００９７】
また、ＴＣＰ２ルータ３１２に通信パケットが届くと、テーブル（Ｃ）に宛先のＴＣＰ２アドレスが登録されているかを解析する（ステップＳ２６）。さらに、登録されているＴＣＰ２アドレスからクライアント１１１のＩＰアドレス（ローカルアドレス）を取得する（ステップＳ２７）。そしてクライアント１１１のＩＰアドレス（ローカルアドレス）に向けて通信パケットを送信する（ステップＳ２８）。以上によって返信が完了される。
【００９８】
こうして、本発明の通信システム、アドレス解決方法、通信プログラム及び記録媒体によれば、ＴＣＰ又はＵＤＰのようなトランスポート層のプロトコル自体に相互認証できる機能を追加し、この相互認証機能を備えたトランスポート層のプロトコルをサーバと各クライアント端末に採用することにより、クライアント端末自体で接続要求のあった他のクライアント端末との接続許可又は接続拒否のための処理が可能になると共に、上記の相互認証機能を利用してＩＰｖ４との互換があり、機能の制限も生じることのない、全く新規なアドレス解決を実現することができる。
【００９９】
なお、本発明は上述した実施の形態例に限定されるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りにおいて、他の多くの実施の形態が含まれることは言うまでもない。
【図面の簡単な説明】
【０１００】
【図１】本発明による通信システム、アドレス解決方法、通信プログラム及び記録媒体を利用したネットワークの適用例を示すブロック図である。
【図２】本発明で用いるプロトコルスタックの例を示す図である。
【図３】本発明で用いられるＴＣＰ２アドレスのビット数を企業団体の形態に応じて分類した例を示す図である。
【図４】本発明に用いられるホストコードの具体的内容を示す図である。
【図５】本発明のＴＣＰ２アドレス、通信許可コード、通信許可マスク情報、通信禁止コード及び通信禁止マスク情報の具体例を示す図である。
【図６】本発明の実施の形態に用いられるセキュリティレベルの異なるクライアント端末間、あるいはクライアント端末とサーバ間の通信を説明するための図である。
【図７】本発明の通信システムによるアドレス解決を説明するための図である。
【図８】その説明のための図である。
【図９】その送信側の処理の説明のためのフローチャート図である。
【図１０】その返信側の処理の説明のためのフローチャート図である。
【図１１】従来の通信システムによるアドレス解決を説明するための図である。
【符号の説明】
【０１０１】
１１０，２１０…ＬＡＮ（Local Area Network）、３１０…インターネット、１１１…クライアントのコンピュータ、２１１…サーバのコンピュータ、３１１…ＤＮＳのコンピュータ、３１２，３１３…ルータ
【図１】
2008022057.tif 000003
【図２】
2008022057.tif 000004
【図３】
2008022057.tif 000005
【図４】
2008022057.tif 000006
【図５】
2008022057.tif 000007
【図６】
2008022057.tif 000008
【図７】
2008022057.tif 000009
【図８】
2008022057.tif 000010
【図９】
2008022057.tif 000011
【図１０】
2008022057.tif 000012
【図１１】
2008022057.tif 000013