(57)【特許請求の範囲】
【請求項１】
第１の端末に接続される第１の通信網と第２の端末に接続される第２の通信網とを少なくとも含む複数の通信網に接続されるインタフェースと、前記第１の通信網で使用されるアドレスと第２の通信網で使用されるアドレスとを変換するテーブルとを有し、
該変換テーブルは、前記アドレスが前記第１の端末または第２の端末に付与された実アドレスであるか無いかの識別情報を含むことを特徴とするアドレス変換装置。
【請求項２】
第１の端末に接続される第１の通信網と第２の端末に接続される第２の通信網とを少なくとも含む複数の通信網に接続されるインタフェースと、
前記第１の通信網で使用されるアドレスと第２の通信網で使用されるアドレスと前記アドレスが前記第１の端末または第２の端末の実アドレスであるか無いかの識別情報とが格納された記憶手段と、
前記第１の通信網のアドレスと前記第２の通信網のアドレスとの変換を実行する制御手段とを有することを特徴とするアドレス変換装置。
【請求項３】
請求項１に記載のアドレス変換装置において、前記テーブルには、前記アドレス変換の実行の際、前記第１の通信網で使用されるアドレスと第２の通信網で使用されるアドレスのアドレス変換規則と、前記識別情報とが記録されることを特徴とするアドレス変換装置。
【請求項４】
請求項２に記載のアドレス変換装置において、前記制御手段は、前記アドレス変換の実行の際、前記第１の通信網で使用されるアドレスと、第２の通信網で使用されるアドレスのアドレス変換規則と、前記識別情報とを、前記記憶手段に記録することを特徴とするアドレス変換装置。
【請求項５】
請求項１に記載のアドレス変換装置において、前記テーブルが格納される記憶手段を有することを特徴とするアドレス変換装置。
【請求項６】
請求項３に記載のアドレス変換装置において、前記第１の端末または第２の端末からの前記アドレス変換規則に対する設定指示を受信する手段を備えたことを特徴とするアドレス変換装置。
【請求項７】
請求項４に記載のアドレス変換装置において、前記アドレス変換規則を入力する手段、ないし前記第１の端末または第２の端末からアドレス変換規則の設定信号を受信する手段を有することを特徴とするアドレス変換装置。
【請求項８】
請求項１に記載のアドレス変換装置において、前記テーブルが表示される保守端末装置を備えたことを特徴とするアドレス変換装置。
【請求項９】
請求項２に記載のアドレス変換装置において、前記記憶手段の内容が表示される保守端末装置を備えたことを特徴とするアドレス変換装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、相互通信の際に端末を識別するアドレスの変換が必要な複数の通信網の相互接続のためのアドレス変換装置に関する。
【０００２】
【従来の技術】
ある端末が属する網と、通信相手の端末が属する網の通信プロトコルが異なる状況下で、両者間の通信を実現する技術の１つに、プロトコル変換が挙げられる。例えば、インターネットで用いられるInternet Protocol(以下、「IP」と呼ぶ)は、現在、Internet Protocol version 4(以下、「IPv4」と呼ぶ)が全世界的に普及しているが、使用可能なアドレスの枯渇が懸念されており、この問題を解決するものとしてInternet Protocol version 6(以下、「IPv6」と呼ぶ)が提案されている。
しかし、IPv4からIPv6への移行を一挙に行うことは事実上不可能であるため、IPv4を使用する網とIPv6を使用する網とを、プロトコル変換によって接続する方式が提案されている。具体的な変換方式としては、IETF(Internet Engineering Task Force)から出されているRFC(Request For Comments)2765および2766に記載のNAT-PTや、RFC3089に記載のSOCKS64、RFC3142に記載のトランスポートリレー等が知られている。
これらはいずれも、基本的にIPパケットのフォーマットをIPv4とIPv6とで相互に変換する。このとき、IPv4アドレスとIPv6アドレスの変換を行うため、変換の前にIPv4アドレスとIPv6アドレスの変換規則を作成し、保持しておく必要がある。この変換規則は、予め静的に設定しておく場合と、通信が発生するたびに動的に作成する場合とがあり、後者の場合は、変換規則の生成のきっかけとして、DNS(Domain Name System)の名前解決が利用される。
DNSは、文字列で書かれた人間にわかりやすい名前を、IPアドレスに変換するシステムである。以下名前をIPアドレスに変換する操作を名前解決と呼ぶ。今日では、インターネット上のほぼすべてのアプリケーションが、このDNSを利用して通信相手のIPアドレスを取得している。
IPv4-IPv6変換装置は、この事実を利用し、通信開始にあたってやり取りされるDNSのメッセージを常に監視しており、名前解決の要求メッセージを契機として、IPアドレスの変換規則を作成する。以下、IPv6端末からIPv4端末に向けて発信される通信を例にとり、具体的な動作を説明する。
まず、IPv6端末が、DNS代理サーバに、受信側端末のIPv6アドレスを問い合わせる。次に、DNS代理サーバが、他のDNSサーバに問い合わせを行い、その応答として、前記の受信側端末のアドレスを通知される。DNS代理サーバは、通知されたアドレスがIPv4アドレスだった場合、応答メッセージのIPv4アドレスを仮のIPv6アドレスに書き換えて、IPv6端末に送り返す。このとき、IPv4-IPv6変換装置は、DNS代理サーバと連携して、書き換える前のIPv4アドレスと書き換えた仮のIPv6アドレスを対応付けてアドレス変換規則を作成し、装置内部に保持する。
発信側のIPv6端末は、上記のようにしてDNSの名前解決によって通知された受信側端末の仮のIPv6アドレス宛てに、IPv6パケットを送信する。このとき、パケットの送信元アドレスは、発信側端末自身のIPv6アドレスとなる。このIPv6パケットは、一旦、IPv4-IPv6変換装置が受信する。
IPv4-IPv6変換装置は、前記IPv6パケットを受信すると、まず、アドレス変換規則を保持するテーブル(以下、「アドレス変換テーブル」と呼ぶ)から、前記IPv6パケットの宛先IPv6アドレスに対応するIPv4アドレスを検索する。この時点では、宛先アドレスの変換規則は、前記DNSの名前解決によってすでに生成されているため、目的とするIPv4アドレスを得ることができる。
次に、アドレス変換テーブルから、前記IPv6パケットの送信元のIPv6アドレスに対応するIPv4アドレスを検索する。しかし、この時点では、送信元アドレスの変換規則はまだ作成されていないため、目的とするIPv4アドレスは得られない。そこで、アドレス変換装置は、発信側端末のIPv6アドレスに対する仮のIPv4アドレスを新たに割り当て、この２つのアドレスを対応付けてアドレス変換規則を作成し、アドレス変換テーブルに登録する。
送信元アドレスの変換規則が作成され、送信元と宛先のそれぞれに対応するIPv4アドレスが得られると、前記IPv6パケットは、送信元と宛先のアドレスをそれぞれ対応するIPv4アドレスに書き換えたIPv4パケットに変換され、宛先に向けて送出される。これ以降、両端末の間で伝送されるパケットに対しては、送信元アドレスと宛先アドレスの変換規則はともに生成済みであるため、それらの規則を参照してパケット変換が行われる。
ここで動的に生成されたアドレス変換規則は、一時的なものであるため、通信が終了すると破棄される。
上記の例では、IPv6端末からIPv4端末に向けた通信を取り上げたが、IPv4端末からIPv6端末に向けた通信や、IPv4端末同士でのアドレス変換が必要な通信(例えば、アドレスが重複する可能性のある、２つのIPv4プライベート網に跨る通信)においても、上記の手順によって、アドレス変換規則が動的に生成され、アドレス変換を介した通信が行われる。
また、IP以外の通信プロトコルを用いる場合でも、IPv4アドレスやIPv6アドレスのような、各々のプロトコルにおいて端末を識別する情報と、ドメイン名のような、端末をプロトコルによらず一意に識別する情報とを対応付ける手段が存在すれば、上記と同様にして、端末の識別情報をプロトコルに応じて相互変換する規則を生成することが可能である。
【０００３】
【発明が解決しようとする課題】
上記の説明からも明らかなように、アドレス変換を介した通信においては、本来であれば、アドレス変換処理にて書き換えた後の宛先アドレスは、実際に端末に付与されたアドレス(以下、「実のアドレス」と呼ぶ)であるはずである。また、アドレス変換処理にて書き換える前の送信元アドレスも、実のアドレスであるはずである。
もし、アドレス変換処理にて書き換えた後の宛先アドレスが、仮のアドレスであるとすると、次の２通りの不具合が考えられる。
第１に、書き換えた後の宛先アドレスと一致するアドレスを持つ端末が実在しない場合、アドレス変換されてアドレス変換装置から送出されたパケットが到達する先がない。
第２に、仮のアドレスとして設定したアドレスが実在する端末のアドレスと重複している場合、アドレス変換されてアドレス変換装置から送出されたパケットは、意図しない宛先に到着する。
アドレス変換規則の生成の契機としてDNSによるアドレス解決を利用するときは、不具合としては、前記第２の場合が発生し得る。
また、アドレス変換処理にて書き換える前の送信元アドレスが、仮のアドレスであるとすると、書き換えた後の送信元アドレスと同じアドレスを付与された別の端末が実在する可能性があり、受信側の端末では、その別の端末から発信されたパケットのように見える。このため、悪意のある端末が、実在する他の端末を装って、ある端末やサーバに対して不正な行為を働くことが可能となる。
以上のように、アドレス変換を必要とする通信において、アドレス変換前の送信元アドレスが仮のアドレスであったり、アドレス変換後の宛先アドレスが仮のアドレスであったりした場合、該アドレスが付与されたパケットが原因で、宛先の端末が収容されたネットワークに障害が生じる恐れがある。
本発明は、アドレス変換を必要とする通信において、ネットワーク障害を未然に防止することを目的として、アドレス変換前の送信元アドレスが、仮のアドレスでないか否か検査する機能、またはアドレス変換後の宛先アドレスが、仮のアドレスでないか否か検査する機能を具備するアドレス変換装置を提供するものである。
【０００４】
【課題を解決するための手段】
本発明のアドレス変換装置は、アドレス変換テーブルにおいて、アドレス変換規則に付随して、対応付けられた複数のアドレスのうちのどれが実のアドレスで、どれが仮のアドレスであるかを識別する情報を保持する領域を備えていて、実のアドレスに対して仮のアドレスを割り当てて変換規則を作成し、その変換規則をアドレス変換テーブルに登録するときに、同時に、前記の識別情報も記録する。さらに、本発明のアドレス変換装置は、DNSによる名前解決において、DNSサーバから通知されたアドレスに対して仮のアドレスを割り当てる必要が生じたときに、アドレス変換テーブルを検索して、DNSサーバから通知されたアドレスの変換規則を探し、目的とする変換規則が見つかった場合には、前記の識別情報から、変換規則にて対応付けられている２つのアドレスのうちのどちらが仮のアドレスであるかを判断し、DNSサーバから通知されたアドレスが仮のアドレスとしてアドレス変換テーブルに登録されていれば、アドレス変換を行う際に、宛先を置き換えるアドレスが仮のアドレスとなるため、DNSによるアドレス問い合わせに対してエラーの応答を返送する。
【０００５】
【発明の実施の形態】
(実施例１)
本発明の第１の実施の形態を図面を用いて説明する。
図１は、本発明の第１の実施形態におけるIPv4-IPv6変換装置1の構成図である。このIPv4-IPv6変換装置1は、IPv4ネットワークとIPv6ネットワークの間に位置し、IPv4パケットとIPv6パケットのIPヘッダ変換を行うことにより、IPv4端末とIPv6端末の間の通信を実現するものであり、IP送受信部12と、IPヘッダ変換処理部13と、IPアドレス割当処理部14と、IPアドレス変換情報保持部15と、制御部16と、保守端末通信部17とを備える。また、通信回線18を通じて、保守端末装置11が接続されている。
保守端末装置11は、IPv4-IPv6変換装置の動作の設定および動作状態の表示を行う装置であり、例えばCRT等の表示装置と、キーボード等の入力装置と、CPUやRAM等の電子デバイスで構成される。
IP送受信部12は、IPv4ネットワークおよびIPv6ネットワークとの間でIPv4パケットおよびIPv6パケットの送受信を行う機能部分であり、例えばCPUやRAM等の電子デバイスで構成される。
IPヘッダ変換処理部13は、IPv4パケットとIPv6パケットのIPヘッダ変換を行う機能部分であり、例えばCPUやRAM等の電子デバイスで構成される。
IPアドレス割当処理部14は、必要に応じて仮のIPv4アドレスまたは仮のIPv6アドレスを割り当てる機能部分であり、例えばCPUやRAM等の電子デバイスで構成される。
IPアドレス割当処理部14は、1個以上のIPv4アドレスを予約していて、IPv6ネットワークに接続されている端末に対して、予約されているIPv4アドレスの中から、使用されていないアドレスを1個選び、仮のIPv4アドレスとして割り当てる。
また、IPアドレス割当処理部14は、96ビットの数値で表されるプレフィックスを予約していて、IPv4ネットワークに接続されている端末に対して、32ビットの数値で表されるIPv4アドレスの前に、予約されている96ビットのプレフィックスを付加して128ビットの数値を生成し、仮のIPv6アドレスとして割り当てる。
IPアドレス変換情報管理部15は、IPv4アドレスとIPv6アドレスの変換のための情報の保持、読み出し、追加、削除を行う機能部分であり、例えばCPUやRAM等の電子デバイスで構成される。この内部はさらに、IPアドレス変換テーブル150、IPアドレス検査部153、テーブル検索部154に分かれている。
図２は、IPアドレス変換テーブル150の構成図であり、(a)は従来技術におけるテーブル、(b)は本発明におけるテーブルを示している。従来技術では、IPアドレス変換テーブル150の１つのエントリは、IPアドレス変換規則を保持する領域151のみを備えている。これに対し、本発明の構成は、IPアドレス変換規則を保持する領域151に加えて、仮のアドレスの識別情報を保持する領域152を備えるのが特徴である。
領域151の中の、IPv4アドレスを保持する領域に、IPv4アドレスが32ビットの数値で記録され、IPv6アドレスを保持する領域に、IPv6アドレスが128ビットの数値で記録される。
仮のアドレスの識別情報を保持する領域152には、IPv4アドレスが仮のアドレスで、IPv6アドレスが実のアドレスであれば0が記録され、IPv6アドレスが仮のアドレスで、IPv4アドレスが実のアドレスであれば1が記録される。
制御部16は、IPv4-IPv6変換装置1の各構成要素を制御する機能部分であり、例えばCPUやRAM等の電子デバイスで構成される。
保守端末通信部17は、保守端末装置11にて入力された命令を制御部16に渡したり、制御部16から出力された保守端末装置11にメッセージを渡したりする機能部分であり、例えばCPUやRAM等の電子デバイスで構成される。
IPアドレス変換情報保持部15は、保守端末装置11から、IPアドレス変換テーブル150の一部または全部のエントリの内容を表示する命令を受信すると、該エントリのIPv4アドレス、IPv6アドレス、実のアドレス、仮のアドレスが記載されたメッセージを、保守端末通信部17を通じて、保守端末装置11に送信する。
次に、DNSのドメイン情報の問合せを契機とした仮のアドレスの割り当て処理、および、IPヘッダ変換処理における、IPv4-IPv6変換装置の各部分の動作を、順を追って説明する。
図３は、DNSの問い合わせを契機とした仮のアドレスの割り当て処理の手順を示したフローチャートである。
IPv4-IPv6変換装置1には、通信回線を介して、DNS代理サーバが接続されている。DNS代理サーバは、RFC1034やRFC1886等に記載されているDNS技術にしたがって、IPv4ネットワーク内やIPv6ネットワーク内の端末からドメイン情報の問い合わせを受け、IPv4ネットワーク内のDNSサーバあるいはIPv6ネットワーク内のDNSサーバに問い合わせを転送し、ドメイン情報を獲得して問い合わせ元の端末に返送するサーバである。
DNS代理サーバは、端末から受け取った問い合わせと、DNSサーバから受け取った回答とで、アドレスの種類が異なっている場合には、IPv4-IPv6変換装置から、端末からの問い合わせと同じ種類に属する仮のアドレスを獲得し、DNSサーバからのDNS応答のアドレス回答部を、獲得した仮のアドレスに書き換えたDNS応答を生成して、問い合わせ元の端末に返送する。ただし、仮のアドレスの獲得に失敗した場合には、問い合わせ元の端末に、エラーのDNS応答を返送する。
IPv4-IPv6変換装置1は、DNS代理サーバから、仮のアドレスを要求するメッセージが到着すると、IP送受信部12で受信処理を行い、該メッセージをIPアドレス割当処理部14に渡す。
IPアドレス割当処理部14は、DNS代理サーバがDNSサーバから通知された元のアドレス(以下、「元のアドレス」と呼ぶ)に対して仮のアドレスが既に割り当てられているか否かを調べるため、IPアドレス変換情報保持部15に、元のアドレスに対応する仮のアドレスを問い合わせる。なお、元のアドレスは、仮のアドレスを要求するメッセージに記載されている。
IPアドレス変換情報保持部15では、テーブル検索部153が、IPアドレス変換テーブル150を検索し、元のアドレスを含むエントリを探す。その結果、目的のエントリが見つからなければ、エントリが存在しない旨をIPアドレス割当処理部14に通知する。
IPアドレス割当処理部14は、エントリが存在しないことを通知されると、まだ仮のアドレスが割り当てられていないと判断し、仮のアドレスを新たに割り当てて、IPアドレス変換テーブル150に登録する。このとき、仮のアドレスの識別情報も、併せてテーブルに登録する。その後、新たに割り当てた仮のアドレスを含む応答メッセージを生成し、IP送受信部12を通じてDNS代理サーバに返送する。
一方、テーブル検索の結果、元のアドレスを含むエントリが見つかった場合には、テーブル検索部153は、該エントリの内容をIPアドレス検査部154に渡す。
IPアドレス検査部154は、受け取ったエントリの中の、仮のアドレスの識別情報を参照し、元のアドレスの属性が実のアドレスか仮のアドレスかを検査する。アドレス検査の結果、元のアドレスが実のアドレスとして登録されていれば、既に仮のアドレスが割り当てられた正常な状態であると判断し、該エントリに記載された仮のアドレスを、IPアドレス割当処理部14に渡す。
IPアドレス割当処理部14は、IPアドレス検査部154から仮のアドレスを通知されると、通知された仮のアドレスを含む応答メッセージを転送し、IP送受信部12を通じてDNS代理サーバに返送する。
アドレス検査の結果、元のアドレスが仮のアドレスとして登録されていた場合には、IPアドレス検査部154は、元のアドレスに異常がある旨を、IPアドレス割当処理部14に通知する。
IPアドレス割当処理部14は、IPアドレス検査部154から、元のアドレスの異常を通知されると、仮のアドレスの割り当てに失敗したことを示す応答メッセージを転送し、IP送受信部12を通じてDNS代理サーバに返送する。さらに、仮のアドレスに対する仮のアドレスの割り当ての要求があったことを通知するメッセージを、保守端末通信部17を通じて、保守端末装置11に送信する。
本実施例に記載した発明は、アドレス変換前の送信元アドレスが仮のアドレスであったり、アドレス変換後の宛先アドレスが仮のアドレスであったりした場合には、該アドレスが付与されたパケットが、宛先の端末が収容されたネットワークに送信されないようにする機能も有する。また、このような事態が発生したとき、対処を促すため、管理者に通知する機能も備えている。
即ち、本実施例に記載のアドレス変換装置は、アドレス変換処理を行うときに、アドレス変換テーブルを検索して、受信したパケットに記録された宛先アドレスの変換規則と、同パケットの送信元アドレスの変換規則を探し、目的とする変換規則が見つかった場合には、前記の識別情報から、変換規則にて対応付けられている２つのアドレスのどちらが仮のアドレスであるかを判断し、変換処理を行う前の受信パケットに記載されている送信元が仮のアドレスとして登録されている場合、あるいは、受信パケットに記載されている宛先を置き換えるアドレスが仮のアドレスとして登録されている場合には、受信パケットを破棄する。
また、本実施例のアドレス変換装置は、管理者に異常を通知する手段を有していて、前記のDNSサーバから通知されたアドレスが、アドレス変換テーブルに仮のアドレスとして登録されていた場合、および、アドレス変換処理を施される前の受信パケットの送信元アドレス、あるいはアドレス変換処理のときに受信パケットの宛先を置き換えるアドレスが、アドレス変換テーブルに仮のアドレスとして登録されていた場合には、前記通知手段によって、異常が発生した旨を管理者に通知する。
図４は、IPヘッダ変換処理の手順を示したフローチャートである。
IPv4-IPv6変換装置1は、接続されたネットワークのうちの１つからパケットが到着すると、IP送受信部12で受信処理を行い、該メッセージをIPヘッダ変換処理部13に渡す。
IPヘッダ変換処理部13は、IPアドレス変換情報保持部15に対して、受信パケットの宛先アドレスを置き換えるアドレスを問い合わせる。
IPアドレス変換情報保持部15では、テーブル検索部153がIPアドレス変換テーブル150を検索し、受信パケットの宛先アドレスを含むエントリを探す。その結果、宛先アドレスを含むエントリが見つからなければ、エントリが存在しない旨をIPヘッダ変換処理部13に通知する。
宛先アドレスは、仮のアドレスから実のアドレスに置き換えられるため、置き換えるアドレスが存在しなければ、変換は不可能である。そのため、IPヘッダ変換処理部13は、宛先アドレスを含むエントリが存在しないことを通知されると、アドレス変換が不可能であると判断し、受信パケットを破棄する。
一方、テーブル検索の結果、宛先アドレスを含むエントリが見つかった場合には、テーブル検索部153は、該エントリの内容をIPアドレス検査部154に渡す。
IPアドレス検査部154は、受け取ったエントリの中の、仮のアドレスの識別情報を参照し、宛先アドレスを置き換えるアドレスの属性が実のアドレスか仮のアドレスかを検査する。その結果、宛先アドレスを置き換えるアドレスが仮のアドレスとして登録されていた場合には、IPアドレス検査部154は、該アドレスが仮のアドレスである旨を、IPアドレス割当処理部14に通知する。
IPヘッダ変換処理部13は、IPアドレス検査部154から、宛先アドレスを置き換えるアドレスが仮のアドレスであると通知されると、宛先側のネットワークに、該当するアドレスを付与された端末が実在しないと判断し、受信パケットを破棄する。さらに、アドレス変換によって仮のアドレスが宛先になるパケットを受信したことを通知するメッセージを、保守端末通信部17を通じて、保守端末装置11に送信する。
アドレス検査の結果、宛先アドレスを置き換えるアドレスが実のアドレスとして登録されていれば、IPアドレス検査部154は、正常な状態であると判断し、該アドレスをIPヘッダ変換処理部13に渡す。
IPヘッダ変換処理部13は、IPアドレス検査部154から、宛先アドレスを置き換えるアドレスを通知されると、次に、IPアドレス変換情報保持部15に対して、受信パケットの送信元アドレスを置き換えるアドレスを問い合わせる。
IPアドレス変換情報保持部15では、テーブル検索部153がIPアドレス変換テーブル150を検索し、受信パケットの送信元アドレスを含むエントリを探す。その結果、送信元アドレスを含むエントリが見つからなければ、エントリが存在しない旨をIPヘッダ変換処理部13に通知する。
送信元アドレスは、実のアドレスから仮のアドレスに置き換えられる。そこで、IPヘッダ変換処理部13は、送信元アドレスを含むエントリが存在しないことを通知されると、まだ仮のアドレスが割り当てられていないと判断し、IPアドレス割当処理部14に対して、仮のアドレスの割り当てを要求する。
IPアドレス割当処理部14は、IPヘッダ変換処理部13からの要求を受け取ると、受信パケットの送信元アドレスに対し、仮のアドレスを新たに割り当てて、IPアドレス変換テーブル150に登録する。このとき、仮のアドレスの識別情報も、併せてテーブルに登録する。
一方、テーブル検索の結果、送信元アドレスを含むエントリが見つかった場合には、テーブル検索部153は、該エントリの内容をIPアドレス検査部154に渡す。
IPアドレス検査部154は、受け取ったエントリの中の、仮のアドレスの識別情報を参照し、送信元アドレスが実のアドレスか仮のアドレスかを検査する。その結果、送信元アドレスが仮のアドレスとして登録されていた場合には、IPアドレス検査部154は、該アドレスが仮のアドレスである旨を、IPアドレス割当処理部14に通知する。
IPヘッダ変換処理部13は、IPアドレス検査部154から、送信元アドレスが仮のアドレスであると通知されると、送信側のネットワークに、該当するアドレスを付与された端末が実在しないと判断し、受信パケットを破棄する。さらに、仮のアドレスを送信元とするパケットを受信したことを通知するメッセージを、保守端末通信部17を通じて、保守端末装置11に送信する。
アドレス検査の結果、送信元アドレスが実のアドレスとして登録されていれば、IPアドレス検査部154は、正常な状態であると判断し、送信元アドレスを置き換えるアドレスを、IPヘッダ変換処理部13に渡す。
IPヘッダ変換処理部13は、IPアドレス検査部154から、送信元アドレスを置き換えるアドレスを通知されると、このアドレスを送信元とし、アドレス検査部154から通知されたアドレスを宛先とする新たなIPヘッダを生成して、受信パケットのIPヘッダを新たに生成したIPヘッダに付け替え、IP送受信部12を通じて、宛先側のネットワークに送出する。
以下、具体的なネットワークに適用した場合の、IPv4-IPv6変換装置1の動作、および内部状態の遷移について、順を追って説明する。
図５は、IPv4-IPv6変換装置1を介して、IPv4ネットワーク2とIPv6ネットワーク3とを接続した通信ネットワークシステムの模式図である。IPv4-IPv6変換装置1には保守端末装置11が接続されており、該端末装置の画面、ディスプレイには、必要に応じて図２に示したテーブルの内容が表示される。
IPv4ネットワーク2には、IPv4 DNSサーバ21と、IPv4端末22とが接続されている。これらの機器は、全て、通信プロトコルとしてIPv4のみを使用する。IPv4端末22には、IPv4アドレス133.144.10.1が付与されているとする。
IPv6ネットワーク3には、DNS代理サーバ30と、IPv6 DNSサーバ31と、IPv6端末32とが接続されている。これらの機器は、全て、通信プロトコルとしてIPv6のみを使用する。IPv6端末32には、IPv6アドレス2001:1::1が付与されているとする。IPv4 DNSサーバ21は、IPv4ネットワーク2のドメイン情報を管理する。このドメイン情報には、端末の名前とIPv4アドレスの対応関係が登録されており、端末の名前とIPv6アドレスの対応関係は登録されていない。
IPv6 DNSサーバ31は、IPv6ネットワーク3のドメイン情報を管理する。このドメイン情報には、端末の名前とIPv6アドレスの対応関係が登録されており、端末の名前とIPv4アドレスの対応関係は登録されていない。
DNS代理サーバ30は、IPv4ネットワーク2のドメイン情報に関する問い合わせをIPv4 DNSサーバ21に転送し、IPv6ネットワーク3のドメイン情報に関する問い合わせをIPv6 DNSサーバ31に転送するように設定されている。
IPv4-IPv6変換装置1には、IPv6端末に割り当てる仮のIPv4アドレスとして、133.11.98.1から133.11.98.254までの254個のIPv4アドレスが予約されているとする。また、IPv4端末に割り当てる仮のIPv6アドレスを生成するためのプレフィックスとして、3ffe:1::/96が予約されているとする。
さらに、IPv4-IPv6変換装置1には、IPv4 DNSサーバ21およびIPv4端末22と、DNS代理サーバ30とが、アドレス変換を介して通信できるように、必要なアドレス変換規則が予め設定されているとする。
まず、IPv4-IPv6変換装置1が正常なパケットを受信する例として、IPv4端末22からIPv6端末32に対して通信を行なう場合を考える。
図６は、IPv4端末22がIPv6端末32の名前解決を行なう手順を示すシーケンス図である。
IPv4端末22は、DNS代理サーバ30に対して、IPv6端末32の名前に対応するIPv4アドレスを問い合わせるメッセージ(以下、「メッセージA」と呼ぶ)を送信する。メッセージAは、途中で、IPv4-IPv6変換装置1にて、IPv4パケットからIPv6パケットに変換されて、DNS代理サーバ30に届けられる。
DNS代理サーバ30は、メッセージAをIPv6 DNSサーバ31に転送する。
IPv6 DNSサーバ31は、メッセージAを受信すると、IPv6端末32の名前に対応するIPv4アドレスを検索するが、IPv4アドレスは登録されていないため、未登録である旨を通知する応答メッセージ(以下、「メッセージB」と呼ぶ)をDNS代理サーバ30へ返す。
DNS代理サーバ30は、メッセージBを受信した結果、IPv6端末32の名前に対応するIPv4アドレスが獲得できなかったため、メッセージAを複製して、IPv6端末32の名前に対応するIPv6アドレスを問い合わせるメッセージ(以下、「メッセージC」と呼ぶ)を生成し、IPv6 DNSサーバ31に転送する。
IPv6 DNSサーバ31は、メッセージCを受信すると、IPv6端末32の名前に対するIPv6アドレスを検索し、登録されているIPv6アドレス2001:1::1を、メッセージBに対する応答メッセージ(以下、「メッセージD」と呼ぶ)として、DNS代理サーバ30へ返す。
DNS代理サーバ30は、メッセージDを受信すると、該メッセージ内にはIPv6アドレス2001:1::1が記載されており、IPv4端末22から受信したメッセージAで問い合わせているIPv4アドレスではないため、IPv4-IPv6変換装置1に対して、2001:1::1に対する仮のIPv4アドレスを要求するメッセージ(以下、「メッセージAA」と呼ぶ)を送信する。
IPv4-IPv6変換装置1は、メッセージAAを受信すると、IPアドレス変換テーブル150を検索し、IPv6アドレス2001:1::1に対する仮のIPv4アドレスが割り当て済みでないか調べる。しかし、この時点では、IPアドレス変換テーブル150には、目的とするアドレス変換情報は登録されていない。
そこで、IPv4-IPv6変換装置1は、IPv6アドレス2001:1::1に対して、IPv4アドレス133.11.98.1を仮のIPv4アドレスとして割り当て、IPアドレス変換テーブル150のエントリ1の中の、IPv4アドレスを保持する領域に133.11.98.1を記録し、IPv6アドレスを保持する領域に2001:1::1を記録し、仮のアドレスの識別情報を保持する領域に、IPv4アドレスが仮のアドレスで、IPv6アドレスが実のアドレスであることを示す、値0を記録する。
さらに、IPv4-IPv6変換装置1は、メッセージAAに対する応答(以下、「メッセージBB」と呼ぶ)として、仮のIPv4アドレス133.11.98.1を、DNS代理サーバ30へ返送する。
DNS代理サーバ30は、メッセージDに記載されているIPv6アドレス2001:1::1を、仮のIPv4アドレス133.11.98.1に書き換え、メッセージAに対する応答メッセージ(以下、「メッセージE」と呼ぶ)として、IPv4端末22に返す。メッセージEは、途中で、IPv4-IPv6変換装置1にて、IPv6パケットからIPv4パケットに変換されて、IPv4端末22に届けられる。
IPv4端末22は、メッセージEを受信すると、宛先アドレスが133.11.98.1、送信元アドレスが133.144.10.1のIPv4パケット(以下、「パケットa」と呼ぶ)を、IPv4-IPv6変換装置1に送信する。
図７は、パケットaが、IPv4端末22から送出されて、IPv6端末32に到達するまでの流れを示したシーケンス図である。
IPv4-IPv6変換装置1は、パケットaを受信すると、IPアドレス変換テーブル150を検索し、IPv4アドレス133.11.98.1に対応するIPv6アドレスを探す。ここでは、先に登録されたエントリ1に、IPv4アドレス133.11.98.1に対応するIPv6アドレス2001:1::1が記載されているのが見つかる。
次に、エントリ1の仮のアドレスの識別情報を参照した結果、値0が記録されているため、IPv4アドレスが仮のアドレスで、IPv6アドレスが実のアドレスであることが判明する。すなわち、宛先アドレスを置き換えるアドレスが実のアドレスとなっており、これは正常な状態である。そこで、エントリ1に記録されたIPv6アドレス2001:1::1が、IPヘッダ変換処理後の宛先アドレスとなる。
次に、IPv4-IPv6変換装置1は、IPアドレス変換テーブル150を検索し、IPv4アドレス133.144.10.1に対応するIPv6アドレスを探す。しかし、この時点では、IPアドレス変換テーブル150には、目的とするアドレス変換情報は登録されていない。
そこで、IPv4-IPv6変換装置1は、IPv4アドレス133.144.10.1にプレフィックス3ffe:1::/96を付加して、仮のIPv6アドレス3ffe:1::8590:0a01を新たに生成し、IPアドレス変換テーブル150のエントリ2の中の、IPv4アドレスを保持する領域に133.144.10.1を記録し、IPv6アドレスを保持する領域に3ffe:1::8590:0a01を記録し、仮のアドレスの種類を保持する領域に、IPv6アドレスが仮のアドレスで、IPv4アドレスが実のアドレスであることを示す、値1を記録する。このとき生成されたIPv6アドレス3ffe:1::8590:0a01が、IPヘッダ変換処理後の送信元アドレスとなる。
以上で、パケットaを変換するために必要なアドレスが全て得られたため、IPヘッダ変換処理が行われ、パケットaは、宛先アドレスが2001:1::1、送信元アドレスが3ffe:1::8590:0a01のIPv6パケットに変換されて、IPv6ネットワーク3に送出され、IPv6端末32に到達する。
図８は、パケットaを送信した後に、IPv4端末22が、宛先アドレスが133.11.98.1、送信元アドレスが133.144.10.1のIPv4パケット(以下、「パケットb」と呼ぶ)を送信し、IPv6端末32に到達するまでの流れを示したシーケンス図である。
図８によれば、IPv4-IPv6変換装置1がパケットbを受信すると、送信元のIPv4アドレス133.144.10.1に対応するIPv6アドレスの検索までは、上記の手順が繰り返される。
送信元のIPv6アドレスの検索を行った結果、今度は、アドレス変換テーブル150の、先に登録されたエントリ2に、IPv4アドレス133.144.10.1に対応するIPv6アドレス3ffe:1::8590:0a01が格納されているのが見つかる。
【０００６】
次に、エントリ2の仮のアドレスの識別情報を参照した結果、値1が記録されているため、IPv6アドレスが仮のアドレスで、IPv4アドレスが実のアドレスであることが判明する。すなわち、アドレス変換される前の送信元が実のアドレスとなっており、これは正常な状態である。そこで、エントリ2に記録されたIPv6アドレス3ffe:1::8590:0a01が、IPヘッダ変換処理後の送信元アドレスとなる。
以上で、パケットbを変換するために必要なアドレスが全て得られたため、IPヘッダ変換処理が行われ、パケットbは、宛先アドレスが2001:1::1、送信元アドレスが3ffe:1::8590:0a01のIPv6パケットに変換されて、IPv6ネットワーク3に送出され、IPv6端末32に到達する。
【０００７】
図９は、IPv6端末32が、宛先アドレスが3ffe:1::8590:0a01、送信元アドレスが2001:1::1のパケット(以下、「パケットc」と呼ぶ)を送信し、IPv4端末22に到着するまでの流れを示したシーケンス図である。
IPv4-IPv6変換装置1は、パケットcを受信すると、IPアドレス変換テーブル150を検索し、宛先のIPv6アドレス3ffe:1::8590:0a01に対応するIPv4アドレスを探す。その結果、先に登録されたエントリ2に、IPv6アドレス3ffe:1::8590:0a01に対応するIPv4アドレス133.144.10.1が格納されているのが見つかる。
次に、エントリ2の仮のアドレスの識別情報を参照した結果、値1が記録されているため、IPv6アドレスが仮のアドレスで、IPv4アドレスが実のアドレスであることが判明する。すなわち、宛先アドレスを置き換えるアドレスが実のアドレスとなっており、これは正常な状態である。そこで、エントリ2に記録されたIPv4アドレス133.144.10.1が、IPヘッダ変換処理後の宛先アドレスとなる。
さらに、IPv4-IPv6変換装置1は、IPアドレス変換テーブル150を検索し、送信元のIPv6アドレス2001:1::1に対応するIPv4アドレスを探す。その結果、先に登録されたエントリ1に、IPv6アドレス2001:1::1に対応するIPv4アドレス133.11.98.1が格納されているのが見つかる。
次に、エントリ1の仮のアドレスの識別情報を参照した結果、値0が記録されているため、IPv4アドレスが仮のアドレスで、IPv6アドレスが実のアドレスであることが判明する。すなわち、アドレス変換される前の送信元が実のアドレスとなっており、これは正常な状態である。そこで、エントリ1に記録されたIPv4アドレス133.11.98.1が、IPヘッダ変換処理後の宛先アドレスとなる。
以上で、パケットcを変換するために必要なアドレスが全て得られたため、IPヘッダ変換処理が行われ、パケットcは、宛先アドレスが133.144.10.1、送信元アドレスが133.11.98.1のIPv4パケットに変換されて、IPv6ネットワーク2に送出され、IPv6端末22に到達する。
次に、IPv4-IPv6変換装置1が異常なパケットを受信する第１の例として、IPv4端末22からIPv6端末32に対して通信が行われている状態で、さらに、IPv4アドレス133.11.98.1が付与されたIPv4端末23が、IPv4ネットワーク2に接続されていたとして、IPv6ネットワーク3からIPv4端末23への通信を行う場合を考える。
図１０は、IPv6端末32からIPv4端末23に対して通信を行う場合の手順を示すシーケンス図である。
IPv6端末32は、DNS代理サーバ30に対して、IPv4端末23の名前に対応するIPv6アドレスを問い合わせるメッセージ(以下、「メッセージF」と呼ぶ)を送信する。DNS代理サーバ30は、メッセージFをIPv4 DNSサーバ21に転送する。メッセージFは、途中で、IPv4-IPv6変換装置1にて、IPv6パケットからIPv4パケットに変換されて、IPv4 DNSサーバ21に届けられる。
IPv4 DNSサーバ21は、メッセージFを受信すると、IPv4端末23の名前に対応するIPv6アドレスを検索するが、IPv6アドレスは登録されていないため、未登録である旨を通知する応答メッセージ(以下、「メッセージG」と呼ぶ)をDNS代理サーバ30に返す。メッセージGは、途中で、IPv4-IPv6変換装置1にて、IPv4パケットからIPv6パケットに変換されて、DNS代理サーバ30に届けられる。
DNS代理サーバ30は、メッセージGを受信した結果、IPv4端末23の名前に対応するIPv6アドレスが獲得できなかったため、メッセージFを複製して、IPv4端末23の名前に対応するIPv4アドレスを問い合わせるメッセージ(以下、「メッセージH」と呼ぶ)を生成し、IPv4 DNSサーバ21に転送する。メッセージHは、途中で、IPv4-IPv6変換装置1にて、IPv6パケットからIPv4パケットに変換されて、IPv4 DNSサーバ21に届けられる。
IPv4 DNSサーバ21は、メッセージHを受信すると、IPv4端末23の名前に対するIPv4アドレスを検索し、登録されているIPv4アドレス133.11.98.1を、メッセージHに対する応答メッセージ(以下、「メッセージI」と呼ぶ)として、DNS代理サーバ30に返す。メッセージIは、途中で、IPv4-IPv6変換装置1にて、IPv4パケットからIPv6パケットに変換されて、DNS代理サーバ30に届けられる。
DNS代理サーバ30は、メッセージIを受信すると、該メッセージ内にはIPv4アドレス133.11.98.1が記載されており、IPv6端末32から受信したメッセージFで問い合わせているIPv6アドレスではないため、IPv4-IPv6変換装置1に対して、133.11.98.1に対する仮のIPv6アドレスを要求するメッセージ(以下、「メッセージAAA」と呼ぶ)を送信する。
IPv4-IPv6変換装置1は、メッセージAAAを受信すると、IPアドレス変換テーブル150を検索し、IPv4アドレス133.11.98.1に対応するIPv6アドレスを探す。ここでは、先に登録されたエントリ1に、IPv4アドレス133.11.98.1に対応するIPv6アドレス2001:1::1が格納されているのが見つかる。
次に、エントリ1の仮のアドレスの識別情報を参照した結果、値0が記録されているため、IPv4アドレスが仮のアドレスで、IPv6アドレスが実のアドレスであることが判明する。すなわち、元のIPv4アドレスが、仮のアドレスとして登録されたものとなっている。そこで、IPv4-IPv6変換装置1は、IPv6アドレスの割り当てに失敗した旨を、メッセージAAAに対する応答(以下、「メッセージBBB」と呼ぶ)として、DNS代理サーバ30に返す。
また、IPv4-IPv6変換装置1は、保守端末装置11に対して、仮のIPv4アドレスに対する仮のIPv6アドレスの割り当てを要求された旨のメッセージを送信する。
DNS代理サーバ30は、メッセージBBBを受信した結果、仮のIPv6アドレス要求に対する応答がエラーであったため、メッセージFに対するエラー応答(以下、「メッセージJ」と呼ぶ)をIPv6端末32に送信する。
IPv6端末32は、メッセージJを受信した結果、アドレス問い合わせに対する応答がエラーであったため、IPv4端末23に向けた通信を中止する。
次に、IPv4-IPv6変換装置1が異常なパケットを受信する第２の例として、IPv4端末22からIPv6端末32に対して通信が行われている状態で、さらに、悪意のあるユーザが、IPv4ネットワーク2に接続されたIPv4端末24から、IPv6ネットワーク3に接続されたIPv6端末33へのアクセスを試みる場合を考える。IPv6端末33には、IPv6アドレス2001:1::2が付与されているものとする。
図１１は、IPv4端末24がIPv6端末33に対して、送信元アドレスを133.11.98.1と偽って通信を行う場合の手順を示すシーケンス図である。ただし、IPv4-IPv4変換装置1では、図６と同様にして、DNSの名前解決により、IPアドレス変換テーブル150のエントリ3に、IPv6アドレス2001:1::2に対するIPv4ネットワーク2専用の仮のIPv4アドレス133.11.98.2が登録されているものとする。
IPv4端末24は、図６と同様にして、宛先のIPv4アドレス133.11.98.2を獲得し、宛先アドレスが133.11.98.2で、送信元アドレスを133.11.98.1と偽ったIPv4パケット(以下、「パケットd」と呼ぶ)を、IPv4-IPv6変換装置1に送信する。
IPv4-IPv6変換装置1は、パケットdを受信すると、IPアドレス変換テーブル150を検索し、IPv4アドレス133.11.98.2に対応するIPv6アドレスを探す。その結果に基づき、IPv6アドレス2001:1::2が、IPヘッダ変換処理後の宛先アドレスと設定される。
次に、IPv4-IPv6変換装置1は、IPアドレス変換テーブル150を検索し、IPv4アドレス133.11.98.1に対応するIPv6アドレスを探す。ここでは、先に登録されたエントリ1に、IPv4アドレス133.11.98.1に対応するIPv6アドレス2001:1::1が格納されているのが見つかる。
次に、エントリ1の仮のアドレスの識別情報を参照した結果、値0が記録されているため、IPv4アドレスが仮のアドレスで、IPv6アドレスが実のアドレスであることが判明する。すなわち、パケットdの送信元が、仮のアドレスとして登録されたものとなっており、受信パケットの送信元が実のアドレスでなければならないという条件に反している。そこで、IPv4-IPv6変換装置1は、パケットdを破棄する。
また、保守端末装置11に対して、仮のIPv4アドレスを送信元とするパケットを受信した旨のメッセージを送信する。
以後、IPv4端末24が、送信元アドレスを133.11.98.1と偽ってIPv6ネットワーク3の端末との通信を試みても、パケットが上記と同様にしてIPv4-IPv6変換装置1で破棄されるため、IPv6ネットワーク3の端末とは通信できない。
（実施例２）
前記実施例は、IPv4アドレスとIPv6アドレスの相互変換を行う装置について示したが、本発明の技術は、アドレスの種類やその数には依存しない。したがって、IPv4アドレスを別のIPv4アドレスに変換する装置や、IPアドレス以外のアドレス変換を行う装置や、３種類以上のアドレスの間の相互変換を行う装置に対しても、本発明の技術を適用することが可能である。
図５では、DNS代理サーバ30をIPv6ネットワーク3に設置しているが、アドレス変換装置に接続された全てのネットワークと通信が可能であれば、どのネットワークに設置しても良い。また、DNS代理サーバとアドレス変換装置とを一体化することも可能である。
個々のアドレス変換規則に記載された複数のアドレスのうち、どれが仮のアドレスで、どれが実のアドレスであるかを識別するために、IPアドレス変換テーブル150では、各々のエントリに対して、仮のアドレスの種類(IPv6アドレスか、IPv4アドレスか)を示す値を保持しているが、代わりに、テーブルに記載されている各々のアドレスに対して、そのアドレスの属性(実のアドレスか、仮のアドレスか)を保持するようにしても良い。
【０００８】
保守端末装置11は、図１ではIPネットワークとは独立しているが、IPv4ネットワークやIPv6ネットワークを介してアドレス変換装置に接続されることもある。その場合には、異常が発生したときの保守端末へのメッセージは、独立した保守端末通信部の代わりに、IP送受信部を通じて送信される。
異常が発生したときの管理者への通知手段は、保守端末装置11の補助または代用として、アドレス変換装置本体に表示装置や警告灯、あるいは警告音発生装置を設けても良い。
アドレス変換処理の際に、宛先アドレスの変換規則の検索と、送信元アドレスの変換規則の検索は、どちらを先に行っても良い。また、宛先と送信元の一方の変換規則の検索とアドレスの検査が完了してから、もう一方の変換規則の検索とアドレスの検査を行っても、両方の変換規則の検索を行ってから両方のアドレスの検査を行っても良い。
本発明の第２の実施の形態として、IPv4-IPv4変換装置1bについて説明する。
図１２は、IPv4-IPv4変換装置1bを介して、IPv4ネットワーク2とIPv4ネットワーク4とを接続した通信ネットワークシステムの模式図である。IPv4-IPv4変換装置1bには、保守端末装置11と、DNS代理サーバ30とが接続されている。
IPv4ネットワーク2には、IPv4 DNSサーバ21と、IPv4端末22とが接続されている。IPv4端末22には、IPv4ネットワーク2専用のIPv4アドレス133.144.10.1が付与されているものとする。
IPv4ネットワーク4には、IPv4 DNSサーバ41と、IPv4端末42とが接続されている。IPv4端末42には、IPv4ネットワーク4専用のIPv4アドレス192.168.1.1が付与されているとする。
IPv4 DNSサーバ21は、IPv4ネットワーク2のドメイン情報を管理する。このドメイン情報には、端末の名前とIPv4ネットワーク2専用のIPv4アドレスの対応関係が登録されている。
IPv4 DNSサーバ41は、IPv4ネットワーク4のドメイン情報を管理する。このドメイン情報には、端末の名前とIPv4ネットワーク4専用のIPv4アドレスの対応関係が登録されている。
DNS代理サーバ30は、IPv4ネットワーク2のドメイン情報に関する問い合わせをIPv4 DNSサーバ21に転送し、IPv4ネットワーク4のドメイン情報に関する問い合わせをIPv4 DNSサーバ41に転送するように設定されている。また、DNS代理サーバ30は、IPv4-IPv4変換装置1bと、IPv6パケットによって通信する。
IPv4-IPv4変換装置1bには、IPv4ネットワーク4に接続される端末に割り当てるための、IPv4ネットワーク2専用の仮のIPv4アドレスとして、133.11.98.1から133.11.98.254までの254個のIPv4アドレスが予約されているとする。また、IPv4ネットワーク2に接続される端末に割り当てるための、IPv4ネットワーク4専用の仮のIPv4アドレスとして、192.168.100.1から192.168.100.254までの254個のIPv4アドレスが予約されているとする。
さらに、IPv4-IPv4変換装置1bには、IPv4 DNSサーバ21およびIPv4端末22、IPv4 DNSサーバ41が、それぞれDNS代理サーバ30とアドレス変換を介して通信できるように、必要なアドレス変換規則が予め設定されているとする。
図１３は、IPアドレス変換テーブル150bの構成図である。このテーブルの1つのエントリは、IPv4ネットワーク2専用のIPv4アドレスを保持する領域153と、前記IPv4アドレスの属性情報を保持する領域154と、IPv4ネットワーク4専用のIPv4アドレスを保持する領域155と、前記IPv4アドレスの属性を保持する領域156と、IPv4ネットワーク2専用のIPv4アドレスとIPv4ネットワーク4専用のIPv4アドレスとを仲介するための仮のIPv6アドレスを保持する領域157と、前記IPv6アドレスの属性を保持する領域158を有する。領域154、156および158には、それぞれ領域153、155、157に記載のアドレスが実のアドレスならば1、仮のアドレスならば0が記録される。
IPv4-IPv4変換装置1bは、IPv4ネットワーク2専用のIPv4アドレスに対しては、プレフィックス3ffe:1::/96を付加した仮のIPv6アドレスを生成し、IPv4ネットワーク4専用のIPv4アドレスに対しては、プレフィックス2001:1::/96を付加した仮のIPv6アドレスを生成する。これにより、IPv4ネットワーク2とIPv4ネットワーク4とで重複するIPv4アドレスが存在したとしても、両者を区別することができる。
以下、具体的なネットワークに適用した場合の、IPv4-IPv4変換装置1bの動作、および内部状態の遷移について、順を追って説明する。
まず、IPv4-IPv4変換装置1bが正常なパケットを受信する例として、IPv4端末22からIPv4端末42に対して通信を行なう場合を考える。
図１４は、IPv4端末22がIPv4端末42の名前解決を行なう手順を示すシーケンス図である。
IPv4端末22は、DNS代理サーバ30に対して、IPv4端末42の名前に対応するIPv4アドレスを問い合わせるメッセージ(以下、「メッセージA」と呼ぶ)を送信する。DNS代理サーバ30は、メッセージAをIPv4 DNSサーバ41に転送する。
IPv4 DNSサーバ41は、IPv4端末42の名前に対応するIPv4アドレス192.168.1.1を、メッセージAに対する応答メッセージ(以下、「メッセージD」と呼ぶ)として、DNS代理サーバ30へ返す。
DNS代理サーバ30は、メッセージDを受信すると、該メッセージ内のIPv4アドレス192.168.1.1はIPv4ネットワーク4専用のアドレスのためIPv4ネットワーク2では使用できないと判断し、まず、IPv4-IPv4変換装置1bに対して、192.168.1.1に対する仮のIPv6アドレスを要求するメッセージ(以下、「メッセージAA」と呼ぶ)を送信する。
IPv4-IPv4変換装置1bは、メッセージAAを受信すると、IPアドレス変換テーブル150bを検索し、その結果、IPv4ネットワーク4専用のIPv4アドレス192.168.1.1に対する仮のIPv6アドレスが割り当てられていないことが判明する。
そこで、IPv4-IPv4変換装置1bは、IPv4アドレス192.168.1.1に対して、IPv6アドレス2001:1::c0a8:0101を仮のIPv6アドレスとして割り当て、IPアドレス変換テーブル150bのエントリ1の中の、IPv4ネットワーク4専用のIPv4アドレスを保持する領域に192.168.1.1を記録し、該IPv4アドレスの属性を保持する領域に、該アドレスが実のアドレスであることを示す値1を記録し、IPv6アドレスを保持する領域に2001:1::c0a8:0101を記録し、該IPv6アドレスの属性を保持する領域に、該アドレスが仮のアドレスであることを示す値0を記録する。
さらに、IPv4-IPv4変換装置1bは、メッセージAAに対する応答(以下、「メッセージBB」と呼ぶ)として、仮のIPv6アドレス2001:1::c0a8:0101を、DNS代理サーバ30へ返送する。
DNS代理サーバ30は、メッセージBBを受信すると、次に、IPv4-IPv4変換装置1bに対して、IPv6アドレス2001:1::c0a8:0101に対するIPv4ネットワーク2専用の仮のIPv4アドレスを要求するメッセージ(以下、「メッセージCC」と呼ぶ)を送信する。
IPv4-IPv4変換装置1は、メッセージCCを受信すると、IPアドレス変換テーブル150bを検索し、その結果、IPv6アドレス2001:1::c0a8:0101に対するIPv4ネットワーク2専用の仮のIPv4アドレスが割り当てられていないことが判明する。
そこで、IPv4-IPv4変換装置1は、IPv6アドレス2001:1::c0a8:0101に対して、133.11.98.1をIPv4ネットワーク2専用の仮のIPv4アドレスとして割り当て、IPアドレス変換テーブル150bのエントリ1の中の、IPv4ネットワーク2専用のIPv4アドレスを保持する領域に133.11.98.1を記録し、該IPv4アドレスの属性を保持する領域に、該アドレスが仮のアドレスであることを示す値0を記録する。
さらに、IPv4-IPv4変換装置1bは、メッセージCCに対する応答(以下、「メッセージDD」と呼ぶ)として、IPv4ネットワーク2専用の仮のIPv4アドレス133.11.98.1を、DNS代理サーバ30へ返送する。
DNS代理サーバ30は、メッセージDに記載されているIPv4ネットワーク4専用のIPv4アドレス192.168.1.1を、IPv4ネットワーク2専用の仮のIPv4アドレス133.11.98.1に書き換え、メッセージAに対する応答メッセージ(以下、「メッセージE」と呼ぶ)として、IPv4端末22に返す。
IPv4端末22は、メッセージEを受信すると、宛先アドレスが133.11.98.1、送信元アドレスが133.144.10.1のIPv4パケット(以下、「パケットa」と呼ぶ)を、IPv4-IPv6変換装置1bに送信する。
図１５は、パケットaが、IPv4端末22から送出されて、IPv4端末42に到達するまでの流れを示したシーケンス図である。
IPv4-IPv4変換装置1bは、パケットaを受信すると、IPアドレス変換テーブル150bを検索し、エントリ1より、IPv4ネットワーク2専用のIPv4アドレス133.11.98.1に対応するIPv4ネットワーク4専用のIPv4アドレス192.168.1.1を得る。
次いで、エントリ1のIPv4ネットワーク4専用のIPv4アドレスの属性情報を参照した結果、実のアドレスであることを示す値1が記録されており、これは正常な状態である。
次に、IPv4-IPv4変換装置1bは、IPアドレス変換テーブル150bを検索し、IPv4ネットワーク2専用のIPv4アドレス133.144.10.1に対応するIPv4ネットワーク4専用のIPv4アドレスを探し、目的とするアドレス変換情報が登録されていないことが判明する。
そこで、IPv4-IPv4変換装置1bは、IPv4アドレス133.144.10.1に対して、仮のIPv6アドレス3ffe:1::8590:0a01を割り当て、IPアドレス変換テーブル150bのエントリ2の中の、IPv4ネットワーク2専用のIPv4アドレスを保持する領域に133.144.10.1を記録し、該IPv4アドレスの属性を保持する領域に、該アドレスが実のアドレスであることを示す値1を記録し、IPv6アドレスを保持する領域に3ffe:1::8590:0a01を記録し、該IPv6アドレスの属性を保持する領域に、該アドレスが仮のアドレスであることを示す値0を記録する。
次いで、IPv4-IPv4変換装置1bは、IPv6アドレス3ffe:1::8590:0a01に対して、192.168.100.1をIPv4ネットワーク4専用の仮のIPv4アドレスとして割り当て、IPアドレス変換テーブル150bのエントリ2の中の、IPv4ネットワーク4専用のIPv4アドレスを保持する領域に192.168.100.1を記録し、該IPv4アドレスの属性を保持する領域に、該アドレスが仮のアドレスであることを示す値0を記録する。
以上の結果に基づき、パケットaは、宛先アドレスが192.168.1.1、送信元アドレスが192.168.100.1のIPv4パケットに変換されて、IPv4ネットワーク4に送出され、IPv4端末42に到達する。
次に、IPv4-IPv4変換装置1bが異常なパケットを受信する第１の例として、IPv4端末22からIPv4端末42に対して通信が行われている状態で、さらに、IPv4アドレス133.11.98.1が付与されたIPv4端末23が、IPv4ネットワーク2に接続されていたとして、IPv4ネットワーク4からIPv4端末23への通信を行う場合を考える。
図１６は、IPv4端末42からIPv4端末23に対して通信を行う場合の手順を示すシーケンス図である。
IPv4端末42は、DNS代理サーバ30に対して、IPv4端末23の名前に対応するIPv4アドレスを問い合わせるメッセージ(以下、「メッセージF」と呼ぶ)を送信する。DNS代理サーバ30は、メッセージFをIPv4 DNSサーバ21に転送する。
IPv4 DNSサーバ21は、IPv4端末23の名前に対するIPv4アドレス133.11.98.1を、メッセージFに対する応答メッセージ(以下、「メッセージG」と呼ぶ)として、DNS代理サーバ30に返す。
DNS代理サーバ30は、メッセージGを受信すると、該メッセージ内のIPv4アドレス133.11.98.1はIPv4ネットワーク2専用のアドレスのためIPv4ネットワーク4では使用できないと判断し、まず、IPv4-IPv4変換装置1bに対して、133.11.98.1に対する仮のIPv6アドレスを要求するメッセージ(以下、「メッセージAAA」と呼ぶ)を送信する。
IPv4-IPv6変換装置1bは、メッセージAAAを受信すると、IPアドレス変換テーブル150bを検索し、エントリ1より、IPv4ネットワーク4専用のIPv4アドレス133.11.98.1に対応するIPv4ネットワーク2専用のIPv4アドレス192.168.1.1を得る。
次に、エントリ1のIPv4ネットワーク2専用のIPv4アドレスの属性情報を参照した結果、仮のアドレスであることを示す値0が記録されており、IPヘッダ変換処理後の宛先アドレスが実のアドレスでなければならないという条件に反している。そこで、IPv4-IPv4変換装置1bは、仮のIPv6アドレスの割り当てに失敗した旨を、メッセージAAAに対する応答(以下、「メッセージBBB」と呼ぶ)として、DNS代理サーバ30に返す。
また、IPv4-IPv4変換装置1bは、保守端末装置11に対して、仮のIPv4アドレスに対する仮のIPv6アドレスの割り当てを要求された旨のメッセージを送信する。
DNS代理サーバ30は、メッセージBBBを受信した結果、メッセージFに対するエラー応答(以下、「メッセージJ」と呼ぶ)をIPv4端末42に送信する。
IPv4端末42は、メッセージJを受信した結果、アドレス問い合わせに対する応答がエラーであったため、IPv4端末23に向けた通信を中止する。
次に、IPv4-IPv4変換装置1bが異常なパケットを受信する第２の例として、IPv4端末22からIPv4端末42に対して通信が行われている状態で、さらに、悪意のあるユーザが、IPv4ネットワーク2に接続されたIPv4端末24から、IPv4ネットワーク4に接続されたIPv4端末43へのアクセスを試みる場合を考える。IPv4端末43には、IPv4アドレス192.168.1.2が付与されているものとする。
図１７は、IPv4端末24がIPv4端末43に対して、送信元アドレスを133.11.98.1と偽って通信を行う場合の手順を示すシーケンス図である。ただし、IPv4-IPv4変換装置1bでは、図１４と同様にして、DNSの名前解決により、IPアドレス変換テーブル150bのエントリ3に、IPv4ネットワーク4専用のIPv4アドレス192.168.1.2に対するIPv4ネットワーク2専用の仮のIPv4アドレス133.11.98.2が登録されているものとする。
IPv4端末24は、図１４と同様にして、宛先のIPv4ネットワーク2専用のIPv4アドレス133.11.98.2を獲得し、宛先アドレスが133.11.98.2で、送信元アドレスを133.11.98.1と偽ったIPv4パケット(以下、「パケットd」と呼ぶ)を、IPv4-IPv4変換装置1bに送信する。
IPv4-IPv4変換装置1bは、パケットdを受信すると、IPアドレス変換テーブル150bを検索し、エントリ3より、IPv4ネットワーク2専用のIPv4アドレス133.11.98.2に対応するIPv4ネットワーク4専用のIPv4アドレス192.168.1.2を得る。
さらに、エントリ3のIPv4ネットワーク4専用のIPv4アドレスの属性情報を参照した結果、実のアドレスであることを示す値1が記録されており、これは正常な状態である。
次に、IPv4-IPv4変換装置1bは、IPアドレス変換テーブル150bを検索し、IPv4ネットワーク2専用のIPv4アドレス133.11.98.1に対応するIPv4ネットワーク4専用のIPv4アドレス192.168.1.1を得る。
さらに、エントリ1のIPv4ネットワーク2専用のIPv4アドレスの属性情報を参照した結果、仮のアドレスであることを示す値0が記録されており、受信パケットの送信元が実のアドレスでなければならないという条件に反している。そこで、IPv4-IPv4変換装置1bは、パケットdを破棄する。
また、保守端末装置11に対して、仮のIPv4アドレスを送信元とするパケットを受信した旨のメッセージを送信する。
以後、IPv4端末24が、送信元アドレスを133.11.98.1と偽ってIPv4ネットワーク4の端末との通信を試みても、パケットが上記と同様にしてIPv4-IPv4変換装置1bで破棄されるため、IPv4ネットワーク4の端末とは通信できない。
【０００９】
【発明の効果】
本発明のアドレス変換装置は、アドレス変換処理の際に、変換前の送信元アドレスと変換後の宛先アドレスを検査する機能を備えることにより、宛先や送信元が実在しないパケットが伝送され、ネットワークに悪影響を及ぼすのを防止することができる。
また、前記に該当するパケットを受信したときに管理者に通知することで、管理者は、アドレス変換で用いる仮のアドレスの設定誤りや、仮のアドレスを悪用して自らのアドレスを偽った端末の存在を認識し、迅速な対処を講じることができる。
【図面の簡単な説明】
【図１】  IPv4-IPv6変換装置の構成図。
【図２】  IPv4-IPv6変換装置のIPアドレス変換テーブルの構成図。
【図３】  DNSの問い合わせを契機として仮のアドレスを割り当てる処理の手順を示したフローチャート。
【図４】  IPヘッダ変換処理の手順を示したフローチャート。
【図５】  IPv4-IPv6変換装置を介して、IPv4ネットワークとIPv6ネットワークとを接続した通信ネットワークシステムの模式図。
【図６】  IPv4端末がIPv6端末の名前解決を行なうときのシーケンス図。
【図７】  IPv4端末がIPv6端末の名前解決を終えた後、IPv4端末がIPv6端末に最初のパケットを送信したときのシーケンス図。
【図８】  IPv4端末がIPv6端末の名前解決を終えた後、IPv4端末がIPv6端末に2番目以降のパケットを送信したときのシーケンス図。
【図９】  IPv4端末がIPv6端末の名前解決を終えた後、IPv6端末がIPv4端末にパケットを送信したときのシーケンス図。
【図１０】  IPv6端末からのDNSの問い合わせを契機としてIPv4端末の仮のアドレスを割り当てるとき、元のアドレスが仮のアドレスと重複する場合のシーケンス図。
【図１１】  IPv4端末が、仮のアドレスを送信元と偽って、IPv6端末にアクセスしようとした場合のシーケンス図。
【図１２】  IPv4-IPv4変換装置を介して、アドレス体系が互いに異なる２つのIPv4ネットワークを接続した通信ネットワークシステムの模式図。
【図１３】  IPv4-IPv4変換装置のIPアドレス変換テーブルの構成図。
【図１４】  IPv4端末がアドレス体系が異なるネットワークに属する通信相手のIPv4端末の名前解決を行なうときのシーケンス図。
【図１５】  IPv4端末がアドレス体系が異なるネットワークに属する通信相手のIPv4端末の名前解決を終えた後、IPv4端末が通信相手のIPv4端末に最初のパケットを送信したときのシーケンス図。
【図１６】  IPv4端末からのDNSの問い合わせを契機としてアドレス体系が異なるネットワークに属するIPv4端末の仮のアドレスを割り当てるとき、元のアドレスが仮のアドレスと重複する場合のシーケンス図。
【図１７】  IPv4端末が、仮のアドレスを送信元と偽って、アドレス体系が異なるネットワークに属する通信相手のIPv4端末にアクセスしようとした場合のシーケンス図。
【符号の説明】
1…アドレス変換装置
2…IPv4ネットワーク
3…IPv6ネットワーク
11…保守端末装置
12…IP送受信部
13…IPヘッダ変換処理部
14…IPアドレス割当処理部
15…IPアドレス変換情報保持部
16…制御部
17…保守端末通信部
21…IPv4 DNSサーバ
22, 23, 24…IPv4端末
30…DNS代理サーバ
31…IPv6 DNSサーバ
32, 33…IPv6端末
41…IPv4 DNSサーバ
42, 43…IPv6端末。
【図１】
0004045936.tif 000002
【図２】
0004045936.tif 000003
【図３】
0004045936.tif 000004
【図４】
0004045936.tif 000005
【図５】
0004045936.tif 000006
【図６】
0004045936.tif 000007
【図７】
0004045936.tif 000008
【図８】
0004045936.tif 000009
【図９】
0004045936.tif 000010
【図１０】
0004045936.tif 000011
【図１１】
0004045936.tif 000012
【図１２】
0004045936.tif 000013
【図１３】
0004045936.tif 000014
【図１４】
0004045936.tif 000015
【図１５】
0004045936.tif 000016
【図１６】
0004045936.tif 000017
【図１７】
0004045936.tif 000018