如何提高B站海外CDN连接速度

目前B站使用的 Akamai CDN 主要服务于海外观众,部分特定地区番剧基本上也仅使用这个CDN,最近一段时间,有小朋友反馈存在播放卡顿问题,严重的情况加载速度甚至不足 400KB/s,本文将尝试缓解这一问题,希望能够帮到大家,大家如果有更好的解决方法,欢迎在评论区分享。

如果条件允许,推荐使用代理

就我目前了解的方法来看,如果梯子的质量还行,那么代理是个效果良好且稳定的选择。

如果没有合适的代理,那么往下看。

寻找距离最近的Akamai CDN节点,使用 Hosts 重定向

这里的 “距离最近” 指的是网络意义上的,不一定是地理位置上的最近。

因为是同一家公司的 CDN 且是服务于同一个客户,即我们找的节点很可能属于同一档资费,因此我认为节点间的带宽差距不会太大,带宽的损失主要在线路上,由此推测找到路径较短的节点有望提升视频加载速度。

这里为了方便操作,简单使用 ping 的延迟作为参考,不是很严谨,但效果应该还是有的。

Hosts 的修改网上有很多教程这里就不再赘述,按以下格式追加至 Hosts 即可

延迟较低的IP upos-hz-mirrorakam.akamaized.net

这里重点讲解如何找到 CDN 的节点 IP。

推荐使用全球解析(www.whatsmydns.net),解析这个域名:upos-hz-mirrorakam.akamaized.net ,可以快速取得各地DNS的解析结果,每次解析的结果不一定完全相同,因此可以多解析几次以得到更多的IP可供测试。

取得各地 CDN 节点的 IP 后,接下来就在这群 IP 中找到延迟最低的 IP。

但这个步骤如果全手工的话是相当繁琐的,解析出来的 IP 可达数十个,因此我做了一个脚本,自动解析并测试延迟,地址:https://github.com/miyouzi/akamTester

PS:包含了全球域名解析和染色输出的轮子,有兴趣的话可以参考参考

多次解析以提高获取的 IP 数量

测试完成后显示低延迟节点:

按延迟从低到高排序,回车退出


测试

我所处的网络环境其实是可以直接流畅观看的,因此这里仅做个参考,请以自己所处的实际情况为准。

操作前,约2500KB/s


操作后,约3500KB/s


关于IPv6

在测试的过程中,我惊讶的发现我居住的18线小县城居然已经可以用 IPv6 了(联通4G及宽带)?!

但以我目前的体验来说,IPv6会比IPv4来得慢些,因此目前我依然选择使用 IPv4,另外很遗憾的是,上面的脚本暂不支持测试 IPv6 地址。

扩展阅读:《在IPV6环境下,优先使用IPV4》https://zorz.cc/post/use-ipv4-first.html


以上就是本文想给大家分享的方法,大家如果有意见或建议,欢迎在评论区友好交流。


本文为我原创

本文禁止转载或摘编

--
--
  • 投诉或建议
评论
赛事库 课堂 2021拜年纪