首页 > 解决方案 > 如何确定我们访问的cdn边缘服务器在哪里?

问题描述

创建源为blob存储的CDN端点后,当我们从中国访问CDN端点时,性能似乎很差。有什么方法可以查看我访问的是亚洲边缘 CDN 服务器还是北美边缘服务器?

我可以使用命令dig来获取返回的 ip,并查找 IP 的位置吗?(这样IP来自北美)

标签: azure-cdn

解决方案


是的,您可以通过IP 位置找到 CDN 边缘服务器,因为客户端总是从端点接收响应,而不是CDN 环境中的源服务器。但是您可能看不到 IP 城市位置,因为某些第三方提供商的这些 POP 城市位置未公开。

对于 CDN 基础架构,当用户点击地址选项卡中的 URL 时,本地 DNS 服务器会将 DNS 解析下发给 CDN 专用 DNS 服务器,CDN DNS 服务器会将来自 CDN 全局 LB 设备的 IP 地址告知用户. 该用户将请求发送到 CDN 全局 LB 设备,全局 LB 设备将根据客户端 IP、请求内容和区域告诉该用户一个合适的区域 DNS LB 服务器。然后该用户将向区域 DNS LB 服务器请求。区域 DNS 服务器将根据这些条件为全局 LB 服务器选择一个合适的 POP 服务器:哪一个离客户端最近,哪一个具有预期内容,哪一个可以服务于客户端请求。最终,全局 LB 服务器会向用户响应正确的 POP 服务器 IP 地址。

您可以使用Dig命令查看 DNS 解析。我在 Linux Azure VM 上对此进行了测试。我正在使用标准 Microsoft 的 CDN 端点。

在此处输入图像描述

有效的方法是使用Wireshark或网络监视器直接捕获网络包。

如果您使用的是windows机器,在chrome浏览器中,您可以通过单击F12按钮向cdnedpoint发送HTTP / HTTPS请求时获取远程地址,检查Network-Headers-Remote Address,您将看到服务器IP地址.

在此处输入图像描述

此外,如果中国对您的客户来说是一个重要市场并且他们需要快速的性能,请考虑改用 Azure CDN 中国。Azure CDN 中国通过与许多本地提供商合作从中国境内的 POP 提供内容。您可以通过 Azure CDN 获得有关中国内容交付的更多详细信息。


推荐阅读