V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fqrouter2
V2EX  ›  Google

Google IP 现状

  •  7
     
  •   fqrouter2 · 2015-02-28 01:27:55 +08:00 · 28006 次点击
    这是一个创建于 3548 天前的主题,其中的信息可能已经有所发展或是发生改变。
    Google IP 分为三类。第一类是普通的 *.google.com *.gstatic.com 类型的IP。这类IP数量巨大,而且GGC包括这类IP。虽然大量被封,仍然后非常多可用的。

    第二类是 *.googleusercontent.com *.googleapis.com 类型的IP。这类IP数量非常稀少,大部分都已经被封。特别是GGC并不包含这类IP,所以数量稀少。

    第三类是 *.googlevideo.com (youtube视频),*.gvt1.com(google play下载)类型的IP。这类IP数量巨大,GGC主要就是为了缓存这类的内容而存在。但是google选择了由网页(html)指定IP的方式,从而不允许用户或者middle box去指定使用特定的IP(所谓改host)。具体详见
    https://peering.google.com/about/faq.html
    http://www.slideshare.net/Netmanias/netmanias20120416ggc-operation-for-you-tube-part-1-kt-en
    http://www.slideshare.net/Netmanias/netmanias20120418ggc-operation-for-you-tube-part-2-lg-u-en

    针对GGC的这种行为,国外的网友也有抱怨
    http://www.reddit.com/r/youtube/comments/2t0pu9/i_discovered_the_cause_of_youtube_slowness_on/
    http://netengv6.blogspot.com/2013/08/google-global-cache.html
    他们的主要抱怨的是自己被google强制使用了ISP提供的GGC,当GGC速度不理想的时候用户无法自己选择使用别的速度更快的GGC节点。国内的用户不同在于,大部分的GGC IP被封了,用户无法通过改host选择没有被封的GGC节点。

    Google R.I.P
    41 条回复    2017-12-31 03:09:56 +08:00
    FrankFang128
        1
    FrankFang128  
       2015-02-28 01:37:21 +08:00 via Android
    GGC?
    club
        2
    club  
       2015-02-28 01:40:42 +08:00
    @FrankFang128 Google Global Cache
    club
        3
    club  
       2015-02-28 01:41:58 +08:00   ❤️ 1
    xinhugo
        4
    xinhugo  
       2015-02-28 02:25:06 +08:00
    你这是以域名的用途分类。据我所知,IP 可用于第一类域名,即可用于第二类域名。

    按 IP 的类型,可分为
    (1)Google 自家的(就算能用,延迟、丢包率也较高。)
    (2)与 ISP 合作的(目前速度最快的)
    (3)在你国的(缺少内容,从最初阉割搜索、GAE,到 2/24 阉割图片,现在的用途极为有限)
    kerr92
        5
    kerr92  
       2015-02-28 06:11:18 +08:00 via Android
    我目前hosts用的是谷歌韩国的IP,ping值在60ms左右,比挂台湾的VPN(120ms左右)还快,GCC的IP数量巨大但是速度普遍太慢…
    O21
        6
    O21  
       2015-02-28 08:24:56 +08:00 via iPhone
    谷歌的ip多了
    MicrosoftAzure
        7
    MicrosoftAzure  
       2015-02-28 09:20:17 +08:00 via iPad
    @fqrouter2

    有个疑问,既然不允许指定特定IP改hosts,为什么通过网上分享的Google hosts还可以正常使用Google服务(虽然图片显示似乎有问题)?

    我通过在线ping工具得到了美国人访问Google HK解析出的IP地址,我也可以ping通,按理说是有效的吧,返回数据也正常(原谅我没有直接访问该IP地址),指定了
    x.x.x.x www.google.com.hk
    之后依然无法访问Google HK

    这应该就是
    @fqrouter2 描述的情况,不知道高手发布的Google hosts中的IP地址和我自己找的有什么不同?

    @kerr92

    请问你也是自己找自己在hosts中指定吗?
    wdlth
        8
    wdlth  
       2015-02-28 09:25:08 +08:00
    GGC是支持SNI的,所以*.googleapis.com等域名也可以在新的浏览器使用。
    wdlth
        9
    wdlth  
       2015-02-28 09:33:02 +08:00
    我现在用的主要是某亚洲小国,泰国走NGN的运营商和香港走PCCW的运营商提供的。
    LGA1150
        10
    LGA1150  
       2015-02-28 10:31:34 +08:00 via Android
    @MicrosoftAzure ping通不代表能访问,可能是特定端口封锁
    66beta
        11
    66beta  
       2015-02-28 10:35:17 +08:00
    目前在用的IP,已经用了一个多月了,感觉最近没封那么紧了
    LGA1150
        12
    LGA1150  
       2015-02-28 10:39:00 +08:00 via Android
    我现在收集了世界各地GGC IP和一些目前仍能使用的香港数据中心IP
    香港数据中心IP还有100来个可用(香港也有GGC IP,不过没几个可以用了)
    GGC IP中印尼的最多,有300多个,延迟也较低;台湾的还有几十个
    kerr92
        13
    kerr92  
       2015-02-28 11:57:16 +08:00
    @MicrosoftAzure 是哒,dig命令+其他国家ISP的DNS,ping命令并不适合用来找IP
    yfdyh000
        14
    yfdyh000  
       2015-02-28 12:00:07 +08:00
    @MicrosoftAzure 所谓不允许改hosts,是指YouTube(等?)服务,js中直接返回离你最近的ISP架设的GGC节点(Google提供机器和进行维护,架设在ISP的机房),用户无法选择(因为返回的就是GGC子域名)。直接使用是没问题的。
    MicrosoftAzure
        15
    MicrosoftAzure  
       2015-02-28 15:45:42 +08:00
    @LGA1150

    感谢解答,相对来说还是自己整理的IP地址用得久一些。
    MicrosoftAzure
        16
    MicrosoftAzure  
       2015-02-28 15:48:32 +08:00
    @kerr92

    表示还在用gogo tester和Github上一个小工具,都是为goagent,不知道为goagent找的IP和你dig的是不是一回事?
    MicrosoftAzure
        17
    MicrosoftAzure  
       2015-02-28 15:54:36 +08:00
    @yfdyh000

    感谢解答。这或许就是现在用Google hosts无法看YouTube视频的原因?hosts定向的IP与GGC返回的节点不同于是无法观看?

    btw九月还能流畅地用hosts看YouTube

    似乎用goagent看YouTube也会提示遇到问题无法播放

    而直接使用的意思就是直接访问这些GGC返回的节点地址即可正常观看(如果这些节点没有被认证的话)?
    yfdyh000
        18
    yfdyh000  
       2015-02-28 16:00:44 +08:00
    @MicrosoftAzure 没试过,猜测:YouTube会返回一个GGC子域名,而普通hosts是不支持通配符的,子域名又太多写不完。
    kerr92
        19
    kerr92  
       2015-02-28 16:07:54 +08:00 via Android
    @MicrosoftAzure goagent怎么进行DNS查询的我没关注过,但dig本就是用来DNS查询的啦
    997008774
        20
    997008774  
       2015-03-01 00:50:37 +08:00
    @LGA1150 分享几个私用吗,嘿嘿嘿
    JamesR
        22
    JamesR  
       2015-03-02 11:24:40 +08:00
    @wwbfred
    Google IP 对我来说实际上非常少的,一共16个,呵呵。
    8.8.8.8
    4.35.153.0/24
    64.233.187.0/24
    72.14.249.0/24
    74.125.0.0/16
    173.194.0.0/16
    194.122.81.0/24
    203.208.40.0/24
    203.208.46.0/24
    208.117.0.0/16
    209.85.228.0/24
    209.85.229.0/24
    209.116.150.0/24
    216.58.220.0/24
    216.239.32.0/24
    216.58.221.0/24

    挂入路由器里16行就行了,这些IP通通走VPN其余走本地。然后设置凡是包含有如下关键字的DNS请求走8.8.8.8,其余走本地运营商DNS比如电信的,即可同时流畅看Youtube和享受本地优酷CDN加速。

    google.com|googleapis.com|googlehosted.com|googlezip.net|googledrive.com|appspot.com|googleusercontent.com|ggpht.com|gstatic.com|googlesource.com|chromium.org|android.com|googlecode.com|google.co.jp|googlelabs.com|gmail.com|goo.gl|google-analytics.com|
    youtube.com|youtube-nocookie.com|ytimg.com|googlevideo.com|blogger.com|blogspot.com|
    wwbfred
        23
    wwbfred  
       2015-03-02 13:59:33 +08:00
    @JamesR 我们说的不是一个东西.
    linkupmylife
        24
    linkupmylife  
       2015-03-03 10:09:32 +08:00
    我用HE的TunnelBroker。
    rootroot
        25
    rootroot  
       2015-03-05 16:56:39 +08:00
    @wwbfred 你那段话很好的解释了 为啥现在有些视频很快就可加载,有些转半天,有些F5N 次也无法播的现状。
    rootroot
        26
    rootroot  
       2015-03-05 16:58:31 +08:00
    现在GG 有很多大量的IP 都可以ping通,延时还低, 但是就是不能拿来当hosts用。
    AVC
        27
    AVC  
       2015-03-06 18:02:30 +08:00   ❤️ 1
    其实现在我自己私人维护的hosts可以实现youtube视频完美播放,连play下载(其实他们用的IP是一样的)
    找一个VPS,搭个sniproxy,然后hosts指向VPS即可。21L的信息很不错,不过我这边收集的youtube视频域名列表大约有14000条,应该没有更多了,基本囊括所有谷歌bigcache服务器。最后做出来的hosts文件也不大,1.4M。
    关于谷歌IP,其实只要请求程序支持SNI标签,谷歌便会根据SNI标签里面的域名来提供服务,联想一下之前goagent只要找到一个谷歌IP就能使用GAE,原理也是这样的。即便我用*.google.com的IP来指lh3.ggpht.com一样可以正常访问。但是之前为什么不行呢?因为之前的play市场还不支持SNI标签,现在支持没问题了。目前发现还不支持SNI标签的谷歌应用是Google Now,连接www.googleapis.com的时候没有SNI标签,直接使用服务器返回的第一个证书来连接。其余的谷歌应用都是支持SNI标签的,这点通过抓包可以确定。(5.0.x的谷歌服务)
    monkeymonkey
        28
    monkeymonkey  
       2015-03-07 15:10:36 +08:00   ❤️ 1
    我总结了部分 IPv6 域名的规律,其中一些规则应该也适用于 IPv4。
    https://github.com/lennylxx/ipv6-hosts/wiki/Google
    https://github.com/lennylxx/ipv6-hosts/wiki/sn-domains
    wwbfred
        29
    wwbfred  
       2015-03-08 07:07:10 +08:00
    @lennylxx 非常感谢你做的sn domains的wiki!之前也一直想弄清楚sn domains代表了什么意思,但一直没分析清编码方式...直到搜到你的解码方式才茅塞顿开!
    freetuchuang
        30
    freetuchuang  
       2015-03-08 19:42:07 +08:00
    @AVC 能否将play的hosts域名列表发一份给我 ?
    rootroot
        31
    rootroot  
       2015-03-09 13:43:31 +08:00
    @AVC 可否分享一下那14000条视频域名列表?
    LGA1150
        32
    LGA1150  
       2015-03-13 23:42:25 +08:00 via Android
    @wwbfred @fqrouter2
    能否用可以Rewrite URL的Chrome扩展程序,把.googlevideo.com、bigcache等强制重定向到一个固定的子域名?
    AVC
        33
    AVC  
       2015-03-20 01:59:05 +08:00 via Android
    话说即便是同一个YouTube视频可以由很多个不同的服务器来提供,在境内也有googlevideo.com的服务器,我一直在思考要是在请求域名的那步直接改写为国内的googlevideo服务器那速度简直能秒一切VPN。
    wwbfred
        34
    wwbfred  
       2015-03-20 09:46:30 +08:00
    @LGA1150 不可以.这个我也试过,但不同的视频存放于不同的服务器,自己定向到固定域名会出问题的...
    @AVC 不可以.Google在国内的确有发放googlevideo.com的证书,也有ggc,但目前都是处于残废状态,不能提供视频服务.direct到哪组服务器是由google说了算,google不把我们direct到国内服务器我们就没办法.
    AVC
        35
    AVC  
       2015-03-20 20:28:51 +08:00   ❤️ 1
    203.208.40.16 r1---sn-ni57dn7e.googlevideo.com
    203.208.41.16 r1---sn-ni57dn7l.googlevideo.com
    203.208.46.16 r1---sn-2x37en7e.googlevideo.com
    203.208.46.80 r1---sn-2x37en7l.googlevideo.com
    203.208.47.144 r1---sn-2x37en76.googlevideo.com
    203.208.47.16 r1---sn-2x37en7s.googlevideo.com
    203.208.47.80 r1---sn-2x37en7z.googlevideo.com
    203.208.48.16 r1---sn-2x37ln7e.googlevideo.com
    203.208.49.48 r1---sn-2x37ln7l.googlevideo.com
    203.208.50.16 r1---sn-2x37ln7s.googlevideo.com
    203.208.51.16 r1---sn-2x37ln7z.googlevideo.com
    203.208.52.16 r1---sn-2x37en7k.googlevideo.com

    youtube的视频sn编码,lennylxx其实已经分析得比较清楚了(github上面一个ipv6 hosts项目)。

    目前收集到国内的googlevideo服务器就有这些。只列出第一个服务器,部分服务器组有12个服务器(r1-r12),部分就有20个服务器。

    关于是不是能用不同的googlevideo服务器来看视频,这个其实有一点可以注意的,你用新加坡和美国的代理看同一个视频对比一下请求的googlevideo服务器就会发现不同的服务器可以提供同样的视频内容。

    既然有人对sn编码列表感兴趣就贴上来吧。
    暂且随意的把类似r1---sn-xxxxxxyy.googlevideo.com的分类了一下。

    yy部分:
    6e,6z,76,7d,7e,7k,7l,7r,7s,7y,7z,d7,e6,e7,ed,ee,ek,el,er,es,ey,ez,ke,ks,l6,l7,ld,le,lk,ll,lr,ls,ly,lz,s7,sd,se,sk,sl,ss,sy,sz,z6,zl,zs,zy

    xxxxxx部分:
    25g7sm,25ge7n,2gb7ln,2x37en,2x37ln,30a7dn,3pm7en,4g57km,4g57kn,4g57kn,4g57ku,5go7ln,5hn7sn,5hn7su,5hnezn,5hn7ym,5uaezn,9gv7en,9gv7ln,a5m7ln,a5m7zn,a5m7zu,a5mekm,a5mekn,ab5e6m,ab5l6n,aigllm,aiglln,apn7en,bg07dn,bg07yn,c0q7ln,cg07lu,cvh7zn,cxg7en,f5f7ln,gpv7en,h0j7sn,h557sn,h5q7en,hgn7zn,hp57kn,i3b7rn,i3b7sn,i5h7ln,jc47eu,ni57dn,npo7en,npo7zn,ntq76n,ntq7en,nv47en,nwj7km,nwj7kn,nx57yn,o097zn,o097zu,oguesn,p5qlsm,p5qlsn,p5qlsu,q4f7dm,q4f7dn,q4f7sn,qxo7sn,tt17rn,u2x76n,vgqs7n,vgqsem,vgqsen,x1x7sn

    任意组合xy部分,如25g7sm6e这样子。

    写个批处理,nslookup查询组合域名的存在性,一般只需要查询r1服务器就可以,因为每组服务器肯定有20个域名(呃,这样说比较合适我的风格)。
    ————————————————————————————
    @echo off
    echo 请输入你的VPSIP:
    set /p priip=
    SETLOCAL ENABLEDELAYEDEXPANSION
    for /f %%a in (视频前缀.txt) do (
    for /f %%b in (视频后缀.txt) do echo r1---sn-%%a%%b.googlevideo.com>>谷歌视频域名未验证.txt
    )
    for /f %%c in (谷歌视频域名未验证.txt) do nslookup -q=A %%c >>谷歌视频域名查询结果.txt
    findstr "Aliases: " 谷歌视频域名查询结果.txt >>查询列表提取.txt
    for /f "tokens=2 delims= " %%i in (查询列表提取.txt) do echo %%i>>谷歌有效域名列表.txt
    for %%i in (r1,r2,r3,r4,r5,r6,r7,r8,r9,r10,r11,r12,r13,r14,r15,r16,r17,r18,r19,r20) do (
    for /f "tokens=2,3 delims=-" %%a in (谷歌有效域名列表.txt) do echo %priip% %%i---%%a-%%b>>hosts.1
    )
    for /f "tokens=1,2,3,4,6 delims=." %%a in (hosts.1) do echo %%a.%%b.%%c.%%d.gvt1.%%e>>hosts.2
    copy /b hosts.1+hosts.2 hosts
    del *.txt
    del hosts.1
    del hosts.2
    pause
    —————————————————————————————
    关于xy部分,是根据你连接到谷歌的IP来进行分配的,上面就有说到了。我这边使用过新加坡,日本,美国的代理线路,我觉得应该是目前中国用户能获取到的最全面的SN服务器编码列表了。批处理里面应该都能看懂,随便简单写了个,轻喷。。

    既然写了就再写VPS部分吧。

    VPS搭好sniproxy,先移除/etc/sniproxy.conf,再建立一个新的sniproxy.conf并编辑。
    user nobody
    listen 443 {
    proto tls
    table host
    }
    table host {
    .*\.googlevideo\.com$ *
    .*\.gvt1\.com$ *
    }

    嗯,没错就是支持正则的。然后做hosts的时候填入IP即可。不过做出来的hosts文件会有莫名其妙的重复条目,这个请批处理高手来看看吧。。我反正是用excel来删除重复,目前OK。
    wwbfred
        36
    wwbfred  
       2015-03-21 14:26:50 +08:00
    @AVC 我觉得其实可以不用做这么多条目,只要根据vps的地理位置和运营商做两三组就够了.比如你的vps在日本,那google几乎不可能给你定向到欧洲的服务器.例如9gv7en,9gv7ln服务器在墨西哥,就不需要去做.
    AVC
        37
    AVC  
       2015-03-23 18:35:26 +08:00
    @wwbfred 反正就1.4M,也不算大。可以自己精简一下,参考lennylxx提供的数据。
    5a7apple
        38
    5a7apple  
       2015-06-17 10:46:02 +08:00
    是不是go哎又可用了呢
    killeder
        39
    killeder  
       2015-07-31 10:20:47 +08:00
    @fqrouter2
    老大,fqrouter最新android平台的源码和编译方式能否共享下,想自己研究下wifi中继这部分,谢谢
    gzelvis
        40
    gzelvis  
       2016-07-18 03:57:48 +08:00
    @MicrosoftAzure @AVC 想问下 Azure 香港的机访问谷歌为啥那么慢, ping 过去很快,但返回不行,我查了一下,谷歌把香港的 Azure 定位到西雅图了,那当然快不起来。有办法解决吗?
    woshi112
        41
    woshi112  
       2017-12-31 03:09:56 +08:00
    @AVC 你好,请教你一个问题
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2635 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 15:36 · PVG 23:36 · LAX 07:36 · JFK 10:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.