Caddy域名配置與QUIC協議

1:配置域名和服務器chrome

 由於要支持QUIC協議必需要有本身的域名和安全證書,所以須要有本身的域名服務器,首先本身購買一個域名,而後和阿里雲公網以前申請的大陸服務器進行域名綁定,綁定後訪問網頁的時候顯示沒有備案,由於大陸的服務器和域名綁定的時候須要備案。備案過程很繁瑣,大約須要20個工做日。瀏覽器

       爲了方便起見,購買了一週的香港服務器,香港服務器是不須要備案的。安全

       

  首先將域名和香港服務器進行綁定和解析,以下圖 所示:服務器

       

  綁定ip與域名後,顯示以下:網站

       

  在本例實例安全組中配置規則:ui

     由於QUIC協議走UDP端口,所以規則中除了其餘配置規則外,還須要配置UDP協議規則:以下圖所示google

  

2:服務器上部署Caddy阿里雲

  而後將caddy服務器部署到服務器上,而且讓其在QUIC模式下運行。spa

  

  其中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協議:

  

相關文章
相關標籤/搜索