又拍云CDN设置开启HTTP/3后海外加速与国内加速分段解析图文教程
最近搬主题在使用又拍云CDN的时候,发现默认的海外加速功能失效了。也就是说海外用户统一全部访问到国内的CDN上…
最近搬主题在使用又拍云CDN的时候,发现默认的海外加速功能失效了。也就是说海外用户统一全部访问到国内的CDN上获取资源,这样反而起到反效果。但是默认的设置又是开启全球加速的,为什么会无法进行海外加速呢?经过与又拍云客户沟通,又自己研究了一下,终于把问题解决了。接下来搬主题就分享一下又拍云CDN设置开启HTTP/3后海外加速与国内加速分段解析图文教程。
一、又拍云CDN问题分析
首先先说结论。因为开启了HTTP/3这类的功能后,就无法使用国外的CDN节点。
据搬主题与客服沟通,目前HTTP/3处于公测阶段,因此需要解析到http3.aicdn.com ,然后对应的只有国内的CDN节点。因此才出现只能国内加速,无法国外加速的问题。
注意:全球加速功能只限于以前的老账户,现在新开的服务则默认为国内加速,使用海外加速则要钱!要钱!要钱!对于我们这种穷人来说,都是泪啊┭┮﹏┭┮
解决问题比较简单,直接关闭HTTP/3功能,解析到默认的对应的域名即可。那么,问题来了,又想HTTP/3,又想使用国外的CDN节点,即海外加速功能,怎么破?
没问题,跟着搬主题进行相应的操作即可。
二、什么是HTTP/3
这里先给大家介绍一下什么是HTTP/3。
HTTP/3 的基础即谷歌多年探索的基于 UDP 的 QUIC 协议。与 TCP 相比,使用 UDP 可以提供更大的灵活性,并且可以使 QUIC 完全于用户空间中实现——对协议实现的更新不像 TCP 那样需要绑定到操作系统更新。使用 QUIC,可以简单地将 HTTP 级别的流映射到 QUIC 流的顶部,从而继承 HTTP/2 的所有优点,而不会产生队头阻塞。HTTP/3 虽仍处于草案状态,但很多用户已经跃跃欲试。
总结了一下,有如下优势
- HTTP/3 利用 QUIC 加速 HTTP 请求,QUIC 提供比 TCP 和 TLS 更高的加密和性能
- QUIC 是一种默认加密的新传输协议,旨在加快 HTTP 传输速度以及使其更加安全
- HTTP/3 基于 UDP,如果数据包丢失,只会中断一个流,而不会中断所有流,提高了同时获取多个对象的性能
- 支持 0-RTT,消除服务器的 TLS 确认,使后续连接的启动速度更快
HTTP/3 和 HTTP/2 性能测试对比如下
如上图所示,HTTP/3 是基于 QUIC 的协议。而 QUIC 协议是 Google 提出的一套开源协议,它基于 UDP 来实现,直接竞争对手是 TCP 协议。
HTTP/3 的优点及不足
今天我们在这里简单说一下 HTTP/3 相比较 HTTP/2 进步的那些点。
回归正题,相比 HTTP/2 而言 HTTP/3 有以下几点提升:
- HTTP/3 使用 stream 进一步扩展了 HTTP/2 的多路复用。在 HTTP/3 模式下,一般传输多少个文件就会产生对应数量的 stream。当这些文件中的其中一个发生丢包时,你只需要重传丢包文件的对应 stream 即可。
- HTTP/3 不再是基于 TCP 建立的,而是通过 UDP 建立,在用户空间保证传输的可靠性,相比 TCP,UDP 之上的 QUIC 协议提高了连接建立的速度,降低了延迟。
- 通过引入 Connection ID,使得 HTTP/3 支持连接迁移以及 NAT 的重绑定。
- HTTP/3 含有一个包括验证、加密、数据及负载的 built-in 的 TLS 安全机制。
- 拥塞控制。TCP 是在内核区实现的,而 HTTP/3 将拥塞控制移出了内核,通过用户空间来实现。这样做的好处就是不再需要等待内核更新可以实现很方便的进行快速迭代。
- 头部压缩。HTTP/2 使用的 HPACK,HTTP/3 更换成了兼容 HPACK 的 QPACK 压缩方案。QPACK 优化了对乱序发送的支持,也优化了压缩率。
没有哪项技术是完美无缺的,更不用说是还在发展中的 HTTP/3 了。
HTTP/3 建立传输用的是 UDP 协议,而在 HTTP/3 出现前 UDP 的通常出现地点是类似《计算机网络》这样的书面理论,即便是实际应用也大多和网络攻击一起出现,这就导致 UDP 的名声不太好。名声差了自然在硬件上的支持也捉襟见肘,大部分互联网服务也就理所当然的对 UDP 的访问进行限制。
简单来说,HTTP/3是新技术,直接改进了HTTP/2的不足,更快,延迟更低,对网站的直接带来的效果就是加载更快。
三、设置CDN及域名解析
介绍完HTTP/3后,再介绍一下实际操作。这里我们主要分为2个部分进行操作,分别是CDN设置及域名解析设置。
1、又拍云CDN设置
首先我们先登陆又拍云CDN后台进行设置
地址:https://www.upyun.com/
在HTTPS设置选项里面,开启HTTP/3
然后到性能优化选项里面,选择全球加速。
2、域名解析操作
接下来我们要进行域名分段解析操作。为什么要分段解析呢?
因为又拍云CDN给的是2个可以解析的CNAME别名地址。使用原有支持海外加速的CNAME地址一般为 xxx.b0.aicdn.com
,而使用HTTP/3的CNAME地址一般为 http3.aicdn.com
。这里只要我们就在域名解析里将海外用户访问解析到 xxx.b0.aicdn.com
,国内用户访问解析到 http3.aicdn.com
即可。如果还有特殊需求的可以再进行更为细化的分段解析,比如某个省的解析到国内节点,港澳台的默认为海外区域,如果使用海外加速则会比较慢,这里也全部解析到国内节点等。
以DNSPod为例,设置www,默认境外解析到国外的CDN节点进行全球加速,境内解析到国内的CDN节点进行HTTP/3加速。
当然,如果有更加细化的分段解析需求,比如日本、韩国、香港、澳门、台湾等地,离国内比较近,而默认的又拍云CDN的海外加速节点比较少,只能舍近求远解析到美国或者欧洲去,那就不好了。这里我们可以将亚太地区也统一解析到国内的CDN节点进行加速。如果要这么细的分段解析要求,那么原来的DNSPod的免费版的功能就不够了,这里我们推荐华为云免费DNS解析。
地址:https://www.huaweicloud.com/
登陆华为云的后台,找到DNS,选择公网解析。
然后右上角创建公网域名
然后到原域名注册商哪里修改为华为云默认的DNS即可。这里给出华为官方给出的DNS:ns1.huaweicloud-dns.org,ns1.huaweicloud-dns.net,ns1.huaweicloud-dns.cn,ns1.huaweicloud-dns.com 修改好后才能在华为云解析才会生效。
设置好后,在华为云的对应域名解析可以如下配置
先添加记录集,添加www对应的CNAME记录,默认要添加一个全网默认解析。接下来再多设置二条解析,也就是设置国内及亚太地区统一解析到国内的HTTP/3地址上,其他的一律用默认的全网解析。
1、添加国内HTTP/3访问解析
2、添加亚太地区也默认解析到国内
四、检测设置后的效果
以上设置完成后,一般要等待72小时内DNS生效。这里我们可以用相应的在线ping的功能去检测是否解析完成。
比如使用chinaz,国内的访问默认解析到国内CDN节点
而亚太地区则也解析到国内,其他欧美地区自动解析到国外
后话:又拍云CDN确实不错,支持HTTP/3各类新功能,配合华为云这类的免费DNS解析简直是免费白票者的福音。但是搬主题也发现了,现在又拍云CDN的免费新增的服务也没有海外加速了,不懂什么时候老用户会不会也不支持海外加速服务。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
还没有任何评论,赶紧来占个楼吧!