帖子详情 您在阅读帖子内容并对帖子进行投票之后,可发表回复。

Xbox 当前国内CDN状态分析 149.129.113.81原理解析 IPv6通道高速下载方法

分享到: 分享到QQ  分享到Twitter
作者:BigLoser    访问次数:170    投票总数:2   
创建时间:2020-05-04 00:58:28   

在今年的二月我曾发过 Xbox Live下载服务器国内CDN关闭?解析到EdgeCast节点将被污染 https://bbs.a9vg.com/thread-5419174-1-1.html

这个帖子,帖子的内容并无错误。但最近的一些观察发现Xbox One国内CDN一些特殊之处。需要补充说明。

游戏下载的国际通用域名是

assets1.xboxlive.com
assets2.xboxlive.com
dlassets.xboxlive.com


以下简称com后缀 但实际上除了这两个域名,还存在国内版

assets1.xboxlive.cn
assets2.xboxlive.cn
dlassets.xboxlive.cn


以下简称cn后缀 曾经com后缀是包含国内CDN的,在今年年初取消掉了国内CDN并有污染存在。但实际上并列存在的cn后缀国内CDN并未取消。

曾经有流言说只要将Xbox One系统语言设置为简体中文,地区设置为香港就可以使用cn后缀的CDN下载。经过我的测试,这个说法是错误的。

我使用了冷门游戏怪奇物语3:游戏和XGP新加入游戏生化危机4进行测试,在繁体中文-香港地区和简体中文-香港地区,下载地址调用均为com后缀。


怪奇物语3

 

  1. http://assets1.xboxlive.com/Z/622768d8-0b27-4eb7-8272-71c83e869928/84dee145-1ae0-4058-83c2-95b159350a46/1.2.718.0.b04898ef-d6dc-4f9e-81d0-12d9b8384eed/BonusXP.ST3TG_1.2.718.0_neutral__meay61w269y5m
复制代码

 

生化危机4

 

  1. http://assets1.xboxlive.com/7/abcdcdd6-9e6a-4d7c-8e32-81837a3f6ef8/1becb587-3922-4174-b024-d0f62f48d619/1.0.0.4.66a50da4-b785-4755-a1b2-27fedce566da/residentevil4-asia_1.0.0.4_x64__7g4rjp47qy0by
复制代码

 

后缀直接改为cn是可以进行下载的!但是,冷门游戏发现存在低速问题,猜测是有可能需要回源。当然这也算正常。

经过测试,将cn后缀IP绑定到com后缀上是无法使用的...URL会报错,但反之是可以的。也就是说无法简单的使用修改DNS解析的方式来使用国内CDN。存疑,com和cn的ip如果混用,电脑可以下但XboxOne上无法下载,会报404错误的样子。cn的在国际上的解析结果也和com不同。

那么是不是cn后缀根本无法调用呢?不是,在尝试下载之前的PUBG,发现无论切换何种语言和地区,PUBG都会调用cn后缀域名下载。并且速度正常。这具体是什么原因还不了解,我认为是之前有国内CDN的会允许直接调用。或者是官方特定的一个列表。
 

第二天早晨测试重新下怪奇物语3和生化危机4,也都会直接调用cn去下载。所以目前的猜测就是,如果国内CDN不存在,XboxOne会从com去下载。

有没有办法将url改写,直接从cn后缀cdn下载?原理上可能,但是比较麻烦,单纯改DNS和Hosts均不能,要反代才可以。也就是发送一个302进行跳转。不过已经有网友进行了公开的实现,可以将dns转发或者解析过去。下面会说。

现在有没有办法高速下载Xbox One数字版游戏?需要使用科学上网,要不然比较难。因为没办法Xbox One直接调用国内CDN下载。还可以用回传的方式,也就是截取出地址。电脑下载,然后传给Xbox One的老办法。在或者就是上面的临时方法。

具体cn后缀是根据什么原理调用。是通过主机版本?IP地址?账户区域?还未判明。之后准备用初版美版机测试一下。

149.129.113.81这个DNS为什么可以解决问题?


https://ovear.info/post/393


这个DNS实际上是实现了我上面说的反代,用的openresty/1.13.6.2,非常好,当xboxone从com后缀请求时,会302跳转到cn后缀url进行下载。


局限就是速度依旧受限于中国CDN本身的速度,冷门资源依旧是速度很慢。这样可能还不如从海外服务器下载。海外速度好的不是很建议使用。

附上Xbox One CDN的高速地址 Hosts格式


cn后缀

23.2.16.32 assets1.xboxlive.cn
219.76.10.33 assets1.xboxlive.cn
219.76.10.184  assets1.xboxlive.cn
2600:140e:6::1702:104b assets1.xboxlive.cn
2600:140b:4::173e:e2c0 assets1.xboxlive.cn
23.2.16.32 assets2.xboxlive.cn
219.76.10.33 assets2.xboxlive.cn
219.76.10.184  assets2.xboxlive.cn
2600:140e:6::1702:104b assets2.xboxlive.cn
2600:140b:4::173e:e2c0 assets2.xboxlive.cn
23.2.16.32 dlassets.xboxlive.cn
219.76.10.33 dlassets.xboxlive.cn
219.76.10.184  dlassets.xboxlive.cn
2600:140e:6::1702:104b dlassets.xboxlive.cn
2600:140b:4::173e:e2c0 dlassets.xboxlive.cn



com后缀

 

  1. 13.107.4.54 assets1.xboxlive.com
  2. 117.18.232.240 assets1.xboxlive.com
  3. 192.229.232.240 assets1.xboxlive.com
  4. 2a01:111:2003::54 assets1.xboxlive.com
  5. 13.107.4.54 assets2.xboxlive.com
  6. 117.18.232.240 assets2.xboxlive.com
  7. 192.229.232.240 assets2.xboxlive.com
  8. 2001:1900:2380:d00::1fe assets2.xboxlive.com
  9. 2001:1900:2385:e00::1fe assets2.xboxlive.com
  10. 13.107.4.54 dlassets.xboxlive.com
  11. 117.18.232.200 dlassets.xboxlive.com
  12. 192.229.232.240 dlassets.xboxlive.com
  13. 2001:1900:2380:1f03::1fe dlassets.xboxlive.com
  14. 2001:1900:2304:8e10:2::1fe dlassets.xboxlive.com
复制代码

 

懂的人应该会用吧?IPv4和IPv6都有,都是挑选出的Anycast IPv4和香港等地区的IPv6地址。直连应该也有可观的速度。


国内cdn目前到底什么情况?


目前国内cdn用的金山云和腾讯云的样子,基本是等于没有。可能只是为了国行机的存在服务。

Xbox One的下载行为?


Xbox One会通过多线程下载,当获取到IPv6地址时,XboxOne会优先使用IPv6地址下载。
不过只是优先级高一点的样子,似乎在IPv6延迟大的情况下,Xbox One也会通过IPv4地址下载。
建议先使用IPv6看看速度如何。可以Ping下看看,上面cn后缀提供的是香港和日本、新加坡的IPv6地址。

写的比较乱,有什么不懂可以讨论。


结论


1.小白修改Xbox One DNS为149.129.113.81,要求高一些的话建议用DNSMasq转发特定域名。
2.如果有IPv6,可以试试通过IPv6下载速度如何。需要会修改DNS解析结果。
3.有加速方案的话,如果对国内CDN速度不满意,可以将cn解析到国际IP上然后加速。

经过多次尝试,我目前是用的方案3。


方案1可以使用国内CDN,速度比较快。但是似乎会引起一些问题,可能是国内CDN数据和海外有差异?而且我这里实测速度也不甚快。比IPv6直连也就快一点的样子。最大的问题是冷门资源或者某些情况下速度会很慢。
方案2的话,IPv6是直连。建议需要使用IPv6流量的用下,或者可以测试下走IPv6速度如何。我这测试和国内CDN综合来说差不多吧。好处是比较稳定,不会出现国内CDN没速度的情况。
方案3的话,将com和cn都解析到IPv4地址

23.2.16.32
219.76.10.33
219.76.10.184  


这三个香港CDN,然后再用海外通道对其加速。综合来说是稳定性和速度比较好的。

帖子投票

名称 是否有价值
kideny
BigLoser