Google 域名的秘密

声明:本文采用 BY-NC-SA 协议进行授权。 转载请注明转自:Google 域名的秘密

哈哈,我也标题党一回。

其实也不算是秘密,只能说是我在制作 https://github.com/lennylxx/ipv6-hosts 时总结的规律。

Google 是世界上最大的互联网公司,其庞大的规模体现在各个方面。其中一面即是其规模宏大的全球网络,以及难以计数的服务器。有人估计 Google 在 2013 年初的时候大概有 238 万台服务器。

Google 在全球建造了 13 个数据中心,通过其自己组建的多层内容分发网络(CDN),为全球超过 100 多个国家的用户提供免费内容及服务。

本文主要简要介绍一下 Google IPv6 地址与相关的域名。

Google (AS15169) IPv6 地址分配

2001:4860:4000::/36 United States
2404:6800:4000::/36 Australia
2607:f8b0:4000::/36 United States
2800:03f0:4000::/36 Argentina
2a00:1450:4000::/36 Ireland
2c0f:fb50:4000::/36 Kenya

可以看到,Google 在全球各大洲几乎都申请了 IP 段,为其 CDN 服务。

其中亚洲和大洋洲 IP 段注册国为澳大利亚,北美洲注册国为美国,欧洲注册国为爱尔兰,南美注册国为阿根廷,非洲则为肯尼亚。

Google IP 段的管理方式

下面以 2607:f8b0:4000::/36 为例简要介绍一下 Google IP 段的管理方式。

这个 IP 段的掩码有 36 位,因此理论上,这个 IP 段可用地址数为 2 ^ 92,约 4.95e27 个。

如此庞大的 IP 数量当然用不完,也需要一个比较好的管理方式。

Google 主要用了服务器部署位置附近的机场的 IATA 编码 来为服务器分组。IATA 编码为 3 位英文字母,用来唯一标识一个国际机场。比如北京首都国际机场的编码为 PEK,香港国际机场的编码为 HKG 等等。

其 IPv6 各段代表的含义如下:

  1. 33-48 位 (共 16 位) 表示城市编号,如 4000 代表达拉斯,4007 代表洛杉矶,400a 代表西雅图等等。
    (需要注意的是,由于 Google 所有的 IP 段都有 36 位掩码,因此所有的城市编号都是以4 开头的。)
  2. 49-64 位 (共 16 位) 则分成 5 段,每段使用方式不同,具体见下表格。

    49-64 位 用途
    0-3ff sn [20]/[6]
    400-7ff sn [8]
    800-bff iata 1e100.net
    c00-fff xx 1e100.net
    remaining unknown

    如表格所示:

    • 0-3ff 地址段用于 sn 编码域名,每组地址 20 个或 6 个。
      如在 4007 洛杉矶(LAX),1b 对应编码 a5m7lner
      (域可以是*.googlevideo.com *.gvt1.com*.c.youtube.com*.c.docs.google.com *.c.android.clients.google.com。)
    • 400-3ff 地址段也用于 sn 编码域名,每组地址则为 8 个。
      如在洛杉矶,402 对应编码 a5m7zu7s
    • 800-bff 地址段用于 1e100.net 域名的 IATA 编码地址,每组地址 32 个。
      如在 4002 亚特兰大(ATL),802 对应编码 atl14s08
    • c00-fff 地址段用于 1e100.net 域名的两位字母编码地址,每组地址 256 个。
      如在亚特兰大,c01 对应编码 yh

    sn 编码域名和 1e100.net 域名的详细信息参见维基页面 sn 编码域名Youtube1e100.net

  3. 65-112 位 (共 48 位) 均为 0。
  4. 113-128 位 (共 16 位) 表示服务器编号,对应独立二级域名,具体规则请查看 hosts 文件。

上面的四条规则是不是看得晕头转向?

举个栗子:

比如 dfw06s16-in-x1f.1e100.net这个域名,这是一个典型的 1e100.net 域名,其对应的 IPv6 地址为 2607:f8b0:4000:800::101f

  • dfw 是 IATA 编码,代表“达拉斯-沃思堡国际机场”,也就是达拉斯市,这是美国德克萨斯州东北部的一个城市,前段时间的一部电影《达拉斯买家俱乐部》中的故事就是发生在这里。(好像扯远了
  • IPv6 第3段为 4000,对应的即是达拉斯市。
  • -in- 之后有个字母 x,表示其后两位编号是16进制,取值范围 0x00-0x1f,共32台。
  • IPv6 第4段地址取值范围 800-80f,共16组服务器,但各地数量不同,地址池并未完全使用。
  • IPv6 地址的末尾(第8段) 则是从1000到101f,和域名编号相对应。

再比如 r1---sn-o097znl7.googlevideo.com 这个域名,这是一个 sn 编码域名,其对应的 IPv6 地址为 2607:f8b0:4005:4::6

  • o09 是 IATA 编码的转换形式,通过对整个 8 位 sn 编码进行逆转换,可以得到nuq04s20,这个编码就和上面那个例子中的 1e100.net 域名编码类似了。其中nuq 代表“墨菲特联邦机场”,位于美国加州山景城市的南部,而山景城正是 Google 总部的所在地,查看地图你就可以知道这个机场就在 Google 总部的隔壁。
  • IPv6 第3段为 4005,对应的即是山景城市。
  • IPv6 地址的末尾(第8段) 则是从6到19,共 20 个,和域名编号(r1)相对应。

关于如何将 sn 编码进行逆转换,得到 IATA 编码地址,可以参考这个维基页面 https://github.com/lennylxx/ipv6-hosts/wiki/sn-domains

如果你想了解更多,可以查阅维基 https://github.com/lennylxx/ipv6-hosts/wiki,并欢迎提出修改意见。

你还可以查看完整的 1e100 服务器分配表格sn 编码域名表格。(需要科学上网)

时间: 2024-08-04 05:48:21

Google 域名的秘密的相关文章

google的秘密入口

大家试过没有,使用google,如果加用了超级代理,会有多十倍的东东可搜. 下面是google的一些秘密入口: http://www.google.com/microsoft微软风格的入口 http://www.google.com/macMAC风格的入口 http://www.google.com/linuxLinux风格的入口 http://www.google.com/bsdFreeBSD风格的入口 Google有各种语言的版本,下面这些语言可能实在是稀罕了点儿 http://www.go

利用EJS查找可用的Google搜索服务器IP,并缓存入系统Hosts文件内

此博客为9925.org的镜像,登录9925.org可以查看到最新博文. 原文出处:http://ily.so/qi2ENn 搜索可用的Google搜索服务器IP,并将搜索结果缓存入系统Hosts文件内. 提示:此脚本在R5以上版本的EJS脚本IDE工具内可成功解释运行. clear(); console.info("/**************************版权声明**************************/"); console.info("/*  

好用的Google漏洞爬虫:Google Mass Explorer

这是一款基于谷歌搜索引擎的自动化爬虫. 爬虫介绍 爬虫大体机制就是: 先进行一次谷歌搜索,将结果解析为特定格式,然后再提供给exp使用. 大家可以尝试使用–help来列出所有参数. 这个项目笔者会持续更新,以后再添加新的exp进行升级.此外,它会利用google_parsers模块去构建exp解析搜索结果,所以当你开始搜索时,可以选择"–exploit parser"参数来指定相应exp. google parsers模块(google_parsers.py)以后还会继续优化,而现在的

www.beishuo.net 网站打开异常慢的原因

现象:客户投诉http://www.beishuo.net/ 网站在移动线路下打不开或者打开异常缓慢(墨绿色是服务器向客户端发送数据的时间,显得非常耗时)分析:这个CASE比较有意思,我在用科来分析数据包的时候发现服务器的重传率非常高,普遍达到12%以上,如下图,一个450K的内容,花了整整1分3秒种才接收完毕,重传率高达12%,这也上上图墨绿色客户端接收时间超长的原因由此我判断,要么是服务器自身问题,要么是线路问题导致丢包:那么如何做进一步判断呢?步骤1:我尝试在电信线路下面尝试打开该网站发现

关于DNS服务无法解析问题处理

今天,我在玩vmware的时候,用ping命令ping www.baidu.com的时候,结果显示unkown hosts www.baidu.com,但ping某一ip是正常的. 实例如下: [[email protected] ~]# ping www.baidu.comping: unknown host www.baidu.com [[email protected] ~]# ping 119.29.25.60PING 119.29.25.60 (119.29.25.60) 56(84)

Duang~Duang~Duang 还在使用jsfiddle和jsbin做在线前端代码展示和演示吗? 试试更强大的在线代码分享工具吧!

传统的代码分享工具JSbin和JSfilddle jsfiddle和jsbin可能是前端开发中最早最常用的代码“把玩”工具,拥有大量的粉丝和用户,作为前端开发攻城师来说,我个人过去也常常使用. 不过作为国外的服务和产品,加载速度非常不理解,经常半天加载不上,如下图: 而且最重要的在于大量的CDN引用JS/CSS来自于Google CDN,大家也明白,天朝不再给Google发VISA啦,所有的Google域名下的服务或者文件都无法正常访问.除非你FQ!使用非常不流畅滴说!,如下图: 轻视频代码分享

一些外国网站长时间不响应,点叉才能打开的问题

由于google在国外的广泛性,很多外国网站页面嵌入了google anlaytics的js代码,国内由于众所周知的原因,不能访问google域名的东西,导致浏览器解析这个js文件的时候长时间等待,页面无法渲染, 只能强制点叉停止浏览器解析才能显示部分内容,总FQ也比较烦, 无奈还是FQ去chrome的商店找了这个插件,禁止chrome使用google analytics工具,这个还是google自己提供的. https://support.google.com/analytics/answer

qt获得本地IP的方法,qt中域名解析的方法

本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 环境:Ubuntu10.04 + Qt4.7.0 Linux获得本地IP的方法,我尝试了两种 1.用QHostInfo类解析 QHostInfo类可以解析域名,理论上也可以解析本地IP,可是经过尝试,我发现解析出来的IP是127.0.0.1是本地回环地址,不符合我的需求. 代码: [cpp] view plain copy //获取本地IP QHostInfo info=QHostInfo::from

DNS劫持 DNS污染 介绍 与 公共DNS 推荐

来源:http://www.itechzero.com/dns-hijacking-dns-pollution-introduction-and-public-dns-recommend.html 我们知道,某些网络运营商为了某些目的,对 DNS 进行了某些操作,导致使用 ISP 的正常上网设置无法通过域名取得正确的 IP 地址.常用的手段有:DNS劫持 和 DNS污染.DNS劫持 和 DNS污染 在天朝是非常常见的现象.一般情况下输入一个错误或不存在的 URL 后,本应该出现404页面,而我们