CDN 如何确定要使用哪个最近的服务器?

dor*_*mon 13 ip dns tcp http cdn

在此输入图像描述

由于大多数 CDN 声称他们可以根据用户的位置更快地提供静态内容,我想知道他们实际上是如何做到这一点的。

例如,如果我有这样的 HTML:

<html>
<head> title </title>
<body>
</h1>Hello world</h1>

<script src="https://cdnjs.cloudflare.com/ajax/libs/react/18.0.0-alpha-464f27572-20210713/umd/react.production.min.js" integrity="sha512-ajIHzHkfQaAO507V8rEsyK4ftf96GFD7TC4znUxoKaRr7D0U/qmRDCXAXpc5DmmwoUnHcNtx6gaz14R0PHtRrg==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

CDN 提供商如何知道我位于英国并且应该连接到(例如 AWS 西欧)?他们有特殊的 DNS 设置吗?他们采用什么技术让我的浏览器知道应该在哪里请求资源?

我的猜测之一是他们有一台服务器可以读取用户的 IP 并相应地重定向,但这没有意义,因为如果服务器位于香港而我在纽约,那么往返将花费大部分时间潜伏期的时间。所以我猜他们一定有一些办法来解决 DNS 级别的这个问题。

我通过互联网进行了搜索,但找不到任何解释。你能向我解释一下吗?

小智 10

我也有同样的问题,直到我读到这篇文章并知道:

\n
    \n
  • 一个域名可以有多个IP
  • \n
  • DNS 服务器根据 DNS 解析器\xe2\x80\x99s IP 地址执行地理查找,然后返回物理上最接近该区域的\xc2\xa0edge 服务器\xc2\xa0 的 IP 地址
  • \n
\n