什么是 CDN?为什么一个域名对应多个 IP?

CDN(内容分发网络)把网站内容缓存到分布各地的节点,用户访问时由就近节点提供服务。域名解析时会根据用户位置返回不同的 IP 地址,因此一个域名会对应多个 IP。CDN 用于加速访问、分担源站压力。

一个网站如果只有一台源服务器,用户无论身处何地都要访问同一个地址,距离远则延迟高,访问量大时服务器压力也大。CDN(Content Delivery Network,内容分发网络)的解决办法是:把网站的静态内容复制到分布各地的边缘节点,用户请求由地理上最近的节点响应。

CDN 与域名系统配合工作。域名接入 CDN 后,解析记录指向 CDN 服务商的智能解析系统,该系统根据用户请求来源的地理位置和网络状况,返回不同的 IP 地址——这就是一个域名对应多个 IP 的常见来源。用户拿到的是就近节点的地址,访问由该节点提供服务。

对网站运营者来说,接入 CDN 后无需改动域名,解析由 CDN 接管;源服务器只处理未被缓存的请求。CDN 在提升访问速度的同时,也把攻击流量分散到各节点,降低了源站被集中攻击的风险。