前几天我尝试对 进行跟踪路由www.nasa.gov
。
我尝试从几个不同的网站(在@ 找到www.traceroute.org
)执行此操作,它们都表现出类似的行为:当连接到 时www.nasa.gov
,它不会连接到 nasa.org 的规范名称之一,而是尝试连接到另一个 IP 地址,通常来自我正在使用的跟踪路由网站所在的同一国家/地区。更糟糕的是,似乎每个国家/地区都有几个与 相关的不同 IP www.nasa.gov
。
例子:
traceroute to www.nasa.gov (203.106.85.57), 30 hops max, 40 byte packets
1 gx-kmi-e1-a.mdn.nusa.net.id (202.162.192.254) 0.266 ms 0.265 ms 0.432 ms
2 gw-kmi.mdn.nusa.net.id (202.162.199.238) 1.430 ms 1.433 ms 1.416 ms
3 112.215.16.1 (112.215.16.1) 32.137 ms 32.143 ms 32.149 ms
4 112.215.5.249 (112.215.5.249) 32.155 ms 33.083 ms 33.069 ms
5 icore-sgp.ge-1-3-0.bb.xl.net.id (202.152.254.62) 130.189 ms 202.152.245.186 (202.152.245.186) 130.134 ms icore-sgp.ge-1-3-0.bb.xl.net.id (202.152.254.62) 130.178 ms
6 tm.net.my (58.26.179.213) 65.494 ms 66.277 ms 66.039 ms
7 203.106.85.57 (203.106.85.57) 64.707 ms 64.693 ms 65.792 ms
203.106.85.57
来自马来西亚的 IP 在哪里?
一开始我以为这可能与镜像有关,但现在我不太确定了。即使是小国的跟踪站点,似乎也有多个 IP,我怀疑这样的站点会www.nasa.gov
产生如此大的流量,以至于需要在这么多地方复制,即使是小国也是如此。
这是什么原因?我的理由错误吗?
谢谢
答案1
这是内容分发网络 (CDN) 的效果
http://en.wikipedia.org/wiki/Content_delivery_network
Akamai 是最大的 CDN 之一。
解释一下:CDN 在全球有很多服务器,起到缓存的作用反向代理(这不是用户的代理;而是服务器前的代理,以减少请求数量)。为了更快地访问网站,CDN 应该将每个用户连接到最近的服务器。
要选择最近的服务器,需要使用特殊的 DNS 服务器。当您想要连接某个网络服务器(例如 www.abc.com)时,您的浏览器必须使用 DNS 查找服务器的 IP 地址。通常,DNS 应该为任何客户端返回某个固定地址,但 akamai 和其他 CDN DNS 的行为会有所不同。
它们将根据客户端的 IP(发送 DNS 请求的 IP)返回不同的服务器 IP。此类特殊 DNS 拥有任何 IP 的地理位置数据库和包含所需内容的 akamai 服务器数据库。DNS 回复会将您的浏览器重定向到最近的服务器。
另一种技术是任播- 对于任何客户端来说,服务器的 IP 都是相同的;但 IP 数据包将以不同的方式路由到某组服务器(某个服务器组中的任何一个)。