JP2010062757A - Dnsプロキシ装置及びdns中継方法 - Google Patents

Dnsプロキシ装置及びdns中継方法 Download PDF

Info

Publication number
JP2010062757A
JP2010062757A JP2008225133A JP2008225133A JP2010062757A JP 2010062757 A JP2010062757 A JP 2010062757A JP 2008225133 A JP2008225133 A JP 2008225133A JP 2008225133 A JP2008225133 A JP 2008225133A JP 2010062757 A JP2010062757 A JP 2010062757A
Authority
JP
Japan
Prior art keywords
dns
terminal
ipv4
ipv6
networks
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.)
Pending
Application number
JP2008225133A
Other languages
English (en)
Inventor
Yasuhiro Iwai
康浩 岩井
Takehiro Hattori
雄大 服部
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.)
Panasonic Corp
Original Assignee
Panasonic Corp
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 Panasonic Corp filed Critical Panasonic Corp
Priority to JP2008225133A priority Critical patent/JP2010062757A/ja
Publication of JP2010062757A publication Critical patent/JP2010062757A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

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

Abstract

【課題】互いに異なるDNSクライアントから構成されるLANにおいても、それぞれのDNSサーバに対し名前解決を行う。
【解決手段】それぞれ異なる名前空間を有するインターネット網105及びCDN網109のそれぞれのIPv4DNSサーバ108、IPv6DNSサーバ112及びLAN102に接続された複数のIPv4端末100、IPv6端末101等と通信を行い、DNS問い合わせをいずれかのDNSサーバに中継する、DNSプロキシ装置であって、複数の端末のそれぞれと複数の端末のそれぞれが通信するいずれかのネットワークとの対応関係を記憶する端末テーブル208及びDNSサーバテーブル209と、端末からDNS問い合わせを受信した際に、各テーブルを参照して、そのDNS問い合わせを行った端末が対応するネットワークのDNSサーバに対してDNS問い合わせを中継するマイコン205及びIPルーティング部204等を備えた。
【選択図】図1

Description

本発明は、ネットワークにおけるDNS名前解決に関し、特に異なる名前空間を管理する複数のDNSサーバに接続する際に、端末からのDNS問い合わせを中継するDNSプロキシ装置及びDNS中継方法等に関するものである。
インターネットでは、IPアドレスでホストを一意に識別するが、数字の羅列はユーザに馴染みにくいため、DNS(Domain Name System)がホスト名とIPアドレスの変換サービスを提供している。ホスト名の名前空間(Name Space)は、ドットで区切られた階層構造で管理されており、インターネット全体で一意となるように運用される。
図9は、上述のようなインターネット及びそれに接続する端末を含むシステム構成図である。図9に示す構成において、IPv4プロトコルに対応したIPv4端末100は、アクセス網ネットワーク104を介してインターネット網105に接続されている。インターネット網105は、IPv4ネットワーク107から構成されており、アクセス網ネットワーク104とIPv4ネットワーク107は、IPv4ルータ106を介して接続される。IPv4DNSサーバ108は、インターネット網105に接続されるホストのホスト名を管理する。IPv4ルータ106は、IPv4端末100にグローバルIPv4アドレスを割り当てる。割り当てのプロトコルには、例えば、PPPoE(Point−to−point protocol over Ethernet)やDHCP(Dynamic Host Configuration Protocol)が用いられる。
以上の構成において、IPv4端末100がインターネット網105上の所望のホストにアクセスしようとする場合は、はじめにIPv4端末100内のDNSクライアントがIPv4DNSサーバ108に対してホスト名によりDNS問い合わせを行う。IPv4DNSサーバ108はDNS問い合わせを受けると、名前解決を行い、アクセス対象となるサーバのIPアドレスをIPv4端末に送信する。IPv4端末100は、IPv4DNSサーバ108から送られたIPアドレスに基づき、インターネット網105上の所望のホストに対応するサーバにアクセスする。
次に、図10に、インターネットに接続する端末のシステム構成の他の例を示す。図10においてはIPv4端末100を直接アクセス網ネットワーク104に接続する代わりに、ホームルータ1000を介して複数のIPv4端末100及び1001を接続している。
ホームルータ1000は、家庭内のLAN102とアクセス網ネットワーク104の間の通信を中継する。LAN102は、例えば、Ethernet(登録商標)や無線LANであり、アクセス網ネットワーク104は、例えば、ADSL(Asynchronous Digital Subscriber Line)やFTTH(Fiber To The Home)である。LAN102には、IPv4プロトコルに対応したIPv4端末100及び1001が接続されているものとする。
この構成においては、IPv4ルータ106は、IPv4端末100及び1001ではなくホームルータ1000にグローバルIPv4アドレスを割り当てる。又、IPv4端末100及び1001のIPv4アドレスはローカルIPv4アドレスとして、ホームルータ1000に手動設定されるか、又はホームルータ1000がDHCP等を用いて自動的に各端末に対して割り当てる。
以上の構成において、IPv4端末100又は1001がインターネット網105上の所望のホストにアクセスしようとする場合は、各端末からのDNS問い合わせはホームルータ1000に対して行われ、ホームルータ1000がIPv4DNSサーバ108に対してホスト名によるDNS問い合わせを行う。IPv4DNSサーバ108はDNS問い合わせを受けると、名前解決を行い、アクセス対象となるホストのIPアドレスをホームルータ1000に送信する。ホームルータ1000は、IPv4DNSサーバ108から送られたIPアドレスを、問い合わせを行った端末に送信する。IPアドレスを送られたIPv4端末100又は1001はこれに基づき、インターネット網105上の所望のホストに対応するサーバにアクセスする。なお、図10に示す構成においては、IPv4端末100及び1001とIPv4ネットワーク107との間の通信はホームルータ1000によるローカルIPv4アドレス(IPv4端末100及び1001とホームルータ1000との間)−グローバルIPv4アドレス(ホームルータ1000とIPv4ネットワーク107との間)のアドレス変換を介して行われる。
近年、映像配信やTV電話等の広帯域ネットワークサービスを安定して提供することを目的として、CDN(Content Delivery Network:コンテンツ配信ネットワーク)の構築が進められている。CDNは、大容量ファイルの配信に最適化されたネットワークであるが、インターネットと同様にDNSによるホスト名とIPアドレスの変換サービスを提供しており、ホスト名の名前空間はCDN全体で一意となっている。したがってCDNに接続する端末も、上述したインターネットの端末と同様の名前解決を行うことで所望のホストと接続を得るようにしている。
CDNはインターネットとは独立に設計・運用されることが一般的であるが、ネットワークとしての動作は互いに共通しているため、利用者側においてCDNをインターネットと共にLANに接続した運用が想定される。
ところが、そのような運用に際しては次のような問題が生ずる。CDNのDNSサーバはインターネットのDNSサーバとは独立に運用されるため、LANを構成する各端末がホストの名前解決を行なうには、インターネットのDNSサーバとCDNのDNSサーバの双方にDNS問い合わせを発行する必要がある。
しかしながら、DNS自体はインターネットの名前空間を構成するツリーが1つであることを前提として運用されてきたために、端末のDNSクライアントが問い合わせを発行可能なDNSサーバは1つのみである。これは、複数の端末から構成されるLANにおいても同様で、図10に示す構成例においては、ホームルータ1000に接続された各端末は、同一のIPv4DNSサーバ108をDNS問い合わせ先とした同一のDNSクライアントとなっている。
したがって、それぞれ異なるDNSクライアントであるインターネット用の端末とCDN用の端末とでLANを構成したとしても、そのLANからはインターネットのDNSサーバとCDNのDNSサーバのいずれか一方にしかDNS問い合わせを行なうことは出来ないことになる。その結果、LANを構成する全てのDNSクライアントが名前解決を行うことは不可能になってしまう。
本発明は上記の課題に鑑みてなされたものであり、互いに異なるDNSクライアントから構成されるLANにおいても、それぞれのDNSサーバに対し名前解決を行うことができるDNSプロキシ装置及びDNS中継方法等を提供することを目的とする。
上記の目的を達成するために、第1の本発明は、それぞれ異なる名前空間を有する複数のネットワークのそれぞれのDNSサーバ及びLANに接続された複数の端末と通信を行い、前記端末から受信したDNS問い合わせを前記複数のネットワークのいずれかのDNSサーバに中継するDNSプロキシ装置であって、
前記複数の端末のそれぞれと前記複数の端末のそれぞれが通信するいずれかの前記ネットワークとの対応関係を記憶する対応関係記憶テーブルと、
前記端末からDNS問い合わせを受信した際に、前記対応関係記憶テーブルを参照して、そのDNS問い合わせを行った端末が対応する前記ネットワークのDNSサーバに対してDNS問い合わせを中継する中継部とを備えた、DNSプロキシ装置である。
又、第2の本発明は、前記対応関係記憶テーブルの前記複数の端末は、それらのMACアドレスを用いて登録されている、第1の本発明のDNSプロキシ装置である。
又、第3の本発明は、前記対応関係記憶テーブルの前記複数のネットワークは、それらネットワークにて用いられるプロトコルの種類を用いて登録されている、第1の本発明ののDNSプロキシ装置である。
又、第4の本発明は、前記ネットワークにて用いられる前記プロトコルの種類は、少なくともIPv4及びIPv6を含むものである、第3の本発明のDNSプロキシ装置である。
又、第5の本発明は、前記複数の端末と前記複数のネットワークとの間で授受される通信パケットを監視し、その監視した結果に応じて前記対応関係記憶テーブルの内容を更新する第1の監視部を備えた、第1の本発明のDNSプロキシ装置である。
又、第6の本発明は、前記複数のネットワークが少なくとも1つのIPv6ネットワークを含む場合、
前記第1の監視部は、前記端末と前記IPv6ネットワークとの間で通信されるRouter SolicitationメッセージとRouter Advertisementメッセージとを監視し、これらメッセージにより前記端末がIPv6グローバルアドレスを取得した際に、前記対応関係記憶テーブルに前記端末を登録する、第5の本発明のDNSプロキシ装置である。
又、第7の本発明は、前記複数のネットワーク及び前記複数の端末を接続するルータと前記複数の端末との間で授受される通信パケットを監視し、その監視した結果に応じて前記対応関係記憶テーブルの内容を更新する第2の監視部を備えた、第1の本発明のDNSプロキシ装置である。
又、第8の本発明は、前記複数のネットワークが少なくとも1つのIPv4ネットワークを含み、
前記第2の監視部は、前記ルータにより前記端末に前記IPv4プライベートアドレスが付与された際に、前記対応関係記憶テーブルに前記端末を登録する、第7の本発明のDNSプロキシ装置である。
又、第9の本発明は、前記対応関係記憶テーブルは、前記複数のネットワークの間に優先順位を設定しており、
前記中継部は、前記端末が複数のネットワークと通信可能である場合には、前記端末から受信したDNS問い合わせを、当該優先順位に基づき中継する、第1の本発明のDNSプロキシ装置である。
又、第10の本発明は、それぞれ異なる名前空間を有する複数のネットワークのそれぞれのDNSサーバ及びLANに接続された複数の端末と通信を行い、前記端末から受信したDNS問い合わせを前記複数のネットワークのいずれかのDNSサーバに中継するDNS中継方法であって、
前記複数の端末のそれぞれと前記複数の端末のそれぞれが通信するいずれかの前記ネットワークとの対応関係を対応関係記憶テーブルに記憶する工程と、
前記端末からDNS問い合わせを受信した際に、前記対応関係記憶テーブルを参照して、そのDNS問い合わせを行った端末が対応する前記ネットワークのDNSサーバに対してDNS問い合わせを中継する中継工程とを備えた、DNS中継方法である。
又、第11の本発明は、第10の本発明の、それぞれ異なる名前空間を有する複数のネットワークのそれぞれのDNSサーバ及びLANに接続された複数の端末と通信を行い、前記端末から受信したDNS問い合わせを前記複数のネットワークのいずれかのDNSサーバに中継するDNS中継方法の、前記複数の端末のそれぞれと前記複数の端末のそれぞれが通信するいずれかの前記ネットワークとの対応関係を対応関係記憶テーブルに記憶する工程と、前記端末からDNS問い合わせを受信した際に、前記対応関係記憶テーブルを参照して、そのDNS問い合わせを行った端末が対応する前記ネットワークのDNSサーバに対してDNS問い合わせを中継する中継工程とをコンピュータに実行させるためのプログラムである。
又、第12の本発明は、第11の本発明のプログラムを記録した記録媒体であって、コンピュータにより処理可能な記録媒体である。
以上のような本発明によれば、互いに異なるDNSクライアントから構成されるLANにおいても、それぞれのDNSサーバに対し名前解決を行うことができる。
以下本発明を実施するための一実施の形態について、図面を参照しながら説明する。
(システム構成)
図1は、本発明に係るDNSプロキシ装置の機能を備えたホームルータを含むシステム構成図である。なお、図1において図9及び10と同一又は相当部には、同一符号を付し、詳細な説明は省略する。
本実施の形態では、DNSプロキシ装置をホームルータ103の一機能として実現する。ホームルータ103は、家庭内のLAN102とアクセス網ネットワーク104の間の通信を中継する。LAN102は、例えば、Ethernetや無線LANであり、アクセス網ネットワーク104は、例えば、ADSLやFTTHである。LAN102には、IPv4プロトコルのみに対応したIPv4端末100と、IPv6プロトコルのみに対応したIPv6端末101と、IPv4とIPv6の両方のプロトコルに対応したIPv4/IPv6端末120の3台の端末がホームルータ103を介して接続されているものとする。ホームルータ103自身はLAN102上においてIPv4アドレスを有し、このIPv4アドレスがLAN102上におけるDNSサーバのアドレスとして設定される。すなわち、LAN102に接続された各端末は、LAN102内においては、ホームルータ103をDNSサーバとした、IPv4のDNSクライアントとして動作する。
アクセス網ネットワーク104は、インターネット網105とCDN網109に接続されている。
インターネット網105は、IPv4ネットワーク107から構成されており、アクセス網ネットワーク104とIPv4ネットワーク107は、IPv4ルータ106を介して接続される。IPv4DNSサーバ108は、インターネット網105に接続されるホストのホスト名を管理する。IPv4ルータ106は、ホームルータ103にグローバルIPv4アドレスを割り当てる。割り当てのプロトコルには、例えば、PPPoEやDHCPが用いられる。グローバルIPv4アドレス割り当て時に、IPv4DNSサーバ108のIPv4アドレスもホームルータ103に通知される。
一方、CDN網109は、IPv6ネットワーク111から構成されており、アクセス網ネットワーク104とIPv6ネットワーク111は、IPv6ルータ110を介して接続される。IPv6DNSサーバ112は、CDN網109に接続されるホストのホスト名を管理する。IPv6グローバルアドレスは、IPv6ルータ110からIPv6端末101及びIPv4/IPv6端末120にそれぞれ割り当てられる。
割り当てのプロトコルには、例えば、RS(Router Solicitation)、RA(Router Advertisement)が用いられる。このプロトコルでは、IPv6アドレス128bitのうち、上位bit(例えば64bit)をIPv6ルータ110がPrefixとして配布し、Prefixを受信したIPv6端末101及びIPv4/IPv6端末120は、例えばMACアドレスを元に一意な下位bitを生成し、Prefixと合成することによりグローバルIPv6アドレスがそれぞれ割り当てられる。IPv6DNSサーバのアドレスは、例えば、DHCPv6プロトコルにより、ホームルータ103に割り当てられる。
IPv4ネットワーク107とIPv6ネットワーク111とは、スイッチングハブ113を介してアクセス網ネットワーク104に接続されている。スイッチングハブ113はアクセス網ネットワーク104から流れるIPv6パケット及びIPv4パケットを、それらパケットのヘッダに含まれるプロトコル種別を参照することにより、IPv4ネットワーク107及びIPv6ネットワーク111のいずれかに振り分ける。
(DNSプロキシ機能を備えたホームルータの構成)
次に、図2を参照しながら、DNSプロキシ装置の機能を備えたホームルータ103の構成を説明する。ホームルータ103は、LAN I/F部201とWAN I/F部202の2つのネットワークインタフェースを備えており、それぞれ、LAN102とアクセス網ネットワーク104に接続されている。
LAN I/F部201とWAN I/F部202は、IPルーティング部204とIPブリッジ部203で接続されており、本実施の形態では、IPv4パケットは、IPルーティング部204を経由して中継され、IPv6パケットは、IPブリッジ部203を経由して中継されるものとする。IPルーティング部204を介した中継は、ルータとしての動作であり、IPブリッジ部203を介した中継は、ハブとしての動作と等価である。DNS通信部206はDNSプロトコル処理を実行する。メモリ207は、端末テーブル208とDNSサーバテーブル209、及びホームルータ103自身に設定されたIPv4アドレスを記憶する。マイコン205は、ホームルータ103全体の制御を行なう。
なお、上記の構成において、メモリ207に格納された端末テーブル208とDNSサーバテーブル209は本発明の対応関係記憶テーブル(A)に相当する。又、マイコン205、DNS通信部206、IPルーティング部204及びIPブリッジ部203は本発明の中継部(B)に相当する。又、マイコン205及びIPブリッジ部203は本発明の第1の監視部(C)に相当し、マイコン205及びIPルーティング部204は本発明の第2の監視部(D)に相当する。又、IPv4ネットワーク107及びIPv6ネットワーク111は、本発明のそれぞれ異なる名前空間を有する複数のネットワークに相当する。
(DNSプロキシ装置の動作)
本発明に係るDNSプロキシ装置の動作を、以上のような構成を有するホームルータ103を含めたシステム全体の動作を参照しつつ説明する。又、これにより、本発明のDNS中継方法の一実施の形態についても説明を行う。
(1)まず、IPv6端末101がホームルータに接続されている場合の動作を図3及び図4を参照しながら説明する。
ホームルータ103は、IPv6ルータ110からIPv6DNSサーバアドレスを取得する(ステップ301)。取得したIPv6DNSサーバアドレスは、マイコン205によりメモリ207内のDNSサーバテーブル209に保持される。図2に示す構成においては、IPv6DNSサーバアドレスは、「aa:bb:cc::dd」として記録される。
次にIPv6端末101は、IPv6ルータ110からIPv6グローバルアドレスを取得する(ステップ302)。ホームルータ103のIPブリッジ部203は、IPv6グローバルアドレスの割り当てプロトコルを監視し、IPv6端末101が、IPv6グローバルアドレスを割り当てられたことを検知する。マイコン205は、メモリ207内の端末テーブル208に、IPv6端末101のMACアドレスとIPv6であることを示すタイプを対応付けて登録する(ステップ303)。図2に示す構成においては、IPv6端末101のMACアドレスは「001122bbbbbb」であり、IPプロトコルのタイプは「IPv6」として記録される。
次にIPv6端末101は、ホームルータ103に対してDNS問い合わせメッセージを発行する。このとき、DNS問い合わせメッセージはホームルータ103のIPv4アドレスを宛先としたIPv4パケットのフォーマットにより送信される。なお、図2に示す構成においては、ホームルータ103のIPv4アドレスは「192.168.1.1」である。
ホームルータ103においてIPルーティング部204がIPv6端末101からDNS問い合わせメッセージを受信すると(ステップ401)、マイコン205が当該DNS問い合わせメッセージに含まれるIPv6端末101のMACアドレスをキーにして、端末テーブル208を検索する(ステップ402)。
この場合は、IPv6端末101のMACアドレス「001122bbbbbb」はIPv6のタイプに対応付けられているため、IPルーティング部204は、DNSサーバテーブル209から当該IPv6のDNSサーバであるIPv6DNSサーバアドレス「aa:bb:cc::dd」を取得し、IPv4パケットに準拠していたDNS問い合わせメッセージをIPv6パケットのフォーマットに書き換え、IPブリッジ部203を経由させ、IPv6DNSサーバ112に対して、IPv6DNS問い合わせメッセージを送信する(ステップ403)。すなわちDNS問い合わせメッセージのIPパケットのペイロード部分はそのままにしてヘッダをIPv4パケット準拠の形式からIPv6パケット準拠の形式に変換する。IPv6DNS問い合わせメッセージはアクセス網ネットワーク104からスイッチングハブ113により振り分けられ、IPv6ネットワーク111上のIPv6DNSサーバ112に到達する。
ホームルータ103は、IPv6DNSサーバ112からのIPv6DNS応答メッセージを受信すると(ステップ404)、IPブリッジ部203を介して直接IPv6端末101にIPv6DNS応答メッセージを中継する(ステップ405)。
(2)次に、IPv4端末100がホームルータ103に接続されている場合の動作を図5及び図6を参照しながら説明する。ホームルータ103は、IPv4ルータ106からIPv4グローバルアドレスを取得し(ステップ501)、同時にIPv4DNSサーバアドレスを取得する(ステップ502)。取得したIPv4DNSサーバアドレスは、マイコン205によりメモリ207内のDNSサーバテーブル209に保持される。
次にホームルータ103は、IPv6ルータ110からIPv6DNSサーバアドレスを取得する(ステップ503)。取得したIPv6DNSサーバアドレスは、マイコン205によりメモリ207内のDNSサーバテーブル209に保持される。
IPv4端末100は、ホームルータ103から、自らに設定されるIPv4プライベートアドレスを取得する(ステップ504)。IPルーティング部204がIPv4端末100がIPv4で通信することを認識すると、マイコン205は、メモリ207内の端末テーブル208に、IPv4端末100のMACアドレスとIPv4であることを示すタイプを対応付けて登録する(ステップ505)。図2に示す構成においては、IPv4端末100のMACアドレスは「001122aaaaaa」であり、IPプロトコルのタイプは「IPv4」として記録される。
次にIPv4端末100は、ホームルータ103からIPv4DNSサーバアドレスを取得する(ステップ506)。ホームルータ103は、IPv4DNSサーバアドレスとして、ホームルータ103のIPv4アドレスを通知する。上記(1)の場合と同様、ホームルータ103のIPv4アドレスは「192.168.1.1」である。
次にIPv4端末100は、ホームルータ103に対して、IPv4パケットのフォーマットによるDNS問い合わせメッセージを発行する。ホームルータ103において、IPルーティング部204がIPv4端末100からDNS問い合わせメッセージを受信すると(ステップ601)、マイコン205がDNS問い合わせメッセージに含まれるIPv4端末100のMACアドレスをキーにして、端末テーブル208を検索する(ステップ602)。この場合は、IPv4端末100のMACアドレス「001122aaaaaa」はIPv4のタイプに対応付けられているため、IPルーティング部204は、DNSサーバテーブル209から当該IPv4のDNSサーバであるIPv4DNSサーバアドレス「12.34.56.78」を取得し、IPv4DNSサーバ108に対して、IPv4DNS問い合わせメッセージを送信する(ステップ603)。すなわち、IPルーティング部204は、IPv4パケットの送信元を、IPv4端末100のIPv4プライベートアドレスからホームルータ103のIPv4グローバルアドレスに変換し、宛先がIPv4DNSサーバアドレス「12.34.56.78」となるようヘッダの書き換えを行い送信する。
IPv4DNS問い合わせメッセージはアクセス網ネットワーク104からスイッチングハブ113により振り分けられ、IPv4ネットワーク107上のIPv4DNSサーバ108に到達する。
ホームルータ103は、IPv4DNSサーバ108からのIPv4DNS応答メッセージを受信すると(ステップ604)、IPルーティング部204が、当該IPv4DNS応答メッセージの宛先をIPv4グローバルアドレスからIPv4プライベートアドレスに変換して、IPv4端末100にIPv4DNS応答メッセージを中継する(ステップ605)。
(3)次に、IPv4/IPv6端末120がホームルータに接続されている場合の動作を図7及び図8を参照しながら説明する。
ホームルータ103は、IPv4ルータ106からIPv4グローバルアドレスを取得し(ステップ701)、同時にIPv4DNSサーバアドレスを取得する(ステップ702)。取得したIPv4DNSサーバアドレスは、マイコン205によりメモリ207内のDNSサーバテーブル209に保持される。
次にホームルータ103は、IPv6ルータ110からIPv6DNSサーバアドレスを取得する(ステップ703)。取得したIPv6DNSサーバアドレスは、マイコン205によりメモリ207内のDNSサーバテーブル209に保持される。
IPv4/IPv6端末120は、ホームルータ103から自らに設定されるIPv4プライベートアドレスを取得する(ステップ704)。ホームルータ103においては、IPルーティング部204が、IPv4/IPv6端末120がIPv4で通信することを認識すると、マイコン205がメモリ207内の端末テーブル208にIPv4/IPv6端末120のMACアドレスとIPv4であることを示すタイプ「IPv4」を対応付けて、一旦登録する(ステップ705)。
次にIPv4/IPv6端末120は、ホームルータ103からIPv4DNSサーバアドレスを取得する(ステップ706)。ホームルータ103においては、マイコン205はIPv4DNSサーバアドレスとして、ホームルータ103のIPv4アドレス「192.168.1.1」を通知する。
次にIPv4/IPv6端末120は、IPv6ルータ110からIPv6グローバルアドレスを取得する(ステップ707)。ホームルータ103のIPブリッジ部203は、IPv6グローバルアドレスの割り当てプロトコルを監視し、IPv4/IPv6端末120が、IPv6グローバルアドレスを割り当てられたことを検知する。マイコン205は、この検知を受け、メモリ207内の端末テーブル208にIPv4/IPv6端末120のMACアドレスとIPv6であることを示すタイプ「IPv4」とを対応付けて、一旦登録する(ステップ708)。
このときマイコン205は、ステップ705及びステップ708の動作から、同一MACアドレスに対してIPv4及びIPv6双方のIPプロトコルが登録されたことを判断し、端末テーブル208に、IPv4/IPv6端末120のMACアドレスと、IPv4及びIPv6の双方に対応したことを示すIPv4/IPv6のタイプを登録するとともに、ステップ705及びステップ708にて一旦登録した内容を端末テーブル208から削除する。図2に示す構成においては、IPv4/IPv6端末120のMACアドレスは「001122cccccc」であり、IPプロトコルのタイプは「IPv4/IPv6」として記録される。
すなわち、ステップ705とステップ708の両方が行われた事により、端末テーブル208のIPv4/IPv6端末101のIPプロトコルのタイプには「IPv4」と「IPv6」の両方が登録されていることになる。
続いて、IPv4/IPv6端末120は、ホームルータ103に対してDNS問い合わせメッセージを発行する。上記(1)のIPv6端末101の場合と同様に、DNS問い合わせメッセージはホームルータ103のIPv4アドレスを宛先としたIPv4パケットのフォーマットにより送信される。
ホームルータ103においてIPルーティング部204がIPv4/IPv6端末120からDNS問い合わせメッセージを受信すると(ステップ801)、マイコン205は、当該DNS問い合わせメッセージに含まれるIPv4/IPv6端末120のMACアドレスをキーにして、端末テーブル208を検索する(ステップ802)。
この場合は、IPv4/IPv6のタイプに該当するため、マイコン205は、最初にDNSサーバテーブル209からIPv6DNSサーバアドレスを取得し、IPルーティング部204が、上記(1)のステップ403と同様の動作を行い、IPv6DNSサーバ112に対して、IPv6DNS問い合わせメッセージを送信する(ステップ803)。
ホームルータ103は、IPv6DNSサーバ112からのIPv6DNS応答メッセージを受信すると(ステップ804)、IPブリッジ部203を介して直接IPv4/IPv6端末120にIPv6DNS応答メッセージを中継する(ステップ805)。
一方、マイコン205に内蔵される図示しないタイマの計測等に基づき、予め定めた時間内(例:30秒)にIPv6DNSサーバ112からのIPv6DNS応答メッセージが受信できなかった場合、ホームルータ103においては、マイコン205の制御に基づき、IPルーティング部204が、上記(2)のステップ603と同様の動作を行い、IPv4DNSサーバ108に対してIPv4DNS問い合わせメッセージを送信する(ステップ806)。なお、上記の説明においては、IPv6DNS応答メッセージの受信に要する時間の例を30秒としたが、これはホームルータ103を含むシステムやネットワーク等の構成に応じて、任意の値としてもよい。
ホームルータ103は、IPv4DNSサーバ108からのIPv4DNS応答メッセージを受信すると(ステップ807)、上記(2)のステップ605と同様の動作を行い、IPv4端末100にIPv4DNS応答メッセージを中継する(ステップ808)。
IPv4/IPv6端末120の場合、MACアドレスは一つであるのに対し、対応可能なIPプロトコルはIPv4及びIPv6の2種類であるため、ホームルータ103は、予め定めた順序に基づき、DNS問い合わせメッセージの送信先を変更しながら送信するようにしている。上記の説明では先にIPv6DNSサーバ112に対して問い合わせを行い、応答がなかった場合にIPv4DNSサーバ108に対して行うものとしたが、順序は逆にしてもよい。
以上のように、本実施の形態の、DNSプロキシ装置を内蔵したホームルータ103によれば、LAN102に接続された各端末はいずれもホームルータ103をDNSサーバとしてDNS問い合わせを行うようにしている。すなわち、LAN102は、各端末がホームルータ103を唯一のDNSサーバとする同一種類のDNSクライアントとして機能するDNSを構成する。
一方で、LAN102の外の各ネットワーク網のDNSサーバに対するDNS問い合わせは、ホームルータ103内のDNSプロキシ装置を構成する端末テーブル208及びDNSサーバテーブル209を用いたマイコン205等の制御により、LAN102に接続された端末の種類に対応してDNS問い合わせメッセージについてアドレス変換及びIPパケットのフォーマット変換を行い、各ネットワーク網に対して個別に実行している。
これにより、互いに異なるDNSサーバを対象としたDNSクライアントから構成されるLANにおいても、それぞれのDNSサーバに対し名前解決を行うことが可能になっている。
したがって、このような動作を行なうDNSプロキシ機能を備えたホームルータ103により、LAN102に接続されたIPv4/IPv6端末120、IPv6端末101及びIPv4端末100は、インターネット網105とCDN網109の双方に接続されていることを意識せずに、DNS名前解決を行なうことが可能となる。
さらに、本実施の形態においては、DNSプロキシ装置は、各端末の接続先となるネットワークをそのIPプロトコルの種別によって判別し、適切なDNS問い合わせを適切なネットワークに発行する構成を実現している。これにより、無用なDNS問い合わせがDNSサーバに実行される割合を軽減し、各ネットワークのDNSサーバへの負荷を軽減することも可能となる。
なお、本実施の形態では、端末テーブル208を生成する方法として、本発明の第1の監視部及び第2の監視部に相当するDNS通信部206が特定のIPパケットを監視する方法で実現しているが、ホームルータ103のメモリ207に端末のタイプを予め入力することにより登録する方法で実現してもよい。又、本実施の形態では、インターネット網105をIPv4ネットワーク、CDN網109をIPv6ネットワークとしたが、本発明は、扱うネットワークのIP層のプロトコルの種類や、ネットワークの個数等により制約されるものではない。
又、本実施の形態は、本発明のDNSプロキシ装置はホームルータ103内に構成するものとしたが、サーバやPC端末内に構成するようにしてもよい。
なお、本発明にかかるプログラムは、上述した本発明のDNS中継方法の全部または一部の工程の動作をコンピュータにより実行させるためのプログラムであって、コンピュータと協働して動作するプログラムであってもよい。
又、本発明は、上述した本発明のDNS中継方法の全部または一部の工程の全部または一部の動作をコンピュータにより実行させるためのプログラムを記録した記録媒体であり、コンピュータにより読み取り可能且つ、読み取られた前記プログラムが前記コンピュータと協動して前記動作を実行する記録媒体であってもよい。
なお、本発明の上記「一部の工程」とは、それらの複数の工程の内の幾つかの工程を意味し、あるいは、一つの工程の内の一部の動作を意味するものである。
又、本発明のプログラムを記録した、コンピュータに読みとり可能な記録媒体も本発明に含まれる。
又、本発明のプログラムの一利用形態は、コンピュータにより読み取り可能な記録媒体に記録され、コンピュータと協働して動作する態様であっても良い。
又、本発明のプログラムの一利用形態は、伝送媒体中を伝送し、コンピュータにより読みとられ、コンピュータと協働して動作する態様であっても良い。
又、記録媒体としては、ROM等も含まれる。
又、上述した本発明のコンピュータは、CPU等の純然たるハードウェアに限らず、ファームウェアや、OS、更に周辺機器を含むものであっても良い。
なお、以上説明した様に、本発明の構成は、ソフトウェア的に実現しても良いし、ハードウェア的に実現しても良い。
以上のような本発明のDNSプロキシ装置によれば、例えば、端末の接続先となるネットワークを判別し、適切なDNS問い合わせを適切なネットワークに発行することにより、無用なDNS問い合わせをDNSサーバに実行することを防ぎ、又、端末は、複数のネットワークに接続していることを意識する必要が無く、従来通り1つのDNSサーバにDNS問い合わせを実行するだけで、DNS名前解決を行なうことが可能となる。
本発明にかかるDNSプロキシ装置及びDNS中継方法は、互いに異なるDNSクライアントから構成されるLANにおいても、それぞれのDNSサーバに対し名前解決を行うことができる効果を有し、特に異なる名前空間を管理する複数のDNSサーバをLANに接続する際等に有用である。例えば、広帯域を必要とするネットワークサービスの実用化に際し、端末がCDN網とインターネット網に同時接続した場合に、DNS名前解決が行なえない問題の解決は必須であり、既存のOSを搭載した端末が、CDN網とインターネット網にシームレスに接続することを可能にする本発明は、有用である。
本発明の実施の形態に係るDNSプロキシ装置を含むシステム構成図 本発明の実施の形態に係るDNSプロキシ装置の構成を示したブロック図 本発明の実施の形態に係るDNSプロキシ装置の動作(1)の場合を示す通信シーケンス図 本発明の実施の形態に係るDNSプロキシ装置の動作(1)の場合を示す通信シーケンス図 本発明の実施の形態に係るDNSプロキシ装置の動作(2)の場合を示す通信シーケンス図 本発明の実施の形態に係るDNSプロキシ装置の動作(2)の場合を示す通信シーケンス図 本発明の実施の形態に係るDNSプロキシ装置の動作(3)の場合を示す通信シーケンス図 本発明の実施の形態に係るDNSプロキシ装置の動作(3)の場合を示す通信シーケンス図 従来の技術によるインターネットと端末との接続を示すシステム構成図 従来の技術によるインターネットとLANとの接続を示すシステム構成図
符号の説明
100 IPv4端末
101 IPv6端末
102 LAN
103 ホームルータ
104 アクセス網ネットワーク
105 インターネット網
106 IPv4ルータ
107 IPv4ネットワーク
108 IPv4DNSサーバ
109 CDN網
110 IPv6ルータ
111 IPv6ネットワーク
112 IPv6DNSサーバ
113 スイッチングハブ
120 IPv4/IPv6端末
201 LAN I/F部
202 WAN I/F部
203 IPブリッジ部
204 IPルーティング部
205 マイコン
206 DNS通信部
207 メモリ
208 端末テーブル
209 DNSサーバテーブル

Claims (12)

  1. それぞれ異なる名前空間を有する複数のネットワークのそれぞれのDNSサーバ及びLANに接続された複数の端末と通信を行い、前記端末から受信したDNS問い合わせを前記複数のネットワークのいずれかのDNSサーバに中継するDNSプロキシ装置であって、
    前記複数の端末のそれぞれと前記複数の端末のそれぞれが通信するいずれかの前記ネットワークとの対応関係を記憶する対応関係記憶テーブルと、
    前記端末からDNS問い合わせを受信した際に、前記対応関係記憶テーブルを参照して、そのDNS問い合わせを行った端末が対応する前記ネットワークのDNSサーバに対してDNS問い合わせを中継する中継部とを備えた、DNSプロキシ装置。
  2. 前記対応関係記憶テーブルの前記複数の端末は、それらのMACアドレスを用いて登録されている、請求項1に記載のDNSプロキシ装置。
  3. 前記対応関係記憶テーブルの前記複数のネットワークは、それらネットワークにて用いられるプロトコルの種類を用いて登録されている、請求項1に記載のDNSプロキシ装置。
  4. 前記ネットワークにて用いられる前記プロトコルの種類は、少なくともIPv4及びIPv6を含むものである、請求項3に記載のDNSプロキシ装置。
  5. 前記複数の端末と前記複数のネットワークとの間で授受される通信パケットを監視し、その監視した結果に応じて前記対応関係記憶テーブルの内容を更新する第1の監視部を備えた、請求項1に記載のDNSプロキシ装置。
  6. 前記複数のネットワークが少なくとも1つのIPv6ネットワークを含む場合、
    前記第1の監視部は、前記端末と前記IPv6ネットワークとの間で通信されるRouter SolicitationメッセージとRouter Advertisementメッセージとを監視し、これらメッセージにより前記端末がIPv6グローバルアドレスを取得した際に、前記対応関係記憶テーブルに前記端末を登録する、請求項5に記載のDNSプロキシ装置。
  7. 前記複数のネットワーク及び前記複数の端末を接続するルータと前記複数の端末との間で授受される通信パケットを監視し、その監視した結果に応じて前記対応関係記憶テーブルの内容を更新する第2の監視部を備えた、請求項1に記載のDNSプロキシ装置。
  8. 前記複数のネットワークが少なくとも1つのIPv4ネットワークを含み、
    前記第2の監視部は、前記ルータにより前記端末に前記IPv4プライベートアドレスが付与された際に、前記対応関係記憶テーブルに前記端末を登録する、請求項7に記載のDNSプロキシ装置。
  9. 前記対応関係記憶テーブルは、前記複数のネットワークの間に優先順位を設定しており、
    前記中継部は、前記端末が複数のネットワークと通信可能である場合には、前記端末から受信したDNS問い合わせを、当該優先順位に基づき中継する、請求項1に記載のDNSプロキシ装置。
  10. それぞれ異なる名前空間を有する複数のネットワークのそれぞれのDNSサーバ及びLANに接続された複数の端末と通信を行い、前記端末から受信したDNS問い合わせを前記複数のネットワークのいずれかのDNSサーバに中継するDNS中継方法であって、
    前記複数の端末のそれぞれと前記複数の端末のそれぞれが通信するいずれかの前記ネットワークとの対応関係を対応関係記憶テーブルに記憶する工程と、
    前記端末からDNS問い合わせを受信した際に、前記対応関係記憶テーブルを参照して、そのDNS問い合わせを行った端末が対応する前記ネットワークのDNSサーバに対してDNS問い合わせを中継する中継工程とを備えた、DNS中継方法。
  11. 請求項10に記載の、それぞれ異なる名前空間を有する複数のネットワークのそれぞれのDNSサーバ及びLANに接続された複数の端末と通信を行い、前記端末から受信したDNS問い合わせを前記複数のネットワークのいずれかのDNSサーバに中継するDNS中継方法の、前記複数の端末のそれぞれと前記複数の端末のそれぞれが通信するいずれかの前記ネットワークとの対応関係を対応関係記憶テーブルに記憶する工程と、前記端末からDNS問い合わせを受信した際に、前記対応関係記憶テーブルを参照して、そのDNS問い合わせを行った端末が対応する前記ネットワークのDNSサーバに対してDNS問い合わせを中継する中継工程とをコンピュータに実行させるためのプログラム。
  12. 請求項11に記載のプログラムを記録した記録媒体であって、コンピュータにより処理可能な記録媒体。
JP2008225133A 2008-09-02 2008-09-02 Dnsプロキシ装置及びdns中継方法 Pending JP2010062757A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008225133A JP2010062757A (ja) 2008-09-02 2008-09-02 Dnsプロキシ装置及びdns中継方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008225133A JP2010062757A (ja) 2008-09-02 2008-09-02 Dnsプロキシ装置及びdns中継方法

Publications (1)

Publication Number Publication Date
JP2010062757A true JP2010062757A (ja) 2010-03-18

Family

ID=42189091

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008225133A Pending JP2010062757A (ja) 2008-09-02 2008-09-02 Dnsプロキシ装置及びdns中継方法

Country Status (1)

Country Link
JP (1) JP2010062757A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012054648A (ja) * 2010-08-31 2012-03-15 Brother Ind Ltd ノード装置、情報通信システム、情報通信方法及びプログラム
JP2013066091A (ja) * 2011-09-20 2013-04-11 Pfu Ltd ノード検出装置、ノード検出方法、及びプログラム
WO2013088739A1 (ja) * 2011-12-16 2013-06-20 パナソニック株式会社 通信監視システム及びプログラム
JP2013175938A (ja) * 2012-02-24 2013-09-05 Ntt Communications Kk 通信装置、通信方法、及びプログラム
CN111343244A (zh) * 2018-08-23 2020-06-26 贵州白山云科技股份有限公司 云分发网络调度方法、装置及计算机可读存储介质

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012054648A (ja) * 2010-08-31 2012-03-15 Brother Ind Ltd ノード装置、情報通信システム、情報通信方法及びプログラム
JP2013066091A (ja) * 2011-09-20 2013-04-11 Pfu Ltd ノード検出装置、ノード検出方法、及びプログラム
US9055138B2 (en) 2011-09-20 2015-06-09 Pfu Limited Information processing device, information processing method, and computer readable medium
WO2013088739A1 (ja) * 2011-12-16 2013-06-20 パナソニック株式会社 通信監視システム及びプログラム
JP2013175938A (ja) * 2012-02-24 2013-09-05 Ntt Communications Kk 通信装置、通信方法、及びプログラム
CN111343244A (zh) * 2018-08-23 2020-06-26 贵州白山云科技股份有限公司 云分发网络调度方法、装置及计算机可读存储介质

Similar Documents

Publication Publication Date Title
JP4519214B2 (ja) クライアント構成方法
US7046666B1 (en) Method and apparatus for communicating between divergent networks using media access control communications
EP2645679B1 (en) Method and apparatus for message transmission
US8751617B2 (en) Method and device for identifying and selecting an interface to access a network
US20030115345A1 (en) Methods and apparatus for masking destination addresses to reduce traffic over a communication link
US20080304501A1 (en) Tunneling service method and system
JP2006086800A (ja) ソースアドレスを選択する通信装置
CN103338151B (zh) 公网客户端访问私网服务器的方法及路由器
JP2004193844A (ja) 移動端末を収容できるパケット転送装置
JP2003273935A (ja) 相異なるプライベートネットワークに存在するネットワーク機器間の直接接続を提供するネットワーク接続装置及びその方法
CN110365557B (zh) 一种网络互连的方法及装置
JP4186733B2 (ja) 通信システム、端末及びアドレス生成方法
JP2002141953A (ja) 通信中継装置、通信中継方法、および通信端末装置、並びにプログラム記憶媒体
JP2010062757A (ja) Dnsプロキシ装置及びdns中継方法
US10129145B2 (en) Routing IPv6 packets between autonomous systems
US20090141705A1 (en) Device and method for address-mapping
JPH11252172A (ja) パケット生成方法およびその機能を有する情報処理装置並びにパケット生成プログラムを記録した記録媒体
JP2008172816A (ja) アドレス変換方法
US7085836B1 (en) System and method for automatic private IP address selection
US10164937B2 (en) Method for processing raw IP packet and device thereof
WO2015139397A1 (zh) 一种nat64资源获取方法及获取/分配装置
JP2005064570A (ja) ネットワークシステム及びインターネットワーク装置
JP2005086256A (ja) トンネルゲートウェイ装置
Cisco appletalk event-logging to appletalk zone
JP2006014123A (ja) ネットワーク設定方法、および、ネットワーク装置