説明

リソースレコード制御システム、リソースレコード制御方法、アプリケーション判別方法およびプログラム

【課題】IPv6に未対応のアプリケーションプログラムが内在するデュアルスタック端末を調べたり、このような端末に対して適切なリソースレコードでDNS応答が可能なシステム、方法およびプログラムを得ること。
【解決手段】デュアルスタック端末11がDNSサーバ12に対して名前解決要求を行うと、ゲートウェイ13はDNSサーバ12の応答したリソースコードをリソースレコード制御ポリシテーブル13cの参照によって制限する形でデュアルスタック端末11に返答する。これによりデュアルスタック端末11の適切な通信が確保される。ゲートウェイ13はデュアルスタック端末11がフォールバック事象を発生させているかも判別する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信端末がインターネットプロトコルを用いて通信を開始する際に相手装置と通信不能となる状態を回避するようにしたリソースレコード制御システム、リソースレコード制御方法およびリソースレコード制御プログラムならびに端末装置のアプリケーション判別方法およびアプリケーション判別プログラムに関する。
【背景技術】
【0002】
インターネットプロトコルとしてのIPv4(Internet Protocol version 4)プロトコルとIPv6(Internet Protocol version 6)プロトコルの双方を実装したパーソナルコンピュータや情報家電等のデュアルスタック端末が数多く存在している。このような端末のOS(Operating System)におけるDNSリゾルバ(Domain Name System resolver)は、名前からアドレスを割り出す際にDNSサーバに対してAリソースレコードとAAAAリソースレコードを問合せることが一般的である。
【0003】
ここでAリソースレコードは完全修飾ドメイン名に対するIPv4アドレスを指定するDNSレコードである。また、AAAAリソースレコードは、128ビット長のIPv6アドレスをサポートする点で、Aリソースレコードと異なる。
【0004】
AリソースレコードとAAAAリソースレコードの問合せに対してDNSサーバからこれら両方の応答が得られた場合、その端末はAAAAリソースレコードを自身の稼働中のアプリケーションプログラムに優先して応答するのが通常である。ところが、その端末の稼働中のアプリケーションプログラムがIPv6に対応していないという場合がある。この場合には、そのアプリケーションプログラムが、名前解決を行った相手装置と通信を開始しようとしてもAAAAリソースレコードを解釈することができない。この結果、通信を開始することができずにアプリケーションプログラムが使用不可能となる問題が発生する。
【0005】
また、このような問題発生を回避するために通信端末によってはIPv4への通信にフォールバック(fallback)して通信を試みるようにしている。しかしながら、この手法を採用するためには、まずIPv6による通信ができないことをタイムアウトになるまで待って確認する必要がある。このため、IPv4による通信が開始するまでにタイムアウト待ちによる通信遅延が発生するという問題が生じる。
【0006】
そこで、本発明に関連する関連技術として、IPv4アドレスからIPv6アドレス、またはIPv6アドレスからIPv4アドレスへの変換を行うトランスレータ装置をネットワーク上に設けることが提案されている(たとえば特許文献1参照)。この関連技術で、IPv4−IPv6トランスレータ装置は通信端末(ユーザ端末)から所定のFQDN(Fully Qualified Domain Name:完全修飾ドメイン名)に対するIPv6アドレス解決の問合せを受け、DNSサーバに当該FQDNのIPv4アドレスとIPv6アドレスの名前解決について問合せを行う。
【0007】
名前解決の結果、IPv6アドレスとIPv4アドレスが取得できた場合に、取得したIPv6アドレスと併せて、予め設定されたダミープレフィックスに当該IPv4アドレスを埋め込んだダミーIPv6アドレスを通信端末側に返答する。そして、通信端末と通信相手との間の通信に使用するアドレスとしてIPv4アドレス、あるいは、IPv6アドレスのいずれを優先するか判断する。この結果、通信端末と通信相手との間の通信に使用するアドレスとしてIPv4アドレスを優先する場合にはグローバルIPv6アドレスを、また、IPv6アドレスを優先する場合はユニークローカルIPv6ユニキャストアドレスを、ダミープレフィックスとして使用する。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2009−206562号公報(第0005段落、第0021段落、図1)
【発明の概要】
【発明が解決しようとする課題】
【0009】
この関連技術によれば、通信端末がIPv4アドレスとIPv6アドレスの両方に対応したデュアルスタックホストと通信を行う際に、IPv4アドレスでの通信を優先するか、あるいは、IPv6アドレスでの通信を優先するかを、IPv4−IPv6トランスレータにおいて制卸が可能である。したがって、IPv4−IPv6トランスレータ装置の負荷を軽減し、かつ、通信の冗長性を保つことが可能となる。
【0010】
しかしながら、この関連技術では、DNSサーバの他にIPv4−IPv6トランスレータ装置という特別の装置をネットワーク上に必要とする。また、通信端末はIPv4−IPv6トランスレータ装置からIPv6に関する2種類のアドレスを受け取り、ロンゲストマッチ方式でこれらのうちの1つを選択する処理が必要となる。このため、通信端末側の処理も複雑化する。
【0011】
また、デュアルスタック端末であっても、通信相手との関係で適用されるアプリケーションプログラムがIPv6に対応していない場合がある。このような場合、前記した関連技術では、通信端末のアプリケーションプログラム側でAAAAリソースレコードを取り扱うことができないという問題を解決することができない。
【0012】
そこで本発明の目的は、IPv6に対応していないアプリケーションプログラムが内在する端末に対して、DNSサーバがDNS応答に際して適切なリソースレコードで応答することのできるリソースレコード制御システム、方法およびプログラムを提供することにある。
【0013】
本発明の他の目的は、端末側のアプリケーションプログラムがIPv6に対応しているかどうかを判別することのできるアプリケーション判別方法およびプログラムを提供することにある。
【課題を解決するための手段】
【0014】
本発明では、(イ)IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末と、(ロ)所定のネットワークを介して送られてくる名前解決要求を受信して該当する通信相手のドメイン名に対するリソースレコードを要求先に応答するDNS(Domain Name System)サーバと、(ハ)前記したデュアルスタック端末から名前解決要求が送られてきたときこれを受信して前記したDNSサーバに送信する名前解決要求送信手段と、この名前解決要求送信手段の送信した名前解決要求に対して前記したDNSサーバから返答として送られてくるリソースレコードを受信するリソースレコード受信手段と、通信相手のドメイン名ごとに使用を許可するリソースレコードあるいは使用を禁止するリソースレコードをポリシとして定めたリソースレコード制御ポリシテーブルと、前記したリソースレコード受信手段の受信したリソースレコードを基にしてこのリソースレコード制御ポリシテーブルを参照し前記した名前解決要求を行ったデュアルスタック端末に対して通信相手のドメインと通信するためのDNS応答を行うDNS応答手段とを備えたゲートウェイとをリソースレコード制御システムが具備する。
【0015】
また、本発明では、(イ)IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれを受信してDNS(Domain Name System)サーバに送信する名前解決要求送信ステップと、(ロ)この名前解決要求送信ステップで送信した名前解決要求の返答として前記したDNSサーバから送られてくるリソースレコードを受信するリソースレコード受信ステップと、(ハ)このリソースレコード受信ステップで受信したリソースレコードを基にして、通信相手のドメイン名ごとに使用を許可するリソースレコードあるいは使用を禁止するリソースレコードをポリシとして定めたリソースレコード制御ポリシテーブルを参照して前記した名前解決要求を行ったデュアルスタック端末に対して通信相手のドメインと通信するためのDNS応答を行うDNS応答ステップとをリソースレコード制御方法が具備する。
【0016】
更に本発明では、(イ)IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれをゲートウェイとして受信してDNS(Domain Name System)サーバに送信する名前解決要求送信ステップと、(ロ)この名前解決要求送信ステップで送信した名前解決要求に対して前記したDNSサーバからAAAAリソースレコードがDNS応答として送られてきたときこれを前記したデュアルスタック端末にDNS応答として返信するDNS応答返信ステップと、(ハ)このDNS応答返信ステップで返信した前記したデュアルスタック端末がこの返信に基づいて所定時間内に仮想AAAAリソースレコード宛の通信を行ってくるかを判別する通信有無判別ステップと、(ニ)この通信有無判別ステップで前記した所定時間内に仮想AAAAリソースレコード宛の通信を行ってこないとき前記したデュアルスタック端末内にIPv6未対応アプリケーションプログラムが存在していると判断する未対応プログラム存在判別ステップと、(ホ)前記した通信有無判別ステップで前記した所定時間内に仮想AAAAリソースレコード宛の通信があった場合、これがIPv6からIPv4へのフォールバック事象の発生によるものであるかを判別するフォールバック事象発生有無判別ステップと、(へ)このフォールバック事象発生有無判別ステップでフォールバック事象が発生していないと判別されたとき前記したデュアルスタック端末にIPv6対応のアプリケーションプログラムが存在していると判断する対応プログラム存在判別ステップとをアプリケーション判別方法が具備する。
【0017】
更にまた本発明では、ゲートウェイのコンピュータに、リソースレコード制御プログラムとして、(イ)IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれを受信してDNS(Domain Name System)サーバに送信する名前解決要求送信処理と、(ロ)この名前解決要求送信処理で送信した名前解決要求の返答としてDNSサーバから送られてくるリソースレコードを受信するリソースレコード受信処理と、(ハ)このリソースレコード受信処理で受信したリソースレコードを基にして、通信相手のドメイン名ごとに使用を許可するリソースレコードあるいは使用を禁止するリソースレコードをポリシとして定めたリソースレコード制御ポリシテーブルを参照して前記した名前解決要求を行ったデュアルスタック端末に対して通信相手のドメインと通信するためのDNS応答を行うDNS応答処理とを実行させることを特徴としている。
【0018】
また、本発明では、ゲートウェイのコンピュータに、アプリケーション判別プログラムとして、(イ)IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれを受信してDNS(Domain Name System)サーバに送信する名前解決要求送信処理と、(ロ)この名前解決要求送信処理で送信した名前解決要求に対して前記したDNSサーバからAAAAリソースレコードがDNS応答として送られてきたときこれを前記したデュアルスタック端末にDNS応答として返信するDNS応答返信処理と、(ハ)このDNS応答返信処理で返信した前記したデュアルスタック端末がこの返信に基づいて所定時間内に仮想AAAAリソースレコード宛の通信を行ってくるかを判別する通信有無判別処理と、(ニ)この通信有無判別処理で前記した所定時間内に仮想AAAAリソースレコード宛の通信を行ってこないとき前記したデュアルスタック端末内にIPv6未対応アプリケーションプログラムが存在していると判断する未対応プログラム存在判別処理と、(ホ)前記した通信有無判別処理で前記した所定時間内に仮想AAAAリソースレコード宛の通信があった場合、これがIPv6からIPv4へのフォールバック事象の発生によるものであるかを判別するフォールバック事象発生有無判別処理と、(へ)このフォールバック事象発生有無判別処理でフォールバック事象が発生していないと判別されたとき前記したデュアルスタック端末にIPv6対応のアプリケーションプログラムが存在していると判断する対応プログラム存在判別処理とを実行させることを特徴としている。
【発明の効果】
【0019】
以上説明したように本発明によれば、IPv4プロトコルスタックとIPv6プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたとき、これを受信したゲートウェイがリソースレコード制御ポリシテーブルを参照して、DNSサーバの応答結果を必要により限定してデュアルスタック端末に返答することにした。これにより、該当するデュアルスタック端末にIPv6に対応していないアプリケーションが内在していた場合でも、適切なリソースレコードを応答することで通信不能となる状態を回避することが可能になる。
【0020】
また、本発明によれば、デュアルスタック端末がIPv6からIPv4へのフォールバック事象を発生させることで、見かけ上、IPv6プロトコルに対応する場合であっても、ゲートウェイ側がフォールバック事象の発生の有無を判別することにした。これにより、デュアルスタック端末にIPv6対応のアプリケーションプログラムが存在していないと判別される場合には、IPv4通信の対象となる通信相手の選択が可能になる。
【図面の簡単な説明】
【0021】
【図1】本発明のリソースレコード制御システムのクレーム対応図である。
【図2】本発明のリソースレコード制御方法のクレーム対応図である。
【図3】本発明のアプリケーション判別方法のクレーム対応図である。
【図4】本発明のリソースレコード制御プログラムのクレーム対応図である。
【図5】本発明のアプリケーション判別プログラムのクレーム対応図である。
【図6】本発明の実施の形態のDNSにおけるリソースレコード制御システムの構成を表わしたシステム構成図である。
【図7】本実施の形態におけるゲートウェイの原理的な構成を表わしたブロック図である。
【図8】本実施の形態のリソースレコード制御システムでDNSにおけるリソースレコード制御の様子を示した説明図である。
【図9】本実施の形態におけるRR制御ポリシテーブルの一例を表わした説明図である。
【図10】本発明の第1の変形例におけるRR制御ポリシテーブルの構成を表わした説明図である。
【図11】第1の変形例のリソースレコード制御システムでDNSにおけるリソースレコード制御の様子を示した説明図である。
【図12】本発明の第2の変形例におけるゲートウェイで行われるRR制御ポリシテーブルについての登録処理の様子を表わした流れ図である。
【図13】第2の変形例で使用されるIPv6通信不能検出テーブルの一例を示した説明図である。
【発明を実施するための形態】
【0022】
図1は、本発明のリソースレコード制御システムのクレーム対応図を示したものである。本発明のリソースレコード制御システム10は、デュアルスタック端末11と、DNS(Domain Name System)サーバ12と、ゲートウェイ13を備えている。ここで、デュアルスタック端末11は、IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載した端末である。DNS(Domain Name System)サーバ12は、所定のネットワークを介して送られてくる名前解決要求を受信して該当する通信相手のドメイン名に対するリソースレコードを要求先に応答する。ゲートウェイ13は、名前解決要求送信手段13aと、リソースレコード受信手段13bと、リソースレコード制御ポリシテーブル13cと、DNS応答手段13dを備えている。ここで名前解決要求送信手段13aは、デュアルスタック端末11から名前解決要求が送られてきたときこれを受信してDNSサーバ12に送信する。リソースレコード受信手段13bは、名前解決要求送信手段13aの送信した名前解決要求に対してDNSサーバ12から返答として送られてくるリソースレコードを受信する。リソースレコード制御ポリシテーブル13cは、通信相手のドメイン名ごとに使用を許可するリソースレコードあるいは使用を禁止するリソースレコードをポリシとして定めたテーブルである。DNS応答手段13dは、リソースレコード受信手段13bの受信したリソースレコードを基にしてこのリソースレコード制御ポリシテーブル13cを参照し前記した名前解決要求を行ったデュアルスタック端末に対して通信相手のドメインと通信するためのDNS応答を行う。
【0023】
図2は、本発明のリソースレコード制御方法のクレーム対応図を示したものである。本発明のリソースレコード制御方法20は、名前解決要求送信ステップ21と、リソースレコード受信ステップ22と、DNS応答ステップ23を備えている。ここで、名前解決要求送信ステップ21では、IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれを受信してDNS(Domain Name System)サーバに送信する。リソースレコード受信ステップ22では、名前解決要求送信ステップ21で送信した名前解決要求の返答として前記したDNSサーバから送られてくるリソースレコードを受信する。DNS応答ステップ23では、リソースレコード受信ステップ22で受信したリソースレコードを基にして、通信相手のドメイン名ごとに使用を許可するリソースレコードあるいは使用を禁止するリソースレコードをポリシとして定めたリソースレコード制御ポリシテーブルを参照して前記した名前解決要求を行ったデュアルスタック端末に対して通信相手のドメインと通信するためのDNS応答を行う。
【0024】
図3は、本発明のアプリケーション判別方法のクレーム対応図を示したものである。本発明のアプリケーション判別方法30は、名前解決要求送信ステップ31と、DNS応答返信ステップ32と、通信有無判別ステップ33と、未対応プログラム存在判別ステップ34と、フォールバック事象発生有無判別ステップ35と、対応プログラム存在判別ステップ36を備えている。ここで、名前解決要求送信ステップ31では、IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれをゲートウェイとして受信してDNS(Domain Name System)サーバに送信する。DNS応答返信ステップ32では、名前解決要求送信ステップ31で送信した名前解決要求に対して前記したDNSサーバからAAAAリソースレコードがDNS応答として送られてきたときこれを前記したデュアルスタック端末にDNS応答として返信する。通信有無判別ステップ33では、DNS応答返信ステップ32で返信した前記したデュアルスタック端末がこの返信に基づいて所定時間内に仮想AAAAリソースレコード宛の通信を行ってくるかを判別する。未対応プログラム存在判別ステップ34では、通信有無判別ステップ33で前記した所定時間内に仮想AAAAリソースレコード宛の通信を行ってこないとき前記したデュアルスタック端末内にIPv6未対応アプリケーションプログラムが存在していると判断する。フォールバック事象発生有無判別ステップ35では、通信有無判別ステップ33で前記した所定時間内に仮想AAAAリソースレコード宛の通信があった場合、これがIPv6からIPv4へのフォールバック事象の発生によるものであるかを判別する。対応プログラム存在判別ステップ36では、フォールバック事象発生有無判別ステップ35でフォールバック事象が発生していないと判別されたとき前記したデュアルスタック端末にIPv6対応のアプリケーションプログラムが存在していると判断する。
【0025】
図4は、本発明のリソースレコード制御プログラムのクレーム対応図を示したものである。本発明のリソースレコード制御プログラム40は、ゲートウェイのコンピュータに、名前解決要求送信処理41と、リソースレコード受信処理42と、DNS応答処理43を実行させるようにしている。ここで、名前解決要求送信処理41では、IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれを受信してDNS(Domain Name System)サーバに送信する。リソースレコード受信処理42では、名前解決要求送信処理41で送信した名前解決要求の返答として前記したDNSサーバから送られてくるリソースレコードを受信する。DNS応答処理43では、リソースレコード受信処理42で受信したリソースレコードを基にして、通信相手のドメイン名ごとに使用を許可するリソースレコードあるいは使用を禁止するリソースレコードをポリシとして定めたリソースレコード制御ポリシテーブルを参照して前記した名前解決要求を行ったデュアルスタック端末に対して通信相手のドメインと通信するためのDNS応答を行う。
【0026】
図5は、本発明のアプリケーション判別プログラムのクレーム対応図を示したものである。本発明のアプリケーション判別プログラム50は、ゲートウェイのコンピュータに、名前解決要求送信処理51と、DNS応答返信処理52と、通信有無判別処理53と、未対応プログラム存在判別処理54と、フォールバック事象発生有無判別処理55と、対応プログラム存在判別処理56を実行させるようにしている。ここで、名前解決要求送信処理51では、IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれを受信してDNS(Domain Name System)サーバに送信する。DNS応答返信処理52では、名前解決要求送信処理51で送信した名前解決要求に対して前記したDNSサーバからAAAAリソースレコードがDNS応答として送られてきたときこれを前記したデュアルスタック端末にDNS応答として返信する。通信有無判別処理53では、DNS応答返信処理52で返信した前記したデュアルスタック端末がこの返信に基づいて所定時間内に仮想AAAAリソースレコード宛の通信を行ってくるかを判別する。未対応プログラム存在判別処理54では、通信有無判別処理53で前記した所定時間内に仮想AAAAリソースレコード宛の通信を行ってこないとき前記したデュアルスタック端末内にIPv6未対応アプリケーションプログラムが存在していると判断する。フォールバック事象発生有無判別処理55では、通信有無判別処理53で前記した所定時間内に仮想AAAAリソースレコード宛の通信があった場合、これがIPv6からIPv4へのフォールバック事象の発生によるものであるかを判別する。対応プログラム存在判別処理56では、フォールバック事象発生有無判別処理55でフォールバック事象が発生していないと判別されたとき前記したデュアルスタック端末にIPv6対応のアプリケーションプログラムが存在していると判断する。
【0027】
<発明の実施の形態>
【0028】
次に本発明の実施の形態を説明する。
【0029】
図6は、本発明の実施の形態によるDNSにおけるリソースレコード制御システムの構成を表わしたものである。このリソースレコード制御システム100は、インターネット101にゲートウェイ102を介して接続されたローカルネットワーク上の第1および第2の端末104、105によって構成されている。インターネット101上には、IPv6(Internet Protocol version 6)用の第1のWWW(World Wide Web)サーバ106と、IPv4(Internet Protocol version 4)用の第2のWWWサーバ107と、DNS(Domain Name System)サーバ108が配置されている。
【0030】
第1の端末104および第2の端末105は、IPv4プロトコルスタックとIPv6プロトコルスタックの両方を搭載した、いわゆるデュアルスタック端末である。これら第1および第2の端末104および105は、たとえばWWW(World Wide Web)サーバへのアクセスを行うパーソナルコンピュータや情報家電として実現される。
【0031】
ゲートウェイ102は、ローカルネットワーク環境に設置されており、異なるインタフェース間でパケット転送処理を行うルータやファイアウォール(FireWall)で構成されている。
【0032】
図7は、ゲートウェイの原理的な構成を表わしたものである。図6と共に説明する。ゲートウェイ102は、DNSリゾルバ111、DNSキャッシュテーブル112、DNSサーバモジュール113、RR(Resource Record:リソースレコード)制御ポリシテーブル114、およびIPv6通信不能検出テーブル115およびIPv6通信不能検出モジュール117の各構成要素を備えている。
【0033】
ここでDNSリゾルバ111は、DNSサーバモジュール113またはIPv6通信不能検出モジュール117からの名前解決要求に応じて、図6に示したDNSサーバ108に対して正引き処理(ドメイン名に対するIPアドレス応答)や逆引き処理(IPアドレスに対するドメイン名応答)等の処理を行う機能を有する。また、DNSリゾルバ111は、DNSキャッシュテーブル112を参照して、過去に名前解決した情報が保持されている場合にはDNSサーバ108に問合せを行わず、DNSキャッシュテーブル112に保持されている情報を応答する。
【0034】
DNSキャッシュテーブル112は、FQDN(完全修飾ドメイン名)というドメイン名情報と、RR(Resource Record:リソースレコード)タイプと、IPアドレス等の実データ、TTL(Time To Live:キャッシュ保持時間)の情報要素を保持するテーブルである。DNSキャッシュテーブル112は、DNSリゾルバ111が使用する。
【0035】
DNSサーバモジュール113は、第1および第2の端末104、105からの名前解決要求を受け付け、DNSリゾルバ111に対して名前解決の処理を依頼する。また、DNSサーバモジュール113は、DNSリゾルバ111から得られた応答結果に対して、ポリシ(policy)を実現するために用意したRR制御ポリシテーブル114を参照する。そして、当該FQDNに該当するレコードが存在する場合、DNSサーバモジュール113はそのポリシに応じて、リソースレコードを制御して応答を行う。
【0036】
RR制御ポリシテーブル114は、完全修飾ドメイン名(FQDN)、許可RR、禁止RR、送信元MACアドレス、送信元IPv4アドレス、送信元IPv6アドレスの各情報要素を保持するテーブルである。RR制御ポリシテーブル114は、DNSサーバモジュール113またはIPv6通信不能検出モジュール117で使用される。
【0037】
IPv6通信不能検出モジュール117は、第1および第2の端末104、105からの名前解決要求に対して、仮想のAAAAリソースレコードを応答する。これにより、IPv6未対応アプリケーションの検出およびIPv6からIPv4へのフォールバック事象の検出を行い、検出結果をRR制御ポリシテーブル114に登録する。
【0038】
IPv6通信不能検出テーブル115は、完全修飾ドメイン名(FQDN)、AAAAリソースレコードの有無(AAAA有無)、仮想AAAAリソースレコード(仮想AAAA RR)、送信元IPv4アドレス、送信元IPv6アドレスの情報要素を保持するテーブルである。IPv6通信不能検出テーブル115は、IPv6通信不能検出モジュール117で使用される。
【0039】
ゲートウェイ102自体は図示しないがCPU(Central Processing Unit)や、CPUが実行するプログラムを格納した記憶媒体(メモリ)を備えている。したがって、図7に示したDNSリゾルバ111等の各機能部品は、ハードウェアで構成してもよいが、CPUがプログラムを実行することでソフトウェア的に実現させることも可能である。
【0040】
一方、インターネット101上に配置されたDNSサーバ108は、第1および第2の端末104、105やゲートウェイ102からの名前解決要求に応じて、正引き処理や逆引き処理等の処理を行うサーバである。また、第1のWWWサーバ106はIPv6プロトコルスタックを搭載しており、IPv6によるWWWサービスの提供を行う。第2のWWWサーバ107はIPv4プロトコルスタックを搭載しており、IPv4によるWWWサービスの提供を行う。
【0041】
図8は、以上のような構成のリソースレコード制御システムでDNSにおけるリソースレコード制御の様子を示したものである。ここでは、IPv6通信を抑制する動作シーケンスでの動作を示す。図6および図7と共に説明する。
【0042】
ローカルネットワーク103上の通信端末である第1または第2の端末104、105が、ドメイン名に対するIPアドレスを調べるためにゲートウェイ102に対してDNS問合せとして、名前解決の要求を行ったとする(ステップS201)。ここではドメイン名「www.ghi.example.jp」に対するIPアドレスを調べるものとする。
【0043】
ゲートウェイ102内のDNSサーバモジュール113は、DNSリゾルバ111に対して名前解決の処理を依頼する。DNSリゾルバ111はこの依頼を受けて、DNSサーバ108に対してドメイン名「www.ghi.example.jp」に対する名前解決の要求を行う(ステップS202)。
【0044】
DNSサーバ108は、DNS応答としてAおよびAAAAリソースレコードをゲートウェイ102に応答する(ステップS203)。ゲートウェイ102内のDNSリゾルバ111は、DNSキャッシュテーブル112に結果を記録すると共に、DNSサーバモジュール113に結果を返す。
【0045】
DNSサーバモジュール113は、この結果を基にしてRR制御ポリシテーブル114を参照する。そして、ポリシに応じて、リソースレコードを制御して(ステップS204)、応答する(ステップS205)。
【0046】
図9は、RR制御ポリシテーブルの一例を表わしたものである。RR制御ポリシテーブル114には、完全修飾ドメイン名(FQDN)のそれぞれに対して、使用を許可する許可リソースレコード(RR)と、使用を禁止する禁止リソースレコード(RR)が設定できるようになっている。今回のリソースレコード制御の対象となるドメイン名「www.ghi.example.jp」については、Aリソースレコードが許可リソースレコードとして設定されている。Aリソースレコードの「A」は「Address」の略語である。
【0047】
本実施の形態で例示したRR制御ポリシテーブル114には、完全修飾ドメイン名「www.ghi.example.jp」についての許可リソースレコードにAAAAリソースレコードを設定していない。
【0048】
このようにRR制御ポリシテーブル114には、完全修飾ドメイン名「www.ghi.example.jp」についての許可リソースレコードとしてAリソースレコードのみを設定している。このため、DNSサーバモジュール113はAリソースレコードのみを第1および第2の端末104、105に応答するための処理を行う(図9ステップS204)。ゲートウェイ102は第1および第2の端末104、105にAリソースレコードを結果としてDNS応答する(ステップS205)。
【0049】
第1および第2の端末104、105は、得られた結果がAリソースレコードであるため、IPv4プロトコルを用いて、IPv4用の第2のWWWサーバ107に対してHTTP(Hypertext Transfer Protocol)接続要求を行う(ステップS206)。そして、IPv4用の第2のWWWサーバ107からHTTP応答を得ることで(ステップS207)、第2のWWWサーバ107との通信が行われることになる。
【0050】
なお、図9に示したRR制御ポリシテーブル114の中には、「−(ハイフン)」で示した箇所がある。DNS応答で使用されるリソースレコード(RR)は、このRR制御ポリシテーブル114内で示したAリソースレコード、AAAAリソースレコードおよびPTR(PoinTeR)リソースレコード以外にも多くの種類がある。そこで図9では、該当する完全修飾ドメイン名(FQDN)で表示しているリソースレコード以外を総括的に「−」で示している。
【0051】
たとえば、完全修飾ドメイン名が「abc.example.jp」の欄では、許可リソースレコード(RR)がAリソースレコードとPTRリソースレコードになっている。したがって、禁止リソースレコード(RR)における「−」は、AAAAリソースレコードを含み、AリソースレコードとPTRリソースレコードを除外した残りすべてのリソースレコードを意味していることになる。
【0052】
以上のように本実施の形態では、DNSサーバ108の名前解決によって得られたAリソースレコードとAAAAリソースレコードのうちのAAAAリソースレコードを、IPv4用の第2のWWWサーバ107で問題を引き起こす可能性があるとするポリシの下でゲートウェイ102内のDNSサーバモジュール113が排除した。このような本実施の形態のDNSにおけるリソースレコード制御システム100では、IPv6通信を抑制する動作シーケンスの存在によって、問題の発生を回避することが可能になる。
【0053】
<発明の第1の変形例>
【0054】
以上説明した実施の形態では、ローカルネットワーク内に複数の端末が存在している場合におけるこれらの端末のアプリケーションプログラムに共通のリソースレコードを設定するシステムを説明した。これとは異なり、ローカルネットワーク内に複数の通信端末が存在する場合には、これらの通信端末ごとにアプリケーションプログラムとの関係で適切なリソースレコードを返すようになっていてもよい。
【0055】
図10は、本発明の第1の変形例におけるRR制御ポリシテーブルの構成を表わしたものである。この変形例のRR制御ポリシテーブル114Aは、図9に示した先の実施の形態のRR制御ポリシテーブル114と比べて、送信元MACアドレスと、送信元IPv4とIPv6のアドレスが新たな項目として追加されている。これは、送信側の通信端末のアプリケーションプログラムがIPv6に対応できるか等の状況を加味して、より適切なサーバ等の相手方通信装置の選択を可能にするためである。RR制御ポリシテーブル114Aには事前に登録された送信元端末ごとのポリシが登録されているため、同一の完全修飾ドメイン名(FQDN)に対する名前解決であっても、信元端末ごとに異なる応答を返すことが可能になる。
【0056】
図11は、この第1の変形例のリソースレコード制御システムでDNSにおけるリソースレコード制御の様子を示したものである。図6、図7および図10と共に説明する。
【0057】
まず、時刻t1に第1の端末104が、ドメイン名に対するIPアドレスを調べるためにゲートウェイ102に対してDNS問合せとして、名前解決の要求を行ったとする(ステップS221)。ここではドメイン名「www.example.com」に対するIPアドレスを調べるものとする。
【0058】
ゲートウェイ102内のDNSサーバモジュール113は、DNSリゾルバ111に対して名前解決の処理を依頼する。DNSリゾルバ111はこの依頼を受けて、DNSサーバ108に対してドメイン名「www.example.com」に対する名前解決の要求を行う(ステップS222)。
【0059】
DNSサーバ108は、DNS応答としてAおよびAAAAリソースレコードをゲートウェイ102に応答する(ステップS223)。ゲートウェイ102内のDNSリゾルバ111は、DNSキャッシュテーブル112に結果を記録すると共に、DNSサーバモジュール113に結果を返す。
【0060】
DNSサーバモジュール113は、この結果を基にしてRR制御ポリシテーブル114を参照する。そして、ポリシに応じて、リソースレコードを制御して(ステップS224)、応答する(ステップS225)。具体的には、図10の「送信元IPv4アドレス」が「192.168.1.1」の通信端末が第1の端末104であるとして、完全修飾ドメイン名(FQDN)が「www.example.com」に対する禁止RRのAAAAリソースレコードが適用される。この結果、ゲートウェイ102AからのDNS応答は、AAAAリソースレコードを排除してAリソースレコードとなる(ステップS225)。
【0061】
第1の端末104は、得られた結果がAリソースレコードであるため、IPv4プロトコルを用いて、IPv4用の第2のWWWサーバ107に対してHTTP接続要求を行う(ステップS226)。そして、IPv4用の第2のWWWサーバ107からHTTP応答を得ることで(ステップS227)、第2のWWWサーバ107との通信が行われることになる。
【0062】
次に、時刻t2に第2の端末105が、ドメイン名に対するIPアドレスを調べるためにゲートウェイ102に対して名前解決の要求を行ったとする(ステップS241)。ここでもドメイン名「www.example.com」に対するIPアドレスを調べるものとする。
【0063】
ゲートウェイ102内のDNSサーバモジュール113は、DNSリゾルバ111に対して名前解決の処理を依頼する。DNSリゾルバ111はこの依頼を受けて、DNSサーバ108に対してドメイン名「www.example.com」に対する名前解決の要求を行う(ステップS242)。
【0064】
DNSサーバ108は、DNS応答としてAおよびAAAAリソースレコードをゲートウェイ102に応答する(ステップS243)。ゲートウェイ102内のDNSリゾルバ111は、DNSキャッシュテーブル112に結果を記録すると共に、DNSサーバモジュール113に結果を返す。
【0065】
DNSサーバモジュール113は、この結果を基にしてRR制御ポリシテーブル114を参照する。そして、ポリシに応じて、リソースレコードを制御して(ステップS244)、応答する(ステップS245)。具体的には、図10の「送信元IPv4アドレス」が「192.168.1.2」の通信端末が第2の端末105であるとして、完全修飾ドメイン名(FQDN)が「www.example.jp」に対する許可RRのAリソースレコード、AAAAリソースレコードおよびPTR(PoinTeR)レコードが適用される。PTRレコードは、IPアドレスからホスト名への変換のためのレコードである。この結果、ゲートウェイ102AからのDNS応答は、AリソースレコードおよびAAAAリソースレコードとなる(ステップS245)。
【0066】
第2の端末105は、得られた結果がAリソースレコードおよびAAAAリソースレコードであるため、IPv6プロトコルを用いて、IPv6用の第1のWWWサーバ106に対してHTTP接続要求を行う(ステップS246)。そして、IPv6用の第1のWWWサーバ106からHTTP応答を得ることで(ステップS247)、第1のWWWサーバ106との通信が行われることになる。
【0067】
このように本発明の第1の変形例によれば、第2の端末105は、先の実施の形態と異なりIPv6用の第1のWWWサーバ106との通信が可能である。
【0068】
<発明の第2の変形例>
【0069】
以上説明した実施の形態および第1の変形例では、RR制御ポリシテーブル114、114Aをシステム側が予め用意する必要があった。本発明の第2の変形例では、IPv6未対応アプリケーションの検出およびTCPフォールバック事象の検出を行って、検出結果をRR制御ポリシテーブルに自動的に登録できるようにした。
【0070】
図12は、ゲートウェイで行われるRR制御ポリシテーブルについての登録処理の様子を表わしたものである。図6および図7と共に説明する。
【0071】
ゲートウェイ102の前記したCPUは第1あるいは第2の端末104、105から、ドメイン名に対するIPアドレスを調べるために名前解決の要求が行われるのを待機している(ステップS261)。このDNSに対する問合わせがあると(Y)、ゲートウェイ102ではIPv6通信不能検出モジュール117がDNSリゾルバ111に対して名前解決の処理を依頼し、DNSリゾルバ111は、DNSサーバ108に対して名前解決の要求(問合わせ)を行う(ステップS262)。
【0072】
これに対してDNSサーバ108からDNSが受信されると(ステップS263:Y)、ゲートウェイ102が仮想AAAA応答処理を実行する(ステップS264)。具体的には、ゲートウェイ102内のDNSリゾルバ111が、DNSキャッシュテーブル112にDNSサーバ108から得られた結果を記録する。この後、IPv6通信不能検出モジュール117に結果が返される。
【0073】
IPv6通信不能検出モジュール117は、DNS応答にAAAAリソースレコードが含まれているか否かをIPv6通信不能検出テーブル115に記録すると共に、仮想AAAAリソースレコード(RR)(仮想のIPv6アドレス)を、問合わせを行った第1あるいは第2の端末104、105に応答(DNS応答)する(ステップS265)。
【0074】
図13は、この第2の変形例で使用されるIPv6通信不能検出テーブルの一例を示したものである。IPv6通信不能検出テーブル115の「AAAA有無」の欄には、DNS応答にAAAAリソースレコードが含まれているか否かを「あり」または「なし」で記録するようになっている。また、「仮想AAAAリソースレコード(RR)」欄には、完全修飾ドメイン名(FQDN)に対応した仮想AAAAリソースレコードが予め記載されている。
【0075】
図12のステップS265の処理が行われた後、IPv6通信不能検出モジュール117は、名前解決の要求を行った第1あるいは第2の端末104、105が仮想AAAAリソースレコード宛の通信を行ってくるかを確認する(ステップS266)。この確認は、予め定めた時間t1以内に仮想AAAAリソースレコード宛の通信が開始したかによってチェックされる(ステップS266:N、ステップS267)。
【0076】
名前解決の要求が仮に第1の端末104によって行われたとする。第1の端末104のアプリケーションプログラムはIPv4には対応する。しかしながらこれらのアプリケーションプログラムの中には、IPv6に未対応のものが存在している。したがってIPv6に未対応のアプリケーションプログラムが稼働した場合、仮想AAAAリソースレコード宛の通信が開始することはない。一方、名前解決の要求が第2の端末105によって行われた場合には、IPv6に対応するアプリケーションプログラムが稼働することで、仮想AAAAリソースレコード宛の通信が時間t1以内に行われようとする可能性が高い。
【0077】
そこで、時間t1以内に仮想AAAAリソースレコード宛の通信がなければ(ステップS226:N、ステップS267:Y)、IPv6通信不能検出モジュール117は該当する端末内にIPv6未対応アプリケーションプログラムが存在していると判断する。この場合、IPv6通信不能検出モジュール117は、RR制御ポリシテーブル114の該当する完全修飾ドメイン名(FQDN)にAAAAリソースレコードを禁止リソースレコード(RR)として登録する(ステップS268)。この後、処理はステップS261に戻る(リターン)。
【0078】
ところで、時間t1以内に仮想AAAAリソースレコード宛の通信があった場合には(ステップS266:Y)、これがIPv6からIPv4へのフォールバック事象の発生によるものであるかを確認する必要がある。そこで、この場合、IPv6通信不能検出モジュール117は、名前解決の要求を行った第1あるいは第2の端末104、105が通信に使用した同じプロトコルと同じポート番号を使用して、名前解決により得られたAAAAリソースレコードのIPv6アドレス宛に通信が可能かを確認する(ステップS269)。この通信が不可能な場合には(N)、前記したフォールバック事象が発生していると判断して、RR制御ポリシテーブル114の該当する完全修飾ドメイン名(FQDN)にAAAAリソースレコードを禁止リソースレコード(RR)として登録する(ステップS268)。この後、処理はステップS261に戻る(リターン)。
【0079】
この例の場合、ステップS269で名前解決により得られたAAAAリソースレコードのIPv6アドレス宛に通信が可能であった場合(Y)、特に許可RRとして登録を行うことなく、処理はステップS261に戻る(リターン)。処理内容によっては、名前解決の要求を行った端末について許可リソースレコード(RR)の登録を行うようにしてもよい。
【0080】
このように本発明の第2の変形例によれば、ゲートウェイにDNSサーバモジュール113、RR制御ポリシテーブル114、IPv6通信不能検出テーブル115およびIPv6通信不能検出モジュール117を有することにした。これにより、端末のアプリケーションプログラムを入れ換えたりしたような場合にも、システムの管理者に負担を掛けずにRR制御ポリシテーブル114の変更が可能になるという利点が生じる。
【0081】
なお、以上説明した実施の形態および変形例では、ローカルネットワーク上の端末(デュアルスタック端末)104、105が名前解決要求を行った場合を説明したが、ローカルネットワーク上の端末からの名前解決要求に限定されるものでないことはもちろんである。
【0082】
また、端末(デュアルスタック端末)104、105からDNSサーバ108に送られるDNS問合わせを受信するゲートウェイは、ネットワーク間の中継装置という広義の意味で使用しており、ルータ等の他の名称のものもDNS問合わせを中継する機能を備えていれば本発明が適用されることは当然である。
【0083】
以上説明した実施の形態の一部または全部は、以下の付記のようにも記載されるが、以下の記載に限定されるものではない。
【0084】
(付記1)
IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末と、
所定のネットワークを介して送られてくる名前解決要求を受信して該当する通信相手のドメイン名に対するリソースレコードを要求先に応答するDNS(Domain Name System)サーバと、
前記デュアルスタック端末から名前解決要求が送られてきたときこれを受信して前記DNSサーバに送信する名前解決要求送信手段と、この名前解決要求送信手段の送信した名前解決要求に対して前記DNSサーバから返答として送られてくるリソースレコードを受信するリソースレコード受信手段と、通信相手のドメイン名ごとに使用を許可するリソースレコードあるいは使用を禁止するリソースレコードをポリシとして定めたリソースレコード制御ポリシテーブルと、前記リソースレコード受信手段の受信したリソースレコードを基にしてこのリソースレコード制御ポリシテーブルを参照し前記名前解決要求を行ったデュアルスタック端末に対して通信相手のドメインと通信するためのDNS応答を行うDNS応答手段とを備えたゲートウェイ
とを具備することを特徴とするリソースレコード制御システム。
【0085】
(付記2)
前記リソースレコード制御ポリシテーブルは、前記デュアルスタック端末および通信相手のドメイン名ごとに使用を許可するリソースレコードあるいは使用を禁止するリソースレコードを個別に設定していることを特徴とする付記1記載のリソースレコード制御システム。
【0086】
(付記3)
前記リソースレコード制御ポリシテーブルは、前記デュアルスタック端末が前記通信相手と通信する際に稼働するアプリケーションプログラムがIPv6で不適合である場合を前提としたIPv6通信を抑制するポリシで作成された内容であることを特徴とする付記1または付記2記載のリソースレコード制御システム。
【0087】
(付記4)
前記リソースレコード制御ポリシテーブルには、通信を許可する許可リソースレコードあるいは通信を禁止する禁止リソースレコードが通信相手のドメイン名としての完全修飾ドメイン名(FQDN:Fully Qualified Domain Name)に対応付けて記載されていることを特徴とする付記2記載のリソースレコード制御システム。
【0088】
(付記5)
前記ゲートウェイは、前記デュアルスタック端末からのすべての名前解決要求に対して仮想のAAAAリソースレコードを応答する仮想のAAAAリソースレコード応答手段と、この仮想のAAAAリソースレコードに対して前記デュアルスタック端末がIPv6通信を行うか否かを判別するIPv6通信可否判別手段と、このIPv6通信可否判別手段がIPv6通信を可能と判別したとき前記デュアルスタック端末の該当するアプリケーションプログラムがIPv6通信に対応していると判別するアプリケーション対応判別手段とを具備することを特徴とする付記1記載のリソースレコード制御システム。
【0089】
(付記6)
前記リソースレコード制御ポリシテーブルには、前記アプリケーション対応判別手段によって前記デュアルスタック端末の該当するアプリケーションプログラムがIPv6通信に対応していると判別したものに対してフォールバック事象が発生している場合を除き、IPv6通信を許可する許可リソースレコードが記載されることを特徴とする付記5記載のリソースレコード制御システム。
【0090】
(付記7)
前記リソースレコード制御ポリシテーブルには、前記アプリケーション対応可否判別手段によって前記デュアルスタック端末の該当するアプリケーションプログラムがIPv6通信に対応していないと判別したものに対してIPv6通信を禁止する禁止リソースレコードが記載されることを特徴とする付記5記載のリソースレコード制御システム。
【0091】
(付記8)
前記ゲートウェイは、名前解決の要求を行った前記デュアルスタック端末が通信に使用した同じプロトコルと同じポート番号を使用して、名前解決により得られたAAAAリソースレコードのIPv6アドレス宛に通信が可能か否かを判別する同一プロトコル・同一ポート番号通信判別手段と、この同一プロトコル・同一ポート番号通信判別手段で所定時間内に仮想AAAAリソースレコード宛の通信が可能でないと判別されたときフォールバック事象が発生したものと判別するフォールバック事象判別手段を具備することを特徴とする付記5記載のリソースレコード制御システム。
【0092】
(付記9)
IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれを受信してDNS(Domain Name System)サーバに送信する名前解決要求送信ステップと、
この名前解決要求送信ステップで送信した名前解決要求の返答として前記DNSサーバから送られてくるリソースレコードを受信するリソースレコード受信ステップと、
このリソースレコード受信ステップで受信したリソースレコードを基にして、通信相手のドメイン名ごとに使用を許可するリソースレコードあるいは使用を禁止するリソースレコードをポリシとして定めたリソースレコード制御ポリシテーブルを参照して前記名前解決要求を行ったデュアルスタック端末に対して通信相手のドメインと通信するためのDNS応答を行うDNS応答ステップ
とを具備することを特徴とするリソースレコード制御方法。
【0093】
(付記10)
IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれをゲートウェイとして受信してDNS(Domain Name System)サーバに送信する名前解決要求送信ステップと、
この名前解決要求送信ステップで送信した名前解決要求に対して前記DNSサーバからAAAAリソースレコードがDNS応答として送られてきたときこれを前記デュアルスタック端末にDNS応答として返信するDNS応答返信ステップと、
このDNS応答返信ステップで返信した前記デュアルスタック端末がこの返信に基づいて所定時間内に仮想AAAAリソースレコード宛の通信を行ってくるかを判別する通信有無判別ステップと、
この通信有無判別ステップで前記所定時間内に仮想AAAAリソースレコード宛の通信を行ってこないとき前記デュアルスタック端末内にIPv6未対応アプリケーションプログラムが存在していると判断する未対応プログラム存在判別ステップと、
前記通信有無判別ステップで前記所定時間内に仮想AAAAリソースレコード宛の通信があった場合、これがIPv6からIPv4へのフォールバック事象の発生によるものであるかを判別するフォールバック事象発生有無判別ステップと、
このフォールバック事象発生有無判別ステップでフォールバック事象が発生していないと判別されたとき前記デュアルスタック端末にIPv6対応のアプリケーションプログラムが存在していると判断する対応プログラム存在判別ステップ
とを具備することを特徴とするアプリケーション判別方法。
【0094】
(付記11)
ゲートウェイのコンピュータに、
IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれを受信してDNS(Domain Name System)サーバに送信する名前解決要求送信処理と、
この名前解決要求送信処理で送信した名前解決要求の返答として前記DNSサーバから送られてくるリソースレコードを受信するリソースレコード受信処理と、
このリソースレコード受信処理で受信したリソースレコードを基にして、通信相手のドメイン名ごとに使用を許可するリソースレコードあるいは使用を禁止するリソースレコードをポリシとして定めたリソースレコード制御ポリシテーブルを参照して前記名前解決要求を行ったデュアルスタック端末に対して通信相手のドメインと通信するためのDNS応答を行うDNS応答処理
とを実行させることを特徴とするリソースレコード制御プログラム。
【0095】
(付記12)
ゲートウェイのコンピュータに、
IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれを受信してDNS(Domain Name System)サーバに送信する名前解決要求送信処理と、
この名前解決要求送信処理で送信した名前解決要求に対して前記DNSサーバからAAAAリソースレコードがDNS応答として送られてきたときこれを前記デュアルスタック端末にDNS応答として返信するDNS応答返信処理と、
このDNS応答返信処理で返信した前記デュアルスタック端末がこの返信に基づいて所定時間内に仮想AAAAリソースレコード宛の通信を行ってくるかを判別する通信有無判別処理と、
この通信有無判別処理で前記所定時間内に仮想AAAAリソースレコード宛の通信を行ってこないとき前記デュアルスタック端末内にIPv6未対応アプリケーションプログラムが存在していると判断する未対応プログラム存在判別処理と、
前記通信有無判別処理で前記所定時間内に仮想AAAAリソースレコード宛の通信があった場合、これがIPv6からIPv4へのフォールバック事象の発生によるものであるかを判別するフォールバック事象発生有無判別処理と、
このフォールバック事象発生有無判別処理でフォールバック事象が発生していないと判別されたとき前記デュアルスタック端末にIPv6対応のアプリケーションプログラムが存在していると判断する対応プログラム存在判別処理
とを実行させることを特徴とするアプリケーション判別プログラム。
【符号の説明】
【0096】
10、100 リソースレコード制御システム
11 デュアルスタック端末
12 DNSサーバ
13、102 ゲートウェイ
13a 名前解決要求送信手段
13b リソースレコード受信手段
13c リソースレコード制御ポリシテーブル
13d DNS応答手段
20 リソースレコード制御方法
21、31 名前解決要求送信ステップ
22 リソースレコード受信ステップ
23 DNS応答ステップ
30 アプリケーション判別方法
32 DNS応答返信ステップ
33 通信有無判別ステップ
34 未対応プログラム存在判別ステップ
35 フォールバック事象発生有無判別ステップ
36 対応プログラム存在判別ステップ
40 リソースレコード制御プログラム
41、51 名前解決要求送信処理
42 リソースレコード受信処理
43 DNS応答処理
50 アプリケーション判別プログラム
52 DNS応答返信処理
53 通信有無判別処理
54 未対応プログラム存在判別処理
55 フォールバック事象発生有無判別処理
56 対応プログラム存在判別処理
101 インターネット
103 ローカルネットワーク
104 第1の端末
105 第2の端末
106 第1のWWWサーバ
107 第2のWWWサーバ
111 DNSリゾルバ
112 DNSキャッシュテーブル
113 DNSサーバモジュール
114、114A RR制御ポリシテーブル
115 IPv6通信不能検出テーブル
117 IPv6通信不能検出モジュール

【特許請求の範囲】
【請求項1】
IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末と、
所定のネットワークを介して送られてくる名前解決要求を受信して該当する通信相手のドメイン名に対するリソースレコードを要求先に応答するDNS(Domain Name System)サーバと、
前記デュアルスタック端末から名前解決要求が送られてきたときこれを受信して前記DNSサーバに送信する名前解決要求送信手段と、この名前解決要求送信手段の送信した名前解決要求に対して前記DNSサーバから返答として送られてくるリソースレコードを受信するリソースレコード受信手段と、通信相手のドメイン名ごとに使用を許可するリソースレコードあるいは使用を禁止するリソースレコードをポリシとして定めたリソースレコード制御ポリシテーブルと、前記リソースレコード受信手段の受信したリソースレコードを基にしてこのリソースレコード制御ポリシテーブルを参照し前記名前解決要求を行ったデュアルスタック端末に対して通信相手のドメインと通信するためのDNS応答を行うDNS応答手段とを備えたゲートウェイ
とを具備することを特徴とするリソースレコード制御システム。
【請求項2】
前記リソースレコード制御ポリシテーブルは、前記デュアルスタック端末および通信相手のドメイン名ごとに使用を許可するリソースレコードあるいは使用を禁止するリソースレコードを個別に設定していることを特徴とする請求項1記載のリソースレコード制御システム。
【請求項3】
前記リソースレコード制御ポリシテーブルは、前記デュアルスタック端末が前記通信相手と通信する際に稼働するアプリケーションプログラムがIPv6で不適合である場合を前提としたIPv6通信を抑制するポリシで作成された内容であることを特徴とする請求項1または請求項2記載のリソースレコード制御システム。
【請求項4】
前記ゲートウェイは、前記デュアルスタック端末からのすべての名前解決要求に対して仮想のAAAAリソースレコードを応答する仮想のAAAAリソースレコード応答手段と、この仮想のAAAAリソースレコードに対して前記デュアルスタック端末がIPv6通信を行うか否かを判別するIPv6通信可否判別手段と、このIPv6通信可否判別手段がIPv6通信を可能と判別したとき前記デュアルスタック端末の該当するアプリケーションプログラムがIPv6通信に対応していると判別するアプリケーション対応判別手段とを具備することを特徴とする請求項1記載のリソースレコード制御システム。
【請求項5】
前記リソースレコード制御ポリシテーブルには、前記アプリケーション対応判別手段によって前記デュアルスタック端末の該当するアプリケーションプログラムがIPv6通信に対応していると判別したものに対してフォールバック事象が発生している場合を除き、IPv6通信を許可する許可リソースレコードが記載されることを特徴とする請求項4記載のリソースレコード制御システム。
【請求項6】
前記ゲートウェイは、名前解決の要求を行った前記デュアルスタック端末が通信に使用した同じプロトコルと同じポート番号を使用して、名前解決により得られたAAAAリソースレコードのIPv6アドレス宛に通信が可能か否かを判別する同一プロトコル・同一ポート番号通信判別手段と、この同一プロトコル・同一ポート番号通信判別手段で所定時間内に仮想AAAAリソースレコード宛の通信が可能でないと判別されたときフォールバック事象が発生したものと判別するフォールバック事象判別手段を具備することを特徴とする請求項4記載のリソースレコード制御システム。
【請求項7】
IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれを受信してDNS(Domain Name System)サーバに送信する名前解決要求送信ステップと、
この名前解決要求送信ステップで送信した名前解決要求の返答として前記DNSサーバから送られてくるリソースレコードを受信するリソースレコード受信ステップと、
このリソースレコード受信ステップで受信したリソースレコードを基にして、通信相手のドメイン名ごとに使用を許可するリソースレコードあるいは使用を禁止するリソースレコードをポリシとして定めたリソースレコード制御ポリシテーブルを参照して前記名前解決要求を行ったデュアルスタック端末に対して通信相手のドメインと通信するためのDNS応答を行うDNS応答ステップ
とを具備することを特徴とするリソースレコード制御方法。
【請求項8】
IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれをゲートウェイとして受信してDNS(Domain Name System)サーバに送信する名前解決要求送信ステップと、
この名前解決要求送信ステップで送信した名前解決要求に対して前記DNSサーバからAAAAリソースレコードがDNS応答として送られてきたときこれを前記デュアルスタック端末にDNS応答として返信するDNS応答返信ステップと、
このDNS応答返信ステップで返信した前記デュアルスタック端末がこの返信に基づいて所定時間内に仮想AAAAリソースレコード宛の通信を行ってくるかを判別する通信有無判別ステップと、
この通信有無判別ステップで前記所定時間内に仮想AAAAリソースレコード宛の通信を行ってこないとき前記デュアルスタック端末内にIPv6未対応アプリケーションプログラムが存在していると判断する未対応プログラム存在判別ステップと、
前記通信有無判別ステップで前記所定時間内に仮想AAAAリソースレコード宛の通信があった場合、これがIPv6からIPv4へのフォールバック事象の発生によるものであるかを判別するフォールバック事象発生有無判別ステップと、
このフォールバック事象発生有無判別ステップでフォールバック事象が発生していないと判別されたとき前記デュアルスタック端末にIPv6対応のアプリケーションプログラムが存在していると判断する対応プログラム存在判別ステップ
とを具備することを特徴とするアプリケーション判別方法。
【請求項9】
ゲートウェイのコンピュータに、
IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれを受信してDNS(Domain Name System)サーバに送信する名前解決要求送信処理と、
この名前解決要求送信処理で送信した名前解決要求の返答として前記DNSサーバから送られてくるリソースレコードを受信するリソースレコード受信処理と、
このリソースレコード受信処理で受信したリソースレコードを基にして、通信相手のドメイン名ごとに使用を許可するリソースレコードあるいは使用を禁止するリソースレコードをポリシとして定めたリソースレコード制御ポリシテーブルを参照して前記名前解決要求を行ったデュアルスタック端末に対して通信相手のドメインと通信するためのDNS応答を行うDNS応答処理
とを実行させることを特徴とするリソースレコード制御プログラム。
【請求項10】
(付記12)
ゲートウェイのコンピュータに、
IPv4(Internet Protocol version 4)プロトコルスタックとIPv6(Internet Protocol version 6)プロトコルスタックの双方を搭載したデュアルスタック端末から名前解決要求が送られてきたときこれを受信してDNS(Domain Name System)サーバに送信する名前解決要求送信処理と、
この名前解決要求送信処理で送信した名前解決要求に対して前記DNSサーバからAAAAリソースレコードがDNS応答として送られてきたときこれを前記デュアルスタック端末にDNS応答として返信するDNS応答返信処理と、
このDNS応答返信処理で返信した前記デュアルスタック端末がこの返信に基づいて所定時間内に仮想AAAAリソースレコード宛の通信を行ってくるかを判別する通信有無判別処理と、
この通信有無判別処理で前記所定時間内に仮想AAAAリソースレコード宛の通信を行ってこないとき前記デュアルスタック端末内にIPv6未対応アプリケーションプログラムが存在していると判断する未対応プログラム存在判別処理と、
前記通信有無判別処理で前記所定時間内に仮想AAAAリソースレコード宛の通信があった場合、これがIPv6からIPv4へのフォールバック事象の発生によるものであるかを判別するフォールバック事象発生有無判別処理と、
このフォールバック事象発生有無判別処理でフォールバック事象が発生していないと判別されたとき前記デュアルスタック端末にIPv6対応のアプリケーションプログラムが存在していると判断する対応プログラム存在判別処理
とを実行させることを特徴とするアプリケーション判別プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate