WO2015030270A1 - 사용자 정보에 기반한, 도메인 네임 시스템 및 도메인 네임 서비스 방법 - Google Patents

사용자 정보에 기반한, 도메인 네임 시스템 및 도메인 네임 서비스 방법 Download PDF

Info

Publication number
WO2015030270A1
WO2015030270A1 PCT/KR2013/007638 KR2013007638W WO2015030270A1 WO 2015030270 A1 WO2015030270 A1 WO 2015030270A1 KR 2013007638 W KR2013007638 W KR 2013007638W WO 2015030270 A1 WO2015030270 A1 WO 2015030270A1
Authority
WO
WIPO (PCT)
Prior art keywords
dns
information
domain name
user information
client
Prior art date
Application number
PCT/KR2013/007638
Other languages
English (en)
French (fr)
Inventor
서정환
임영석
Original Assignee
Seo Jeong Hoan
Lim Young Suk
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 Seo Jeong Hoan, Lim Young Suk filed Critical Seo Jeong Hoan
Priority to EP13881453.8A priority Critical patent/EP2866386B1/en
Priority to JP2015542935A priority patent/JP5976232B2/ja
Priority to US14/375,769 priority patent/US10313299B2/en
Priority to PCT/KR2013/007638 priority patent/WO2015030270A1/ko
Priority to CN201380021199.XA priority patent/CN104798343B/zh
Publication of WO2015030270A1 publication Critical patent/WO2015030270A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/59Network arrangements, protocols or services for addressing or naming using proxies for addressing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/30Types of network names
    • H04L2101/33Types of network names containing protocol addresses or telephone numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/30Types of network names
    • H04L2101/35Types of network names containing special prefixes

Definitions

  • the present invention relates to a domain name service, and more particularly, to distribute and control a destination route for each user, to stably manage circuits and to maintain continuity of services to users even during abnormal operations of servers and devices used for the service. Based on a domain name system and a domain name service method.
  • IP addresses to identify objects. But people tend to use names rather than addresses. Therefore, we need a system that converts names into addresses and names by addresses.
  • Such a translation system maps names and addresses (all names and addresses are unique) so that when one knows one, it tells the other. It is no longer possible to save it to a computer and inform it.
  • DNS Domain Name System
  • Domain names have multiple labels, separated by '.', Each label up to 63 characters long. In other words, a fully qualified domain name is a sequence of labels separated by dots.
  • Service.com. Consists of a Service label, a com label, and a NULL label (the NULL name is always included at the end of the domain name).
  • FIG. 1 illustrates an example of a domain name resolution process, and as an example of a domain name with reference to FIG. 1, 'www.Service.com. The process of interpreting Domain 'will be described.
  • DNS Global System for Mobile communications
  • a host that wants to resolve an address to a name calls a DNS client called a resolver.
  • the resolver connects to the nearest DNS server to send a resolve request.
  • the DNS server is set on an operating system of the host, and in the present specification, the DNS server will be referred to as 'public DNS'.
  • the interpretation starts after the domain name. There is always a NULL label 115 at the end of the domain name, and a dot (.) At the end of the domain name.
  • the NULL label 115 denotes a root DNS server 130.
  • the public DNS 125 receiving the user's domain request message requests the IP address of www.Service.com to the set root server.
  • the root DNS server 130 If the root DNS server 130 does not have IP address information for the corresponding domain, the root DNS server 130 responds to the address of the Com name server 135 having the information on the Com label 110.
  • the public DNS 125 requests the IP address of www.Service.com from the responded Com name server 135, and the Com name server 135 has a DNS server 140 having the information (permission) of the service label 105. Answer)
  • the public DNS 125 again requests the interpretation of www.Service.com to the responded DNS server.
  • Requested DNS server responds with IP address of 200.1.1.1 because there is mapped IP address information of www in Zone File (Zone File, 145) containing service information.
  • the responded public DNS server 125 responds with 200.1.1.1 to the resolver 120 of the client, and the resolver 120 interprets the response message and passes the value to the client program requesting the resolution. .
  • iterative interpretation is a method in which the DNS server passes the IP of the DNS server having the authority to the domain and attempts the query repeatedly.
  • the DNS server responds with an IP address that matches the domain name in the Zone File, but initially it didn't predict how many changes would be made to the address.
  • the solution is to automatically update the DNS main file, which is called dynamic DNS.
  • a distributed denial-of-service attack refers to multiple systems working together on the Internet to cause a denial of service (DOS) by attacking a single target system.
  • the flooding messages ultimately cause the system to shut down, causing the bona fide user to lose service from the system.
  • the users in good faith do not receive the services of the target system by monopolizing the specific resources of the target system or the available line traffic.
  • load balancing refers to distributing and allocating processing so that load is equalized among devices operating in parallel.
  • Load balancing is a concept that is widely used in various fields, such as to equally process multiple microprocessors in a computer, or to send connection requests to a server having a capacity on a network.
  • load balancing it is necessary to continuously measure the load of each device, and when it is applied correctly, the control of load balancing generates a large load. Therefore, the load balancing actually used is to balance the accuracy and load, and research is continued to find a more efficient means.
  • IP address exposure is inevitable because name server information is disclosed through a domain administrator.
  • the DNS server itself becomes unavailable, the service itself of the domain managed by the DNS is impossible.
  • the problem to be solved by the present invention is to solve the above-mentioned problems, to reliably manage the circuit by distributing and controlling the destination path for each user, the continuity of the service to the users even in the abnormal operation of the server and the device used for the service It is to provide a domain name system and a domain name service method based on user information that can maintain the information.
  • a domain name service system based on user information, including: a client outputting a domain name query including user information and service domain name information; DNS for receiving the domain name query from the client; And a database for receiving the domain name query from the DNS, extracting user information included in the domain name query, and providing destination route information for each user information, wherein the client outputs the user from the database. Receive destination route information for each information through the DNS.
  • the database may provide host server path information or proxy or gateway path information for each user information, and bypass DNS server path information or bypass proxy path information or gateway path information available in place of the DNS when the DNS does not operate.
  • the client includes a client resolver for transmitting a DNS request message to a DNS configured for domain resolution; And an agent for adding user information to the DNS request message and outputting a query to the DNS.
  • a domain name service system based on user information, including: a DNS for receiving the domain name query including user information and service domain name information from a client; And a database for receiving the domain name query from the DNS, extracting user information included in the domain name query, and providing destination route information for each user information, wherein the DNS is a user output from the database.
  • the destination route information for each information may be transmitted to the client.
  • the database provides host server path information or proxy or gateway path information for each user information, and bypass DNS server path information or bypass proxy or gateway path information available in place of the DNS when the DNS is not operated. Do.
  • a domain name service system based on user information, including: a query receiving unit configured to receive a domain name query including user information and service domain name information from a client; A route providing unit extracting user information included in the domain name query received from the query receiving unit and providing destination route information for each user information; And a query response unit for transmitting destination route information for each user information output from the route providing unit to the client.
  • the route providing unit may provide the host server route information or the proxy or gateway route information for each user information and the bypass DNS server route information or the bypass proxy or gateway route information that can be used instead of the DNS when the DNS does not operate.
  • a method of domain information service based on user information comprising: outputting, by a client, a domain name query including user information and service domain name information; DNS receiving the domain name query from the client; Receiving the domain name query from the DNS and extracting user information included in the domain name query; And providing different destination route information according to the extracted user information.
  • the client further includes receiving destination route information for each user information output from the database through the DNS.
  • the present invention provides a recording medium readable by a processor that records a program executed by the processor.
  • the domain name service system based on the user information according to the present invention, it is possible to distribute and control the destination route for each user to stably manage the circuit, and to maintain the continuity of the service to the users even during abnormal operation of the server and the device used for the service. I can let you.
  • 1 illustrates an example of a domain name resolution process.
  • Figure 2 illustrates an embodiment of the configuration of a domain name service system based on user information according to the present invention.
  • 3 and 4 are block diagrams showing the detailed configuration of the client PC or equipment used in the DNS resolution request process of the client.
  • FIG. 5 illustrates another embodiment of the configuration of a domain name service system based on user information according to the present invention.
  • FIG. 6 is a block diagram illustrating a system configuration for explaining an example of a data transmission process between a client and a database in a user information-based domain name service system according to the present invention.
  • FIG. 7 illustrates a service process between a client and a host server for which the client wants to receive a service.
  • FIG. 8 illustrates a process of obtaining information by an agent in providing program and device information using DNS.
  • Figure 10 illustrates one embodiment for DNS bypass path control.
  • Figure 11 illustrates another embodiment of DNS bypass path control.
  • FIG. 12 illustrates an embodiment of a user information based domain name service method according to the present invention.
  • FIG. 13 shows an example of a user information-based domain name service method according to the present invention.
  • FIG. 2 illustrates an embodiment of the configuration of a user name based domain name service system according to the present invention, which includes a client 200, a DNS 220, and a database 240. Is done.
  • the client 200 transmits a domain name query including user information and service domain name information to the DNS.
  • the client 200 receives destination path information for each user information output from the database 240 through the DNS 220.
  • DNS 220 receives the domain name query from client 200.
  • the database 240 receives the domain name query from the DNS 220, extracts user information included in the domain name query, and provides destination path information differently for each user information. Specifically, the database 240 provides host server path information or proxy or gateway path information for each user information, and bypass DNS server path information or bypass proxy or gateway path information that is available in place of the DNS when the DNS is not operated. It is preferable.
  • the client 200 includes a client resolver (not shown) for transmitting a DNS request message to a DNS configured for domain resolution, and an agent (not shown) for adding a user information to the DNS request message and outputting a query to the DNS. can do.
  • the domain name service system based on the user information may include the DNS 220 and the database 240 separately from the client.
  • the DNS 220 receives a domain name query including user information and service domain name information from the client 200.
  • the database 240 may receive the domain name query from the DNS 220, extract user information included in the domain name query, and provide destination path information differently for each user information.
  • the DNS 220 transmits destination route information for each user information output from the database 240 to the client 220.
  • the database 240 provides host server path information or proxy or gateway path information for each user information, and bypass DNS server path information or bypass proxy or gateway path information available in place of the DNS when the DNS does not operate. desirable.
  • 3 and 4 are block diagrams showing the detailed configuration of the client PC or equipment used in the DNS resolution request process of the client 200.
  • the client 200 includes a user program 300, 400, a resolver 310, 420, an agent 320, 410, and a cache 330, 340, 430, 440).
  • Figure 13 shows an example of a user information-based domain name service method according to the present invention.
  • the user program 300 requests the resolver 310 to resolve the domain name.
  • the resolver 310 transmits a DNS request message to a DNS configured for domain name resolution.
  • the agent 320 when the DNS request occurs, the agent 320 generates a query name of a question section. The user information is added to the zone to transmit the DNS request message to the public DNS server 350.
  • the public DNS server 350 transmits the information of the query name to the DNS server 360 having the information (permission) of the request message.
  • the DNS server 360 having the information (permission) 360 inquires of the preset database 370 (step S1340).
  • the DNS 360 performs a function of adding, modifying, and extracting a request message database.
  • the database 370 responds with the matched information (step S1355).
  • the database 370 extracts user information added by the agent 320 and outputs destination route information, for example, host server path information or the like, for each user information. Proxy or gateway route information and bypass DNS server route information or bypass proxy or gateway route information may be provided.
  • DNS 360 transmits the response information received from the database 370 to the public DNS 350 (step S1365).
  • the public DNS 350 delivers the response information received from the DNS 360 to the agent 320 (
  • the agent 320 checks the contents of the response message and transmits the result to the resolver 310 requesting DNS resolution.
  • the resolver 310 analyzes and caches the response message and then caches the user program 300.
  • the user program connects to the received address and uses the service.
  • the resolver 310 caches the bypass DNS server route information or the bypass proxy or gateway route information in the response message. (caching)
  • the resolver 310 and the agent 320 of FIG. 3 may be located by changing their positions as shown in FIG. 4. That is, the agent 410 may transmit a DNS query to the resolver 420 and may transmit a response message output from the resolver 420 to the agent 410.
  • Figure 5 shows another embodiment of the configuration of the domain name service system based on user information according to the present invention
  • the domain name service system according to the present invention is a query receiving unit 500, the path providing unit 520 And a query response unit 540.
  • the query receiver 500 receives a domain name query including user information and service domain name information from the client 550.
  • the route provider 520 extracts user information included in the domain name query received from the query receiver 500, and provides destination route information to the query response unit 640 for each user information.
  • the route providing unit 520 may provide host server route information or proxy or gateway route information for each user information, and bypass DNS server route information or bypass proxy or gateway route information available in place of the DNS when the DNS does not operate. .
  • the query response unit 540 transmits destination route information for each user information output from the route providing unit 520 to the client 650.
  • the query receiver 500, the path controller 520, and the query response unit 540 described above may be implemented and installed in one system.
  • the path controller 520 may be implemented using a separate device, for example, a database. It can also be implemented and installed.
  • FIG. 6 is a block diagram illustrating a system configuration for explaining an example of a data transmission process between a client and a database in a user information-based domain name service system according to the present invention.
  • the agent 620 is a program or device that collects user information and includes a user information in a corresponding message when a DNS resolution request of a user's program (browser) is requested.
  • the DNS server 640 requests the host of the DNS request message matched with the preset database 650, and transmits the information received from the database 650 to the agent through the public DNS.
  • DNS 1 640 is a DNS server in which name server information is published and is identical to DNS 1 1030 of FIG. 10.
  • DNS 2 1070 of FIG. 10 refers to a DNS server in which name server information is not disclosed, and uses the same database as DNS 1 and plays the same role.
  • Databases 650 and 1040 store data used for service or management of the domain name system, and store different destination paths for each user.
  • the user wants to connect to the web server using the Service.com domain through a program such as a browser.
  • the database 650 includes proxy or gateway route information (IP address, domain, etc.), gateway route information (IP address, domain, etc.) or host server route information (for each client's information) to the host server of Service.com. IP address, domain, etc.) are stored.
  • proxy or gateway route information IP address, domain, etc.
  • gateway route information IP address, domain, etc.
  • host server route information for each client's information to the host server of Service.com. IP address, domain, etc.
  • IP address not only the IP address but also various information for authenticating a user, such as a Mac ID and a login ID, may be used alone or in combination, but FIG. 6 assumes that only an IP address is used.
  • IP address 200.0.0.1.
  • the agent receives the user's request as follows.
  • the first user requests the IP address for the domain-name (“Service.com”) to the DNS client Resolver 610 through the client program 600.
  • the requested resolver 610 transmits the DNS request message to the DNS server address set in the operating system (OS).
  • the pre-installed agent 620 modulates the DNS request message as follows.
  • 100_100_100_1 is a content of the client IP address so that it is easily understood, and the corresponding information means an unencrypted client IP address.
  • the agent 620 transmits the changed message to the DNS server address set in the operating system (OS).
  • OS operating system
  • the public DNS 630 sends a resolution request to the root name server to resolve the “100_100_100_1.Service.com” domain, which informs the name of the com name server.
  • the Com name server registers the Service.com domain information.
  • Com name server informs the address of DNS server registered with Service.com domain information DNS server interprets "100_100_100_1.Service.com", which is a preset database (650). Query the domain contents with
  • the database 650 responds back to the DNS name server with the information IP address: 200.0.0.1 matching the data.
  • DNS 1 640 inserts information about the client 100_100_100_1 into the database 650 according to a preset policy.
  • the DNS 640 responds to the public DNS 630 with the received information, that is, the destination route.
  • the public DNS 630 responds to the agent 620 with the result of domain resolution.
  • Agent 620 analyzes the response message and caches if the received information is an IP address. Then, the domain name resolution result is returned to the resolver 610.
  • the resolver 610 responds to the client program 600 requesting the domain resolution.
  • the client program 600 connects to a server having a destination IP address of 200.0.0.1.
  • FIG. 7 illustrates a service process between a client and a host server for which the client wants to receive a service.
  • the agent 710 adds user information to the DNS query, and the user information and domain name are transmitted to the DNS 1 730 through the public DNS 720.
  • DNS 1 730 extracts the user information from the domain name query, for example, destination route information corresponding to the extracted user information, for example, host server route information or proxy or gateway route information, and bypass DNS server route information or detour.
  • the proxy or gateway route information is transmitted to the agent 710 through the public DNS 720.
  • the agent 710 transmits host server path information or proxy or gateway path information to the client 700, the client 700 may be a destination through the host server, proxy or gateway 740 previously assigned based on its information.
  • the host server 750 is accessed.
  • FIG. 8 illustrates a process of obtaining information by an agent in providing program and device information using DNS.
  • the program and the device itself receive information by transmitting a query to DNS 1 (830).
  • Agent 810 periodically or when a specific event occurs, DNS requests the DNS query including the device information, for example program version, configuration version, etc. to receive information from the database.
  • the DNS query can be requested in a text manner, and can be answered in any format that can be applied to the query type of the DNS query record as well as the text manner.
  • the agent sends a DNS query "configversion00002.Service.com" containing its program version to the public DNS in text format, sending a request to the DNS 1 server with information from Service.com. Answer the matched information in text form.
  • the agent can use the secondary information.
  • FIG. 9 is a diagram illustrating a process of acquiring information by a user in providing program and device information using DNS, which is similar to the information acquisition by the agent of FIG. 8, but at the request of the client 900, the agent 910 and the public DNS ( Information is provided by transmitting a query to DNS1 930 via 920.
  • FIG. 10 shows an example of the DNS bypass path control
  • DNS bypass path control is performed as follows.
  • DNS is exposed to direct attacks, such as D-Dos attacks, by exposing Name Server information, such as the IP and other registration information of the DNS server.
  • DNS 1 (1030) is the DNS to the second DNS (1070) when the normal DNS service is impossible due to an abnormal situation, for example, malicious user attack due to the disclosure of DNS name server information or its own error of its own DNS server.
  • the agent 1010 maintains the continuity of the DNS service to the user installed. This function is referred to as DNS bypass path control.
  • DNS detour path control is to control the path to another DNS 2 (1070) using the same function, for example, the same database when DNS 1 (1030) is unavailable.
  • the first situation is a normal service process
  • the second situation is a service process when the DNS 1 server 1030 used in an emergency, that is, during normal service process, is unavailable.
  • the normal service process is the same as FIGS. 6 and 7 expressed in the DNS service model.
  • one piece of information is additionally operated, which is the route information of the proxy or gateway having the information of DNS 2 1070 in case of emergency, or the route information of DNS 2, that is, the IP address information of the proxy or gateway which plays the same role as the public DNS. DNS IP address information.
  • the Resolver In response to the DNS resolution request of the client, the Resolver generates a DNS request packet, and the agent 1010 modulates this message and requests the DNS1 1030 through the public DNS 1020.
  • DNS 1 (1030) is to give the information about the destination or the path based on the user information included in the domain information, at this time, the route information, for example, proxy or DNS 2 (1070) based on the user information
  • the gateway IP address or domain name is transmitted simultaneously or sequentially in the DNS response message.
  • the public DNS 1020 responds back to the agent 1010 with the received message, and the agent 1010 analyzes the corresponding DNS response message and is divided into two situations.
  • the agent 1010 divides the response to the DNS request and the detour DNS information in the DNS response message, and then caches the detour information (DNS 2 information) in the memory of the client 1000. If there is already cached information, change it, and the DNS response message is delivered to the client 1000 through the resolver, and the client program uses the desired service through the received route.
  • DNS 2 information detour information
  • the second case is an abnormal response message.
  • the agent 1010 determines that normal service is not possible by the DNS 11030, and transmits a DNS request message to cached detour information, for example, an IP address or a domain name of a proxy or a gateway.
  • the proxy or gateway 1060 requests information matched to the domain name from a preset DNS 2 1070 or a device implemented to perform the same role, and receives a response and transmits the response to the agent 1010.
  • the DNS request message is the same as the original DNS request message, and the response is also the same because it references the same database.
  • TCP communication as well as UDP is supported, and protocol modulation is also possible.
  • the detour route transmits route information of a third DNS, for example, DNS 3, which does not exist in the drawing.
  • DNS not only provides information about domain names but also DNS detour information at the same time, and the agent 1010 caches and stores detour information, and when the DNS 11030 is not available, the name is provided through the detour address.
  • the DNS service is received using another DNS 2 1070 in which server information is not exposed.
  • FIG. 11 illustrates another example of a DNS bypass path control.
  • the client 1110, agent 1110, DNS1 1120, database 1130, cache 1140, and DNS2 1150 are agents 1010, DNS1 1020, database 1030, cache ( 1040 and DNS2 1050 have the same function.
  • the DNS bypass path control described with reference to FIG. 10 may be performed without any one of the public DNS 1020 and the proxy or the gateway 1060 of FIG. 10.
  • Figure 12 shows an embodiment of a user information-based domain name service method according to the present invention.
  • the client 200 transmits a domain name query including user information and service domain name information to the DNS 220 (step S1200).
  • the DNS 220 includes the client 200.
  • the domain name query is received from the database 240 and transmitted to the database 240 (step S1210).
  • the database 240 receives the domain name query from the DNS 220 and extracts user information included in the domain name query.
  • the destination route information may be differently provided according to the user information (step S1220). In this case, the destination route may be provided by the host server route information or the proxy or gateway route information for each user information, and the available bypass may be used instead of the DNS. It is desirable to provide DNS server route information or bypass proxy or gateway route information.
  • the client 200 receives destination path information for each user information output from the database 240 through the DNS 220 (step S1230).
  • the user information-based domain name service system and method according to the present invention separates an attacker and a general user by responding to different host information for each user when there is an external attack such as a DDOS attack.
  • an external attack such as a DDOS attack.
  • a program and a device for transmitting user information can be used.
  • DNS server manages domain information through database, not Zone File.
  • the database may be inside or outside the DNS. Also, when registering a domain, set the TTL (Time to Live) to the lowest value so that it is not cached.
  • the data format of the DNS message of the client is as follows.
  • the DNS message data format is a DNS message before decapsulation including an Open Systems Interconnection Reference Model (OSI) lower layer header.
  • OSI Open Systems Interconnection Reference Model
  • the header of the lower layer tells the fragmentary user, that is, the client information that requested the DNS message.
  • the Mac header identifies the MAC address of the sender of the packet, and the IP header indicates the source address of the packet.
  • the source address is known, and TCP
  • the origin of the packet received by the DNS on the domain name system currently used is information of public DNS, not information of a user (client).
  • the DNS request message and DNS response message formats are as follows:
  • Agents do not modify the headers of DNS request and response messages to comply with the Request for comment (RFC) protocol, a common convention used in existing DNS.
  • RRC Request for comment
  • the format of the DNS query record is as follows:
  • the Query name field has a variable length and contains the domain name.
  • the Query type field consists of 16 bits and indicates the type of query.
  • the agent modifies the Query name and Query type among the above-described DNS query record formats and transmits a DNS query message. It is also possible to change the Query type, in order to receive not only the IP address but also text type information, for example information required by the client module.
  • a query name change before and after adding user information in the user information-based domain name service system and method according to the present invention is as follows.
  • the DNS server registered the domain information called OtherDNS.com interprets the corresponding domain information after the change.
  • Table 6 shows an example of database connection.
  • Table 6 DB connection example Explanation Yes Matched Information
  • a User's Information AClientInfo.Service.com 200.0.0.1
  • B User's Information BClientInfo.Service.com 200.10.10.10
  • a Equipment Information ADevInfo.Service.com Information (in text format)
  • B Equipment Information BDevinfo.Service.com Information (in text format)
  • Table 6 is a simple example for explanation, and the information matching the requested domain name can be responded in various types as shown in Table 5.
  • DNSSEC can also be applied to DNS services requiring security.
  • an example of the response data of the DNS according to the present invention is as follows.
  • response data used in an embodiment of the present invention when a DNS resolution request is made, the destination path for each user information (client) and the DNS detour information are answered together.
  • the DNS response may include the destination IP address and the bypass DNS address in one DNS response message, or may be divided into two DNS response messages.
  • the DNS detour information is also responded with.
  • the present invention can be embodied as code that can be read by a computer (including all devices having an information processing function) in a computer-readable recording medium.
  • the computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable recording devices include ROM, RAM, CD-ROM, magnetic tape, floppy disks, optical data storage devices, and the like.
  • It can be used for domain name system and domain name service that can maintain the continuity of service to users among abnormal operation of server and device used for service.

Abstract

본 발명은 사용자 정보에 기반한 도메인 네임 시스템 및 도메인 네임 서비스 방법에 관한 것으로서, 그 도메인 네임 시스템은 사용자 정보와 서비스 도메인 네임 정보를 포함하는 도메인 네임 쿼리를 출력하는 클라이언트; 클라이언트로부터 도메인 네임 쿼리를 수신하는 DNS; 및 그 DNS로부터 도메인 네임 쿼리를 수신하고, 도메인 네임 쿼리에 포함된 사용자 정보를 추출하여, 사용자 정보 별로 목적지 경로 정보를 달리 제공하는 데이터베이스를 포함하고, 그 클라이언트는 데이터베이스로부터 출력되는 사용자 정보별 목적지 경로 정보를 상기 DNS를 통해 수신하는 것을 특징으로 한다.

Description

사용자 정보에 기반한, 도메인 네임 시스템 및 도메인 네임 서비스 방법
본 발명은 도메인 네임 서비스에 관한 것으로서, 특히 사용자 별로 목적지 경로를 분배 및 제어하여 안정적으로 회선을 관리하고 서비스에 이용되는 서버 및 장치의 비정상적인 동작 중에서도 사용자들에게 서비스의 연속성을 유지시켜주는, 사용자 정보에 기반한, 도메인 네임 시스템 및 도메인 네임 서비스 방법에 관한 것이다.
인터넷은 개체를 구분하기 위해 IP 주소를 사용한다. 그러나 사람들은 주소보다는 이름을 사용하고자 하는 경향이 있다. 그러므로 이름을 주소로 바꿔주고 주소를 이름으로 주는 시스템이 필요하다.
이러한 변환 시스템은 이름과 주소(모든 이름과 주소는 유니크(unique)하다)를 매핑시켜 한 가지를 알고 있으면 다른 한 가지를 알려주는 형태로 이루어지는데, 인터넷의 규모가 점점 커지면서 모든 이름과 주소를 단일 컴퓨터에 저장하고 알려주는 것이 불가능해 졌다.
이에 대한 해결책으로 현재 사용되고 있는 시스템은 아주 많은 정보를 작은 부분으로 나눈 후 서로 다른 컴퓨터에 각 부분을 나누어 저장하는 도메인 네임 시스템 ( DNS : Domain Name System )이다.
도메인 네임은 '.'로 나누어지는 여러 레이블(label)을 가지는데, 각 레이블은 최대 63개의 문자로 이루어진다. 다시 말하면 완전한 도메인 네임은 점(.)을 구분되는 레이블의 연속이다.
예를 들면 Service.com. 은 Service 레이블과 com 레이블 그리고 NULL 레이블로 이루어져 있다.(도메인 네임의 마지막에는 항상 NULL 레이블이 포함된다.)
이름을 주소로 변환하거나 주소를 이름으로 변환하는 것을 이름 주소 해석(name-address resolution)이라 한다.
도 1은 도메인 네임 해석 과정에 대한 일 예를 나타낸 것으로서, 도 1을 참조하여 도메인 네임의 일 예로 'www.Service.com. Domain'을 해석하는 과정을 설명하기로 한다.
일반적으로 사용자들은 브라우저를 통해 도메인 네임으로 서비스를 요청하는데, 주소를 이름으로 변환하기를 원하는 호스트는 해석기(resolver)라 불리는 DNS 클라이언트를 호출한다. 해석기는 해석 요구를 보내기 위해 가장 가까운 DNS 서버로 접속한다. DNS 서버는 호스트의 운영체제(Operating System) 상에 설정되며, 본 명세서에서는 상기 DNS 서버를 '공개 DNS' 라 하기로 한다.
해석은 도메인 네임의 뒤에서부터 시작한다. 도메인 네임의 가장 뒤는 항상 NULL 레이블(115)이 존재하며, 도메인 네임의 마지막에는 항상 점 ( . ) 이 존재한다.
NULL 레이블(115)은 루트 DNS 서버(Root DNS Server, 130)를 의미하며, 사용자의 도메인 요청 메시지를 받은 공개 DNS(125)는 설정된 루트 서버로 www.Service.com 의 IP 주소를 요청한다.
루트 DNS 서버(130)는 해당 도메인에 대한 IP 주소 정보를 가지고 있지 않다면 Com 레이블(110)에 대한 정보를 가진 Com 네임서버(135)의 주소를 응답해준다.
공개 DNS(125)는 응답받은 Com 네임서버(135)에 www.Service.com 의 IP 주소를 요청하고, Com 네임서버(135)는 Service 레이블(105)의 정보(권한)를 가진 DNS 서버(140)를 응답해 준다.
다시 공개 DNS(125)는 응답 받은 DNS 서버로 www.Service.com 에 대한 해석을 요청한다. 요청을 받은 DNS 서버는 Service의 정보를 가진 Zone File(Zone File, 145) 내부에 www 에 대한 매핑된 IP 주소 정보가 있으므로 200.1.1.1 이라는 IP 주소를 응답해주게 된다.
응답 받은 공개 DNS 서버(125)는 클라이언트의 해석기(Resolver, 120)에게 200.1.1.1 을 응답해 주게 되고, Resolver(120)가 응답 메시지를 해석한 뒤 해석을 요구한 클라이언트 프로그램에 그 값을 넘겨준다.
이와 같이 DNS 서버가 도메인에 대한 권한을 가진 DNS 서버의 IP를 넘겨주고 질의를 반복적으로 시도하는 방식을 반복적(iterative) 해석이라 한다.
그리고 DNS 서버가 Zone File에서 도메인 네임과 매칭된 IP 어드레스를 응답해 주는데, 초기에는 주소에 많은 변경이 가해질지 예측하지 못하였다.
도메인 네임과 매핑된 IP 주소 정보를 변경해야 할 때 이를 관리자가 수동적으로 일일이 변경해주는 것은 매우 힘들다. 그 해결책으로 DNS 주 파일을 자동적으로 갱신시켜주는데 이를 동적(Dynamic) DNS 라 부른다
그러나, 사용자 기반의 정보 제공을 위해서는 DNS 요청 메시지에서 사용자정보를 수집해야 하는데, 종래의 DNS 요청 메시지에는 그 정보가 극히 제한적이다. 또한 DNS 서버의 주 마스터 파일의 수정 즉, 매핑된 정보의 추가, 제거 및 변경이 빈번하며, 동기화를 항상 유지시켜줘야 하는 서비스의 경우 종래의 정적 DNS로는 기능을 완벽히 수행하기 힘들다.
뿐만 아니라, 분산 서비스 거부 공격(Distributed denial-of-service attack, D-DOS)은 인터넷상에서 다수의 시스템이 협력하여 하나의 표적시스템을 공격함으로써 서비스 거부(DOS)를 일으키게 만드는 것을 말한다. 표적 시스템은 범람하는 메시지들로 인해 결국 시스템 가동이 멈추어지게 되어, 선의의 사용자들은 정작 그 시스템으로부터 서비스를 받지 못하는 일이 벌어지게 된다. 즉, 목표 시스템의 특정 자원이나 사용이 가능한 회선 트래픽을 독점하여 선의의 사용자들이 목표시스템의 서비스를 받지 못하는 것이다.
그리고, 로드 밸런싱(Load Balancing)이란 병렬로 운용되고 있는 기기 간에 부하가 균등해지도록 처리를 분산하여 할당하는 것을 말한다. 로드 밸런싱은 컴퓨터 내의 여러 마이크로 프로세서에 균등하게 처리를 부여하거나, 접속 요구를 네트워크 상의 여력이 있는 서버로 회송하는 등 다양한 분야에서 폭 넓게 이용되고 있는 개념이다. 로드 밸런싱을 효율적으로 수행하기 위해서는 각 기기의 부하를 계속적으로 측정할 필요가 있는데, 이를 정확하게 적용하려고 하면 로드 밸런싱의 제어 자체가 큰 부하를 발생시킨다. 따라서, 실제로 이용되고 있는 로드 밸런싱은 정확도와 부하의 밸런스를 취하도록 되어 있으며, 이보다도 더 효율적인 수단을 찾기 위해 연구가 계속되고 있다.
그런데, 대역폭 공격의 경우 장비(IPS, Server)의 고도화 만으로는 공격을 막아내기 힘들다. 네트워크 대역폭 공격의 경우 좀비PC(Personal Computer)의 네트워크 성능과 맞물려 공격이 강해진다. 좀비PC에서 이용하는 네트워크와 PC성능이 빠를수록 공격이 강해지는데 이전 ADSL 기준으로 100 Gb/s의 공격을 만들려면 10만개의 좀비PC가 필요했지만 최근 보급된 광랜(업로드 100Mb/s) 경우 1000개의 좀비 PC로도 가능하다. 그리고 앞으로 등장할 기가비트(Giga Bit) 홈 랜(Home LAN)이 보급될 경우 100대의 좀비 PC만으로도 90 Gb/s의 대역폭 공격을 할 수 있다. 앞으로도 IPS장비의 고도화는 진행되겠지만, 대역폭 공격을 막아내기에는 현실상 매우 어렵다.
또한 서버의 IP 주소가 노출되어 공개될 경우 악의적인 이용자에 의해 공격 대상이 될 수 있다. DNS 서버의 경우 도메인 관리 기관을 통해 네임서버(Name Server) 정보가 공개되기 때문에 IP 주소 노출이 불가피 하다. 또한 DNS 서버 자체가 사용불가능 하게 될 경우 해당 DNS에서 관리하던 도메인의 서비스 자체가 불가능하다.
본 발명이 해결하고자 하는 과제는 상술한 문제점을 해결하기 위한 것으로서, 사용자 별로 목적지 경로를 분배 및 제어하여 안정적으로 회선을 관리하고, 서비스에 이용되는 서버 및 장치의 비정상적인 동작 중에서도 사용자들에게 서비스의 연속성을 유지시켜 줄 수 있는, 사용자 정보에 기반한 도메인 네임 시스템 및 도메인 네임 서비스 방법을 제공하는 것이다.
상기 기술적 과제를 이루기 위한 본 발명에 의한 사용자 정보 기반의 도메인 네임 서비스 시스템은, 사용자 정보와 서비스 도메인 네임 정보를 포함하는 도메인 네임 쿼리를 출력하는 클라이언트; 상기 클라이언트로부터 상기 도메인 네임 쿼리를 수신하는 DNS; 및 상기 DNS로부터 상기 도메인 네임 쿼리를 수신하고, 상기 도메인 네임 쿼리에 포함된 사용자 정보를 추출하여, 상기 사용자 정보 별로 목적지 경로 정보를 달리 제공하는 데이터베이스를 포함하고, 상기 클라이언트는 상기 데이터베이스로부터 출력되는 사용자 정보별 목적지 경로 정보를 상기 DNS를 통해 수신하는 것을 특징으로 한다.
그리고 상기 데이터 베이스는 사용자 정보 별로 호스트 서버 경로 정보 또는 프록시 혹은 게이트웨이 경로 정보와 상기 DNS가 동작하지 않을 때 상기 DNS대신 사용가능한 우회 DNS서버 경로 정보 또는 우회로 프록시 경로 정보 혹은 게이트웨이 경로 정보를 제공하는 것이 바람직하다. 상기 클라이언트는 도메인 해석을 위해 설정된 DNS에 DNS 요청 메시지를 전송하는 클라이언트 Resolver; 및 상기 DNS 요청 메시지에 사용자 정보를 추가하여 상기 DNS에게 쿼리를 출력하는 에이전트를 포함하는 것이 바람직하다.
상기 기술적 과제를 이루기 위한 본 발명에 의한 사용자 정보 기반의 도메인 네임 서비스 시스템은, 클라이언트로부터 사용자 정보와 서비스 도메인 네임 정보를 포함하는 상기 도메인 네임 쿼리를 수신하는 DNS; 및 상기 DNS로부터 상기 도메인 네임 쿼리를 수신하고, 상기 도메인 네임 쿼리에 포함된 사용자 정보를 추출하여, 상기 사용자 정보 별로 목적지 경로 정보를 달리 제공하는 데이터베이스를 포함하고, 상기 DNS는 상기 데이터베이스로부터 출력되는 사용자 정보별 목적지 경로 정보를 상기 클라이언트로 전송하는 것을 특징으로 할 수 있다. 이 때, 상기 데이터 베이스는 사용자 정보 별로 호스트 서버 경로 정보 또는 프록시 혹은 게이트웨이 경로 정보와 상기 DNS가 동작하지 않을 때 상기 DNS대신 사용 가능한 우회 DNS 서버 경로 정보 또는 우회로 프록시 혹은 게이트웨이 경로 정보를 제공하는 것이 바람직하다.
상기 기술적 과제를 이루기 위한 본 발명에 의한 사용자 정보 기반의 도메인 네임 서비스 시스템은, 클라이언트로부터 사용자 정보와 서비스 도메인 네임 정보를 포함하는 도메인 네임 쿼리를 수신하는 쿼리 수신부; 상기 쿼리 수신부로부터 수신된 상기 도메인 네임 쿼리에 포함된 사용자 정보를 추출하여, 상기 사용자 정보 별로 목적지 경로 정보를 달리 제공하는 경로제공부; 및 상기 경로제공부로부터 출력되는 사용자 정보별 목적지 경로 정보를 상기 클라이언트로 전송하는 쿼리응답부를 포함하는 것을 특징으로 한다. 상기 경로제공부는 사용자 정보 별로 호스트 서버 경로 정보 또는 프록시 혹은 게이트웨이 경로 정보와 DNS가 동작하지 않을 때 상기 DNS대신 사용가능한 우회 DNS 서버 경로 정보 또는 우회로 프록시 혹은 게이트웨이 경로 정보를 제공하는 것이 바람직하다.
상기 다른 기술적 과제를 이루기 위한 본 발명에 의한 사용자 정보 기반의 도메인 네임 서비스 방법은, 클라이언트가 사용자 정보와 서비스 도메인 네임 정보를 포함하는 도메인 네임 쿼리를 출력하는 단계; DNS가 상기 클라이언트로부터 상기 도메인 네임 쿼리를 수신하는 단계; 및 상기 DNS로부터 상기 도메인 네임 쿼리를 수신하여 상기 도메인 네임 쿼리에 포함된 사용자 정보를 추출하는 단계; 및 상기 추출된 사용자 정보에 따라 목적지 경로 정보를 달리 제공하는 단계를 포함한다. 상기 클라이언트는 상기 데이터베이스로부터 출력되는 사용자 정보별 목적지 경로 정보를 상기 DNS를 통해 수신하는 단계를 더 포함하는 것이 바람직하다.
그리고 상기 기재된 발명을 프로세서에 의해 실행되는 프로그램을 기록한 프로세서에 의해 읽을 수 있는 기록매체를 제공한다.
본 발명에 따른 사용자 정보 기반의 도메인 네임 서비스 시스템에 의하면, 사용자 별로 목적지 경로를 분배 및 제어하여 안정적으로 회선을 관리하고, 서비스에 이용되는 서버 및 장치의 비정상적인 동작 중에서도 사용자들에게 서비스의 연속성을 유지시켜 줄 수 있다.
또한 사용자 별로 목적지 경로를 분배 및 제어함으로써 D-DOS에 의한 대역폭 공격을 막아낼 수 있다. 그리고 공격 또는 장애를 받은 프록시, 게이트웨이 등의 장비를 할당 받은 사용자를 데이터베이스에서 검색하여, 비정상적인 공격 또는 장애를 유발한 사용자를 즉시 인지할 수 있으며, 추가적인 조치를 내릴 수 있다.
도 1은 도메인 네임 해석 과정에 대한 일 예를 나타낸 것이다.
도 2는 본 발명에 의한 사용자 정보 기반의 도메인 네임 서비스 시스템의 구성에 대한 일실시예를 도시한 것이다.
도 3 및 도 4는 클라이언트의 DNS 해석 요청 과정에 사용되는 클라이언트 PC 또는 장비에 대한 세부 구성을 블록도로 나타낸 것이다.
도 5은 본 발명에 의한 사용자 정보 기반의 도메인 네임 서비스 시스템의 구성에 대한 다른 실시예를 도시한 것이다.
도 6은 본 발명에 의한 사용자 정보 기반 도메인 네임 서비스 시스템에서 클라이언트와 데이터베이스 간의 데이터 전송과정에 대한 일 예를 설명하기 위한 시스템 구성을 블록도로 나타낸 것이다.
도 7은 클라이언트와, 클라이언트가 서비스를 받기 원하는 호스트 서버 간의 서비스 과정을 나타낸 것이다.
도 8는 DNS를 이용한 프로그램 및 장치 정보 제공에 있어서 에이전트에 의한 정보 획득 과정을 나타내고 있다.
도 9은 DNS를 이용한 프로그램 및 장치 정보 제공에 있어서 사용자에 의한 정보획득 과정을 나타낸 것이다.
도 10은 DNS 우회로 경로제어에 대한 일실시예를 나타낸 것이다.
도 11은 DNS 우회로 경로제어에 대한 다른 실시예를 나타낸 것이다.
도 12는 본 발명에 의한, 사용자 정보 기반 도메인 네임 서비스 방법에 대한 일실시예를 나타낸 것이다.
도 13은 본 발명에 의한 사용자 정보 기반 도메인 네임 서비스 방법에 대한 일 예를 나타낸 것이다.
이하, 첨부된 도면을 참조로 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 이에 앞서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 바람직한 일 실시예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
도 2는 본 발명에 의한 사용자 정보 기반의 도메인 네임 서비스 시스템의 구성에 대한 일실시예를 도시한 것으로서, 그 도메인 네임 서비스 시스템은 클라이언트(200), DNS(220) 및 데이터베이스(240)을 포함하여 이루어진다.
클라이언트(200)는 사용자 정보와 서비스 도메인 네임 정보를 포함하는 도메인 네임 쿼리를 DNS에게 전송한다. 그리고 클라이언트(200)는 데이터베이스(240)로부터 출력되는 사용자 정보별 목적지 경로 정보를 DNS(220)를 통해 수신하다.
DNS(220)는 클라이언트(200)로부터 상기 도메인 네임 쿼리를 수신한다.
데이터베이스(240)는 DNS(220)로부터 상기 도메인 네임 쿼리를 수신하고, 상기 도메인 네임 쿼리에 포함된 사용자 정보를 추출하여, 상기 사용자 정보 별로 목적지 경로 정보를 달리 제공한다. 구체적으로, 데이터 베이스(240)는 사용자 정보 별로 호스트 서버 경로 정보 또는 프록시 혹은 게이트웨이 경로 정보와 상기 DNS가 동작하지 않을 때 상기 DNS대신 사용가능한 우회 DNS 서버 경로 정보 또는 우회로 프록시 혹은 게이트웨이 경로 정보를 제공하는 것이 바람직하다.
상기 클라이언트(200)는 도메인 해석을 위해 설정된 DNS에 DNS 요청 메시지를 전송하는 클라이언트 Resolver(미도시) 및 상기 DNS 요청 메시지에 사용자 정보를 추가하여 상기 DNS에게 쿼리를 출력하는 에이전트(미도시)를 포함할 수 있다.
한편, 본 발명에 의한 사용자 정보 기반의 도메인 네임 서비스 시스템은 클라이언트와는 별개로 DNS(220) 및 데이터베이스(240)를 포함하여 이루어질 수도 있다. 이 때 DNS(220)는 클라이언트(200) 로부터 사용자 정보와 서비스 도메인 네임 정보를 포함하는 도메인 네임 쿼리를 수신한다. 그리고 데이터베이스(240)는 DNS(220)로부터 상기 도메인 네임 쿼리를 수신하고, 상기 도메인 네임 쿼리에 포함된 사용자 정보를 추출하여, 상기 사용자 정보 별로 목적지 경로 정보를 달리 제공할 수도 있다.
여기서 DNS(220)는 데이터베이스(240)로부터 출력되는 사용자 정보별 목적지 경로 정보를 클라이언트(220)로 전송한다. 그리고, 데이터 베이스(240)는 사용자 정보 별로 호스트 서버 경로 정보 또는 프록시 혹은 게이트웨이 경로 정보와 상기 DNS가 동작하지 않을 때 상기 DNS대신 사용가능한 우회 DNS 서버 경로 정보 또는 우회로 프록시 혹은 게이트웨이 경로 정보를 제공하는 것이 바람직하다.
도 3 및 도 4는 클라이언트(200)의 DNS 해석 요청 과정에 사용되는 클라이언트 PC 또는 장비에 대한 세부 구성을 블록도로 나타낸 것이다.
본 발명에 의한 클라이언트(200)는 도 3 및 도 4에 도시된 바와 같이, 사용자 프로그램(300, 400), Resolver(310, 420), 에이전트(320, 410) 및 캐시(330, 340, 430, 440)을 포함하여 이루어진다. 그리고 도 13은 본 발명에 의한 사용자 정보 기반 도메인 네임 서비스 방법에 대한 일 예를 나타낸 것이다.
도 3, 도 4 및 도 13을 참조하여 본 발명에 의한 사용자 정보 기반 도메인 네임 서비스 시스템 및 방법에 대한 보다 구체적인 실시예를 설명하기로 한다.
사용자 프로그램(300)은 Resolver(310)에게 도메인 네임 해석을 요청한다. (S1300단계) Resolver(310)는 도메인 네임 해석을 위해 설정된 DNS에게 DNS 요청 메시지를 전송한다.(S1310단계) 이 때, 에이전트(320)는 DNS 요청이 발생되면 Question Section의 쿼리 이름(query name) 영역에 사용자 정보를 추가하여 DNS 요청 메시지를 공개 DNS서버(350)에게 전송한다.
공개 DNS 서버(350)는 쿼리 이름의 정보를 요청 메시지의 정보(권한)을 가진 DNS 서버(360)로 전송한다. 정보(권한)을 가진 DNS 서버는(360)는 미리 설정된 데이터베이스(370)에게 문의한다.(S1340단계) DNS(360)는 요청 메시지를 데이터 베이스 추가,수정 및 추출하는 기능을 수행한다. 데이터베이스(370)는 매칭된 정보를 응답한다.(S1355단계) 여기서, 데이터베이스(370)는 에이전트(320)가 추가한 사용자 정보를 추출하여 사용자 정보 별로 목적지 경로정보, 예를 들어 호스트 서버 경로 정보 또는 프록시 혹은 게이트웨이 경로 정보와 우회 DNS 서버 경로 정보 또는 우회로 프록시 혹은 게이트웨이 경로 정보를 제공할 수 있다.
DNS(360)는 데이터베이스(370)로부터 받은 응답정보를 공개DNS(350)으로 전달한다.(S1365단계) 공개 DNS(350)가 DNS(360)으로부터 받은 응답정보를 에이전트(320)에게 전달하면(S1370단계), 에이전트(320)는 응답 메시지 내용을 확인한 후 DNS 해석을 요청한 Resolver(310)에게 전송한다.(S1375단계) Resolver(310)는 응답 메시지를 분석한 후 캐싱한 후 사용자 프로그램(300)에게 전달하면(S1380단계), 사용자 프로그램은 응답 받은 주소로 접속하여 서비스를 이용한다.(S1385단계) 여기서 Resolver(310)는 응답 메시지에 우회 DNS 서버 경로 정보 또는 우회로 프록시 혹은 게이트웨이 경로 정보가 있으면 이를 캐싱(caching)할 수 있다.
그리고 도 3의 Resolver(310)와 에이전트(320)는 도 4와 같이 서로 위치를 바꾸어 위치할 수도 있다. 즉, 에이전트(410)는 DNS 쿼리를 Resolver(420)로 전송하고, Resolver(420)로부터 출력되는 응답 메시지를 에이전트(410)로 전송할 수도 있다.
한편, 도 5는 본 발명에 의한 사용자 정보 기반의 도메인 네임 서비스 시스템의 구성에 대한 다른 실시예를 도시한 것으로서, 본 발명에 의한 도메인 네임 서비스 시스템은 쿼리 수신부(500), 경로제공부(520) 및 쿼리 응답부(540)를 포함하여 이루어질 수 있다.
쿼리 수신부(500)는 클라이언트(550)로부터 사용자 정보와 서비스 도메인 네임 정보를 포함하는 도메인 네임 쿼리를 수신한다.
경로 제공부(520)는 쿼리 수신부(500)로부터 수신된 상기 도메인 네임 쿼리에 포함된 사용자 정보를 추출하여, 상기 사용자 정보 별로 목적지 경로 정보를 쿼리 응답부(640)로 제공한다. 경로제공부(520)는 사용자 정보 별로 호스트 서버 경로 정보 또는 프록시 혹은 게이트웨이 경로 정보와 DNS가 동작하지 않을 때 상기 DNS대신 사용가능한 우회 DNS 서버 경로 정보 또는 우회로 프록시 혹은 게이트웨이 경로 정보를 제공하는 것이 바람직하다.
쿼리응답부(540)는 경로제공부(520)로부터 출력되는 사용자 정보별 목적지 경로 정보를 클라이언트(650)로 전송한다.
상술한 쿼리수신부(500), 경로제어부(520) 및 쿼리 응답부(540)는 하나의 시스템에 구현 및 설치될 수도 있고, 경로제어부(520)를 별도의 장치, 예를 들어 데이터 베이스를 이용하여 구현 및 설치할 수도 있다.
도 6은 본 발명에 의한 사용자 정보 기반 도메인 네임 서비스 시스템에서 클라이언트와 데이터베이스 간의 데이터 전송과정에 대한 일 예를 설명하기 위한 시스템 구성을 블록도로 나타낸 것이다.
에이전트(620)는 사용자의 정보를 수집하고 사용자의 프로그램(브라우저)의 DNS 해석 요청시 해당 메시지에 사용자 정보를 포함시키는 기능을 수행하는 프로그램 또는 장치이다.
DNS 서버(640)는 DNS 요청메시지의 호스트를 미리 설정된 데이터베이스(650)에 매칭된 정보를 요청하고, 데이터베이스(650)로부터 응답받은 정보를 공개 DNS를 통해 에이전트에게 전송한다. DNS 1(640)은 네임서버(Name Server) 정보가 공개된 DNS 서버이며 도 10의 DNS 1(1030)과 동일하다. 그리고 도 10의 DNS 2(1070)는 네임서버(Name Server) 정보가 공개되지 않은 DNS 서버를 말하며, DNS 1과 동일한 데이터 베이스를 이용하며 동일한 역할을 한다.
데이터베이스(650, 1040)는 도메인 네임 시스템의 서비스 또는 관리에 이용되는 데이터가 저장되어 있으며, 사용자 별로 다른 목적지 경로를 설정한 것을 저장하고 있다.
도 6에 도시된 사용자 정보 기반 도메인 네임 서비스 시스템은 다음과 같은 조건을 갖는 것으로 가정한다.
1) DNS 1(640)를 통하여 Service.com 이라는 도메인을 사용자정보 기반으로 경로제어를 한다.
2) 사용자는 브라우저 등의 프로그램을 통해 Service.com 도메인을 사용하는 웹 서버로 접속하길 원한다.
3) Service.com 도메인은 사전에 등록되어 있다.
4) 데이터베이스(650)에는 클라이언트의 정보 별로 Service.com 의 호스트 서버로 가기 위한 프록시 혹은 게이트웨이 경로 정보(IP 주소, 도메인 등), 게이트웨이의 경로 정보(IP 주소, 도메인 등) 또는 호스트 서버 경로 정보(IP 주소, 도메인 등)가 저장되어 있다.
5) 클라이언트 정보로는 상기 IP주소 뿐 아니라 Mac ID, Login ID 등 사용자를 인증해줄 수 있는 여러 정보가 단독 혹은 복합적으로 사용될 수도 있지만, 도 6에서는 IP 주소만을 사용한다고 가정한다.
6) 클라이언트의 공인 IP 는 100.100.100.1 이라고 가정한다.
7) 목적지(Service.com 의 프록시 또는 게이트웨이) IP 주소는 200.0.0.1 이라고 가정한다.
DNS를 이용한 사용자 기반 목적지 경로제공은 다음과 같이 이루어진다. 먼저, 사용자의 요청을 에이전트가 전달 받는 과정은 다음과 같다. 최초 사용자는 클라이언트 프로그램(600)을 통해 domain-name(“Service.com”)에 대한 IP 주소를 DNS 클라이언트인 Resolver(610)에게 요청한다. 요청받은 Resolver(610)는 해당 도메인 네임을 운영체제(OS)에 설정된 DNS 서버 주소로 DNS 요청 메시지를 전송하게 되는데, 미리 설치된 에이전트(620)는 DNS 요청메시지를 다음과 같이 변조한다.
변경 전 : “Service.com
변경 후 : “100_100_100_1.Service.com
여기서, "100_100_100_1"은 클라이언트의 IP 주소를 알기 쉽도록 표기한 내용이며, 해당정보는 암호화 되지 않은 클라이언트 IP 주소를 의미한다.
에이전트(620)가 변경된 메시지를 운영체제(OS)에 설정된 DNS 서버 주소로 전송한다.
공개 DNS(630)는 “100_100_100_1.Service.com" 도메인을 해석하기 위해 root 네임서버에 해석 요청을 보내고, root 네임서버는 com 네임서버의 주소를 알려준다. Com 네임서버는 Service.com 도메인 정보가 등록된 DNS 서버 의 주소를 다시 알려준다. Com 네임서버는 Service.com 도메인 정보가 등록된 DNS 서버 의 주소를 다시 알려준다. DNS 서버는 "100_100_100_1.Service.com"을 해석하게 되는데, 미리 설정된 데이터베이스(650)로 해당 도메인 내용을 질의한다.
데이터베이스(650)는 해당 데이터에 매칭된 정보 IP 어드레스: 200.0.0.1 을 DNS 네임서버에 다시 응답해 준다.
만일 매칭된 정보가 없다면 DNS 1(640)는 미리 설정된 정책에 따라 클라이언트 100_100_100_1 에 대한 정보를 데이터베이스(650)에 삽입(insert) 한다.
DNS(640)는 전달받은 정보 즉, 목적지 경로를 공개 DNS(630)에 응답해준다. 공개 DNS(630)는 에이전트(620)에게 도메인 해석 결과를 응답한다.
에이전트(620)는 응답 메시지를 분석하고, 응답 받은 정보가 IP 어드레스라면 캐싱한다. 그리고 나서 도메인 네임 해석 결과를 resolver(610)에게 응답해준다.
Resolver(610)는 도메인 해석을 요청한 클라이언트 프로그램(600)에게 해당 경로를 응답해준다. 클라이언트 프로그램(600)은 목적지 IP 주소가 200.0.0.1 인 서버에 접속한다.
도 7은 클라이언트와 상기 클라이언트가 서비스를 받기 원하는 호스트 서버 간의 서비스 과정을 나타낸 것이다.
도 7에 나타낸 바와 같이, 클라이언트(700)는 DNS 쿼리를 출력하면, 에이전트(710)가 상기 DNS 쿼리에 사용자 정보를 추가하여 공개 DNS(720)을 통해 DNS 1(730)에게 사용자 정보와 도메인 네임 정보를 포함하는 도메인 네임 쿼리를 전송한다. 그러면, DNS 1(730)은 상기 도메인 네임 쿼리로부터 사용자 정보를 추출하여 추출된 사용자 정보에 해당하는 목적지 경로정보, 예를 들어 호스트 서버 경로 정보 또는 프록시 혹은 게이트웨이 경로 정보와 우회 DNS 서버 경로 정보 또는 우회로 프록시 혹은 게이트웨이 경로 정보를 공개 DNS(720)를 통해 에이전트(710)에게 전달한다. 에이전트(710)는 클라이언트(700)에게 호스트 서버 경로 정보 또는 프록시 혹은 게이트웨이 경로 정보를 전달하면 클라이언트(700)는 자신의 정보를 기반으로 미리 배정된 호스트 서버, 프록시 또는 게이트웨이(740)를 통하여 목적지인 호스트 서버(750)로 접근하게 된다.
도 8는 DNS를 이용한 프로그램 및 장치 정보 제공에 있어서 에이전트에 의한 정보 획득 과정을 나타내고 있다.
프로그램 및 장치가 스스로 DNS 1(830)에 질의를 전송하여 정보를 제공받는 방식이다. 에이전트(810)가 주기적으로 혹은 특정 이벤트 발생시 DNS에 장치 정보가 포함된, 예를 들면 프로그램 버전, 설정 버전 등의 DNS 질의를 요청하여 데이터 베이스로부터 정보를 제공받는다.
상기 DNS 질의는 텍스트 방식으로 요청할 수 있으며, 텍스트 방식뿐 아니라 DNS 문의 레코드의 질의 종류(Query type)에 적용될 수 있는 모든 형식으로 응답 가능하다.
에이전트는 10초 마다 한번씩 자신의 프로그램 버전이 포함된 DNS 질의 "configversion00002.Service.com"를 텍스트 형식으로 공개 DNS에 전송하여 Service.com 의 정보를 가진 DNS 1 서버로 요청을 보내면 DNS1 서버는 데이터베이스에서 매칭된 정보를 텍스트 형식으로 응답해준다.
이 응답 메시지에 포함된 정보를 적용 또는 가공하여 에이전트는 2차적인 정보의 이용이 가능하다.
도 9은 DNS를 이용한 프로그램 및 장치 정보 제공에 있어서 사용자에 의한 정보획득 과정을 나타낸 것으로서, 도 8의 에이전트에 의한 정보 획득과 유사하지만 클라이언트(900)의 요청에 의해 에이전트(910) 및 공개 DNS(920)를 거쳐 DNS1(930)에 질의를 전송하여 정보를 제공받는다.
한편, 도 10은 DNS 우회로 경로제어에 대한 일 예를 나타낸 것으로서, DNS 우회로 경로제어는 다음과 같이 이루어진다.
DNS는 네임서버(Name Server) 정보, 예를 들어 DNS 서버의 IP 및 기타 등록 정보를 공개함으로 인하여 직접적인 공격, 예를 들면 D-Dos 공격에 노출된다.
DNS 1(1030)는 비정상적인 상황, 예를 들어 DNS 의 네임서버 정보 공개로 인한 악의적 사용자의 공격 또는 자체 DNS 서버의 자체 오류 등으로 정상적인 DNS 서비스가 불가능 할 경우, 제 2의 DNS(1070)로 DNS 요청 경로를 제어하여 에이전트(1010)가 설치된 사용자에게 DNS 서비스의 연속성을 유지시켜 주는데 이러한 기능을 DNS 우회로 경로 제어라 한다.
즉, DNS 우회로 경로 제어란 DNS 1(1030)가 사용 불가능 할 때, 동일한 기능, 예를 들어 동일한 데이터 베이스를 사용하는 또 다른 DNS 2(1070)로 경로를 제어해 주는 것이다.
우회로 경로 제어의 올바른 사용 예를 들기 위해 서비스 상황을 두 가지로 나누어 설명하기로 한다.
첫번째 상황은 정상적인 서비스 과정이고, 두 번째 상황은 비상시 즉 정상적인 서비스 과정 시 사용되는 DNS 1 서버(1030)가 사용 불가능 할 때의 서비스 과정이다.
정상적인 서비스 과정은 상기 DNS 서비스 모델에서 표현된 도 6, 도 7과 동일하다. 다만, 한가지 정보가 추가적으로 운용되는데, 그것은 비상시 DNS 2(1070) 의 정보를 가진 프록시 혹은 게이트웨이의 경로 정보 또는 DNS 2의 경로 정보, 즉 공개 DNS와 동일한 역할을 담당하는 프록시 혹은 게이트웨이의 IP 주소 정보 또는 DNS 2의 IP 주소 정보이다.
클라이언트의 DNS 해석 요청에 의해 Resolver 가 DNS 요청 패킷을 생성하고 에이전트(1010)가 이 메시지를 변조한 뒤 공개 DNS(1020)를 통해 DNS1(1030)에 요청하게 된다. DNS 1(1030)은 해당 도메인 정보에 포함된 사용자 정보를 기반으로 목적지 또는 그 경로에 대한 정보를 내려주게 되는데, 이때 사용자 정보를 기반으로 하는 DNS 2(1070)의 경로 정보, 예를 들어 프록시 혹은 게이트웨이 IP주소 혹은 도메인 네임을 동시에 또는 순차적으로 DNS 응답 메시지에 포함시켜 전송해 준다.
공개 DNS(1020)는 응답 받은 메시지를 에이전트(1010)에게 다시 응답하게 되며, 에이전트(1010)는 해당 DNS 응답 메시지를 분석하게 되며 여기서 두 가지 상황으로 나누어진다.
첫 번째는 정상적인 응답 메시지 일 경우이다. 에이전트(1010)는 DNS 응답 메시지에서 DNS 요청에 대한 응답과 우회로 DNS 정보로 분리한 뒤 우회로 정보( DNS 2 정보)는 클라이언트(1000)의 메모리에 캐싱(caching)한다. 만약 이미 캐싱된 정보가 있다면 변경해주며, DNS 응답 메시지는 Resolver를 통해 클라이언트(1000)에게 전달되며 클라이언트 프로그램은 전달 받은 경로를 통해 원하는 서비스를 이용하게 된다.
두 번째는 비 정상적인 응답 메시지 일 경우이다. 에이전트(1010)는 DNS 1(1030)가 정상적인 서비스가 불가능하다고 판단하며, 캐싱된 우회로 정보, 예를 들어 프록시 혹은 게이트웨이의 IP 주소 혹은 도메인 네임으로 DNS 요청 메시지를 전송한다.
프록시 또는 게이트웨이(1060)는 미리 설정된 DNS 2(1070) 또는 동일한 역할을 하도록 구현된 장치에게 도메인 네임에 매칭된 정보를 요청하게 되며, 응답을 받아서 에이전트(1010)에게 전송한다. 이때 DNS 요청 메시지는 최초에 전송된 DNS 요청 메시지와 동일하며, 응답 또한 같은 데이터 베이스를 참조하기 때문에 동일하다. UDP 뿐만 아니라 TCP 통신도 지원되며, 프로토콜의 변조 또한 가능하다. 다만 우회로의 경로는 제3의 DNS, 예를 들면 도면상에서는 존재하지 않는 DNS 3의 경로 정보를 전송하게 된다.
즉, DNS 는 도메인 네임에 대한 정보 뿐 아니라, DNS 우회로 정보를 동시에 내려주며, 에이전트(1010)는 우회로 정보를 캐싱하여 저장하고 있다가 DNS 1(1030) 이용이 불가능할 때, 해당 우회로 주소를 통해 네임서버 정보가 노출되지 않은 또 다른 DNS 2(1070)를 이용하여 DNS 서비스를 받게 된다.
도 11은 DNS 우회로 경로제어에 대한 다른 예를 나타낸 것으로서, 도 10에서 공개 DNS(1020) 및 프록시 또는 게이트웨이(1060)이 없을 경우를 나타낸 것이다. 클라이언트(1110), 에이전트(1110), DNS1(1120), 데이터베이스(1130), 캐시(1140) 및 DNS2(1150)은 도 10의 에이전트(1010), DNS1(1020), 데이터베이스(1030), 캐시(1040) 및 DNS2(1050)과 그 기능이 동일하다.
또한 도 10의 공개 DNS(1020) 및 프록시 또는 게이트웨이(1060) 중 어느 하나만 없이도 도 10에서 설명한 DNS 우회로 경로제어가 가능하다.
한편, 도 12는 본 발명에 의한, 사용자 정보 기반 도메인 네임 서비스 방법에 대한 일실시예를 나타낸 것이다.
도 2와 도 12를 참조하면, 먼저 클라이언트(200)가 사용자 정보와 서비스 도메인 네임 정보를 포함하는 도메인 네임 쿼리를 DNS(220)으로 전송한다.(S1200단계) DNS(220)는 클라이언트(200)로부터 상기 도메인 네임 쿼리를 수신하여 데이터베이스(240)로 전달한다.(S1210단계) 데이터베이스(240)는DNS(220)로부터 상기 도메인 네임 쿼리를 수신하여 상기 도메인 네임 쿼리에 포함된 사용자 정보를 추출하여 상기 사용자 정보에 따라 목적지 경로 정보를 달리 제공한다.(S1220단계) 여기서, 상기 목적지 경로 제공은 사용자 정보 별로 호스트 서버 경로 정보 또는 프록시 혹은 게이트웨이 경로 정보와 상기 DNS가 동작하지 않을 때 상기 DNS대신 사용가능한 우회 DNS서버 경로 정보 또는 우회로 프록시 혹은 게이트웨이 경로 정보를 제공하는 것이 바람직하다. 그리고 클라이언트(200)는 데이터베이스(240)로부터 출력되는 사용자 정보별 목적지 경로 정보를 DNS(220)를 통해 수신한다.(S1230단계)
상술한 바와 같이, 본 발명에 의한 사용자 정보 기반 도메인 네임 서비스 시스템 및 방법은 DDOS 공격 같은 외부로부터의 공격이 있을 경우, 각 사용자 마다 다른 호스트 정보를 응답하여 공격자와 일반사용자를 분리해 낸다. 이를 위해 클라이언트가 도메인 네임 해석을 요청하면 사용자 정보를 같이 전송해 주기 위한 프로그램 및 장비를 이용할 수 있다.
그리고 공격의 대상이 되는 서버의 IP 어드레스를 노출시키지 않으며, DNS 서버가 사용 불가능하게 되었을 경우 임시적으로 IP 주소가 노출되지 않는 DNS를 사용자 별로 또는 사용자가 속한 그룹별로 다르게 이용할 수 있는 우회로를 제공한다. 이를 위해 DNS 서버는 도메인 정보를 Zone File이 아닌 데이터 베이스를 통해 관리한다. 상기 데이터 베이스는 DNS 내부 또는 외부에 존재한다. 또한 도메인을 등록할 때 TTL(Time to Live)을 최저 값으로 설정하여 캐시(Cache)되지 않도록 한다.
한편, 상술한 본 발명에 의한 사용자 정보 기반 도메인 네임 서비스 시스템 및 방법에서 사용되는 세부적인 데이터 포맷은 다음과 같다.
먼저, 클라이언트가 DNS 메시지의 데이터 포맷은 다음과 같다.
표 1 DNS 메시지 데이터 포맷
Mac 헤더 IP헤더 TCP/UDP 헤더 DNS 헤더 데이터
상기 DNS 메시지 데이터 포맷은 OSI(Open Systems Interconnection Reference Model) 하위 계층 헤더가 포함된 Decapsulation 되기 전의 DNS 메시지이다.
하위계층의 헤더를 통해 단편적인 사용자, 즉 DNS 메시지를 요청한 클라이언트 정보를 알 수 있는데, 예를 들면 Mac 헤더를 통해 해당 패킷을 송신하는 측의 Mac 주소를 알 수 있고, IP 헤더에서는 패킷의 출발지 주소, 즉 소스 어드레스를 알 수 있으며, TCP | UDP 헤더를 통해 사용된 포트(Port)를 알 수 있다.
하지만 도 1에서 설명한 바와 같이 현재 사용되는 도메인 네임 시스템 상 DNS가 수신하는 패킷의 출발지는 사용자(클라이언트)의 정보가 아닌 공개 DNS 의 정보인 것이다.
그리고 DNS 요청 메시지와 DNS 응답 메시지 포맷은 다음과 같다.
표 2 DNS 요청 메시지 포맷
헤더
Question section
표 3 DNS 응답 메시지 포맷
헤더
Question section
Answer section
Authoritative section
Additional section
에이전트는 기존에 사용되고 있는 DNS 에서 사용되는 공통된 규약인 RFC (Request for comment) 규약을 준수하기 위해 DNS 요청 및 응답 메시지의 헤더를 수정하지 않는다.
또한 DNS 문의 레코드의 포맷은 다음과 같다.
표 4 DNS 문의 레코드 포맷
쿼리 이름(Query Name)
쿼리 종류(Query Type) 쿼리 클래스(Query Class)
Query name(질의 이름) 필드는 가변 길이를 가지며 도메인 네임을 포함한다.
Query type(질의 종류)필드는 16비트로 이루어지며, 질의 종류를 나타낸다.
본 발명에서 자주 사용되는 쿼리 종류는 표 5와 같다.
표 5
Type Mnemonic 설명
1 A IPv4 어드레스
2 NS Name Server
5 CNAME Canonical name
28 AAAA IPv6 어드레스
16 TXT 텍스트
에이전트는 상술한 DNS 문의 레코드 형식 중 Query name 과 Query type 을 수정하여 DNS 문의 메시지를 전송한다. 그리고 Query type 을 변경하는 것 또한 가능한데 이는 IP 주소 뿐 아니라 Text형 정보, 예를 들면 클라이언트 모듈에 필요한 정보를 전송 받기 위함이다.
그리고, 본 발명에 의한 사용자 정보 기반 도메인 네임 서비스 시스템 및 방법에서 사용자 정보 추가 전후의 쿼리 이름 변화에 대한 예를 들면 다음과 같다.
하나의 레이블을 통해 사용자 정보를 추가할 경우의 변경 전과 변경 후는 다음과 같다.
변경전 : www.Service.com.
변경 후 : IPAddressUserID.www.Service.com.
다수의 레이블을 통해 사용자정보를 추가하는 경우
변경 전 : www.Service.com.
변경 후 :Ipaddress.UserID.www.Service.com
위의 방법으로 클라이언트 모듈의 정보를 추가하는 경우
변경 전 : www.Service.com.
변경 후 : ModuleVersion.UserID.www.Service.com
위의 방법으로 장비 정보를 추가하는 경우
변경 전 : www.Service.com
변경 후 : DevInfo.www.Service.com
즉, 도메인 네임의 앞에 정보를 추가하여 DNS 서버가 이를 수신할 수 있도록 한다.
Servicedomain www.Service.com 을 수정하여 타 DNS 서버가 이를 수신할 수 있도록 하는 경우
변경 전 : www.Service.com.
변경 후 : Ipaddress.UserID.Service.OtherDNS.com
즉, OtherDNS.com 이라는 도메인정보를 등록한 DNS 서버가 변경 후에 해당하는 도메인정보를 해석하게 된다.
그리고 데이터 베이스 연결의 예를 들면 표 6과 같다.
표 6 DB 의 연결 예
설명 매칭된 정보
A 사용자의 정보 AClientInfo.Service.com 200.0.0.1
B 사용자의 정보 BClientInfo.Service.com 200.10.10.10
A 장비 정보 ADevInfo.Service.com 정보(text 형식)
B 장비 정보 BDevinfo.Service.com 정보(text 형식)
표 6의 예는 설명을 위한 단순한 예 이며, 요청한 도메인 네임과 일치하는 정보를 표 5와 같이 다양한 타입으로 응답할 수 있다. 보안이 요구되는 DNS 서비스에 대해서는 DNSSEC 방식도 적용 가능하다.
한편, 본 발명에 의한 DNS의 응답 데이터의 예는 다음과 같다. 본 발명의 실시예에서 사용되는 응답 데이터로서, DNS 해석을 요청 시 사용자 정보(클라이언트)별 목적지 경로와 DNS 우회로 정보를 함께 응답해 준다. DNS 응답은 정책에 따라 하나의 DNS 응답 메시지 내에 목적지 IP 주소와 우회 DNS 주소가 포함되거나, 두 개의 DNS 응답 메시지로 나눠 응답해줄 수 있다.
표 7
목적지 IP 주소 우회로 DNS 주소
정보 입력 또는 정보 획득의 경우에도 마찬가지로 DNS 우회로 정보를 함께 응답해 준다.
표 8
장비정보 우회로 DNS 주소
본 발명은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터(정보 처리 기능을 갖는 장치를 모두 포함한다)가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 장치의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
서비스에 이용되는 서버 및 장치의 비정상적인 동작 중에서도 사용자들에게 서비스의 연속성을 유지시켜 줄 수 있는 도메인 네임 시스템과 도메인 네임 서비스에 이용가능하다.

Claims (10)

  1. 사용자 정보와 서비스 도메인 네임 정보를 포함하는 도메인 네임 쿼리를 출력하는 클라이언트;
    상기 클라이언트로부터 상기 도메인 네임 쿼리를 수신하는 DNS; 및
    상기 DNS로부터 상기 도메인 네임 쿼리를 수신하고, 상기 도메인 네임 쿼리에 포함된 사용자 정보를 추출하여, 상기 사용자 정보 별로 목적지 경로 정보를 달리 제공하는 데이터베이스를 포함하고,
    상기 클라이언트는 상기 데이터베이스로부터 출력되는 사용자 정보별 목적지 경로 정보를 상기 DNS를 통해 수신하는 것을 특징으로 하는 사용자 정보 기반 도메인 네임 서비스 시스템.
  2. 제1항에 있어서, 상기 데이터 베이스는
    사용자 정보 별로 호스트서버 경로 또는 프록시 경로 정보와 상기 DNS가 동작하지 않을 때 상기 DNS대신 사용가능한 우회 DNS 서버 경로 또는 우회로 프록시 혹은 게이트웨이 경로 정보를 제공하는 것을 특징으로 하는 사용자 정보 기반 도메인 네임 서비스 시스템.
  3. 제1항에 있어서, 상기 클라이언트는
    도메인 해석을 위해 설정된 DNS에 DNS 요청 메시지를 전송하는 클라이언트 Resolver; 및
    상기 DNS 요청 메시지에 사용자 정보를 추가하여 상기 DNS에게 쿼리를 출력하는 에이전트를 포함하는 것을 특징으로 하는 사용자 정보 기반 도메인 네임 시스템.
  4. 클라이언트로부터 사용자 정보와 서비스 도메인 네임 정보를 포함하는 상기 도메인 네임 쿼리를 수신하는 DNS; 및
    상기 DNS로부터 상기 도메인 네임 쿼리를 수신하고, 상기 도메인 네임 쿼리에 포함된 사용자 정보를 추출하여, 상기 사용자 정보 별로 목적지 경로 정보를 달리 제공하는 데이터베이스를 포함하고,
    상기 DNS는 상기 데이터베이스로부터 출력되는 사용자 정보별 목적지 경로 정보를 상기 클라이언트로 전송하는 것을 특징으로 하는 사용자 정보 기반 도메인 네임 서비스 시스템.
  5. 제4항에 있어서, 상기 데이터 베이스는
    사용자 정보 별로 호스트 서버 경로 정보 또는 프록시 혹은 게이트웨이 경로 정보와 상기 DNS가 동작하지 않을 때 상기 DNS대신 사용가능한 우회 DNS 서버 경로 정보 또는 우회로 프록시 혹은 게이트웨이 경로 정보를 제공하는 것을 특징으로 하는 사용자 정보 기반 도메인 네임 서비스 시스템.
  6. 클라이언트로부터 사용자 정보와 서비스 도메인 네임 정보를 포함하는 도메인 네임 쿼리를 수신하는 쿼리 수신부;
    상기 쿼리 수신부로부터 수신된 상기 도메인 네임 쿼리에 포함된 사용자 정보를 추출하여, 상기 사용자 정보 별로 목적지 경로 정보를 달리 제공하는 경로제공부; 및
    상기 경로제공부로부터 출력되는 사용자 정보별 목적지 경로 정보를 상기 클라이언트로 전송하는 쿼리응답부를 포함하는 것을 특징으로 하는 사용자 정보 기반 도메인 네임 서비스 시스템.
  7. 제6항에 있어서, 상기 경로제공부는
    사용자 정보 별로 호스트 서버 경로 정보 또는 프록시 경로 정보 정보와 DNS가 동작하지 않을 때 상기 DNS대신 사용가능한 우회 DNS 서버 경로 정보 또는 우회로 프록시 혹은 게이트웨이 경로 정보를 제공하는 것을 특징으로 하는 사용자 정보 기반 도메인 네임 서비스 시스템.
  8. 클라이언트가 사용자 정보와 서비스 도메인 네임 정보를 포함하는 도메인 네임 쿼리를 출력하는 단계;
    DNS가 상기 클라이언트로부터 상기 도메인 네임 쿼리를 수신하는 단계; 및
    상기 DNS로부터 상기 도메인 네임 쿼리를 수신하여 상기 도메인 네임 쿼리에 포함된 사용자 정보를 추출하는 단계;
    상기 추출된 사용자 정보에 따라 목적지 경로 정보를 달리 제공하는 단계를 포함하는 것을 특징으로 하는 사용자 정보 기반 도메인 네임 서비스 방법.
  9. 제8항에 있어서,
    상기 클라이언트는 상기 데이터베이스로부터 출력되는 사용자 정보별 목적지 경로 정보를 상기 DNS를 통해 수신하는 단계를 더 포함하는 것을 특징으로 하는 사용자 정보 기반 도메인 네임 서비스 방법.
  10. 제8항에 있어서, 상기 목적지 경로 제공은
    사용자 정보 별로 호스트 서버 경로 정보 또는 프록시 경로 정보와 상기 DNS가 동작하지 않을 때 상기 DNS대신 사용가능한 우회 DNS 서버 경로 정보 또는 우회로 프록시 혹은 게이트웨이 경로 정보를 제공하는 것을 특징으로 하는 사용자 정보 기반 도메인 네임 서비스 방법.
PCT/KR2013/007638 2013-08-26 2013-08-26 사용자 정보에 기반한, 도메인 네임 시스템 및 도메인 네임 서비스 방법 WO2015030270A1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
EP13881453.8A EP2866386B1 (en) 2013-08-26 2013-08-26 Domain name system and domain name service method based on user information
JP2015542935A JP5976232B2 (ja) 2013-08-26 2013-08-26 ユーザ情報に基づいた、ドメインネーム・システム及びドメインネーム・サービス方法
US14/375,769 US10313299B2 (en) 2013-08-26 2013-08-26 Domain name system (DNS) and domain name service method based on user information
PCT/KR2013/007638 WO2015030270A1 (ko) 2013-08-26 2013-08-26 사용자 정보에 기반한, 도메인 네임 시스템 및 도메인 네임 서비스 방법
CN201380021199.XA CN104798343B (zh) 2013-08-26 2013-08-26 基于用户信息的域名系统(dns)以及域名服务方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2013/007638 WO2015030270A1 (ko) 2013-08-26 2013-08-26 사용자 정보에 기반한, 도메인 네임 시스템 및 도메인 네임 서비스 방법

Publications (1)

Publication Number Publication Date
WO2015030270A1 true WO2015030270A1 (ko) 2015-03-05

Family

ID=52586810

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2013/007638 WO2015030270A1 (ko) 2013-08-26 2013-08-26 사용자 정보에 기반한, 도메인 네임 시스템 및 도메인 네임 서비스 방법

Country Status (5)

Country Link
US (1) US10313299B2 (ko)
EP (1) EP2866386B1 (ko)
JP (1) JP5976232B2 (ko)
CN (1) CN104798343B (ko)
WO (1) WO2015030270A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016168367A1 (en) * 2015-04-15 2016-10-20 Cisco Technology, Inc. Protocol addressing for client and destination identification across computer networks

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103647856B (zh) * 2013-12-23 2017-09-08 成都西加云杉科技有限公司 App获取本地终端的mac地址的方法及系统
CN105338126B (zh) * 2014-07-17 2018-10-23 阿里巴巴集团控股有限公司 远程查询信息的方法及服务器
CN105357175B (zh) * 2015-09-25 2018-12-07 互联网域名系统北京市工程研究中心有限公司 源地址域名安全的查询方法和装置
CN105357328B (zh) * 2015-09-28 2018-10-02 互联网域名系统北京市工程研究中心有限公司 域名解析方法、dns递归服务器及域名解析系统
CN108809910B (zh) * 2017-05-04 2021-01-05 贵州白山云科技股份有限公司 一种域名系统服务器调度方法和系统
CN109063061B (zh) * 2018-07-20 2022-09-30 北京百度网讯科技有限公司 跨分布式系统数据处理方法、装置、设备及存储介质
JP7309418B2 (ja) * 2019-03-29 2023-07-18 キヤノン株式会社 通信装置、通信装置の制御方法及びプログラム
CN111314472B (zh) * 2020-02-21 2022-03-11 聚好看科技股份有限公司 域名解析方法、域名解析服务器及终端设备
CN113286016B (zh) * 2021-07-20 2021-09-28 中国人民解放军国防科技大学 一种缓存域名系统服务范围分析方法及装置
US11552925B1 (en) 2021-12-14 2023-01-10 Bitdefender IPR Management Ltd. Systems and methods of controlling internet access using encrypted DNS

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040041389A (ko) * 2002-11-11 2004-05-17 김동환 유동ip를 활용한 웹서버 운용 시스템 및 방법
KR20050002292A (ko) * 2003-06-30 2005-01-07 주식회사 케이티 접속 제한 기능을 가지는 무선 랜을 통한 인터넷 접속시스템 및 그 방법
KR20090049936A (ko) * 2007-11-14 2009-05-19 (주)씨디네트웍스 서버의 로드 밸런싱 방법 및 그 장치
KR20100008043A (ko) * 2008-07-15 2010-01-25 (주)씨디네트웍스 도메인 네임 시스템의 데이터베이스에 저장된 정보의 획득방법 및 장치
KR20110055392A (ko) * 2009-11-19 2011-05-25 인터내셔널 비지네스 머신즈 코포레이션 사용자 기반의 dns 서버 접근 제어

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805820A (en) * 1996-07-15 1998-09-08 At&T Corp. Method and apparatus for restricting access to private information in domain name systems by redirecting query requests
US6470389B1 (en) * 1997-03-14 2002-10-22 Lucent Technologies Inc. Hosting a network service on a cluster of servers using a single-address image
US6185598B1 (en) * 1998-02-10 2001-02-06 Digital Island, Inc. Optimized network resource location
US7814180B2 (en) * 2000-07-13 2010-10-12 Infoblox, Inc. Domain name service server
US20040044791A1 (en) * 2001-05-22 2004-03-04 Pouzzner Daniel G. Internationalized domain name system with iterative conversion
US7228359B1 (en) * 2002-02-12 2007-06-05 Cisco Technology, Inc. Methods and apparatus for providing domain name service based on a client identifier
JP2004266568A (ja) 2003-02-28 2004-09-24 Nec Corp 名前解決サーバおよびパケット転送装置
KR20050003598A (ko) 2003-06-27 2005-01-12 주식회사 케이티 이중화된 도메인 네임 서버를 이용한 도메인 네임 서비스제공 시스템 및 제공 방법
KR20050002337A (ko) 2003-06-30 2005-01-07 주식회사 케이티 프락시 서버, 그리고 이를 이용한 동적 dns 서비스시스템 및 방법
US20050027862A1 (en) * 2003-07-18 2005-02-03 Nguyen Tien Le System and methods of cooperatively load-balancing clustered servers
US7437364B1 (en) * 2004-06-30 2008-10-14 Google Inc. System and method of accessing a document efficiently through multi-tier web caching
US7565423B1 (en) * 2004-06-30 2009-07-21 Google Inc. System and method of accessing a document efficiently through multi-tier web caching
US20070050507A1 (en) * 2005-08-24 2007-03-01 Nokia Corporation Context discovery for DNS names
EP1919155A1 (en) * 2006-10-31 2008-05-07 Alcatel Lucent Resolution of flexible address schemes for IMS services
US8645570B2 (en) * 2007-12-20 2014-02-04 Fast Health Corporation System and method for the issuance of an emergency text alert in response to the redirection of a website
WO2009132446A1 (en) * 2008-05-02 2009-11-05 Toposis Corporation Systems and methods for secure management of presence information for communications services
US8910270B2 (en) * 2009-01-20 2014-12-09 Microsoft Corporation Remote access to private network resources from outside the network
EP2467988B1 (en) 2009-08-17 2013-07-03 Telefonaktiebolaget LM Ericsson (publ) Method and apparatus in a telecommunications network
US8140669B2 (en) * 2009-08-31 2012-03-20 International Business Machines Corporation Resolving hostnames on a private network with a public internet server
US8156214B2 (en) * 2009-12-22 2012-04-10 At&T Intellectual Property I, Lp System and method to discover clients associated with local domain name server using sampling
US9313797B2 (en) 2010-10-22 2016-04-12 Telefonaktiebolaget Lm Ericsson (Publ) Mobile-access information based adaptation of network address lookup for differentiated handling of data traffic
US9106607B1 (en) * 2011-04-11 2015-08-11 Viasat, Inc. Browser based feedback for optimized web browsing
US9331975B2 (en) * 2011-12-16 2016-05-03 The Nielsen Company (Us), Llc Systems, methods, and apparatus to identify media presentation devices
US9015833B2 (en) * 2012-11-07 2015-04-21 Trusteer, Ltd. Defense against DNS DoS attack

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040041389A (ko) * 2002-11-11 2004-05-17 김동환 유동ip를 활용한 웹서버 운용 시스템 및 방법
KR20050002292A (ko) * 2003-06-30 2005-01-07 주식회사 케이티 접속 제한 기능을 가지는 무선 랜을 통한 인터넷 접속시스템 및 그 방법
KR20090049936A (ko) * 2007-11-14 2009-05-19 (주)씨디네트웍스 서버의 로드 밸런싱 방법 및 그 장치
KR20100008043A (ko) * 2008-07-15 2010-01-25 (주)씨디네트웍스 도메인 네임 시스템의 데이터베이스에 저장된 정보의 획득방법 및 장치
KR20110055392A (ko) * 2009-11-19 2011-05-25 인터내셔널 비지네스 머신즈 코포레이션 사용자 기반의 dns 서버 접근 제어

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2866386A4 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016168367A1 (en) * 2015-04-15 2016-10-20 Cisco Technology, Inc. Protocol addressing for client and destination identification across computer networks
US9807050B2 (en) 2015-04-15 2017-10-31 Cisco Technology, Inc. Protocol addressing for client and destination identification across computer networks

Also Published As

Publication number Publication date
EP2866386A4 (en) 2015-12-16
EP2866386A1 (en) 2015-04-29
CN104798343A (zh) 2015-07-22
EP2866386B1 (en) 2020-01-22
JP2015536623A (ja) 2015-12-21
US20160241508A1 (en) 2016-08-18
US10313299B2 (en) 2019-06-04
CN104798343B (zh) 2018-04-10
JP5976232B2 (ja) 2016-08-23

Similar Documents

Publication Publication Date Title
WO2015030270A1 (ko) 사용자 정보에 기반한, 도메인 네임 시스템 및 도메인 네임 서비스 방법
Patrick Dhcp relay agent information option
EP1125421B1 (en) Dns relay module in a digital network modem
Srisuresh et al. Traditional IP network address translator (Traditional NAT)
WO2010110530A1 (ko) Ipv6 네트워크 내 호스트 차단 및 탐색방법
US20100057895A1 (en) Methods of Providing Reputation Information with an Address and Related Devices and Computer Program Products
WO2014112771A1 (ko) 클라이언트의 ip주소를 서버로 전송하는 중계 시스템 및 방법
WO2014101023A1 (zh) 一种防止业务非法访问的方法和装置
WO2009091199A2 (ko) Nat 디바이스로 구성된 네트워크에서의 원격 접속 방법
WO2017185925A1 (zh) 一种访问网站的方法、客户端及局域网内服务器
WO2011144126A2 (zh) 一种网络设备的配置方法、装置及系统
WO2017054446A1 (zh) 网络通信方法、设备及网络附属存储设备
WO2015194885A1 (ko) 클라이언트 경로 제어 시스템을 활용한 장애유발 클라이언트 검출 방법 및 시스템
Abley et al. AS112 nameserver operations
WO2010068018A2 (en) Method for configuring closed user network using ip tunneling mechanism and closed user network system
WO2013094847A1 (ko) 클라우드 시스템에서의 웹 방화벽 서비스 장치 및 방법
KR101345372B1 (ko) 사용자 정보에 기반한, 도메인 네임 시스템 및 도메인 네임 서비스 방법
JP2004112018A (ja) インターネットアクセスWeb監視制御システム
WO2012163000A1 (zh) 一种报文转发的方法、设备及系统
CN115118700B (zh) 一种通信方法及通信系统
WO2014186936A1 (zh) 策略控制方法、相关装置以及系统
Cisco Configuring AppleTalk
JP3616571B2 (ja) インターネット中継接続におけるアドレス解決方式
KR101996588B1 (ko) Arp 프로토콜을 지원하는 분리망 연계장치 및 그 제어방법
WO2018182339A1 (ko) 멀티미디어 서비스 콘텐트 제공 장치 및 방법

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 14375769

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2013881453

Country of ref document: EP

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13881453

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2015542935

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE