IP Library › Granted Patent US 10,666,608
Granted Patent B2
US 10,666,608 · App. 16/286,128 · Granted May 26, 2020

Transparent proxy authentication via DNS processing

Inventors: Geoff Townsend (Pleasanton, CA); Michael Ellery (Moraga, CA); Lucas Siba (Langley, CA); Brian Somers (Vancouver, CA)
Assignee: Cisco Technology, Inc.
H04L61/20H04L61/1511H04L63/0884H04L67/2804H04L67/327
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,666,608
App. No.
16/286,128
Granted
May 26, 2020
Kind
B2
Abstract

A DNS nameserver processes requests for domain name information based on subscriber identifiers, and optionally subscriber information. Based on a subscriber identifier, requests for a target domain name may generate a DNS response with domain name information for a proxy service. Techniques are provided to seamlessly and transparently authenticate a subscriber at the proxy service. The proxy service generates a redirect with a unique domain name including a tracking identifier in response to requests for a target domain name. The nameserver receives a request associated with the unique domain name. The nameserver responds with domain name information of the proxy service and generates a message to the proxy service mapping the tracking identifier to the subscriber identifier. The client then generates a request to the proxy service that includes the tracking identifier. The proxy service uses the mapping from the nameserver to authenticate the corresponding subscriber identifier.

Claims (73)

1. A method of computer network processing, comprising:

obtaining at a proxy service from a Domain Name System (DNS) nameserver a message that includes mapping information that maps a tracking identifier to a subscriber identifier;

obtaining at the proxy service a first request having a resource identifier including a unique domain name, wherein the unique domain name includes a target domain name;

providing a redirect response for the first request, the redirect response including a resource identifier associated with the target domain name;

obtaining at the proxy service a second request having a resource identifier associated with the target domain name, the second request including a cookie for the target domain name, wherein the cookie of the second request is associated with the subscriber identifier and includes the tracking identifier;

in response to the second request, authenticating the subscriber identifier by determining that the subscriber identifier from the cookie maps to the tracking identifier based on the message from the DNS nameserver; and

generating a response to the second request based on the subscriber identifier permitting or denying access to the target domain name.

2. The method of claim 1 , wherein the tracking identifier is embedded as part of the unique domain name, the method further comprising:

extracting the tracking identifier from the unique domain name; and

determining that the tracking identifier maps to the subscriber identifier.

3. The method of claim 2 , further comprising:

authenticating the first request based on the subscriber identifier; and

providing the redirect response in response to authenticating the first request.

4. The method of claim 1 , further comprising at the proxy service, prior to obtaining the message from the DNS nameserver and obtaining the first request:

obtaining a third request having a resource identifier associated with the target domain name; and

determining that the third request does not include a cookie for the target domain name, wherein the cookie of the third request is associated with the subscriber identifier.

5. The method of claim 4 , further comprising:

in response to the third request, generating the tracking identifier and the unique domain name to include the tracking identifier; and

providing a redirect response to the third request including the resource identifier.

6. The method of claim 5 , further comprising at the DNS nameserver:

obtaining a request for domain information for the unique domain name, the request including the subscriber identifier; and

in response to the request for domain name information for the unique domain name, generating the message to the proxy service including the mapping information that maps the tracking identifier to the subscriber identifier.

7. The method of claim 6 , further comprising:

in response to the request for domain information for the unique domain name, generating a reply including domain name information for the proxy service.

8. A system for computer network processing, comprising:

a DNS name server; and

a proxy service, wherein the proxy service is configured to:

obtain from a Domain Name Server (DNS) nameserver a message that includes mapping information that maps a tracking identifier to a subscriber identifier;

obtain a first request having a resource identifier including a unique domain name, wherein the unique domain name includes a target domain name;

provide a redirect response for the first request, the redirect response including a resource identifier associated with the target domain name;

obtain a second request having a resource identifier associated with the target domain name, the second request including a cookie for the target domain name, wherein the cookie of the second request is associated with the subscriber identifier and includes the tracking identifier;

in response to the second request, authenticate the subscriber identifier by determining that the subscriber identifier from the cookie maps to the tracking identifier based on the message from the DNS nameserver; and

generate a response to the second request based on the subscriber identifier permitting or denying access to the target domain name.

9. The system of claim 8 , wherein the tracking identifier is embedded as part of the unique domain name, and wherein the proxy service is further configured to:

extract the tracking identifier from the unique domain name; and

determine that the tracking identifier maps to the subscriber identifier.

10. The system of claim 9 , wherein the proxy service is further configured to:

authenticate the first request based on the subscriber identifier; and

provide the redirect response in response to authenticating the first request.

11. The system of claim 8 , wherein the proxy service is further configured to, prior to obtaining the message from the DNS nameserver and obtaining the first request:

obtain a third request having a resource identifier associated with the target domain name; and

determine that the third request does not include a cookie for the target domain name, wherein the cookie of the third request is associated with the subscriber identifier.

12. The system of claim 11 , wherein the proxy service is further configured to:

in response to the third request, generate the tracking identifier and the unique domain name to include the tracking identifier; and

provide a redirect response to the third request including the resource identifier.

13. The system of claim 12 , wherein the DNS nameserver is configured to:

obtain a request for domain information for the unique domain name, the request including the subscriber identifier; and

in response to the request for domain name information for the unique domain name, generate the message to the proxy service including the mapping information that maps the tracking identifier to the subscriber identifier.

14. The system of claim 13 , wherein the DNS nameserver is further configured to:

in response to the request for domain information for the unique domain name, generate a reply including domain name information for the proxy service.

15. One or more non-transitory computer readable storage media encoded with instructions that, when executed by one or more processors, cause the one or more processors to:

obtain at a proxy service from a Domain Name System (DNS) nameserver a message that includes mapping information that maps a tracking identifier to a subscriber identifier;

obtain at the proxy service a first request having a resource identifier including a unique domain name, wherein the unique domain name includes a target domain name;

provide a redirect response for the first request, the redirect response including a resource identifier associated with the target domain name;

obtain at the proxy service a second request having a resource identifier associated with the target domain name, the second request including a cookie for the target domain name, wherein the cookie of the second request is associated with the subscriber identifier and includes the tracking identifier;

in response to the second request, authenticate the subscriber identifier by determining that the subscriber identifier from the cookie maps to the tracking identifier based on the message from the DNS nameserver; and

generate a response to the second request based on the subscriber identifier permitting or denying access to the target domain name.

16. The one or more non-transitory computer readable storage media of claim 15 , wherein the tracking identifier is embedded as part of the unique domain name, and wherein the instructions further cause the one or more processors to:

extract the tracking identifier from the unique domain name; and

determine that the tracking identifier maps to the subscriber identifier.

17. The one or more non-transitory computer readable storage media of claim 16 , wherein the instructions further cause the one or more processors to:

authenticate the first request based on the subscriber identifier; and

provide the redirect response in response to authenticating the first request.

18. The one or more non-transitory computer readable storage media of claim 15 , wherein the instructions further cause the one or more processors to, prior to obtaining the message from the DNS nameserver and obtaining the first request:

obtain a third request having a resource identifier associated with the target domain name; and

determine that the third request does not include a cookie for the target domain name, wherein the cookie of the third request is associated with the subscriber identifier.

19. The one or more non-transitory computer readable storage media of claim 18 , wherein the instructions further cause the one or more processors to:

in response to the third request, generate the tracking identifier and the unique domain name to include the tracking identifier; and

provide a redirect response to the third request including the resource identifier.

20. The one or more non-transitory computer readable storage media of claim 19 , wherein the instructions further cause the one or more processors to:

obtain a request for domain information for the unique domain name, the request including the subscriber identifier;

in response to the request for domain name information for the unique domain name, generate the message to the proxy service including the mapping information that maps the tracking identifier to the subscriber identifier; and

in response to the request for domain information for the unique domain name, generate a reply including domain name information for the proxy service.

Continuity (2)
Continuation 14196973 · Mar 4, 2014
Related Publication 20190199678A1 · Jun 27, 2019
Cited By (2)
US 12,192,168 US 12,375,351