JP6381038B2 - 通信制御装置、通信システム、名前解決方法及びプログラム - Google Patents

通信制御装置、通信システム、名前解決方法及びプログラム Download PDF

Info

Publication number
JP6381038B2
JP6381038B2 JP2015063739A JP2015063739A JP6381038B2 JP 6381038 B2 JP6381038 B2 JP 6381038B2 JP 2015063739 A JP2015063739 A JP 2015063739A JP 2015063739 A JP2015063739 A JP 2015063739A JP 6381038 B2 JP6381038 B2 JP 6381038B2
Authority
JP
Japan
Prior art keywords
dns server
dns
name resolution
server
resolution request
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.)
Active
Application number
JP2015063739A
Other languages
English (en)
Other versions
JP2016184840A (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.)
NEC Platforms Ltd
Original Assignee
NEC Platforms 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 NEC Platforms Ltd filed Critical NEC Platforms Ltd
Priority to JP2015063739A priority Critical patent/JP6381038B2/ja
Publication of JP2016184840A publication Critical patent/JP2016184840A/ja
Application granted granted Critical
Publication of JP6381038B2 publication Critical patent/JP6381038B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は通信制御装置、通信システム、名前解決方法及びプログラムに関し、例えば複数のDNSサーバを用いる通信制御装置、通信システム、名前解決方法及びプログラムに関する。
通信装置がインターネットを利用してWebサーバへアクセスする場合、WebブラウザのIPアドレスを取得するために、DNS(Domain Name System)を利用した名前解決処理が行われる。DNSサーバの障害等に備えて、通信装置は、複数のDNSサーバを利用することができる。通信装置は、DNSを利用した名前解決処理を行う場合、複数のDNSサーバ、例えば、プライマリDNSサーバ及びセカンダリDNSサーバへ、名前解決処理の実行を要求するメッセージを送信する。通信装置は、プライマリDNSサーバ及びセカンダリDNSサーバの少なくとも一方から受信したIPアドレス情報を用いて、Webサーバへアクセスする。
特許文献1には、ウェブサーバが一時的にダウン等しており、ウェブクライアントが、ウェブサーバから情報を受信することができない場合の動作が記載されている。具体的には、ウェブサーバは、ウェブクライアントからの要求に対応することができない場合、エラーメッセージを送信する代わりにウェブサーバが停止していること等を知らせるためのページを作成して、ウェブクライアントへウェブサーバが停止していることを通知することが記載されている。
特開2002−259338号公報
プライマリDNSサーバとセカンダリDNSサーバを利用することができる環境において、プライマリDNSサーバに障害が発生したとしても、通信装置は、セカンダリDNSサーバから送信されるIPアドレス情報を用いて、Webサーバへアクセスすることができる。しかし、一般的に、通信装置は、プライマリDNSサーバに障害が発生した後の名前解決処理においても、プライマリDNSサーバ及びセカンダリDNSサーバへ名前解決処理の実行を要求する。
また、特許文献1に記載されているように、装置が停止していることを示すページを用いて、装置が停止していることを周知する場合においても、停止している装置へアクセスする必要がある。そのため、特許文献1に記載されている処理をDNSサーバに障害が発生した場合に実行しても、障害が発生しているプライマリDNSサーバに対して、負荷がかかり続け、プライマリDNSサーバの障害からの復旧が困難になるという問題が発生する。
本発明の目的は、通信装置が利用することができる複数のDNSサーバのうち一部のDNSサーバに障害が発生した場合に、障害が発生したDNSサーバの負荷を軽減することができる通信制御装置、通信システム、名前解決方法及びプログラムを提供することにある。
本発明の第1の態様にかかる通信制御装置は、第1のDNSサーバ及び第2のDNSサーバへ、名前解決要求メッセージを送信する通信部と、前記名前解決要求メッセージに対する前記第1のDNSサーバの応答状況に応じて、前記第1のDNSサーバの異常正常性を判定する状態監視部と、を備え、前記通信部は、前記状態監視部において、異常が発生していると判定されたDNSサーバへ名前解決要求メッセージを送信することより、前記第2のDNSサーバへ名前解決要求メッセージを送信することを優先するものである。
本発明の第2の態様にかかる通信システムは、第1のDNSサーバと、第1のDNSサーバと異なる第2のDNSサーバと、前記第1のDNSサーバ及び前記第2のDNSサーバを用いて名前解決処理を実行する通信制御装置と、を備え、前記通信制御装置は、前記第1のDNSサーバ及び前記第2のDNSサーバへ、名前解決要求メッセージを送信する通信部と、前記名前解決要求メッセージに対する前記第1のDNSサーバの応答状況に応じて、前記第1のDNSサーバの異常を判定する状態監視部と、を有し、前記通信部は、前記状態監視部において、異常が発生していると判定された前記第1のDNSサーバへ名前解決要求を送信することより前記第2のDNSサーバへ前記名前解決要求メッセージを送信することを優先するものである。
本発明の第3の態様にかかる名前解決方法は、第1のDNSサーバ及び第2のDNSサーバへ、名前解決要求メッセージを送信し、前記名前解決要求メッセージに対する前記第1のDNSサーバの応答状況に応じて、前記第1のDNSサーバの異常を判定し、異常が発生していると判定された前記第1のDNSサーバへ名前解決要求を送信することより、前記第2のDNSサーバへ前記名前解決要求メッセージを送信することを優先するものである。
本発明の第4の態様にかかるプログラムは第1のDNSサーバ及び第2のDNSサーバへ、名前解決要求メッセージを送信し、前記名前解決要求メッセージに対する前記第1のDNSサーバの応答状況に応じて、前記第1のDNSサーバの異常を判定し、異常が発生していると判定された前記第1のDNSサーバへ名前解決要求を送信することより、前記第2のDNSサーバへの前記名前解決要求メッセージの送信を優先することをコンピュータに実行させるものである。
本発明により、通信装置が利用することができる複数のDNSサーバのうち一部のDNSサーバに障害が発生した場合に、障害が発生したDNSサーバの負荷を軽減することができる通信制御装置、通信システム、名前解決方法及びプログラムを提供することができる。
実施の形態1にかかる通信制御装置の構成図である。 実施の形態2にかかる通信システムの構成図である。 実施の形態2にかかるホームゲートウェイの構成図である。 実施の形態2にかかる名前解決処理の流れを示す図である。 実施の形態2にかかるホームゲートウェイの状態遷移を説明する図である。 実施の形態3にかかるホームゲートウェイの構成図である。 実施の形態4にかかる名前解決処理の流れを示す図である。 実施の形態5にかかる名前解決処理の流れを示す図である。 実施の形態6にかかる名前解決処理の流れを示す図である。
(実施の形態1)
以下、図面を参照して本発明の実施の形態について説明する。図1を用いて本発明の実施の形態1にかかる通信制御装置の構成例について説明する。通信制御装置1は、DNSサーバ4及びDNSサーバ5を用いて名前解決処理を実行する。また、通信制御装置1は、プロセッサがメモリに格納されているプログラムを実行することによって動作するコンピュータ装置であってもよい。
通信制御装置1は、状態監視部2及び通信部3を有している。状態監視部2及び通信部3は、プロセッサがメモリに格納されているプログラムを実行することによって処理が実行されるソフトウェアもしくはモジュールであってもよい。また、状態監視部2及び通信部3は、回路等によって行為されてもよい。
通信部3は、DNSサーバ4及びDNSサーバ5へ、名前解決要求メッセージを送信する。通信部3は、名前解決要求メッセージへ、アクセスするWebサーバ等のホスト名を設定してもよい。
状態監視部2は、通信部3によって送信された名前解決要求メッセージに対するDNSサーバ4及びDNSサーバ5の応答状況に応じて、DNSサーバ4及びDNSサーバ5の正常性を判定する。もしくは、状態監視部2は、名前解決要求メッセージに対するDNSサーバ4の応答状況に応じて、DNSサーバ4の異常を判定する。DNSサーバ4及びDNSサーバ5の応答状況とは、例えば、DNSサーバ4及びDNSサーバ5がどのような応答メッセージを送信するか、もしくは、DNSサーバ4及びDNSサーバ5から応答メッセージを受信したか、等であってもよい。
例えば、DNSサーバ4及びDNSサーバ5は、ホスト名が設定された名前解決要求メッセージを受信すると、正常であれば、ホスト名に関連付けられたIPアドレス情報を設定した応答メッセージを通信制御装置1へ送信する。
しかし、DNSサーバ4及びDNSサーバ5は、異常が発生している場合、通信制御装置1へ、エラーメッセージを送信する、応答メッセージを送信するまでの時間が長い、もしくは、エラーメッセージ及び応答メッセージを送信することができない、等の事象が発生する。
そのため、状態監視部2は、DNSサーバ4及びDNSサーバ5の応答状況を確認することによって、DNSサーバ4及びDNSサーバ5の正常性を判定することができる。
ここで、状態監視部2において、DNSサーバ4及びDNSサーバ5のいずれかに異常が発生していると判定された場合の通信部3の動作について説明する。ここでは、DNSサーバ4に異常が発生していると判定されたとする。DNSサーバ4に異常が発生しているとは、例えば、DNSサーバ4に障害が発生したこと、DNSサーバ4が輻輳状態であること、もしくは、通信制御装置1とDNSサーバ4との間の通信経路に障害が発生したこと等の事象を含んでもよい。
通信部3は、状態監視部2においてDNSサーバ4に異常が発生していると判定された場合、所定期間、DNSサーバ4へ名前解決要求メッセージを送信することなく、正常であるDNSサーバ5へ名前解決要求メッセージを送信する。所定期間は、例えば、通信制御装置1の管理者等によって任意に設定された期間であってもよく、任意のタイミングに変更可能な期間であってもよい。つまり、通信部3は、異常が発生しているDNSサーバ4へ名前解決要求メッセージを送信することよりも、DNSサーバ5へ名前解決要求メッセージを送信することを優先する。
以上説明したように、図1の通信制御装置1は、最初にDNSサーバ4及びDNSサーバ5へ名前解決要求メッセージを送信した後、DNSサーバ4に異常が発生していると判定した場合、その後の名前解決要求メッセージをDNSサーバ5のみへ送信する。そのため、異常が発生しているDNSサーバ4へは、通信制御装置1から名前解決要求メッセージは送信されることがないため、異常が発生しているDNSサーバ4に負荷がかかり続けることを防止することができる。
(実施の形態2)
続いて、図2を用いて本発明の実施の形態2にかかる通信システムの構成例について説明する。図2の通信システムは、HGW(ホームゲートウェイ)11、PC(Personal Computer)12、DNSサーバ13、DNSサーバ14及びWebサーバ15を有している。また、HGW11、DNSサーバ13、DNSサーバ14及びWebサーバ15は、インターネット網16を介して通信を行う。PC12は、例えば、インターネット網16に接続しないローカルネットワークを介してHGW11と通信を行ってもよく、ケーブル等を利用して物理的にHGW11と接続して、通信を行ってもよい。
HGW11は、図1の通信制御装置1に相当する。DNSサーバ13及びDNSサーバ14は、図1のDNSサーバ4及びDNSサーバ5に相当する。例えば、HGW11は、DNSサーバ13をプライマリDNSサーバとし、DNSサーバ14をセカンダリDNSサーバとして利用してもよい。
続いて、図3を用いて本発明の実施の形態2にかかるHGW11の構成例について説明する。HGW11は、LAN(Local Area Network)インタフェース111、WAN(Wide Area Network)インタフェース112、Proxy DNS制御部211、DNSリゾルバ処理部212及び状態監視部213を有している。状態監視部213は、図1の状態監視部2に相当するため、図1と同様の内容については詳細な説明を省略する。
LANインタフェース111は、例えばイーサネット(登録商標)等を介して、PC12と通信を行うために用いられるインタフェースである。WANインタフェース112は、例えば、光回線等を介してインターネット網16へ接続し、DNSサーバ13及びDNSサーバ14と通信を行うために用いられるインタフェースである。WANインタフェース112は、図1の通信部3に相当する。
Proxy DNS制御部211は、PC12から送信されたDNS問い合わせに関するメッセージを受信する。さらに、Proxy DNS制御部211は、受信したDNS問い合わせに関するメッセージをDNSリゾルバ処理部212へ出力する。
DNSリゾルバ処理部212は、PC12が指定したホスト名に関する名前解決処理を実行するために、DNSサーバ13及びDNSサーバ14へ、DNS Queryメッセージを送信する。もしくは、DNSリゾルバ処理部212は、状態監視部213におけるDNSサーバ13及びDNSサーバ14の正常性判定結果に応じて、DNSサーバ13及びDNSサーバ14のいずれかにDNS Queryメッセージを送信する。
DNSリゾルバ処理部212は、送信したDNS Queryメッセージへの応答メッセージとして、DNS Answerメッセージを受信する。DNSリゾルバ処理部212は、DNS Queryメッセージを送信したこと及びDNS Answerメッセージを受信したことを、状態監視部213へ通知する。
状態監視部213は、DNSリゾルバ処理部212がDNS Queryメッセージを送信してからDNS Answerメッセージを送信するまでの待ち時間を計測する。状態監視部213は、計測した時間に基づいてDNSサーバ13及びDNSサーバ14の状態を判定する。状態監視部213は、判定結果に応じて、DNSリゾルバ処理部212へ、使用するDNSサーバを通知する。状態監視部213は、例えば、予め定められた時間を定めた閾値を超えてDNS Answerメッセージを受信した場合、もしくは、DNS Answerメッセージを受信しない場合、DNSサーバに異常が発生していると判定してもよい。
続いて、図4を用いて本発明の実施の形態2にかかる名前解決処理の流れについて説明する。本図においては、DNSサーバ13に障害が発生していることを前提とする。
はじめに、PC12は、HGW11へDNS Queryメッセージを送信する(S11)。DNS Queryメッセージには、PC12が通信を行うWebサーバ15のホスト名もしくはドメイン名等が設定されている。HGW11は、Proxy DNS制御部211にてDNS Queryメッセージを受信すると、受信したDNS QueryメッセージをDNSリゾルバ処理部212へ出力する。
次に、HGW11のDNSリゾルバ処理部212は、インターネット網16上のDNSサーバ13及びDNSサーバ14に対して名前解決の問い合わせを行う。具体的には、HGW11のDNSリゾルバ処理部212は、DNSサーバ13及びDNSサーバ14へ、DNS Queryメッセージを送信する(S12及びS13)。
ここで、DNSサーバ13には障害が発生しているため、DNSサーバ13は、DNS Queryメッセージに対する応答メッセージを送信することができない。そのため、HGW11は、DNSサーバ14からのみDNS Queryメッセージに対する応答メッセージとして、DNS Answerメッセージを受信する(S14)。DNS Answerメッセージには、PC12が通信を行うWebサーバ15のIPアドレスが設定されている。
次に、Proxy DNS制御部211は、DNSサーバ14から送信されたDNS AnswerメッセージをPC12へ送信する(S15)。次に、PC12は、Webサーバ15と通信を行うために、DNS Answerメッセージにおいて指定されたIPアドレスに対して、HTTP(Hypertext Transfer Protocol)要求メッセージを送信する(S16)。次に、Webサーバ15は、HTTP要求メッセージに対する応答メッセージとして、HTTP応答メッセージをPC12へ送信する(S17)。
HGW11の状態監視部213は、DNS QueryメッセージをDNSサーバ13及びDNSサーバ14へ送信してから、DNSサーバ13及びDNSサーバ14からDNS Answerメッセージを受信するまでの応答時間を計測している。本図においては、状態監視部213は、DNSサーバ13から、予め定められた応答時間を設定した閾値を超えてもDNS Answerメッセージを受信しないため、DNSサーバ13が応答不能な状態になっていると判定する。
次に、PC12は、Webサーバ15とは異なるWebサーバ15_1と通信を行うために、Webサーバ15_1のホスト名を設定したDNS QueryメッセージをHGW11へ送信する(S18)。ここで、HGW11の状態監視部213は、DNSサーバ13について、応答不能な状態であると判定している。そのため、Webサーバ15_1に関する名前解決処理を行う際に、DNS QueryメッセージをDNSサーバ14のみに送信する(S19)。次に、HGW11は、DNSサーバ14からDNS Answerメッセージを受信する。その後の処理は、ステップS15〜S17と同様であるため詳細な説明を省略する。
状態監視部213は、DNSサーバ13が応答不能な状態であると判定してから、所定期間経過した後に、PC12から受信したDNS QueryメッセージをDNSサーバ13及びDNSサーバ14へ送信できるようにしてもよい。具体的には、状態監視部213は、DNSサーバ13が応答不能な状態であると判定してから、所定期間経過後に、DNSリゾルバ処理部212へ、DNSサーバ13に対するDNS Queryメッセージの送信停止を解除することを通知するメッセージを出力する。
DNSサーバ13に対するDNS Queryメッセージの送信停止を解除された後、DNSリゾルバ処理部212は、DNSサーバ13へDNS Queryメッセージを送信することができる。ここで、状態監視部213は、DNSサーバ13から、DNS Answerメッセージが送信されてこないと判定した場合、再度、所定期間の間DNSサーバ13へのDNS Queryメッセージの送信を停止してもよい。また、状態監視部213は、DNSサーバ13が応答不能であると1回目に判定した際に設定した、DNSサーバ13へのDNS Queryメッセージの送信停止期間よりも、DNSサーバ13が応答不能であると2回目に判定した際に設定したDNSサーバ13へのDNS Queryメッセージの送信停止期間を長くしてもよく、もしくは短くしてもよい。
ここで、図5を用いて本発明の実施の形態2にかかるHGW11の状態遷移について説明する。HGW11は、通常状態においては、PC12から送信されたDNS Queryメッセージを、DNSサーバ13及びDNSサーバ14へ送信する。
状態監視部213は、DNSサーバ13及びDNSサーバ14のいずれかに発生した異常を検知すると、DNS送信抑制状態へ遷移する。HGW11は、DNS送信抑制状態においては、PC12から送信されたDNS Queryメッセージを、正常に動作しているいずれかのDNSサーバへ送信する。
所定期間経過すると、HGW11は、DNS復旧確認状態へ遷移する。ここで、HGW11は、PC12から送信されたDNS Queryメッセージを、DNSサーバ13及びDNSサーバ14へ送信する。HGW11は、DNSサーバ13及びDNSサーバ14からDNS Answerメッセージを受信すると、通常状態へ遷移する。HGW11は、DNSサーバ13及びDNSサーバ14のいずれかからDNS Answerメッセージが送信されてこない場合、DNSサーバ13及びDNSサーバ14のいずれかに異常が発生したと判定し、DNS送信抑制状態へ遷移する。
以上説明したように、本発明の実施の形態2にかかるHGW11を用いることによって、以下の効果を有する。
第1の効果として、HGW11は、障害発生中のDNSサーバへの問合せを減らすことができる。つまり、HGW11は、インターネット網との末端でDNSサーバへの問合せをブロックしている。そのため、障害時にPC等からのDNSサーバへのDNS Queryメッセージの再送などによって、DNSサーバの障害時には平常時よりも多く送信されてしまうインターネット網へトラフィックを減らすことが可能となる。
第2の効果として、インターネット網側は特別な装置や機能を追加することなく、障害発生中のDNSサーバへの問合せを減らすことが可能となる。
第3の効果として、HGW11は、障害発生中のDNSサーバに対して問合せを実施しない。そのため、障害発生中のDNSサーバからの応答を待っている時間が無くなる。よって、PC等が、インターネットアクセスする際にスムーズに名前解決を行うことができるため、ユーザに対して快適なインターネットアクセスを提供できる。
第4の効果として、HGW11は、ProxyDNS機能を有することによりユーザが使用しているPCには何も設定変更が必要なく、ユーザによる特別な操作が行われなくとも障害発生サーバに対する問合せ抑制が実施される。
第5の効果として、HGW11が応答時間を計測することによって、DNSサーバが応答不能になる前に異常を感知することも可能である。そのため、DNS Queryメッセージの送信を抑制するタイミングを早め、DNSサーバがDNS Queryメッセージの受信負荷によってダウンすることを未然に防ぐこともできる。
(実施の形態3)
続いて、図6を用いて本発明の実施の形態3にかかるHGW21の構成例について説明する。図6は、図3のHGW21に、ICMP(Internet Control Message Protocol)処理部224が追加された構成となる。HGW21におけるICMP処理部224以外の構成については、図3のHGW11と同様であるため詳細な説明を省略する。
ICMP処理部224は、WANインタフェース112を介して、DNSサーバ13及びDNSサーバ14へICMPメッセージを送信する。ICMP処理部224は、ICMPメッセージへの応答としてエラーメッセージ(Type3 Destination Unreachable)を受信すると、状態監視部213へエラーメッセージを出力する。ここで、エラーメッセージは、DNSサーバ13もしくはDNSサーバ14が送信する場合もあれば、HGW21と、DNSサーバ13及びDNSサーバ14との間のルータ装置等が送信する場合もある。
また、ICMP処理部224は、定期的にICMP(Type8 echo)を用いた、DNSサーバ13及びDNSサーバ14の死活監視を行ってもよい。
状態監視部213は、ICMP処理部224からエラーメッセージが出力された場合に、DNSサーバ13もしくはDNSサーバ14のいずれかに異常が発生しているか否かを判定する。
状態監視部213は、ICMP処理部224から出力されたエラーメッセージが、DNSサーバ13及びDNSサーバ14のいずれかから送信されたかを判定する。状態監視部213は、DNSサーバ13及びDNSサーバ14のいずれかから送信されたエラーメッセージであると判定すると、エラーメッセージを送信してきたDNSサーバへのDNS Queryメッセージの送信を停止させる。
また、状態監視部213は、エラーメッセージが、HGW21と、DNSサーバ13及びDNSサーバ14との経路上のルータ装置等から送信され、DNSサーバ13及びDNSサーバ14のいずれかとの通信ができないと判定した場合であっても、通信不能のDNSサーバへのDNS Queryメッセージの送信を停止させてもよい。
また、状態監視部213は、DNS送信抑制状態において、異常が発生したDNSサーバが復旧したか否かを確認するために、ICMP処理部224へICMPメッセージを、異常が発生したDNSサーバへ送信することを指示してもよい。ここで、ICMP処理部224が、DNSサーバが正常であることを示すICMP(Type0 echo Reply)を受信すると、異常が発生したDNSサーバが復旧したと判定してもよい。また、状態監視部213は、DNSサーバに異常が発生したと判定した後にも定期的にICMPメッセージをDNSサーバへ送信し、DNSサーバの死活監視を行ってもよい。
また、図6においては、ICMPを用いる場合について説明したが、DNSサーバに対して死活監視を行うことができる他のプロトコルを用いてDNSサーバを監視してもよい。
以上説明したように、実施の形態3にかかるHGW21は、ICMPを用いて定期的にDNSサーバの死活監視を実施することができる。これより、HGW21は、ICMPのエラーメッセージを用いて、DNSサーバに障害が発生しているか否かを判定し、その判定結果に応じて、DNSサーバへのDNS Queryメッセージの送信停止もしくは送信停止の解除を判定することができる。
また、HGW21は、実施の形態2において説明した、DNS Answerメッセージの受信状況に応じた障害検知方法も、ICMPを用いた障害検知方法と組み合わせて実施してもよい。例えば、状態監視部213は、DNS Answerメッセージが閾値に設定した時間が経過しても送信されてこない場合もしくはICMPにてエラーメッセージが送信されてきた場合のいずれかに該当する場合、DNSサーバ13及びDNSサーバ14のいずれかに障害が発生していると判定してもよい。
(実施の形態4)
続いて、図7を用いて本発明の実施の形態4にかかる名前解決処理の流れについて説明する。また、図7においては、図3において説明したHGW11を用いるとする。図7においては、DNSサーバ13をプライマリDNSサーバとし、DNSサーバ14をセカンダリDNSサーバとする。ステップS21〜S23は、図4のステップS11〜S13と同様であるため詳細な説明を省略する。HGW11は、ステップS22において、DNSサーバ13へDNS Queryメッセージを送信した後に、ステップS23において、DNSサーバ14へDNS Queryメッセージを送信する。
次に、HGW11は、後から送信したDNSサーバ14へのDNS Queryメッセージに対する応答メッセージであるDNS Answerメッセージを受信する(S24)。次に、HGW11は、DNSサーバ14からDNS Answerメッセージを受信した後に、DNSサーバ13からDNS Answerメッセージを受信する(S25)。ここで、HGW11は、DNSサーバ13の応答時間T1及びDNSサーバ14の応答時間T2をメモリ等に保存する。また、HGW11の状態監視部213は、DNSサーバ14の応答時間T2のほうがDNSサーバ13の応答時間T1よりも短いと判定する。
ステップS26〜S29は、図4のステップS15〜S18と同様であるため詳細な説明を省略する。
HGW11は、ステップS29において、DNS Queryメッセージを受信すると、DNSサーバ14の応答時間T2が、DNSサーバ13の応答時間T1よりも短いことを考慮して、DNSサーバ14を、プライマリDNSサーバ、DNSサーバ13をセカンダリDNSサーバとして、名前解決処理を行ってもよい。つまり、HGW11は、DNS Queryメッセージを最初にDNSサーバ14へ送信し(S30)、次に、DNS QueryメッセージをDNSサーバ13へ送信する(S31)。
以上説明したように、本発明の実施の形態4にかかる名前解決処理の流れを実行することによって、名前解決の応答時間を判断し、プライマリDNSサーバとセカンダリDNSサーバとを入れ替えることができる。これより、応答が早いDNSサーバを常にプライマリDNSサーバとすることができる。また、DNSサーバ自体の障害とは異なる障害によって応答時間の遅延が発生した場合も、HGWは、応答時間の早いDNSサーバをプライマリDNSサーバとすることができる。これより、HGWの内部処理にてDNSサーバの優先度を変更することができるため、PCを使用するユーザは、DNSサーバの優先度を変更するための特定の操作を行う必要がない。
(実施の形態5)
続いて、図8を用いて本発明の実施の形態5にかかる名前解決処理の流れについて説明する。本図においては、プライマリDNSサーバもしくはセカンダリDNSサーバに障害が発生したした場合に、3つめのDNSサーバを用いるために実行する処理を示している。
また、本図においては、図4のステップS11〜S17が既に実行され、HGW11は、DNSサーバ13に障害が発生していることを検出しているとする。
HGW11は、DNSサーバ13に障害が発生した場合、状態監視部213が、DNSリゾルバ処理部212へ、DNS Queryメッセージを送信することを指示する。ここで、状態監視部213によって送信することを指示されたDNS Queryメッセージは、レコードタイプとしてPTR(PoinTeR record)を設定することが指示され、ドメイン名の逆引きを行うために用いられる。また、逆引き対象のアドレスは、セカンダリDNSサーバであるDNSサーバ14のIPアドレスとする。例えば、逆引き対象のIPアドレスを192.0.2.2とする。
はじめに、HGW11は、レコードタイプにPRTが設定されたDNS QueryメッセージをDNSサーバ14へ送信する(S41)。次に、DNSサーバ14は、自装置のIPアドレスの逆引きを行うDNS Queryメッセージを受信すると、DNSサーバ14のFQDN(Fully Qualified Domain Name)を設定したDNS AnswerメッセージをHGW11へ送信する(S42)。FQDNは、例えば、secondary.exampleとする。
次に、HGW11の状態監視部213は、受信したFQDNであるsecondary.exampleに関して、名前解決を行うことをDNSリゾルバ処理部212へ指示する。DNSリゾルバ処理部212は、状態監視部213からの指示に応じて、DNSサーバ14へ、DNS Queryメッセージを送信する(S43)。DNSリゾルバ処理部212は、レコードタイプA(Address record)及び問い合わせるFQDNとしてsecondary.exampleを設定したDNS Queryメッセージを送信する。
次に、DNSサーバ14は、受信したDNS Queryメッセージに対して、2つのIPアドレスを設定したDNS Answerメッセージを送信する(S44)。DNSサーバ14は、DNSサーバ14自体のIPアドレスである192.0.2.2と、障害時用のDNSサーバのIPアドレスである192.0.2.3をDNS Answerメッセージに設定する。
状態監視部213は、DNSリゾルバ処理部212に対して、192.0.2.2及び192.0.2.3をDNSサーバとして使用するように指示する。
以上説明したように、本発明の実施の形態5にかかる名前解決処理の流れを実行することによって、HGW11が名前解決の正引き及び逆引きの仕組みを利用することによって、DNSサーバの障害検出からDNSサーバの変更までを、HGW11が自動的に実施することができる。これより、DNSサーバに障害が発生したさいに、DHCP(Dynamic Host Configuration Protocol)オプション等を利用して障害発生用のHGWへDNSサーバアドレスを通知する必要がなくなる。
(実施の形態6)
続いて、図9を用いて本発明の実施の形態6にかかる名前解決処理の流れについて説明する。実施の形態1〜5においては、DNSリゾルバ処理部212が、スタブリゾルバを実行する動作について説明した。スタブリゾルバは、フルサービスリゾルバを実行するDNSサーバ等へ、名前解決の要求メッセージを送信し、名前解決の実行をDNSサーバ等へ依頼する処理である。これに対して、フルサービスリゾルバは、ルートサーバ等に対して名前解決処理を行い、ホスト名に対するIPアドレスを検出するまで、名前解決処理を繰り返す処理である。
図9においては、HGW11がDNSサーバ13に発生した障害を検出後、HGW11のDNSリゾルバ処理部212が、フルサービスリゾルバを実行する動作について説明する。
本図においては、図4のステップS11〜S17が既に実行され、HGW11は、DNSサーバ13に障害が発生していることを検出しているとする。
はじめに、PC12は、HGW11へDNS Queryメッセージを送信する(S51)。DNS Queryメッセージには、PC12が通信を行うWebサーバ15のホスト名として、abc.exampleが設定されている。
次に、HGW11は、DNSサーバ13及びDNSサーバ14等へ、DNS Queryメッセージを送信することなく、ルートサーバへDNS Queryメッセージを送信する(S52)。次に、ルートサーバは、exampleドメインを管理するexampleサーバのIPアドレスに関する情報をHGW11へ送信する(S53)。
次に、HGW11は、exampleサーバに対して、ホスト名としてabc.exampleを設定したDNS Queryメッセージを送信する(S54)。次に、exampleサーバは、HGW11へabc.exampleドメインを管理するabc.exampleサーバのIPアドレスに関する情報を送信する(S55)。
次に、HGW11は、abc.exampleサーバに対して、ホスト名としてabc.exampleを設定したDNS Queryメッセージを送信する(S56)。次に、abc.exampleサーバは、ホスト名としてabc.exampleサーバに対応付けられたIPアドレスに関する情報をHGW11へ送信する(S57)。HGW11は、abc.exampleサーバから受信したabc.exampleのIPアドレスを設定したDNS AnswerメッセージをPC12へ送信する(S58)。
以上説明したように、本発明の実施の形態5にかかる名前解決処理の流れを実行することによって、障害が発生したDNSサーバを経由せずに名前解決を行うことが可能となる。これより、障害発生中のDNSサーバへの問い合わせが行われなくなるため、障害発生中のDNSサーバへの負荷を軽減することが可能となり、障害発生中のDNSサーバの早期復旧が可能となる。
上述の実施の形態では、本発明をハードウェアの構成として説明したが、本発明は、これに限定されるものではない。本発明は、ホームゲートウェイにおける処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより実現することも可能である。)
上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
1 通信制御装置
2 状態監視部
3 通信部
4 DNSサーバ
5 DNSサーバ
11 HGW
12 PC
13 DNSサーバ
14 DNSサーバ
15 Webサーバ
16 インターネット網
21 HGW
111 LANインタフェース
112 WANインタフェース
211 Proxy DNS制御部
212 DNSリゾルバ処理部
213 状態監視部
224 ICMP処理部

Claims (4)

  1. 第1のDNSサーバ及び第2のDNSサーバへ、名前解決要求メッセージを送信する通信部と、
    前記名前解決要求メッセージに対する前記第1のDNSサーバの応答状況に応じて、前記第1のDNSサーバの異常を判定する状態監視部と、を備え、
    前記状態監視部は、
    前記第1のDNSサーバ及び前記第2のDNSサーバのいずれかに異常が発生していると判定した場合、正常なDNSサーバから、第3のDNSサーバのアドレス情報を取得し、
    前記通信部は、
    前記状態監視部において、異常が発生していると判定された前記第1のDNSサーバへ名前解決要求メッセージを送信することより、前記第2のDNSサーバへ名前解決要求メッセージを送信することを優先し、前記状態監視部において、前記第1のDNSサーバ及び前記第2のDNSサーバのいずれかに異常が発生していると判定した場合、前記正常なDNSサーバ及び前記第3のDNSサーバへ、名前解決要求メッセージを送信する、通信制御装置。
  2. 第1のDNSサーバと、
    第1のDNSサーバと異なる第2のDNSサーバと、
    前記第1および第2のDNSサーバサーバと異なる第3のDNSサーバと、
    前記第1のDNSサーバ及び前記第2のDNSサーバを用いて名前解決処理を実行する通信制御装置と、を備え、
    前記通信制御装置は、
    前記第1のDNSサーバ及び前記第2のDNSサーバへ、名前解決要求メッセージを送信する通信部と、
    前記名前解決要求メッセージに対する前記第1のDNSサーバの応答状況に応じて、前記第1のDNSサーバの異常を判定する状態監視部と、を有し、
    前記状態監視部は、
    前記第1のDNSサーバ及び前記第2のDNSサーバのいずれかに異常が発生していると判定した場合、正常なDNSサーバから、前記第3のDNSサーバのアドレス情報を取得し、
    前記通信部は、
    前記状態監視部において、異常が発生していると判定された前記第1のDNSサーバへ名前解決要求メッセージを送信することより、前記第2のDNSサーバへ名前解決要求メッセージを送信することを優先し、前記状態監視部において、前記第1のDNSサーバ及び前記第2のDNSサーバのいずれかに異常が発生していると判定した場合、前記正常なDNSサーバ及び前記第3のDNSサーバへ、名前解決要求メッセージを送信する、通信システム。
  3. 第1のDNSサーバ及び第2のDNSサーバへ、名前解決要求メッセージを送信し、
    前記名前解決要求メッセージに対する前記第1のDNSサーバの応答状況に応じて、前記第1のDNSサーバの異常を判定し、
    異常が発生していると判定された前記第1のDNSサーバへ名前解決要求を送信することより、前記第2のDNSサーバへ前記名前解決要求メッセージを送信することを優先し、前記第2のDNSサーバから、第3のDNSサーバのアドレス情報を取得し、
    前記第2のDNSサーバ及び前記第3のDNSサーバへ、名前解決要求メッセージを送信する、名前解決方法。
  4. 第1のDNSサーバ及び第2のDNSサーバへ、名前解決要求メッセージを送信し、
    前記名前解決要求メッセージに対する前記第1のDNSサーバの応答状況に応じて、前記第1のDNSサーバの異常を判定し、
    異常が発生していると判定された前記第1のDNSサーバへ名前解決要求を送信することより、前記第2のDNSサーバへ前記名前解決要求メッセージを送信することを優先し、前記第2のDNSサーバから、第3のDNSサーバのアドレス情報を取得し、
    前記第2のDNSサーバ及び前記第3のDNSサーバへ、名前解決要求メッセージを送信する、ことをコンピュータに実行させるプログラム。
JP2015063739A 2015-03-26 2015-03-26 通信制御装置、通信システム、名前解決方法及びプログラム Active JP6381038B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015063739A JP6381038B2 (ja) 2015-03-26 2015-03-26 通信制御装置、通信システム、名前解決方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015063739A JP6381038B2 (ja) 2015-03-26 2015-03-26 通信制御装置、通信システム、名前解決方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2016184840A JP2016184840A (ja) 2016-10-20
JP6381038B2 true JP6381038B2 (ja) 2018-08-29

Family

ID=57242023

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015063739A Active JP6381038B2 (ja) 2015-03-26 2015-03-26 通信制御装置、通信システム、名前解決方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6381038B2 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7426576B1 (en) * 2002-09-20 2008-09-16 Network Appliance, Inc. Highly available DNS resolver and method for use of the same
JP2007251818A (ja) * 2006-03-17 2007-09-27 Fujitsu Ltd 送信制御プログラム、送信制御方法および送信制御装置

Also Published As

Publication number Publication date
JP2016184840A (ja) 2016-10-20

Similar Documents

Publication Publication Date Title
JP4639207B2 (ja) ネットワークシステム、ノード装置及び管理サーバ
JP6279938B2 (ja) 接続管理装置、通信システム、接続管理方法およびプログラム
JP6106494B2 (ja) 通信制御装置、サーバ装置、通信システム及びプログラム
US11307945B2 (en) Methods and apparatus for detecting, eliminating and/or mitigating split brain occurrences in high availability systems
US20180167262A1 (en) Establishing a network fault detection session
US20230049713A1 (en) Monitoring data link health using connectionless loops over redundant ip networks
CN106797330B (zh) 用于监测内容递送网络(cdn)的方法、业务监测器(tm)、请求路由器(rr)和系统
EP2787699A1 (en) Data transmission method, device, and system
JP6381038B2 (ja) 通信制御装置、通信システム、名前解決方法及びプログラム
JP2010205234A (ja) 監視システム、ネットワーク機器、監視情報提供方法およびプログラム
JP5370493B2 (ja) 通信システム、通信装置、通信制御方法及び通信制御プログラム
JP6014068B2 (ja) 中継装置及び中継方法、並びにコンピュータ・プログラム
TWI394402B (zh) 網路偵測設備及其主動偵測網路品質的方法
JP6303302B2 (ja) 通信制御システム、中継装置及び通信制御プログラム
EP3355530A1 (en) Method, apparatus and device for processing service failure
JP4818338B2 (ja) 監視サーバ、ネットワーク監視方法
WO2012022150A1 (zh) 一种故障告警方法、系统及装置
JP6350602B2 (ja) 通信ネットワーク判定装置、通信ネットワーク判定方法、及び、通信ネットワーク判定プログラム
JP6985606B2 (ja) 障害検知装置、障害検知方法、および障害検知プログラム
JP2015029194A (ja) ネットワークのアラーム処理システム
TWI709309B (zh) 網管裝置及其網管方法
JP6358650B2 (ja) 中継装置、中継方法及びプログラム
JP2008259099A (ja) 警備システム
JP5222341B2 (ja) Snmpトラップの伝送方法
JP6185513B2 (ja) 通信監視装置、通信中継装置、通信監視方法、及び、コンピュータプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170501

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170627

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180206

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180406

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180726

R150 Certificate of patent or registration of utility model

Ref document number: 6381038

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150