IP Library Granted Patent US 12,034,696
Granted Patent B2
US 12,034,696 · App. 18/244,594 · Granted Jul 9, 2024

Dynamic border gateway protocol (BGP) host route generation based on domain name system (DNS) resolution

Inventor: Darrell Smith (Lakewood, CO)
Assignee: Level 3 Communications, LLC
H04L61/4511H04L61/5046
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 12,034,696
App. No.
18/244,594
Granted
Jul 9, 2024
Kind
B2
Abstract

Novel tools and techniques are provided for implementing dynamic border gateway protocol (“BGP”) host route generation based on domain name system (“DNS”) resolution. In various embodiments, a computing system may receive, from a user device via a first network, a request to establish a communications link with an external device via a second network that is separate from the first network, based on a first uniform resource identifier (“URI”) indicative of a network location of the external device. The computing system may query a DNS resolver for an Internet Protocol (“IP”) address corresponding to a valid current IP address, based on the first URI, and may advertise the IP address and/or a route based on the IP address. A communications link may be established between the user device and the external device based on the IP address and/or the route.

Claims (39)

1. A method, comprising:

receiving, using a computing system and from a user device via a first network, a request to establish a communications link with an external device via a second network that is separate from the first network, the request comprising a first uniform resource identifier (“URI”) indicative of a network location of the external device;

querying, using the computing system, a domain name system (“DNS”) server for a first Internet Protocol (“IP”) address corresponding to a valid current IP address associated with the network location of the external device, based on the first URI, and advertising, using the computing system and to one or more devices within the first network, at least one of the first IP address or a first IP address route based on the first IP address, wherein the one or more devices within the first network comprise the user device, wherein a communications link is established between the user device and the external device based on the at least one of the first IP address or the first IP address route; and

performing a cache update, comprising:

querying, using the computing system, the DNS server for a third IP address, based on the first URI;

determining, using the computing system, whether the third IP address matches a fourth IP address corresponding to the first URI that is contained in a cache;

based on a determination that the third IP address obtained from the DNS server matches the fourth IP address that is contained in the cache, resetting, using the computing system, a time-out period for the fourth IP address, and sending, using the computing system, the third or fourth IP address to the user device via the first network; and

based on a determination that the third IP address obtained from the DNS server is different from the fourth IP address contained in the cache, updating, using the computing system, the cache with the third IP address by replacing the fourth IP address with the third IP address, resetting, using the computing system, the time-out period for the third IP address, sending, using the computing system, the third IP address to the user device via the first network, and sending, using the computing system, a border gateway protocol (“BGP”) update to the one or more devices within the first network to withdraw the fourth IP address from the first network.

2. The method of claim 1 , wherein the computing system comprises at least one of a firewall device, a router device, a gateway device, a network interface device, an optical network terminal, or customer premises equipment.

3. The method of claim 1 , wherein querying the DNS server for the first IP address comprises one of continuously, periodically, randomly, or reactively querying, using the computing system, the DNS server for the first IP address corresponding to the valid current IP address associated with the network location of the external device.

4. The method of claim 1 , wherein advertising the at least one of the first IP address or the first IP address route based on the first IP address comprises advertising, using the computing system and to the one or more devices within the first network, at least one of the first IP address or the first IP address route based on the first IP address, using border gateway protocol (“BGP”).

5. The method of claim 1 , wherein querying the DNS and advertising the at least one of the first IP address or the first IP address route is performed in real-time or near-real-time.

6. The method of claim 1 , further comprising:

in response to receiving the request, from the user device, to establish a communications link with an external device, determining, using the computing system, whether the first URI is whitelisted, by comparing at least one of the first URI or a domain name portion of the first URI with at least one of a fully qualified domain name (“FQDN”) or a partial domain name contained within a whitelist in a database;

wherein querying the DNS server for the first IP address corresponding to a valid current IP address associated with the network location of the external device, based on the first URI, is only performed based on a determination that the first URI is whitelisted.

7. The method of claim 1 , wherein querying the DNS server for the first IP address corresponding to a valid current IP address associated with the network location of the external device, based on the first URI, is performed based on one of:

a requirement for a third party device embodied by the user device to maintain a licensed state by periodically phoning home to a third party licensing server embodied by the external device, wherein the third party device and the third party licensing server are associated with a third party, wherein querying the DNS server and establishing the communications link between the user device and the external device are performed regardless of whether or not the third party device has general access to the second network, whether the third party has changed the IP address associated with the third party licensing server, or whether the IP address associated with the third party licensing server is dependent on geographical location;

a requirement for a software defined wide area network (“SD-WAN”) customer premises equipment (“CPE”) embodied by the user device to initialize by phoning home at time of CPE setup or to periodically phone home to a SD-WAN controller embodied by the external device to perform a zero touch provisioning (“ZTP”) function, wherein querying the DNS server and establishing the communications link between the user device and the external device are performed regardless of whether or not the SD-WAN CPE has general access to the second network, whether a service provider has changed the IP address associated with the SD-WAN controller, or whether the IP address associated with the SD-WAN controller is dependent on geographical location; or

a requirement for a voice over IP (“VoIP”) device embodied by the user device to continuously connect to a VoIP session border controller (“SBC”) embodied by the external device to offer VoIP services to a customer, wherein querying the DNS server and establishing the communications link between the user device and the external device are performed regardless of whether or not the VoIP device has general access to the second network, whether a service provider has changed the IP address associated with the VoIP SBC, or whether the IP address associated with the VoIP SBC is dependent on geographical location.

8. The method of claim 7 , wherein, for the user device without general access to the second network, the computing system provides the user device with access to the external device, via the second network, only to IP addresses or IP address routes advertised into the first network by the computing system.

9. A system, comprising:

a computing system, comprising:

at least one first processor; and

a first non-transitory computer readable medium communicatively coupled to the at least one first processor, the first non-transitory computer readable medium having stored thereon computer software comprising a first set of instructions that, when executed by the at least one first processor, causes the computing system to:

receive, from a user device via a first network, a request to establish a communications link with an external device via a second network that is separate from the first network, the request comprising a first uniform resource identifier (“URI”) indicative of a network location of the external device;

query a domain name system (“DNS”) server for a first Internet Protocol (“IP”) address corresponding to a valid current IP address associated with the network location of the external device, based on the first URI, and advertise, to one or more devices within the first network, at least one of the first IP address or a first IP address route based on the first IP address, wherein the one or more devices within the first network comprise the user device, wherein a communications link is established between the user device and the external device based on the at least one of the first IP address or the first IP address route; and

performing a cache update, comprising:

querying, using the computing system, the DNS server for a third IP address, based on the first URI;

determining, using the computing system, whether the third IP address matches a fourth IP address corresponding to the first URI that is contained in a cache;

based on a determination that the third IP address obtained from the DNS server matches the fourth IP address that is contained in the cache, resetting, using the computing system, a time-out period for the fourth IP address, and sending, using the computing system, the third or fourth IP address to the user device via the first network; and

based on a determination that the third IP address obtained from the DNS server is different from the fourth IP address contained in the cache, updating, using the computing system, the cache with the third IP address by replacing the fourth IP address with the third IP address, resetting, using the computing system, the time-out period for the third IP address, sending, using the computing system, the third IP address to the user device via the first network, and sending, using the computing system, a border gateway protocol (“BGP”) update to the one or more devices within the first network to withdraw the fourth IP address from the first network.

10. The system of claim 9 , wherein the computing system comprises at least one of a firewall device, a router device, a gateway device, a network interface device, an optical network terminal, or customer premises equipment.

11. The system of claim 9 , wherein querying the DNS server for the first IP address comprises one of continuously, periodically, randomly, or reactively querying, using the computing system, the DNS server for the first IP address corresponding to the valid current IP address associated with the network location of the external device.

12. The system of claim 9 , wherein querying the DNS and advertising the at least one of the first IP address or the first IP address route is performed in real-time or near-real-time.

13. The system of claim 9 , wherein querying the DNS server for the first IP address corresponding to a valid current IP address associated with the network location of the external device, based on the first URI, is performed based on one of:

a requirement for a third party device embodied by the user device to maintain a licensed state by periodically phoning home to a third party licensing server embodied by the external device, wherein the third party device and the third party licensing server are associated with a third party, wherein querying the DNS server and establishing the communications link between the user device and the external device are performed regardless of whether or not the third party device has general access to the second network or whether the third party has changed the IP address associated with the third party licensing server;

a requirement for a software defined wide area network (“SD-WAN”) customer premises equipment (“CPE”) embodied by the user device to initialize by phoning home at time of CPE setup to a SD-WAN controller embodied by the external device to perform a zero touch provisioning (“ZTP”) function, wherein querying the DNS server and establishing the communications link between the user device and the external device are performed regardless of whether or not the SD-WAN CPE has general access to the second network or whether a service provider has changed the IP address associated with the SD-WAN controller; or

a requirement for a voice over IP (“VoIP”) device embodied by the user device to continuously connect to a VoIP session border controller (“SBC”) embodied by the external device to offer VoIP services to a customer, wherein querying the DNS server and establishing the communications link between the user device and the external device are performed regardless of whether or not the VoIP device has general access to the second network or whether a service provider has changed the IP address associated with the VoIP SBC.

14. The system of claim 13 , wherein, for the user device without general access to the second network, the computing system provides the user device with access to the external device, via the second network, only to IP addresses or IP address routes advertised into the first network by the computing system.

Assignments (3)
NOTICE OF GRANT OF SECURITY INTEREST IN INTELLECTUAL PROPERTY (SECOND LIEN) Recorded Nov 4, 2024
From: LEVEL 3 COMMUNICATIONS, LLC; GLOBAL CROSSING TELECOMMUNICATIONS, INC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069295/0749 →
NOTICE OF GRANT OF SECURITY INTEREST IN INTELLECTUAL PROPERTY (FIRST LIEN) Recorded Nov 4, 2024
From: LEVEL 3 COMMUNICATIONS, LLC; GLOBAL CROSSING TELECOMMUNICATIONS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069295/0858 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2023
From: SMITH, DARRELL
To: LEVEL 3 COMMUNICATIONS, LLC
Reel/Frame 064862/0562 →
Continuity (4)
Continuation 18129371 · Mar 31, 2023
Continuation 17537049 · Nov 29, 2021
Provisional Application 63236341 · Aug 24, 2021
Related Publication 20230421529A1 · Dec 28, 2023