IP Library Granted Patent US 12,375,442
Granted Patent B2
US 12,375,442 · App. 17/503,763 · Granted Jul 29, 2025

Decoupling of IP address bindings and use in a distributed cloud computing network

Inventors: Marwan Fayed (St Andrews, GB); Pavel Odintsov (London, GB); Sami Matias Kerola (London, GB)
H04L61/4511H04L61/5007H04L63/1458
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,375,442
App. No.
17/503,763
Granted
Jul 29, 2025
Kind
B2
Abstract

An authoritative domain name system (DNS) server receives a DNS query for an address record for a hostname. The DNS server selects an IP address from multiple IP addresses to include in an answer to the DNS query, where each IP address is capable of being selected to be included in the answer regardless of the hostname being queried, where multiple servers of a distributed cloud computing network are capable of receiving traffic at each IP address, and where none of the IP addresses identify a particular server of the distributed cloud computing network. The authoritative DNS server transmits an answer to the DNS query that includes the selected IP address. Sometime after, one of the servers of the distributed cloud computing network receives a request for content that is addressed to the selected IP address and processes the request.

Claims (90)

1. A method, comprising:

receiving, at a first authoritative domain name system (DNS) server, a first plurality of DNS queries for a first plurality of hostnames, wherein the first plurality of hostnames is at least one thousand;

answering each of the first plurality of DNS queries with a same first single IP address, wherein each of a plurality of servers of a distributed cloud computing network is capable of receiving traffic addressed to the same first single IP address;

receiving, by at least some of the plurality of servers of the distributed cloud computing network from a first plurality of client devices, requests for content that are addressed to the same first single IP address;

for each received request from one of the first plurality of client devices, performing:

determining a hostname to which the request is directed based on a Server Name Indication (SNI) field or an HTTP host header field associated with that request,

transmitting the request to an origin server for the determined hostname,

receiving a response from the origin server responsive to the transmitted request, and

transmitting the response to the requesting client device;

receiving, at a second authoritative DNS server, a second plurality of DNS queries for the first plurality of hostnames;

answering each of the second plurality of DNS queries with a same second single IP address, wherein each of the plurality of servers is capable of receiving traffic addressed to the same second single IP address, and wherein the same first single IP address is different from the same second single IP address;

receiving, by at least some of the plurality of servers of the distributed cloud computing network from a second plurality of client devices, requests for content that are addressed to the same second single IP address; and

for each received request from one of the second plurality of client devices, performing:

determining a hostname to which the request is directed based on a Server Name Indication (SNI) field or an HTTP host header field associated with that request,

transmitting the request to an origin server for the determined hostname,

receiving a response from the origin server responsive to the transmitted request, and

transmitting the response to the requesting client device.

2. The method of claim 1 , further comprising:

detecting a layer 7 attack directed to a first hostname of the first plurality of hostnames; and

responsive to the detected layer 7 attack, binding an IP address that is not the same first single IP address to an address record for the first hostname such that subsequent DNS queries for that address record return the bound IP address instead of the same first single IP address.

3. A system, comprising:

a first authoritative domain name system (DNS) server adapted to:

receive a first plurality of DNS queries for address records for a first plurality of hostnames, wherein the first plurality of hostnames is at least one thousand, and

answer each of the first plurality of DNS queries with a same first single IP address, wherein each of a plurality of servers of a distributed cloud computing network is capable of receiving traffic addressed to the same first single IP address;

a second authoritative DNS server adapted to:

receive a second plurality of DNS queries for address records for the first plurality hostnames, and

answer each of the second plurality of DNS queries with a same second single IP address, wherein each of the plurality of servers are capable of receiving traffic addressed to the same second single IP address, wherein the same first single IP address is different from the same second single IP address, and wherein each of the plurality of servers is capable of receiving traffic addressed to the same second single IP address;

a first portion of the plurality of servers, wherein each of the first portion of the plurality of servers is adapted to:

receive requests from a first plurality of client devices for content addressed to the same first single IP address, and

for each received request from one of the first plurality of client devices,

determine a hostname to which the request is directed based on a Server Name Indication (SNI) field or an HTTP host header field associated with that request,

transmit that request to an origin server for the determined hostname,

receive a response from the origin server responsive to the transmitted request, and

transmit the response to the requesting client device; and

a second portion of the plurality of servers, wherein each of the second portion of the plurality of servers is adapted to:

receive requests from a second plurality of client devices for content addressed to the same second single IP address, and

for each received request from one of the second plurality of client devices,

determine a hostname to which the request is directed based on a Server Name Indication (SNI) field or an HTTP host header field associated with that request,

transmit that request to an origin server for the determined hostname,

receive a response from the origin server responsive to the transmitted request, and

transmit the response to the requesting client device.

4. The system of claim 3 , wherein the first authoritative DNS server is further adapted to:

responsive to a detected layer 7 attack directed to a particular hostname of the plurality of hostnames, bind one or more IP addresses that are not the same first single IP address to an address record for that particular hostname such that subsequent DNS queries for that address record return the bound one or more IP addresses instead of the same first single IP address.

5. A system, comprising:

a first non-transitory machine-readable storage medium that provides instructions that, when executed by a processing system of a first authoritative domain name system (DNS) server cause first operations to be performed including:

receiving a first plurality of DNS queries for a first plurality of hostnames, wherein the first plurality of hostnames is at least one thousand, and

answering each of the first plurality of DNS queries with a same first single IP address, wherein each of a plurality of servers of a distributed cloud computing network is capable of receiving traffic addressed to the same first single IP address;

a second non-transitory machine-readable storage medium that provides instructions that, when executed by a processing system of a second authoritative DNS server cause second operations to be performed including:

receiving a second plurality of DNS queries for the first plurality of hostnames, and

answering each of the second plurality of DNS queries with a same second single IP address, wherein each of the plurality of servers is capable of receiving traffic addressed to the same second single IP address, and wherein the same first single IP address is different from the same second single IP address; and

a third non-transitory machine-readable storage medium that provides instructions that, when executed by a processing system of one of the plurality of servers of the distributed cloud computing network cause third operations to be performed including:

receiving, at the one of the plurality of servers of the distributed cloud computing network from a first client device, a first request for content that is addressed to the same first single IP address,

determining the hostname to which the first request is directed based on a Server Name Indication (SNI) field or an HTTP host header field associated with the first request for content,

transmitting the first request to a first origin server for the determined hostname,

receiving a first response from the first origin server responsive to the transmitted first request, and

transmitting the first response to the first client device; and

a fourth non-transitory machine-readable storage medium that provides instructions that, when executed by a processing system of a second one of the plurality of servers of the distributed cloud computing network cause fourth operations to be performed including:

receiving, at the second one of the plurality of servers of the distributed cloud computing network from a second client device, a second request for content that is addressed to the same second single IP address,

determining the hostname to which the second request is directed based on a Server Name Indication (SNI) field or an HTTP host header field associated with the second request for content,

transmitting the second request to a second origin server for the determined hostname,

receiving a second response from the second origin server responsive to the transmitted second request, and

transmitting the second response to the second client device.

6. The system of claim 5 , wherein the third operations further comprise:

responsive to a detected layer 7 attack directed to a particular hostname of the first plurality of hostnames, binding an IP address that is not the same first single IP address to an address record for that particular hostname such that subsequent DNS queries for that address record return the bound IP address instead of the same first single IP address.

7. The method of claim 1 , further comprising:

wherein the answering each of the first plurality of DNS queries with the same first single IP address is done in a first period;

receiving, at the first authoritative DNS server during a second period, a third plurality of DNS queries for a second plurality of hostnames, wherein the first period is different from the second period;

answering each of the third plurality of DNS queries with a same third single IP address, wherein the same first single IP address is different from the same third single IP address; and

receiving, at the plurality of servers of the distributed cloud computing network from the third plurality of client devices, requests for content that are addressed to the same third single IP address.

8. The method of claim 1 , further comprising:

receiving, at the first authoritative DNS server, a third DNS query for a second hostname that is not one of the first plurality of hostnames; and

answering the third DNS query with a third IP address that is different from the same first single IP address.

9. The method of claim 1 , further comprising:

providing a signed zone file to one or more DNS resolvers that maps the first plurality of hostnames with the same first single IP address.

10. The system of claim 3 , wherein the first authoritative DNS server is further adapted to:

receive a third DNS query for a second hostname that is not one of the first plurality of hostnames; and

answer the third DNS query with a third IP address that is different from the same first single IP address.

11. The system of claim 3 , wherein the first authoritative DNS server is further adapted to:

provide a signed zone file to one or more DNS resolvers that maps the first plurality of hostnames with the same first single IP address.

12. The system of claim 5 , further comprising:

wherein the answering each of the first plurality of DNS queries with the same first single IP address is done in a first period, and wherein the first operations further include:

receiving, at the first authoritative DNS server during a second period, a third plurality of DNS queries for a second plurality of hostnames, wherein the first period is different from the second period, and

answering each of the third plurality of DNS queries with a same third single IP address, wherein the same first single IP address is different from the same third single IP address; and

wherein the third operations further include:

receiving, at the one of the plurality of servers of the distributed cloud computing network from at least some of the plurality of client devices, requests for content that are addressed to the same second single IP address.

13. The system of claim 5 , wherein the first operations further include:

receiving a third DNS query for a second hostname that is not one of the first plurality of hostnames; and

answering the third DNS query with a third IP address that is different from the same first single IP address.

14. The system of claim 5 , wherein the first operations further include:

providing a signed zone file to one or more DNS resolvers that maps the first plurality of hostnames with the same first single IP address.

Assignments (2)
SECURITY INTEREST Recorded May 20, 2024
From: CLOUDFLARE, INC.
To: CITIBANK, N.A.
Reel/Frame 067472/0246 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 18, 2021
From: FAYED, MARWAN; ODINTSOV, PAVEL; KEROLA, SAMI MATIAS
To: CLOUDFLARE, INC.
Reel/Frame 057822/0268 →
Continuity (2)
Continuation 17116864 · Dec 9, 2020
Related Publication 20220182354A1 · Jun 9, 2022
References Cited (54)
US 7523170B1 · Allen · 2009 [cited by examiner]
US 9197487B2 · James · 2015 [cited by examiner]
US 9231903B2 · Seastrom et al. · 2016 [cited by applicant]
US 9584328B1 · Graham-Cumming · 2017 [cited by applicant]
US 9742795B1 · Radlein et al. · 2017 [cited by applicant]
US 10033692B1 · Vavrusa · 2018 [cited by examiner]
US 10375016B1 · Vavrusa · 2019 [cited by examiner]
US 20030126252A1 · Abir · 2003 [cited by applicant]
US 20080177994A1 · Mayer · 2008 [cited by examiner]
US 20100077462A1 · Joffe · 2010 [cited by examiner]
US 20100125673A1 · Richardson et al. · 2010 [cited by applicant]
US 20100153802A1 · Van et al. · 2010 [cited by applicant]
US 20140109225A1 · Holloway · 2014 [cited by examiner]
US 20150215388A1 · Kontothanassis et al. · 2015 [cited by applicant]
US 20170153980A1 · Araujo et al. · 2017 [cited by applicant]
US 20170310744A1 · Maslak · 2017 [cited by applicant]
US 20200007585A1 · Williams · 2020 [cited by examiner]
US 20200314065A1 · Roy · 2020 [cited by examiner]
US 20200366638A1 · Vasquez · 2020 [cited by examiner]
US 20210028959A1 · Lubashev · 2021 [cited by examiner]
Belshe et al., Hypertext Transfer Protocol Version 2 (HTTP/2), Internet Engineering Task Force (IETF), Request for Comments: 7540, ISSN: 2070-1721, May 2015, 96 pages. [cited by applicant]
Bishop, Hypertext Transfer Protocol Version 3 (HTTP/3), draft-ietf-quic-http-32, Oct. 20, 2020, 73 pages. [cited by applicant]
Brisco, DNS Support for Load Balancing, Request for Comments: 1794, Apr. 1995, 7 pages. [cited by applicant]
Callahan et al., On Modern DNS Behavior and Properties, ACM SIGCOMM Computer Communication Review, vol. 43, No. 3, Jul. 2013, 8 pages. [cited by applicant]
Dannewitz et al., Network of Information (NetInf)—An information-centric networking architecture, Computer Communications, 36(7), 2013, pp. 721-735. [cited by applicant]
Eisenbud et al., Maglev: A Fast and Reliable Software Network Load Balancer, 13th USENIX Symposium on Networked Systems Design and Implementation (NSDI), Mar. 16-18, 2016, 14 pages [downloaded at: https://www.usenix.org… [cited by applicant]
Gandhi et al., Yoda: A Highly Available Layer-7 Load Balancer, European Conference on Computer Systems (EuroSys), 2016, 16 pages. [cited by applicant]
Han et al., XIA: Efficient Support for Evolvable Internetworking, 9th USENIX Symposium on Networked Systems Design and Implementation ( NSDI 12), 2012, pp. 309-322. [cited by applicant]
Hoang et al., The Web is Still Small After More Than a Decade, ACM SIGCOMM Computer Communication Review, vol. 50 Issue 2, Apr. 2020, 7 pages. [cited by applicant]
Holz et al. The Era of TLS 1.3: Measuring Deployment and Use with Active and Passive Methods, arXiv:1907.12762, 2019, 17 pages. [cited by applicant]
Larisch et al., CRLite: A Scalable System for Pushing All TLS Revocations to All Browsers, 2017 IEEE Symposium on Security and Privacy, pp. 539-556. [cited by applicant]
Lentz et al. D-mystifying the D-root Address Change, ACM Internet Measurement Conference (IMC), 2013, 6 pages. [cited by applicant]
Li et al., Internet Anycast: Performance, Problems, & Potential, ACM SIGCOMM, 2018, 15 pages. [cited by applicant]
Miao et al., SilkRoad: Making Stateful Layer-4 Load Balancing Fast and Cheap Using Switching ASICs, ACM SIGCOMM 2017, Aug. 21-25, 2017, 14 pages. [cited by applicant]
Moura et al., Cache Me If You Can: Effects of DNS Time-to-Live (extended), ACM Internet Measurement Conference (IMC), May 2019, 15 pages. [cited by applicant]
Moura, DNS TTL Violations in the Wild—Measured with RIPE Atlas, RIPE Network Coordination Centre, Dec. 1, 2017, [downloaded at: https://labs.ripe.net/Members/giovane_moura/dns-ttl-violations-in-the-wild-with-ripe-atlas-… [cited by applicant]
Non-Final Office Action, U.S. Appl. No. 17/116,864, Feb. 16, 2021, 14 pages. [cited by applicant]
Notice of Allowance, U.S. Appl. No. 17/116,864, Jun. 17, 2021, 15 pages. [cited by applicant]
Nygren, Reaching Toward Universal TLS SNI, The AKAMAI Blog, Mar. 23, 2017, 6 pages [downloaded at https://blogs.akamai.com/2017/03/reaching-toward-universal-tls-sni.html]. [cited by applicant]
Padmanabhan et al., Reasons Dynamic Addresses Change, ACM Internet Measurement Conference (IMC), 16 pages, 2016. [cited by applicant]
Release Notes: Junos® OS Release 19.2R3 for the ACX Series, EX Series, MX Series, NFX Series, PTX Series, QFX Series, SRX Series, and Junos Fusion, Jul. 24, 2020, Juniper Networks, 340 pages [downloaded at: https://www.… [cited by applicant]
Ren et al., Routing and Addressing with Length Variable IP Address, Proceedings of the ACM SIGCOMM 2019 Workshop on Networking for Emerging Applications and Technologies, pp. 43-48. [cited by applicant]
Richter, et al., A Multi-perspective Analysis of Carrier-Grade NAT Deployment, ACM Internet Measurement Conference (IMC), 2016, 15 pages. [cited by applicant]
Richter, et al., Beyond Counting: New Perspectives on the Active IPV4 Address Space, ACM Internet Measurement Conference (IMC), 2016, 15 pages. [cited by applicant]
Sevilla et al., Freeing the IP Internet Architecture from Fixed IP Addresses. In IEEE International Conference on network Protocols (ICNP), 2015, pp. 345-355. [cited by applicant]
Singh et al., IP Address Multiplexing for VEEs, ACM SIGCOMM Computer Communication Review, vol. 44, No. 2, Apr. 2014, pp. 37-43. [cited by applicant]
Sitnicki et al., Programmable socket lookup with BPF, Linux Plumbers Conference, Sep. 2019, 75 pages. [cited by applicant]
Sitnicki, It's crowded in here!, The Cloudflare Blog, CLOUDFLARE, Oct. 12, 2019, 23 pages, [downloaded at: https://blog.cloudflare.com/its-crowded-in-here/]. [cited by applicant]
Sundaresan et al., Measuring and Mitigating Web Performance Bottlenecks in Broadband Access Networks, ACM Internet Measurement Conference (IMC), 2013, 13 pages. [cited by applicant]
This new tech makes it harder for ISPs to spy on you, Fastcompany.com, Sep. 25, 2018, 4 pages [downloaded at: https://www.fastcompany.com/90240005/this-new-tech-makes-it-harder-for-isps-to-spy-on-you]. [cited by applicant]
Weil, et al., IANA-Reserved IPv4 Prefix for Shared Address Space, Internet Engineering Task Force (IETF), Request for Comments: 6598, Apr. 2012, 11 pages. [cited by applicant]
What is round-robin DNS? CLOUDFLARE, Inc., downloaded on Dec. 8, 2020, 4 pages [downloaded at: https://www.cloudflare.com/learning/ dns/glossary/round-robin-dns/]. [cited by applicant]
What is the difference between a multivalue answer routing policy and a simple routing policy? AWS: Multivalue Answer Routing, Aug. 3, 2020, 5 pages [downloaded at: https://aws.amazon.com/premiumsupport/knowledge-center… [cited by applicant]
Zhang et al., Named Data Networking, ACM SIGCOMM Computer Communication Review, vol. 44, No. 3, Jul. 2014, 8 pages. [cited by applicant]