IP Library › Granted Patent US 11,632,431
Granted Patent B2
US 11,632,431 · App. 17/826,003 · Granted Apr 18, 2023

Policy-based connection provisioning using domain name system (DNS) requests

Inventors: Paul Quinn (Wellesley, MA); Kyle Andrew Donald Mestery (Woodbury, MN)
Assignee: Cisco Technology, Inc.
H04L67/141H04L61/4511
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 11,632,431
App. No.
17/826,003
Granted
Apr 18, 2023
Kind
B2
Abstract

Techniques for policy-based connection provisioning using Domain Name System (DNS) requests are described herein. The techniques may include receiving policy data associated with one or more headend nodes that manage connections to computing resources. Additionally, the techniques may include receiving a DNS request from a client device to establish a connection between the client device and a first headend node of the one or more headend nodes. The DNS request may include an attribute associated with the client device. A provisioning service may determine that the connection should be established between the client device and the first headend node based at least in part on evaluating the attribute with respect to the policy data. Additionally, the techniques may include sending an internet protocol (IP) address, which is associated with the first headend node, to the client device to facilitate establishment of the connection.

Claims (39)

1. A policy service associated with a cloud-delivered virtual private network (VPN) service, the policy service comprising:

one or more processors; and

one or more non-transitory computer-readable media storing instructions that, when executed by the one or more processors, cause the policy service to perform operations comprising:

receiving policy data associated with one or more headend nodes of the cloud-delivered VPN service that manage connections to backend computing resources;

receiving a policy query from a domain name system (DNS) server associated with the cloud-delivered VPN service, the policy query including at least a DNS request and an indication of a client device that sent the DNS request;

based at least in part on evaluating an attribute associated with the client device with respect to the policy data, determining that a communication connection is to be established between the client device and a first headend node of the one or more headend nodes to provide the client device with access to a backend computing resource; and

causing an indication of an internet protocol (IP) address associated with the first headend node to be sent to the client device to facilitate establishment of the communication connection.

2. The policy service of claim 1 , wherein causing the indication of the IP address to be sent to the client device comprises sending the IP address to the DNS server.

3. The policy service of claim 1 , the operations further comprising determining the attribute associated with the client device based at least in part on the policy query including the indication of the client device.

4. The policy service of claim 1 , wherein the policy data comprises at least one of a type associated with respective ones of the one or more headend nodes, a size associated with respective ones of the one or more headend nodes, or capabilities associated with respective ones of the one or more headend nodes.

5. The policy service of claim 1 , wherein the attribute associated with the client device is an identifier associated with the client device.

6. The policy service of claim 1 , wherein the attribute associated with the client device is an identifier associated with a user of the client device.

7. The policy service of claim 1 , wherein the attribute associated with the client device is at geographic location associated with the client device.

8. The policy service of claim 6 , wherein determining that the communication connection is to be established between the client device and the first headend node is based at least in part on a determination that the first headend node is within a threshold proximity of the geographic location.

9. The policy service of claim 1 , the operations further comprising:

receiving telemetry data indicating a capacity of the backend computing resource;

determining that the capacity is less than a threshold capacity; and

wherein the determining that the communication connection is to be established between the client device and the first headend node is further based at least in part on the capacity being less than the threshold capacity.

10. The policy service of claim 1 , wherein the communication connection between the client device and the first headend node is a VPN connection.

11. One or more non-transitory computer-readable media storing instructions that, when executed, cause one or more processors perform operations comprising:

receiving policy data associated with one or more headend nodes of a virtual private network (VPN) headend service, the one or more headend nodes configured to manage connections to backend computing resources;

receiving a policy query from a domain name system (DNS) server associated with the VPN headend service, the policy query including at least a DNS request and an indication of a client device that sent the DNS request;

based at least in part on evaluating an attribute associated with the client device with respect to the policy data, determining that a communication connection is to be established between the client device and a first headend node of the one or more headend nodes; and

causing an indication of an internet protocol (IP) address associated with the first headend node to be sent to the client device to facilitate establishment of the communication connection.

12. The one or more non-transitory computer-readable media of claim 11 , wherein causing the indication of the IP address to be sent to the client device comprises sending the IP address to the DNS server.

13. The one or more non-transitory computer-readable media of claim 11 , the operations further comprising determining the attribute associated with the client device based at least in part on the policy query including the indication of the client device.

14. The one or more non-transitory computer-readable media of claim 11 , wherein the communication connection between the client device and the first headend node is a VPN connection that provides the client device with access to one or more of the backend computing resources.

15. The one or more non-transitory computer-readable media of claim 11 , wherein the policy data comprises at least one of a type associated with respective ones of the one or more headend nodes, a size associated with respective ones of the one or more headend nodes, or capabilities associated with respective ones of the one or more headend nodes.

16. The one or more non-transitory computer-readable media of claim 11 , wherein the attribute associated with the client device is at least one of an identifier associated with the client device, an identifier associated with a user of the client device, or a geographic location associated with the client device.

17. The one or more non-transitory computer-readable media of claim 11 , wherein determining that the communication connection is to be established between the client device and the first headend node is based at least in part on a determination that the first headend node is within a threshold proximity of the geographic location.

18. A method comprising:

receiving, from a domain name system (DNS) server associated with a virtual private network (VPN) headend service, a policy query including an indication of a client device that sent a DNS request;

based at least in part on the policy query, evaluating an attribute associated with the client device with respect to a policy associated with a headend node of the VPN headend service;

determining, based at least in part on evaluating the attribute with respect to the policy, that a communication connection is to be established between the client device and the headend node; and

causing an indication of an internet protocol (IP) address associated with the headend node to be sent to the client device to facilitate establishment of the communication connection.

19. The method of claim 18 , further comprising:

evaluating the attribute with respect to another policy associated with another headend node of the VPN headend service; and

wherein determining that the communication connection is to be established between the client device and the headend node is further based at least in part on a determination that the headend node is a greater node for establishing the communication connection with than the other headend node.

20. The method of claim 18 , wherein the communication connection between the client device and the headend node is a VPN connection that provides the client device with access to one or more backend computing resources.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 26, 2022
From: QUINN, PAUL; MESTERY, KYLE ANDREW DONALD
To: CISCO TECHNOLOGY, INC.
Reel/Frame 060202/0938 →
Continuity (2)
Continuation 16917152 · Jun 30, 2020
Related Publication 20220286515A1 · Sep 8, 2022