DNS Server View Management via Source IP Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional DNS servers lack the ability to dynamically serve different DNS data to clients based on their source IP addresses, limiting their flexibility and efficiency in managing DNS views, which are increasingly popular for providing tailored responses to different client groups.

Innovation Solution

The proposed solution involves a DNS server that determines the source IP address of a client and checks if it is associated with a specific view datastore. If not, it queries a database to determine if the requested resource is associated with a view, and sends a response with a 'SIPNOTDEFINED' or 'NXDOMAIN' indication accordingly, allowing clients to quickly identify query failures and improving network performance and security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a DNS server uses conventional single-view architecture, then the server structure is simple, but it cannot serve different DNS data to different client groups based on source IP addresses

Engineering Contradiction:
Improveability to serve different DNS data to different client groupsVSAvoidDNS server structure
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent divides the DNS server into multiple independent view datastores (view1, view2, view3, etc.), each serving a specific client group identified by source IP address ranges. This segmentation allows the server to provide different DNS responses to different client groups while maintaining manageable complexity through modular organization of view datastores and their associated source client lists.

Inventive Principle:
Principle #1Segmentation

2Loss of information

If a DNS server implements multiple views without enhanced error handling, then it can provide tailored responses, but clients cannot quickly identify query failures

Engineering Contradiction:
Improveclarity of error identificationVSAvoiderror handling mechanism
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent uses distinct response codes as visual indicators to communicate different error states to clients. Specifically, it returns SIPNOTDEFINED when a client is not associated with any view and NXDOMAIN when a resource is not found in the applicable view. These distinct response codes enable clients to quickly identify and differentiate between types of query failures without requiring complex error messages.

Inventive Principle:
Principle #32Color changes

3Measurement precision

If a DNS server performs comprehensive view checking for every query, then it provides accurate tailored responses, but network performance decreases due to additional processing

Engineering Contradiction:
Improveaccuracy of view-based responseVSAvoidnetwork performance
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent performs preliminary action by pre-organizing clients into view datastores based on their source IP addresses and establishing associations between clients and views before DNS queries occur. When a DNS query arrives, the server can quickly determine the appropriate view by checking the source IP against pre-configured source client lists, avoiding the need for comprehensive view checking for every query and thus maintaining high network performance while ensuring accurate tailored responses.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11368424B2Enhanced domain name system (DNS) server
Publication Date: 2022.06.21 CHARTER COMM OPERATING LLC
  • US11368424B2 patent drawing
  • US11368424B2 patent drawing
  • US11368424B2 patent drawing

AI summary

Systems, methods, and devices for resolving a network address include a Domain Name System (DNS) server configured to receive a request for a resource from a client device, determine a source IP address of the client device based on the information included in the received request, and determine whether the source IP address is included in a source client list. The server may identify a view associated with the source client list, and associate the client with the identified view, in response to determining that the source IP address is included in the source client list. The server may associate the client with a default view in response to determining that the source IP address is not included in the source client list.