JP6442545B2 - DNS server, black list generation method in DNS server, and black list generation program used for DNS server - Google Patents
DNS server, black list generation method in DNS server, and black list generation program used for DNS server Download PDFInfo
- Publication number
- JP6442545B2 JP6442545B2 JP2017072096A JP2017072096A JP6442545B2 JP 6442545 B2 JP6442545 B2 JP 6442545B2 JP 2017072096 A JP2017072096 A JP 2017072096A JP 2017072096 A JP2017072096 A JP 2017072096A JP 6442545 B2 JP6442545 B2 JP 6442545B2
- Authority
- JP
- Japan
- Prior art keywords
- dns
- node
- domain
- information
- domain name
- 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
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
デュアルスタック環境において、処理負荷を抑えて名前解決処理を実行するためのDNSサーバ、DNSサーバにおけるブラックリスト生成方法、DNSサーバに用いるブラックリスト生成プログラムに関する。 The present invention relates to a DNS server, a black list generation method in a DNS server, and a black list generation program used for the DNS server for executing name resolution processing while suppressing processing load in a dual stack environment.
近年、IPネットワークを利用する通信は、IPv4とIPv6とのプロトコルが混在するデュアルスタックの環境で行われることがある。 In recent years, communication using an IP network may be performed in a dual stack environment in which protocols of IPv4 and IPv6 are mixed.
デュアルスタックの環境においては、異なるプロトコルのネットワークにアクセスする場合、例えば、IPv6対応の閉域網(以下、「IPv6閉域網」と称する)内のユーザ端末から、IPv4対応の広域網(以下、「IPv4広域網」と称する)内のWebサーバにアクセスする場合には、ユーザ端末は一旦IPv6閉域網内のDNS(Domain Name System)サーバに名前解決を問い合わせ、これに対してRefused応答(拒絶応答)を受信すると、IPv4広域網内のISP−DNSサーバにアクセスすることになる。 In a dual stack environment, when accessing a network of a different protocol, for example, a user terminal in an IPv6-compatible closed network (hereinafter referred to as “IPv6 closed network”) is connected to an IPv4-compatible wide area network (hereinafter referred to as “IPv4”). When accessing a Web server in a "wide area network"), the user terminal once queries the DNS (Domain Name System) server in the IPv6 closed network for name resolution, and sends a Refused response (rejection response) to this. When received, the ISP-DNS server in the IPv4 wide area network is accessed.
このようにIPv4広域網へのアクセスの際にもIPv6閉域網内のDNSサーバで問い合わせに対する処理を行うと、IPv6閉域網内のDNSサーバの処理負荷が増大してしまうという問題がある。そのため、IPv6閉域網内のDNSサーバの前段に、Refused応答の対象となるハードウェア(ユーザ端末)からのアクセスを検出してフィルタリングするためのハードウェア検出装置を設置する技術がある。 As described above, even when accessing the IPv4 wide area network, if the DNS server in the IPv6 closed network performs processing for the inquiry, there is a problem that the processing load of the DNS server in the IPv6 closed network increases. Therefore, there is a technique of installing a hardware detection device for detecting and filtering access from hardware (user terminal) that is a target of a Refused response, upstream of the DNS server in the IPv6 closed network.
このハードウェア検出装置には、名前解決に関する処理を拒絶するドメイン名を登録したDNSブラックリストを予め保持させる。そして、IPv4アドレスの名前解決の問い合わせ要求が行われたときに、当該アドレスに、DNSブラックリストに登録されたドメイン名が含まれていれば、DNSサーバにアクセスさせることなく、要求元の端末にRefused応答を送信する。 This hardware detection apparatus holds in advance a DNS black list in which domain names that reject processing related to name resolution are registered. Then, when an IPv4 address name resolution inquiry request is made, if the address includes a domain name registered in the DNS blacklist, the requesting terminal is accessed without accessing the DNS server. Send a Refused response.
このように構成することにより、IPv6閉域網内のDNSサーバの処理負荷を低減させることができる。 With this configuration, it is possible to reduce the processing load on the DNS server in the IPv6 closed network.
上述したハードウェア検出装置では、DNSブラックリストに記憶する情報の容量に制限があり、登録可能なドメイン名の数や情報の大きさが限られている。そのため、Refused応答の対象となるドメイン名の共通部分のみをフィルタリングのための検出対象の最小限の情報として登録しておき、当該登録された共通部分を含むドメイン名の名前解決の問い合わせ要求が行われたときにRefused応答している。 In the hardware detection apparatus described above, the capacity of information stored in the DNS blacklist is limited, and the number of domain names that can be registered and the size of information are limited. For this reason, only the common part of the domain name subject to the Refused response is registered as the minimum information to be detected for filtering, and a name resolution inquiry request for the domain name including the registered common part is made. Refused is responding when it is broken.
しかし、このように最小限の共通部分の情報のみをDNSブラックリストに登録しておくと、DNSサーバに名前解決処理対象として登録されているドメイン名に、当該共通部分が含まれてしまう場合がある。この場合、当該ハードウェア検出装置において、当該ドメイン名に関してはRefused応答せずにDNSサーバへのアクセスを許可するように個別に設定をする必要がある。このように設定が行われることで、DNSサーバ内で実行される処理とハードウェア検出装置内で実行される処理との整合性をとることができる。 However, if only information on the minimum common part is registered in the DNS blacklist in this way, the common part may be included in the domain name registered as the name resolution processing target in the DNS server. is there. In this case, in the hardware detection device, it is necessary to individually set the domain name so as to permit access to the DNS server without making a Refused response. By performing the setting in this way, it is possible to achieve consistency between the processing executed in the DNS server and the processing executed in the hardware detection device.
しかし、DNSサーバとハードウェア検出装置とは独立して構成されているため、DNSブラックリストに当該ドメイン名の共通部分を登録してからハードウェア検出装置においてアクセス許可の設定が行われるまでの間、双方の装置で処理の整合性がとれない期間が発生することがある。この期間が発生すると、当該DNSサーバに名前解決処理対象として登録されているドメイン名に関する名前解決処理が要求されても、処理が実行されずにRefused応答されてしまうという問題があった。 However, since the DNS server and the hardware detection device are configured independently, the period from when the common part of the domain name is registered in the DNS blacklist until the access permission is set in the hardware detection device. In some cases, a period in which processing consistency is not achieved in both apparatuses may occur. When this period occurs, there is a problem that a Refused response is made without executing the process even if a name resolution process related to a domain name registered as a name resolution process target is requested to the DNS server.
また、DNSブラックリストの登録は手動で行うため、手間がかかるという問題があった。 Also, since registration of the DNS blacklist is performed manually, there is a problem that it takes time.
本発明は上記事情を鑑みてなされたものであり、デュアルスタック環境において、処理負荷を低減させて効率よく且つ確実に名前解決処理を実行するためのDNSサーバ、DNSサーバにおけるブラックリスト生成方法、DNSサーバに用いるブラックリスト生成プログラムを提供することを目的とする。 The present invention has been made in view of the above circumstances, and in a dual stack environment, a DNS server, a black list generation method in a DNS server, and a DNS server for efficiently and reliably executing a name resolution process with a reduced processing load, An object of the present invention is to provide a black list generation program used for a server.
上記の課題を解決するための、本発明のDNSサーバは、ドメイン名からIPアドレスを解決する名前解決処理を行うために登録された、ドメイン名とIPアドレスとの対応情報をDNSレコード情報として記憶するDNSレコード情報記憶部と、ドメイン名を指定して名前解決処理を要求するために送信されたDNSクエリに対する応答処理のログ情報を記憶する応答ログ情報記憶部と、前記DNSレコード情報記憶部に記憶されたDNSレコード情報を取得し、各DNSレコード情報に対し、前記応答ログ情報記憶部に記憶可能な応答ログ情報数の最大値よりも大きい絶対値の負の値をポイント値として付加するDNSレコード情報取得部と、所定時間間隔で、前記応答ログ情報記憶部に記憶された応答ログ情報のドメイン名ごとの拒絶応答数をポイント値として、前記DNSレコード情報取得部で取得されたDNSレコード情報と突合させた突合リストを生成する突合リスト生成部と、前記突合リスト生成部で生成された突合リストから、ドメイン名の各文字をノードとし、ドメイン名の末端の共通する文字を最上位ノードとし先頭の文字を最下位ノードとして、共通の末端文字列を有する複数のドメイン名を示したツリー構造の情報を生成し、当該ツリー構造の情報内の各最下位ノードに、該当するドメイン名のポイント値を該当するノードのポイント値として付加し、最下位以外の各ノードに、直近の下位ノードのポイント値の合計値を該当するノードのポイント値として付加するツリー構造情報生成部と、前記ツリー構造情報生成部で生成されたツリー構造の情報から、ポイント値が正の値であり、直近の上位ノードのポイント値が負の値であるノードについて、当該ノードおよびその上位のノードを含めた共通文字列部分を抽出し、当該共通文字列部分を、以後発生するDNSクエリに対して拒絶応答の対象とする拒絶部分ドメイン情報として、ブラックリストを生成するブラックリスト生成部と前記ブラックリスト生成部で生成されたブラックリストを記憶するブラックリスト記憶部とを備えることを特徴とする。 In order to solve the above problems, the DNS server of the present invention stores, as DNS record information, correspondence information between a domain name and an IP address registered for performing a name resolution process for resolving an IP address from a domain name. A DNS record information storage unit, a response log information storage unit for storing log information of a response process for a DNS query transmitted to designate a domain name and request a name resolution process, and the DNS record information storage unit DNS that acquires stored DNS record information, and adds a negative value of an absolute value larger than the maximum value of the number of response log information that can be stored in the response log information storage unit as a point value to each DNS record information Record information acquisition unit and rejection of response log information stored in the response log information storage unit for each domain name at predetermined time intervals From the match list generated by the match list generation unit and the match list generated by the match list generation unit, a domain name is generated using the number of answers as a point value and the DNS record information acquired by the DNS record information acquisition unit. Generates tree structure information that shows multiple domain names with a common end character string, with each character of as a node, the common character at the end of the domain name as the highest node, and the first character as the lowest node. The point value of the corresponding domain name is added as the point value of the corresponding node to each lowest node in the information of the tree structure, and the total value of the point values of the latest lower nodes is added to each node other than the lowest node From the tree structure information generated by the tree structure information generation unit and the tree structure information generation unit For a node whose point value is a positive value and the point value of the nearest higher node is a negative value, extract the common character string part including the node and its higher node, and the common character string part is A blacklist generation unit that generates a blacklist and a blacklist storage unit that stores a blacklist generated by the blacklist generation unit as rejection partial domain information that is a target of a rejection response to a DNS query that is generated thereafter. It is characterized by providing.
また、本発明のDNSサーバにおけるブラックリスト生成方法は、ドメイン名からIPアドレスを解決する名前解決処理を行うために登録された、ドメイン名とIPアドレスとの対応情報をDNSレコード情報として記憶するDNSレコード情報記憶部と、ドメイン名を指定して名前解決処理を要求するために送信されたDNSクエリに対する応答処理のログ情報を記憶する応答ログ情報記憶部とを備えたDNSサーバが、前記DNSレコード情報記憶部に記憶されたDNSレコード情報を取得し、各DNSレコード情報に対し、前記応答ログ情報記憶部に記憶可能な応答ログ情報数の最大値よりも大きい絶対値の負の値をポイント値として付加し、所定時間間隔で、前記応答ログ情報記憶部に記憶されたログ情報のドメイン名ごとの拒絶応答数をポイント値とし、取得したDNSレコード情報と突合させた突合リストを生成し、生成した突合リストから、ドメイン名の各文字をノードとし、ドメイン名の末端の共通する文字を最上位ノードとし先頭の文字を最下位ノードとして、共通の末端文字列を有する複数のドメイン名を示したツリー構造の情報を生成し、当該ツリー構造の情報内の各最下位ノードに、該当するドメイン名のポイント値を該当するノードのポイント値として付加し、最下位以外の各ノードに、直近の下位ノードのポイント値の合計値を該当するノードのポイント値として付加し、生成したツリー構造の情報から、ポイント値が正の値であり、直近の上位ノードのポイント値が負の値であるノードについて、当該ノードおよびその上位のノードを含めた共通文字列部分を抽出し、当該共通文字列部分を、以後発生するDNSクエリに対して拒絶応答の対象とする拒絶部分ドメイン情報として、ブラックリストを生成し、生成したブラックリストを記憶することを特徴とする。 Further, the black list generation method in the DNS server of the present invention stores the correspondence information between the domain name and the IP address registered for performing the name resolution processing for resolving the IP address from the domain name as DNS record information. A DNS server comprising: a record information storage unit; and a response log information storage unit that stores log information of a response process for a DNS query transmitted to specify a domain name and request a name resolution process. DNS record information stored in the information storage unit is acquired, and for each DNS record information, a negative absolute value larger than the maximum number of response log information that can be stored in the response log information storage unit is a point value. And the rejection information for each domain name of the log information stored in the response log information storage unit at a predetermined time interval. Using the number as a point value, generate a match list that matches the acquired DNS record information. From the generated match list, each character of the domain name is a node, and the common character at the end of the domain name is the top node. Generate the tree structure information indicating multiple domain names with the same terminal character string with the character of the lowest node as the lowest node, and point value of the corresponding domain name to each lowest node in the tree structure information Is added as the point value of the corresponding node, and the total value of the point values of the latest lower nodes is added to each node other than the lowest node as the point value of the corresponding node. Is a positive value, and for the node whose point value of the nearest higher node is negative, the common statement including the node and its higher node Extracting a sequence part, generating the black list as rejection part domain information that is a target of a rejection response to a DNS query generated thereafter, and storing the generated black list To do.
また、本発明のDNSサーバに用いるブラックリスト生成プログラムは、DNSサーバに、ドメイン名からIPアドレスを解決する名前解決処理を行うために登録された、ドメイン名とIPアドレスとの対応情報をDNSレコード情報として記憶するDNSレコード情報記憶機能と、ドメイン名を指定して名前解決処理を要求するために送信されたDNSクエリに対する応答処理のログ情報を記憶する応答ログ情報記憶機能と、前記DNSレコード情報記憶機能により記憶されたDNSレコード情報を取得し、各DNSレコード情報に対し、前記応答ログ情報記憶機能で記憶可能な応答ログ情報数の最大値よりも大きい絶対値の負の値をポイント値として付加するDNSレコード情報取得機能と、所定時間間隔で、前記応答ログ情報記憶機能により記憶された応答ログ情報のドメイン名ごとの拒絶応答数をポイント値として、前記DNSレコード情報取得機能により取得されたDNSレコード情報と突合させた突合リストを生成する突合リスト生成機能と、前記突合リスト生成機能により生成された突合リストから、ドメイン名の各文字をノードとし、ドメイン名の末端の共通する文字を最上位ノードとし先頭の文字を最下位ノードとして、共通の末端文字列を有する複数のドメイン名を示したツリー構造の情報を生成し、当該ツリー構造の情報内の各最下位ノードに、該当するドメイン名のポイント値を該当するノードのポイント値として付加し、最下位以外の各ノードに、直近の下位ノードのポイント値の合計値を該当するノードのポイント値として付加するツリー構造情報生成機能と、前記ツリー構造情報生成機能により生成されたツリー構造の情報から、ポイント値が正の値であり、直近の上位ノードのポイント値が負の値であるノードについて、当該ノードおよびその上位のノードを含めた共通文字列部分を抽出し、当該共通文字列部分を、以後発生するDNSクエリに対して拒絶応答の対象とする拒絶部分ドメイン情報として、ブラックリストを生成するブラックリスト生成機能と、前記ブラックリスト生成機能により生成されたブラックリストを記憶するブラックリスト記憶機能とを実行させることを特徴とする。 The black list generation program used for the DNS server of the present invention is a DNS record that stores correspondence information between a domain name and an IP address registered in the DNS server in order to perform name resolution processing for resolving an IP address from the domain name. DNS record information storage function for storing information, a response log information storage function for storing log information of response processing for a DNS query transmitted to specify a domain name and request name resolution processing, and the DNS record information DNS record information stored by the storage function is acquired, and for each DNS record information, a negative absolute value larger than the maximum number of response log information that can be stored by the response log information storage function is used as a point value. DNS record information acquisition function to be added and the response log information storage function at predetermined time intervals A match list generation function for generating a match list matched with the DNS record information acquired by the DNS record information acquisition function, using the number of rejection responses for each domain name of the response log information stored as a point value; and the match From the match list generated by the list generation function, each character of the domain name is a node, a common character at the end of the domain name is the highest node, and the first character is the lowest node. Generate the tree structure information indicating the domain name of each, and add the point value of the corresponding domain name as the point value of the corresponding node to each lowest node in the information of the tree structure. Tree structure information generation that adds the total point value of the latest lower nodes to the node as the point value of the corresponding node. From the function and the tree structure information generated by the tree structure information generation function, for a node whose point value is a positive value and the point value of the most recent upper node is a negative value, A black list generation function that extracts a common character string portion including a node, and generates the black list as rejection partial domain information that is a target of a rejection response to a DNS query that is generated thereafter; And a black list storage function for storing the black list generated by the black list generation function.
本発明のDNSサーバ、DNSサーバにおけるブラックリスト生成方法、DNSサーバに用いるブラックリスト生成プログラムによれば、デュアルスタック環境において、処理負荷を低減させて効率よく且つ確実に名前解決処理を実行することが可能になる。 According to the DNS server, the black list generation method in the DNS server, and the black list generation program used in the DNS server of the present invention, it is possible to efficiently and reliably execute name resolution processing while reducing the processing load in a dual stack environment. It becomes possible.
《第1実施形態》
〈第1実施形態によるDNSサーバを用いた通信システムの構成〉
本発明の第1実施形態によるDNSサーバを用いた通信システムの構成について、図1を参照して説明する。本実施形態による通信システム1Aは、IPv6閉域網10とIPv4広域網20とが接続されたデュアルスタック環境で構築されている。
<< First Embodiment >>
<Configuration of Communication System Using DNS Server According to First Embodiment>
A configuration of a communication system using a DNS server according to the first embodiment of the present invention will be described with reference to FIG. The communication system 1A according to the present embodiment is constructed in a dual stack environment in which an IPv6 closed network 10 and an IPv4 wide area network 20 are connected.
IPv6閉域網10には、複数のIPv6閉域網内サーバ(第1閉域網内サーバ11−1、第2閉域網内サーバ11−2、および第3閉域網内サーバ11−3)と、ユーザ端末12と、IPv6閉域網DNSサーバ13A(以下、「閉域網DNSサーバ13A」と記載する)とが接続されている。第1閉域網内サーバ11−1〜第3閉域網内サーバ11−3にはそれぞれ、個別にIPv6アドレスが割り振られている。
The IPv6 closed network 10 includes a plurality of IPv6 closed network servers (first closed network server 11-1, second closed network server 11-2, and third closed network server 11-3), and user terminals. 12 and an IPv6 closed
図1においては、IPv6閉域網10にユーザ端末が1台接続され、IPv6閉域網内サーバが3台接続された場合を示したが、この数には限定されず、さらに多くのユーザ端末やIPv6閉域網内サーバが接続されていてもよい。 Although FIG. 1 shows a case where one user terminal is connected to the IPv6 closed network 10 and three servers in the IPv6 closed network are connected, the number is not limited to this number, and more user terminals and IPv6 are connected. A server in the closed network may be connected.
ユーザ端末12は、ユーザにより、第1閉域網内サーバ11−1〜第3閉域網内サーバ11−3、またはIPv4広域網20内のWebサーバのいずれかをアクセス先としてホスト名またはメールアドレスを指定する操作が行われると、アクセス先のドメイン名からIPアドレスを取得する名前解決処理を要求するためのDNSクエリを生成し、閉域網DNSサーバ13Aに送信する。
The
DNSサーバ13Aは、DNSレコード情報記憶部13aと、受信部13bと、ドメイン判定部13cと、DNSアプリケーション13dと、応答生成部13eと、送信部13fと、応答ログ情報記憶部13gと、上位ドメインリスト生成部13hと、ブラックリスト生成部13iと、ブラックリスト記憶部13jと、ブラックリスト取得部13kと、突合リスト生成部13lと、DNSレコード情報取得部13mと、ブラックリスト更新部13nとを有する。
The
DNSレコード情報記憶部13aは、IPv6閉域網10内の装置に関し、名前解決処理を行うために予め登録された、ドメイン名とIPv6アドレスとの対応情報を、DNSレコード情報として記憶する。
The DNS record
受信部13bは、ユーザ端末12から送信されるDNSクエリを受信する。ドメイン判定部13cは、受信部13bで受信されたDNSクエリで指定されるドメイン名が、後述するブラックリスト記憶部13jに記憶されたブラックリスト内の拒絶ドメイン部分情報に該当するか否かを判定する。ここで、指定されたドメイン名がブラックリスト内の拒絶ドメイン部分情報に該当すると判定した場合は、当該DNSクエリを応答生成部13eに送出し、ブラックリストに該当しないと判定した場合は、当該DNSクエリをDNSアプリケーション13dに送出する。
The receiving
DNSアプリケーション13dは、ドメイン判定部13cからDNSクエリを取得すると、DNSレコード情報記憶部13aに記憶されたDNSレコード情報に基づいて、取得したDNSクエリで指定されるドメイン名に対応するIPv6アドレスを取得し、応答生成部13eに送出する。また、DNSアプリケーション13dは、取得したDNSクエリで指定されるドメイン名に対応するIPv6アドレスがDNSレコード情報記憶部13aに記憶されていないときには、当該DNSクエリに対しRefused応答すべきことを、応答生成部13eに通知する。
When the
応答生成部13eは、ドメイン判定部13cから、ドメイン名がブラックリスト内の拒絶ドメイン部分情報に該当すると判定したDNSクエリを取得したときには、Refused応答を生成し、送信部13fを介してユーザ端末12に送信する。また、DNSアプリケーション13dで取得されたIPv6アドレスを取得したときは、当該IPv6アドレスを当該DNSクエリに対する応答として生成し、送信部13fを介してユーザ端末12に送信する。また、応答生成部13eは、DNSアプリケーション13dから、当該DNSクエリに対しRefused応答すべきことが通知されたときにはRefused応答を生成し、送信部13fを介してユーザ端末12に送信する。
The
応答ログ情報記憶部13gは、DNSアプリケーション13dで実行されたDNSクエリに対する応答処理のログ情報(応答ログ情報)を記憶するとともに、Refused応答したログ情報に関し、ドメイン名ごとのRefused応答数を計数して記憶する。
The response log
上位ドメインリスト生成部13hは、所定時間間隔で到来するブラックリスト生成タイミングにおいて、応答ログ情報記憶部13gに記憶された応答ログ情報からRefused応答数が上位の所定数のドメイン名とそのRefused応答数を抽出し、応答ログ情報の上位ドメインリストを生成する。そして、生成した応答ログ情報の上位ドメインリストに基づいて、ドメインレベルごとに共通する文字列を含むグループごとに、該当するドメイン名とそのRefused応答数で構成されるグループごとの上位ドメインリストを生成する。
The upper domain
ブラックリスト生成部13iは、上位ドメインリスト生成部13hにおいて生成された各グループの上位ドメインリストごとに、ドメイン名内の共通する文字列を拒絶ドメイン部分情報として抽出するとともに該当するグループ内のドメイン名に対するRefused応答数の和を当該拒絶ドメイン部分情報のカウント値として算出し、これらの拒絶ドメイン部分情報とそのカウント値とを用いて、以後発生するDNSクエリに対してRefused応答の対象とするブラックリストを生成する。
The black
ブラックリスト記憶部13jは、過去のブラッククリスト生成タイミングにおいて生成したブラックリストを記憶する。
The black
ブラックリスト取得部13kは、突合リスト生成部13lからの要求により、ブラックリスト記憶部13jに記憶されたブラックリストを取得する。
The black
突合リスト生成部13lは、ブラックリスト生成部13iで生成されたブラックリストと、ブラックリスト取得部13kで取得された既存のブラックリストとを突合し、カウンタ値が大きい順に拒絶ドメイン部分情報をソートしてソート後の上位所定数の拒絶ドメイン部分情報とそのカウンタ値で突合リストを生成する。
The matching list generation unit 13l matches the black list generated by the black
DNSレコード情報取得部13mは、ブラックリスト更新部13nからの要求により、DNSレコード情報記憶部13aに記憶されたDNSレコード情報を取得する。
The DNS record
ブラックリスト更新部13nは、突合リスト生成部13lで生成された突合リストの中から、DNSレコード情報取得部13mで取得されたDNSレコード情報内のドメイン名が該当する拒絶ドメイン部分情報とそのカウント値を削除する。そして、該当情報を削除した後の上位所定数の拒絶ドメイン部分情報とそのカウンタ値で、ブラックリスト記憶部13j内のブラックリストを更新する。
The black list update unit 13n includes the reject domain part information corresponding to the domain name in the DNS record information acquired by the DNS record
また、ブラックリスト更新部13nは、DNSレコード情報記憶部13aに新たなドメイン名とIPv6アドレスとの対応情報が追加されたときに、DNSレコード情報取得部13mを介して新たなDNSレコード情報を取得するとともに、ブラックリスト取得部13kを介して既存のブラックリストを取得する。そして、既存のブラックリストの中から、取得したDNSレコード情報内のドメイン名が該当する拒絶ドメイン部分情報とそのカウンタ値を削除することで、ブラックリスト記憶部13j内のブラックリストを更新する。
Further, the blacklist update unit 13n acquires new DNS record information via the DNS record
IPv4広域網20には、複数のWebサーバ(第1Webサーバ21−1、第2Webサーバ21−2、および第3Webサーバ21−3)と、ISP(Internet Service Provider)−DNSサーバ22とが接続されている。図1においては、IPv4広域網20にWebサーバが3台接続された場合を示したが、この数には限定されず、さらに多くのWebサーバが接続されていてもよい。第1Webサーバ21−1〜第3Webサーバ21−3にはそれぞれ、個別にIPv4アドレスが割り振られている。
A plurality of Web servers (first Web server 21-1, second Web server 21-2, and third Web server 21-3) and ISP (Internet Service Provider) -
ISP−DNSサーバ22は、ユーザ端末12からDNSクエリを取得すると、これに対する応答として、当該DNSクエリに含まれるドメイン名に対応するIPv4アドレスを取得してユーザ端末12に送信する。
When acquiring the DNS query from the
〈第1実施形態によるDNSサーバを用いた通信システムの動作〉
次に、本実施形態による通信システム1AのIPv6閉域網10内の閉域網DNSサーバ13Aの動作について、図2〜12を参照して説明する。本実施形態において、IPv6閉域網10内のDNSレコード情報記憶部13aには、IPv6閉域網10内の装置(第1閉域網内サーバ11−1、第2閉域網内サーバ11−2、および第3閉域網内サーバ11−3を含む)に関し、名前解決処理を行うために予め登録された、ドメイン名とIPv6アドレスとの対応情報が、DNSレコード情報として予め記憶されている。
<Operation of Communication System Using DNS Server According to First Embodiment>
Next, the operation of the closed
そして、通常の稼動中は、ユーザ端末12においてアクセス先としてホスト名またはメールアドレスを指定する操作が行われると、アクセス先のドメイン名からIPアドレスを取得する名前解決処理を要求するためのDNSクエリが生成され、閉域網DNSサーバ13Aに送信される。
During normal operation, when an operation for specifying a host name or mail address as an access destination is performed in the
閉域網DNSサーバ13Aでは、図2のフローチャートに示すように、ユーザ端末12から送信されたDNSクエリが受信部13bから受信されると(S1の「YES」)、ドメイン判定部13cにおいて、DNSクエリで指定されるドメイン名が、後述するブラックリスト記憶部13jに記憶されたブラックリスト内の拒絶ドメイン部分情報に該当するか否かが判定される(S2)。
In the closed
判定したドメイン名が例えばIPv4アドレスのドメイン名であり、ブラックリスト内の拒絶ドメイン部分情報に該当すると判定した場合(S2の「YES」)は、応答生成部13eで当該DNSクエリに対するRefused応答が生成され、送信部13fからユーザ端末12に送信される(S3)。このように、ブラックリスト内の拒絶ドメイン部分情報に該当するDNSクエリに対しては、DNSアプリケーションの前段でRefused応答処理が行われる。このとき、ブラックリスト内に記憶されている、該当するドメイン部分情報に関するRefused応答した回数を示すカウント値が更新される。
If it is determined that the determined domain name is, for example, the domain name of the IPv4 address and corresponds to the rejected domain partial information in the black list (“YES” in S2), the
ユーザ端末12では、Refused応答を受信したことによりIPv4広域網20内のISP−DNSサーバ22に対してDNSクエリが再送信される。ISP−DNSサーバ22では、取得したDNSクエリに基づいて例えばWebサーバ21−1のIPv4が取得され、ユーザ端末12に通知される。ユーザ端末12では、通知されたIPv4アドレスを用いて、Webサーバ21−1にアクセス処理が実行される。
In the
また、ステップS2において、ドメイン判定部13cで判定したドメイン名がブラックリスト内の拒絶ドメイン部分情報に該当しないと判定した場合(S2の「NO」)は、当該DNSクエリがDNSアプリケーション13dに送出される。DNSアプリケーション13dでは、DNSレコード情報記憶部13aに記憶されたDNSレコード情報に、受信したDNSクエリで指定されるドメイン名に対応するIPv6アドレスが記憶されているか否かが判定される(S4)。判定の結果、記憶されたDNSレコード情報に、受信したDNSクエリで指定されるドメイン名に対応するIPv6アドレスが記憶されているときには(S4の「YES」)、当該IPv6アドレスが取得される(S5)。
If it is determined in step S2 that the domain name determined by the
そして、応答生成部13eにおいて、取得されたIPv6アドレスの情報が当該DNSクエリに対する応答として生成され、送信部13fからユーザ端末12に送信される(S6)。ここで、DNSアプリケーション13dで、当該DNSクエリに対してIPv6アドレスを応答したことが、応答ログ情報記憶部13gに記憶される(S7)。
Then, in the
ユーザ端末12では、通知されたIPv6アドレスを用いて、第1閉域網内サーバ11−1にアクセス処理が行われる。
The
上述した処理において、ユーザ端末12から、ブラックリストに記憶されていないドメイン名を有する端末、例えばIPv4広域網20内のWebサーバ21−3をアクセス先としてホスト名を指定する操作が行われた場合には、ステップS4の「NO」からステップS8に移行する。そして、DNSアプリケーション13dにより、当該DNSクエリに対しRefused応答すべきことが応答生成部13eに通知される。応答生成部13eでは、Refused応答が生成され、ユーザ端末12に送信される(S8)。ここで、DNSアプリケーション13dで、当該DNSクエリに含まれるIPv4アドレスのドメイン名に対してRefused応答したことが、応答ログ情報記憶部13gに記憶される。また、応答ログ情報記憶部13gに記憶された、該当するドメイン名のRefused応答数が更新される(S9)。
In the above-described processing, when the
上述したように稼動している間に、閉域網DNSサーバ13A内において所定時間間隔で実行されるブラックリストの生成処理について、図3〜11を参照して説明する。
A blacklist generation process executed at predetermined time intervals in the closed
予め設定されたブラックリスト生成タイミングが到来すると(S11の「YES」)、上位ドメインリスト生成部13hにより、応答ログ情報記憶部13gに記憶された応答ログ情報から、Refused応答数が上位の所定数のドメイン名とそのRefused応答数が抽出され、応答ログ情報の上位ドメインリストが生成される(S12)。ここでは、一例として、図4に示す応答ログ情報から、太線枠で示すRefused応答数上位10位までのドメイン名およびそのRefused応答数が抽出され、上位ドメインリストが生成される。ここで、図4に示すリスト内のRefused応答数の大きさは、A>B>C>D>E>F>G>H>I>J・・・>Xである。
When the preset blacklist generation timing arrives (“YES” in S11), the upper domain
次に、上位ドメインリスト生成部13hにおいて、図4に示す応答ログ情報の上位ドメインリストに基づいて、ドメインレベルごとに共通する文字列を含むグループα、β、σ、γごとに、図5(a)、(b)、(c)、および(d)の4つの上位ドメインリストが生成される(S13)。これらのグループごとの上位ドメインリストは、該当するドメイン名とそのRefused応答数で構成される。
Next, in the upper domain
次に、ブラックリスト生成部13iにより、グループα、β、σ、γごとの、上位ドメインリスト内のドメイン名の共通文字列部分が抽出される。一例として、生成された4つのグループの上位ドメインリストのうち、図5(a)に示すグループαの上位ドメインリストからドメイン名の共通文字列部分を抽出する場合について説明する。
Next, the black
グループαの上位ドメインリストには、Refused応答した回数が多いドメイン名として、「aaaaa.co.jp」、「aa.co.jp」、および「aaaa.co.jp」の3つが格納されている。そして、これらのドメイン名がそれぞれ、第1レベルドメイン(トップレベルドメイン)、第2レベルドメイン、第3レベルドメインに分割され、ドメインレベルごとに図6(a)〜(c)のように表で示される。 In the upper domain list of group α, three domain names “aaaaa.co.jp”, “aa.co.jp”, and “aaaa.co.jp” are stored as domain names that have been frequently responded to Refused. . These domain names are each divided into a first level domain (top level domain), a second level domain, and a third level domain, and each domain level is shown in a table as shown in FIGS. Indicated.
図6(a)は、グループα内の各ドメイン名の第1レベルドメインを示す表であり、1行目にドメイン名「aaaaa.co.jp」の第1レベルドメインである「jp」が各列に一文字ずつ格納され、2行目にドメイン名「aa.co.jp」の第1レベルドメインである「jp」が各列に一文字ずつ格納され、ドメイン名「aaaa.co.jp」の第1レベルドメインである「jp」が各列に一文字ずつ格納されている。 FIG. 6A is a table showing the first level domain of each domain name in the group α. In the first row, “jp” which is the first level domain of the domain name “aaaaa.co.jp” is shown. One character is stored in each column, and the first level domain “jp” of the domain name “aa.co.jp” is stored in each column in the second row, and the first character of each domain name “aaaa.co.jp” One-level domain “jp” is stored in each column, one character at a time.
図6(b)は、各ドメイン名の第2レベルドメインを示す表であり、図6(a)と同様の要領で、1行目〜3行目に各ドメイン名の第2レベルドメインである「co」が各列に一文字ずつ格納されている。 FIG. 6B is a table showing the second level domain of each domain name, and is the second level domain of each domain name in the first to third lines in the same manner as in FIG. 6A. “Co” is stored one character in each column.
図6(c)は、各ドメイン名の第3レベルドメインを示す表であり、1行目にドメイン名「aaaaa.co.jp」の第3レベルドメインである「aaaaa」が各列に一文字ずつ格納され、2行目にドメイン名「aa.co.jp」の第3レベルドメインである「aa」が各列に一文字ずつ格納され、ドメイン名「aaaa.co.jp」の第3レベルドメインである「aaaa」が各列に一文字ずつ格納されている。これらの情報は、各行において、右詰で各列に格納される。 FIG. 6C is a table showing the third level domain of each domain name. In the first row, “aaaaa”, which is the third level domain of the domain name “aaaaa.co.jp”, is one character in each column. In the second row, “aa”, which is the third level domain of the domain name “aa.co.jp”, is stored in each column, one character at a time, and in the third level domain of the domain name “aaaa.co.jp” A certain "aaaa" is stored in each column, one character. These pieces of information are stored in each column with right justification in each row.
次に、生成されたドメインレベルごとの表に基づいて、複数のドメイン名の間で、第1レベルドメインおよび第2レベルドメインがすべての列で一致し、且つ第3レベルドメインの右から複数列が共通する共通文字列の組み合わせが抽出される。図6(a)〜(c)においては、3つのドメイン名「aaaaa.co.jp」、「aa.co.jp」、および「aaaa.co.jp」の間で、第1レベルドメイン「jp」および第2レベルドメイン「co」が一致しており、第3レベルドメインの右から2列が「aa」で共通するため、これらを組み合わせた文字列「aa.co.jp」が抽出される。 Next, based on the generated table for each domain level, the first level domain and the second level domain match in all the columns among the plurality of domain names, and the third level domain has a plurality of columns from the right. A combination of common character strings having the same is extracted. 6A to 6C, the first level domain “jp” is defined between three domain names “aaaaa.co.jp”, “aa.co.jp”, and “aaaa.co.jp”. "And the second level domain" co "match, and the two columns from the right of the third level domain are common to" aa ", so the character string" aa.co.jp "combining them is extracted .
そして、当該抽出した文字列の先頭に任意の0文字以上の文字列を示す「*」を付加した「*aa.co.jp」を、以後発生するDNSクエリに対してRefused応答の対象とする拒絶ドメイン部分情報とする。また、この拒絶ドメイン部分情報「*aa.co.jp」に該当するドメイン名「aaaaa.co.jp」、「aa.co.jp」、および「aaaa.co.jp」のRefused応答数の和が、当該拒絶ドメイン部分情報「*aa.co.jp」のカウンタ値aとして算出される。つまり、カウンタ値a=Refused応答数A+D+Gである。 Then, “* aa.co.jp”, in which “*” indicating an arbitrary character string of 0 or more characters is added to the head of the extracted character string, is a target of a Refused response to a DNS query to be generated thereafter. Rejected domain part information. Also, the sum of the number of Refused responses for the domain names “aaaaa.co.jp”, “aa.co.jp”, and “aaaa.co.jp” corresponding to this rejection domain partial information “* aa.co.jp” Is calculated as the counter value a of the rejection domain partial information “* aa.co.jp”. That is, counter value a = Refused response number A + D + G.
同様に、図5(b)に示すグループβの上位ドメインリストから拒絶ドメイン部分情報「*bbb.co.jp」が抽出され、そのカウンタ値bが算出される(カウンタ値b=Refused応答数B+I)。また、図5(c)に示すグループσの上位ドメインリストから拒絶ドメイン部分情報「*cc.co.jp」が抽出され、そのカウンタ値dが算出される(カウンタ値d=Refused応答数Refused応答数E+F+J)。また、図5(d)に示すグループγの上位ドメインリストから拒絶ドメイン部分情報「*ddd.co.jp」が抽出され、そのカウンタ値cが算出される(カウンタ値c=Refused応答数C+H)。 Similarly, rejection domain partial information “* bbb.co.jp” is extracted from the upper domain list of group β shown in FIG. 5B, and its counter value b is calculated (counter value b = Refused response number B + I). ). Further, the rejection domain partial information “* cc.co.jp” is extracted from the upper domain list of the group σ shown in FIG. 5C, and the counter value d is calculated (counter value d = Refused response number Refused response). Number E + F + J). Further, rejection domain partial information “* ddd.co.jp” is extracted from the upper domain list of the group γ shown in FIG. 5D, and its counter value c is calculated (counter value c = Refused response number C + H). .
そして、抽出された4つの拒絶ドメイン部分情報が、カウンタ値の大きい順に並び替えられ、図7に示すようにブラックリストが生成される(S14)。図7のブラックリストには、カウンタ値の大きい順に、拒絶ドメイン部分情報が「*aa.co.jp」とそのカウンタ値a、「*bbb.co.jp」とそのカウンタ値b、「*ddd.co.jp」とそのカウンタ値c、「*cc.co.jp」とそのカウンタ値dが保持されている。 Then, the four pieces of extracted rejection domain partial information are rearranged in descending order of the counter value, and a black list is generated as shown in FIG. 7 (S14). In the black list of FIG. 7, the rejection domain partial information is “* aa.co.jp”, its counter value a, “* bbb.co.jp”, its counter value b, “* ddd” in descending order of the counter value. .co.jp "and its counter value c," * cc.co.jp "and its counter value d are held.
ここで、当該ブラックリストの生成処理が1回目であり、ブラックリスト記憶部13jの中に既存のブラックリストが未だない場合は(S15の「YES」)、ステップS14で更新されたブラックリストがブラックリスト記憶部13jに記憶され、ステップS11に戻る(S16)。
If the blacklist generation process is the first time and there is no existing blacklist in the
ステップS11において、予め設定された期間(例えば数日)が経過し、次のブラックリスト生成タイミングが到来すると(S11の「YES」)、上述したようにステップS12〜S14の処理が実行される。 In step S11, when a preset period (for example, several days) elapses and the next blacklist generation timing comes (“YES” in S11), the processes of steps S12 to S14 are executed as described above.
本実施形態においては2回目以降のブックリスト生成処理が実行されており(S15の「NO」)、ブラックリスト取得部13kにより、ブラックリスト記憶部13jに記憶されている既存のブラックリストが取得される(S17)。既存のブラックリストの一例を、図8に示す。図8のブラックリストには、拒絶ドメイン部分情報「*yy.co.jp」とのこの拒絶ドメイン部分情報に関するRefused応答した回数を示すカウンタ値x、拒絶ドメイン部分情報「*jjj.co,jp」とそのカウンタ値y、および拒絶ドメイン部分情報「*zzzzzz.ne.jp」とそのカウンタ値zが保持されている。
In the present embodiment, the second and subsequent book list generation processes are executed (“NO” in S15), and the black
次に、突合リスト生成部13lにより、ブラックリスト生成部13iで生成されたブラックリストと、ブラックリスト取得部13kで取得された既存のブラックリストとが突合され、カウンタ値が大きい順に拒絶ドメイン部分情報がソートされた突合リストが生成される(S18)。例えば、図7に示すブラックリストと、図8に示す既存のブラックリストとが突合され、図9に示す突合リストが生成される。
Next, the blacklist generated by the
突合リストが生成されると、ブラックリスト更新部13nからの要求によりDNSレコード情報取得部13mで最新のDNSレコード情報がDNSレコード情報記憶部13aから取得される(S19)。例えば、図10に示すような、「aaa.ne.jp」、「bbbbb.co.jp」・・・「ccc.ne.jp」を含むDNSレコード情報が取得される。
When the match list is generated, the DNS record
そして、ブラックリスト更新部13nにより、突合リスト生成部13lで生成された突合リストの中から、DNSレコード情報取得部13mで取得されたDNSレコード情報内のドメイン名が該当する拒絶ドメイン部分情報とそのカウント値が削除される(S20)。例えば、図9に示すように生成された突合リストの中から、図10に示すDNSレコード情報内の「bbbbb.co.jp」が該当する拒絶ドメイン部分情報「*bbb.co.jp」とそのカウンタ値bが削除され、図11のように更新される。
The blacklist update unit 13n then rejects domain part information corresponding to the domain name in the DNS record information acquired by the DNS record
そして、この更新された突合リストの中から、上位所定数の拒絶ドメイン部分情報とそのカウンタ値が抽出され、抽出された情報でブラックリスト記憶部13j内のブラックリストが更新される(S21)。例えば、図11の更新された突合リストの中から、太線枠で示す上位3個の拒絶ドメイン部分情報とそのカウンタ値(拒絶ドメイン部分情報「*aa.co.jp」とそのカウンタ値a、拒絶ドメイン部分情報「*yy.co,jp」とそのカウンタ値x、拒絶ドメイン部分情報「*jjj.co.jp」とそのカウンタ値y)が抽出され、これらの情報でブラックリスト記憶部13j内のブラックリストが更新される。
Then, the upper predetermined number of pieces of rejection domain part information and the counter value thereof are extracted from the updated matching list, and the black list in the black
ブラックリスト記憶部13jのブラックリストが更新されると、応答ログ情報記憶部13g内に記憶された応答ログ情報が消去されるとともに、更新したブラックリスト内のすべてのカウント値が図12に示すようにリセットされ、ステップS1に戻る。以上で、ブラックリストの生成処理の説明を終了する。
When the black list in the black
次に、閉域網DNSサーバ13A内のDNSレコード情報記憶部13aに、名前解決処理を行うためのドメイン名とIPv6アドレスとの対応情報が新たに追加されたときに実行される処理について、図13のフローチャートを参照して説明する。
Next, processing executed when correspondence information between a domain name and an IPv6 address for performing name resolution processing is newly added to the DNS record
DNSレコード情報記憶部13aのDNSレコード情報に新たな対応情報が追加されると(S21の「YES」)、DNSレコード情報取得部13mで情報追加後のDNSレコード情報がDNSレコード情報記憶部13aから取得され、ブラックリスト更新部13nに送出される(S22)。また、ブラックリスト更新部13nからの要求により、ブラックリスト取得部13kで既存のブラックリストがブラックリスト記憶部13jから取得される(S23)。
When new correspondence information is added to the DNS record information in the DNS record
そして、ブラックリスト更新部13nにより、既存のブラックリストから、取得されたDNSレコード情報内のドメイン名に該当する拒絶ドメイン部分とそのカウンタ値が削除されることでブラックリストが更新される(S24)。 Then, the black list is updated by deleting the rejection domain portion corresponding to the domain name in the acquired DNS record information and its counter value from the existing black list by the black list updating unit 13n (S24). .
以上の第1実施形態によれば、IPv6閉域網10内の閉域網DNSサーバ13Aにおいて、頻繁に受信されるIPv4広域網20のドメイン名に関するDNSクエリに対しては、DNSアプリケーション13d前段で迅速にRefused応答が行われ、DNSアプリケーション13dの処理負荷が低減されるとともに、処理時間の短縮を図ることができる。
According to the first embodiment described above, in the closed
また、ユーザ端末12から頻繁にアクセスする先が追加、変更されたときや、DNSレコード情報が新たに追加されたときにも、これに対応して自動でブラックリストが迅速に更新され、DNSレコード情報に登録されたドメイン名に対する名前解決処理を確実に実行させることができる。
In addition, when a frequently accessed destination from the
《第2実施形態》
〈第2実施形態によるDNSサーバを用いた通信システムの構成〉
本発明の第2実施形態によるDNSサーバを用いた通信システムの構成について、図14を参照して説明する。本実施形態による通信システム1Bは、第1実施形態の通信システム1Aの閉域網DNSサーバ13A内のブラックリスト生成部13i、ブラックリスト取得部13k、突合リスト生成部13l、およびブラックリスト更新部13nに換えて、閉域網DNSサーバ13Bが、突合リスト生成部13p、ツリー構造情報生成部13q、ブラックリスト生成部13r、およびブラックリスト更新部13sを有する他は、第1実施形態の構成と同様であるため、同一機能を有する部分の詳細な説明は省略する。
<< Second Embodiment >>
<Configuration of Communication System Using DNS Server According to Second Embodiment>
A configuration of a communication system using a DNS server according to the second embodiment of the present invention will be described with reference to FIG. The communication system 1B according to the present embodiment includes a black
本実施形態において、閉域網DNSサーバ13B内のDNSレコード情報取得部13mは、DNSレコード情報記憶部13aに記憶されたDNSレコード情報を取得し、各DNSレコード情報に対し、応答ログ情報記憶部13gに記憶可能な応答ログ情報数の最大値よりも十分に小さい値を、対応するポイント値として付加する。ここでは、各DNSレコード情報に対し、−∞をポイント値として付加する。
In the present embodiment, the DNS record
上位ドメインリスト生成部13hは、所定時間間隔で到来するブラックリスト生成タイミングにおいて、応答ログ情報記憶部13gに記憶された応答ログ情報からRefused応答数が上位の所定数のドメイン名とそのRefused応答数を抽出し、応答ログ情報の上位ドメインリストを生成する。
The upper domain
突合リスト生成部13pは、上位ドメインリスト生成部13hで生成された上位ドメインリスト中のドメイン名ごとのRefused応答数を該当するドメイン名のポイント値として、DNSレコード情報取得部13mで取得されたDNSレコード情報と突合させた突合リストを生成する。
The matching
ツリー構造情報生成部13qは、突合リスト生成部13pで生成された突合リストから、ドメイン名を構成する各文字をノードとし、ドメイン名の末端(右端)の共通する文字を最上位ノードとし先頭(左端)の文字を最下位ノードとして、共通の末端文字列を有する複数のドメイン名を示したツリー構造の情報を生成する。そして、当該ツリー構造の情報内の各最下位ノードに、該当するドメイン名のポイント値を該当するノードのポイント値として付加し、最下位以外の各ノードに、直近の下位ノードのポイント値の合計値を該当するノードのポイント値として付加する。
From the match list generated by the match
ブラックリスト生成部13rは、ツリー構造情報生成部13qで生成されたツリー構造の情報から、ポイント値が正の値であり、直近の上位ノードのポイント値が負の値であるノードについて、当該ノードおよびその上位のノードを含めた共通文字列部分を抽出し、当該共通文字列部分を、以後発生するDNSクエリに対して拒絶応答の対象とする拒絶部分ドメイン情報として、ブラックリストを生成する。
From the tree structure information generated by the tree structure information generation unit 13q, the black
ブラックリスト更新部13sは、ブラックリスト生成部13rで生成されたブラックリストで、ブラックリスト記憶部13j内の既存のブラックリストを更新する。
The black
〈第2実施形態によるDNSサーバを用いた通信システムの動作〉
本実施形態による通信システム1Bの閉域網DNSサーバ13Bの動作について、図15〜19を参照して説明する。本実施形態において、通常の稼動中は第1実施形態と同様に、ユーザ端末12からの要求に基づいて名前解決処理が実行される。
<Operation of Communication System Using DNS Server According to Second Embodiment>
Operation | movement of the closed
当該通信システム1Bの稼動中に、予め設定されたブラックリスト生成タイミングが到来すると(S31び「YES」)、上位ドメインリスト生成部13hにより、応答ログ情報記憶部13gに記憶された応答ログ情報から、Refused応答数が上位の所定数のドメイン名とそのRefused応答数が抽出され、図16に示すように応答ログ情報の上位ドメインリストが生成される(S32)。
When the blacklist generation timing set in advance is reached during the operation of the communication system 1B (S31 and “YES”), the upper domain
また、DNSレコード情報取得部13mにより、DNSレコード情報記憶部13aに記憶されたDNSレコード情報が取得され、各DNSレコード情報に対し、応答ログ情報記憶部13gに記憶可能な応答ログ情報数の最大値よりも十分に小さい値が、対応するポイント値として付加される。ここでは、図17に示すように、各DNSレコード情報に対し、−∞がポイント値として付加される(S33)。
The DNS record
次に、突合リスト生成部13pにより、応答ログ情報記憶部13gに記憶された応答ログ情報のドメイン名ごとの拒絶応答数をポイント値として、DNSレコード情報取得部13mで取得されたDNSレコード情報と突合させた突合リストが生成される(S34)。
Next, the DNS record information acquired by the DNS record
次に、ツリー構造情報生成部13qにおいて、突合リスト生成部13p生成された突合リストから、図18に示すように、ドメイン名の各文字をノードとしたツリー構造の情報が生成される。このツリー構造の情報は、複数のドメイン名に共通する第1ドメインの末端文字(右端の文字)を最上位ノードとし、右端の文字から順に左に一文字ずつ、該当するノードを順次下位ノードとしてエッジで関連付けて構成される。ここで、複数のドメイン名間で最上位ノードから連続して共通する文字列部分は同一ノードとし、異なる文字から先をエッジで分岐させることで、突合リスト内の複数のドメイン名の情報が格納される。
Next, the tree structure information generation unit 13q generates tree structure information with each character of the domain name as a node, as shown in FIG. 18, from the match list generated by the match
また、当該ツリー構造の情報内の各最下位のノードには、該当するドメイン名のポイント値が付加される(S35)。また、共通の上位ノードを有する最下位ノード(末端ノード)のポイント値の合計値が、該当する上位ノードのポイント値として付加される(S36)。さらに、上位のノードにポイント値が付加されていないノードがあるときには(S37の「YES」)、ポイント値が付加されていない共通の上位ノードを有する、ポイント値が付加された直近の下位のノードのポイント値の合計値が、該当する上位ノードのポイント値として付加される(S38)。この処理は、ポイント値が付加されていないノードがなくなるまで繰り返される。 In addition, a point value of the corresponding domain name is added to each lowest node in the information of the tree structure (S35). Further, the total value of the point values of the lowest node (terminal node) having a common higher node is added as the point value of the corresponding higher node (S36). Furthermore, when there is a node to which no point value is added to the upper node (“YES” in S37), the nearest lower node to which a point value is added having a common upper node to which no point value is added Is added as the point value of the corresponding upper node (S38). This process is repeated until there are no nodes to which point values are not added.
ツリー構造の情報内のすべてのノードにポイント値が付加されると(S37の「NO」)、ブラックリスト生成部13rにより、ツリー構造の情報から、ポイント値が正の値であり、直近の上位ノードのポイント値が負の値であるノードについて、当該ノードおよびその上位のノードを含めた共通文字列部分および対応するポイント値が抽出される(S39)。そして、抽出された共通文字列部分のうち、対応するポイント値が所定値よりも大きいものがさらに抽出される。ここで、抽出対象のノードに下位ノードが存在する場合には、当該下位ノード部分を0文字以上の任意の文字列を示す「*」として、以後発生するDNSクエリに対して拒絶応答の対象とする拒絶ドメイン部分情報が生成される。そして、生成された拒絶部分ドメイン部分情報が図19に示すようにリスト化されることで、ブラックリストが生成される。さらに、ブラックリスト更新部13sにより、生成されたブラックリストでブラックリスト記憶部13j内の既存のブラックリストが更新される(S40)。
When the point value is added to all the nodes in the tree structure information (“NO” in S37), the black
以上の第2実施形態によれば、IPv6閉域網10内の閉域網DNSサーバ13Bにおいて、頻繁に受信されるIPv4広域網20のドメイン名に関するDNSクエリに対しては、DNSアプリケーション13d前段で迅速にRefused応答が行われ、DNSアプリケーション13dの処理負荷が低減されるとともに、処理時間の短縮を図ることができる。
According to the second embodiment described above, in the closed
上述した実施形態においては、IPv6に対応したネットワーク内のDNSサーバにブラックリストの生成および更新を行う機能を設けた場合について説明したが、当該機能をIPv4ネットワーク内のDNSサーバに搭載し、IPv4ネットワーク内の機器からIPv6ネットワーク内の機器にアクセスする際のDNSサーバの処理負荷を軽減させるようにしてもよい。 In the above-described embodiment, the case where the DNS server in the network corresponding to IPv6 has the function of generating and updating the blacklist has been described. However, the function is installed in the DNS server in the IPv4 network, and the IPv4 network You may make it reduce the processing load of the DNS server at the time of accessing the apparatus in an IPv6 network from the apparatus in an inside.
1…通信システム
10…IPv6閉域網
11−1…第1閉域網内サーバ
11−2…第2閉域網内サーバ
11−3…第3閉域網内サーバ
12…ユーザ端末
13…DNSサーバ
13a…DNSレコード情報記憶部
13b…受信部
13c…ドメイン判定部
13d…DNSアプリケーション
13e…応答生成部
13f…送信部
13g…応答ログ情報記憶部
13h…上位ドメインリスト生成部
13i…ブラックリスト生成部
13j…ブラックリスト記憶部
13k…ブラックリスト取得部
13l…突合リスト生成部
13m…DNSレコード情報取得部
13n…ブラックリスト更新部
13p…突合リスト生成部
13q…ツリー構造情報生成部
13r…ブラックリスト生成部
13s…ブラックリスト更新部
20…IPv4広域網
21−1…第1Webサーバ
21−2…第2Webサーバ
21−3…第3Webサーバ
22…ISP−DNSサーバ
DESCRIPTION OF
Claims (3)
ドメイン名を指定して名前解決処理を要求するために送信されたDNSクエリに対する応答処理のログ情報を記憶する応答ログ情報記憶部と、
前記DNSレコード情報記憶部に記憶されたDNSレコード情報を取得し、各DNSレコード情報に対し、前記応答ログ情報記憶部に記憶可能な応答ログ情報数の最大値よりも大きい絶対値の負の値をポイント値として付加するDNSレコード情報取得部と、
所定時間間隔で、前記応答ログ情報記憶部に記憶された応答ログ情報のドメイン名ごとの拒絶応答数をポイント値として、前記DNSレコード情報取得部で取得されたDNSレコード情報と突合させた突合リストを生成する突合リスト生成部と、
前記突合リスト生成部で生成された突合リストから、ドメイン名の各文字をノードとし、ドメイン名の末端の共通する文字を最上位ノードとし先頭の文字を最下位ノードとして、共通の末端文字列を有する複数のドメイン名を示したツリー構造の情報を生成し、当該ツリー構造の情報内の各最下位ノードに、該当するドメイン名のポイント値を該当するノードのポイント値として付加し、最下位以外の各ノードに、直近の下位ノードのポイント値の合計値を該当するノードのポイント値として付加するツリー構造情報生成部と、
前記ツリー構造情報生成部で生成されたツリー構造の情報から、ポイント値が正の値であり、直近の上位ノードのポイント値が負の値であるノードについて、当該ノードおよびその上位のノードを含めた共通文字列部分を抽出し、当該共通文字列部分を、以後発生するDNSクエリに対して拒絶応答の対象とする拒絶部分ドメイン情報として、ブラックリストを生成するブラックリスト生成部と
前記ブラックリスト生成部で生成されたブラックリストを記憶するブラックリスト記憶部と
を備えることを特徴とするDNSサーバ。 A DNS record information storage unit that stores, as DNS record information, correspondence information between a domain name and an IP address registered for performing a name resolution process for resolving an IP address from a domain name;
A response log information storage unit for storing log information of a response process to a DNS query transmitted to specify a domain name and request a name resolution process;
The DNS record information stored in the DNS record information storage unit is acquired, and for each DNS record information, an absolute negative value that is larger than the maximum number of response log information items that can be stored in the response log information storage unit DNS record information acquisition unit for adding as a point value;
The match list matched with the DNS record information acquired by the DNS record information acquisition unit using the number of rejection responses for each domain name of the response log information stored in the response log information storage unit as a point value at a predetermined time interval A match list generator for generating
From the match list generated by the match list generation unit, each character of the domain name is a node, the common character at the end of the domain name is the highest node, the first character is the lowest node, and the common end character string is Generates tree structure information indicating multiple domain names, and adds the point value of the corresponding domain name as the point value of the corresponding node to each lowest node in the tree structure information. A tree structure information generation unit for adding the total value of point values of the latest lower nodes to each node as a point value of the corresponding node;
From the tree structure information generated by the tree structure information generation unit, a node whose point value is a positive value and whose point value of the nearest higher node is a negative value includes the node and its higher node. A black list generation unit that extracts a common character string part and generates the black list as rejection partial domain information that is a target of a rejection response to a DNS query that occurs thereafter.
A DNS server, comprising: a black list storage unit that stores the black list generated by the black list generation unit .
ドメイン名を指定して名前解決処理を要求するために送信されたDNSクエリに対する応答処理のログ情報を記憶する応答ログ情報記憶部とを備えたDNSサーバが、 A DNS server comprising a response log information storage unit for storing log information of a response process to a DNS query transmitted to specify a domain name and request a name resolution process;
前記DNSレコード情報記憶部に記憶されたDNSレコード情報を取得し、各DNSレコード情報に対し、前記応答ログ情報記憶部に記憶可能な応答ログ情報数の最大値よりも大きい絶対値の負の値をポイント値として付加し、 The DNS record information stored in the DNS record information storage unit is acquired, and for each DNS record information, an absolute negative value that is larger than the maximum number of response log information items that can be stored in the response log information storage unit Is added as a point value,
所定時間間隔で、前記応答ログ情報記憶部に記憶された応答ログ情報のドメイン名ごとの拒絶応答数をポイント値とし、取得したDNSレコード情報とを突合させた突合リストを生成し、 At a predetermined time interval, the number of rejection responses for each domain name of the response log information stored in the response log information storage unit is set as a point value, and a matching list is generated by matching the acquired DNS record information,
生成した突合リストから、ドメイン名の各文字をノードとし、ドメイン名の末端の共通する文字を最上位ノードとし先頭の文字を最下位ノードとして、共通の末端文字列を有する複数のドメイン名を示したツリー構造の情報を生成し、 From the generated match list, each domain name character is a node, the common character at the end of the domain name is the highest node, and the first character is the lowest node, indicating multiple domain names with a common end character string Generated tree structure information,
当該ツリー構造の情報内の各最下位ノードに、該当するドメイン名のポイント値を該当するノードのポイント値として付加し、最下位以外の各ノードに、直近の下位ノードのポイント値の合計値を該当するノードのポイント値として付加し、 The point value of the corresponding domain name is added as the point value of the corresponding node to each lowest node in the information of the tree structure, and the total value of the point values of the nearest lower nodes is added to each node other than the lowest node. Add as the point value of the corresponding node,
生成したツリー構造の情報から、ポイント値が正の値であり、直近の上位ノードのポイント値が負の値であるノードについて、当該ノードおよびその上位のノードを含めた共通文字列部分を抽出し、当該共通文字列部分を、以後発生するDNSクエリに対して拒絶応答の対象とする拒絶部分ドメイン情報として、ブラックリストを生成し、 From the generated tree structure information, extract the common character string part including the node and its higher-order node for the node whose point value is positive and the point value of the nearest higher-level node is negative. Then, a blacklist is generated using the common character string part as rejection part domain information for a rejection response to a DNS query generated thereafter,
生成したブラックリストを記憶する Memorize the generated blacklist
ことを特徴とするDNSサーバにおけるブラックリスト生成方法。A black list generation method in a DNS server.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017072096A JP6442545B2 (en) | 2017-03-31 | 2017-03-31 | DNS server, black list generation method in DNS server, and black list generation program used for DNS server |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017072096A JP6442545B2 (en) | 2017-03-31 | 2017-03-31 | DNS server, black list generation method in DNS server, and black list generation program used for DNS server |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018174469A JP2018174469A (en) | 2018-11-08 |
JP6442545B2 true JP6442545B2 (en) | 2018-12-19 |
Family
ID=64108879
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017072096A Active JP6442545B2 (en) | 2017-03-31 | 2017-03-31 | DNS server, black list generation method in DNS server, and black list generation program used for DNS server |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6442545B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7270369B2 (en) * | 2018-12-10 | 2023-05-10 | 諒 田中 | Substitution method, computer program, and information processing system |
CN112702445B (en) * | 2019-10-23 | 2023-04-07 | 中盈优创资讯科技有限公司 | Recursive log extraction method and device based on DNS response data message |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5987832B2 (en) * | 2011-09-06 | 2016-09-07 | 日本電気株式会社 | Agent device and communication relay method |
JP5989919B2 (en) * | 2013-12-10 | 2016-09-07 | 日本電信電話株式会社 | URL matching apparatus, URL matching method, and URL matching program |
JP2015220483A (en) * | 2014-05-14 | 2015-12-07 | 西日本電信電話株式会社 | Repeating device having dns-proxy function |
-
2017
- 2017-03-31 JP JP2017072096A patent/JP6442545B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018174469A (en) | 2018-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220078202A1 (en) | Rule-based network-threat detection | |
US12010096B2 (en) | Dynamic firewall configuration | |
US11425093B2 (en) | Device specific website filtering using a bifurcated domain name system | |
US9628442B2 (en) | DNS snooping to create IP address-based trust database used to select deep packet inspection and storage of IP packets | |
US10469499B2 (en) | Website filtering using bifurcated domain name system | |
CN106790746B (en) | Distributed domain name storage and analysis method and system | |
CN109729183B (en) | Request processing method, device, equipment and storage medium | |
JP4657295B2 (en) | Native language Internet address system | |
CN112866432B (en) | Domain name resolution method, system, electronic equipment and storage medium | |
JP2012094071A (en) | Filtering method, filtering system and filtering program | |
JP6442545B2 (en) | DNS server, black list generation method in DNS server, and black list generation program used for DNS server | |
CN113254165B (en) | Load flow distribution method and device for virtual machine and container, and computer equipment | |
CN110708309A (en) | Anti-crawler system and method | |
TWI513239B (en) | Network device and method for routing | |
CN104092751A (en) | Service access method and device | |
JP2010193015A (en) | Communication apparatus and communication method thereof | |
KR20080086096A (en) | System and method of processing keyword and storage medium of storing program executing the same | |
KR100723577B1 (en) | System and method of processing keyword and storage medium of storing program executing the same | |
CN114338630A (en) | Domain name access method, device, electronic equipment, storage medium and program product | |
CN113301001A (en) | Attacker determination method, device, computing equipment and medium | |
CN112968915B (en) | Processing method, processing system and processing device for DNS (Domain name Server) attack | |
CN105245626A (en) | Method for realizing website addressing by using shortcut domain name in private network | |
CN109660390B (en) | Information updating method and system based on external inquiry DNS server | |
CN115665086A (en) | Domain name resolution method and device based on network management equipment and electronic equipment | |
CN113839938B (en) | Method and device for detecting domain name takeover vulnerability |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20181120 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181126 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6442545 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |