Caddy域名配置与QUIC协议

1:配置域名和服务器

 因为要支持QUIC协议必须要有自己的域名和安全证书,因此需要有自己的域名服务器,首先自己购买一个域名,然后和阿里云公网之前申请的大陆服务器进行域名绑定,绑定后访问网页的时候显示没有备案,因为大陆的服务器和域名绑定的时候需要备案。备案过程很繁琐,大约需要20个工作日。

       为了方便起见,购买了一周的香港服务器,香港服务器是不需要备案的。

       

  首先将域名和香港服务器进行绑定和解析,如下图 所示:

       

  绑定ip与域名后,显示如下:

       

  在本例实例安全组中配置规则:

     因为QUIC协议走UDP端口,因此规则中除了其他配置规则外,还需要配置UDP协议规则:如下图所示

  

2:服务器上部署Caddy

  然后将caddy服务器部署到服务器上,并且让其在QUIC模式下运行。

  

  其中Caddyfile配置如下和上一章讲到的配置一致,此处省略。

  通过命令可以看到UDP端口处于开启状态,如果没有开启QUIC协议,UDP默认是不开启的,只开启TCP:

  

  

  

3:QUIC客户端支持 

  要在浏览器中运行QUIC协议,首先浏览器必须支持QUIC,目前支持QUIC的浏览器有chrome。

  客户端开启QUIC:

  在浏览器中运行chrome://flags,将Experimental QUIC protocal选项由default改为Enabled,重启浏览器。

  

  运行www.flowerfireegoo.com

  

  

  从上图中可以看出访问域名的时候,服务器走的是caddy服务器。并且caddy默认提供安全证书。

  除此之外,还必须让浏览器强制对于指定域名启用quic 协议。

  在命令行输入如下命令:

  chrome.exe --no-proxy-server --enable-quic --quic-host-whitelist="HOST" --origin-to-force-quic-on=HOST:PORT

  

4:wireshark抓包以及碰到的问题 

  下载抓包软件wireshark,重新运行网站,用wireshark进行抓包,并且过滤quic协议。

  

  

  从上图中,可以看到并没有检测到quic请求。

  在google浏览器中运行chrome://net-internals/#quic如下图所示:

  

  

  

  可以看出google 62版本的浏览器支持的quic协议是39,但是caddy目前支持的最高QUIC协议版本是38,因此不兼容。

5:解决方案

  解决方法:下载低版本的google。

  因此我下了59版本的google,发现其支持caddy QUIC版本,通过命令行启动:

   

  然后通过chrome://flags开启QUIC支持,重新开启服务器,在浏览器中运行www.flowerfireegoo.com

  浏览器打开chrome://net-internals/#quic,刷新网站,如下所示:

  

  通过抓包软件,可以看到走的是QUIC协议:

  

 

 

  

 

 

  

 

 

 

 

 

 

 

 

 

 

  

 

 

   

 

转载于:https://www.cnblogs.com/bokeliu/p/7989707.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值