簡單的解釋下什么是CNAME?


什么是CNAME?
在網上看了挺多解釋,小白表示開始是有點懵的,后來自己總結了下前輩們的解釋,如有理解錯誤,煩請各位指出。

先簡單的說下域名解析(懂的不用看啦): 在以前,人們用IP進行互訪,后來發現IP太多不好記憶,便有了域名,比如www.baidu.com,你一看就知道是百度搜索引擎,而不需要管他的服務器IP是多少,但是在最開始通信的時候,電腦路由器不認識域名,只認得IP啊,要怎么去獲得對應的IP呢,這時候有了域名解析,就是去請求網絡上的DNS服務器,讓他們來告訴你這個域名對應的IP是多少,至於請求DNS解析的詳細過程,大家就自行搜索啦,這里不贅述。

然后概括地說:

A記錄是解析域名到IP,CNAME是解析域名到另外一個域名。
在說CNAME之前,要提到一個東西叫 A記錄:

1.A記錄
A記錄,即Address記錄,它並不是一個IP或者一個域名,我們可以把它理解為一種指向關系:

域名 www.xx.com → 111.111.111.111
主機名 DD → 222.222.222.222
也就是當你訪問這些域名或者主機名的時候,DNS服務器上會通過A記錄會幫你解析出相應的IP地址,以達到后續訪問目的。所以A記錄是IP解析,直接將域名或主機名指向某個IP。

2.CNAME
CNAME記錄,也叫別名記錄,相當於給A記錄中的域名起個小名兒,比如www.xx.com的小名兒就叫www.yy.com好了,然后CNAME記錄也和A記錄一樣,是一種指向關系,把小名兒www.yy.com指向了www.xx.com,然后通過A記錄,www.xx.com又指向了對應的IP:

www.yy.com → www.xx.com → 111.111.111.111
這樣一來就能通過它的小名兒直接訪問111.111.111.111了。

這時候有人問:這不多了一步嘛,不嫌麻煩?

假如這個時候我又想給原域名取幾個小名兒,分別叫www.cc.com和www.kk.com那么存在下列指向關系:

www.yy.com → www.xx.com → 111.111.111.111
www.cc.com → www.xx.com → 111.111.111.111
www.kk.com → www.xx.com → 111.111.111.111
突然服務器的IP地址因為一些不可描述的原因要換了,不再是111.111.111.111了,換成了333.333.333.333,這時候你發現,只要把www.xx.com的指向修改一下即可:

域名 www.xx.com → 333.333.333.333
這時候你又發現了,原來他的小名兒不需要做更改,直接就能訪問服務器,因為他們都只指向了www.xx.com,服務器IP改沒改它們不管。

那么假如不用CNAME,直接做A記錄會怎樣?

www.yy.com → 111.111.111.111
www.cc.com → 111.111.111.111
www.xx.com → 111.111.111.111
www.kk.com → 111.111.111.111
那么當111.111.111.111更改的時候,全部相關A記錄指向關系都要做更改,這才叫麻煩…

3.CNAME的應用
我在網上看到比較多的是用在CDN加速上,關於CDN大家可以看看下面這篇文章,通俗易懂:
漫話:如何給女朋友解釋什么是CDN?

舉個CDN的栗子 :假如你是DD公司老板,你公司中的一台IP為1.1.1.1的服務器,注冊了域名為www.dd.com,要對外提供客戶訪問。隨着公司越做越大,訪問量也越來越多,服務器頂不住了,你去找CDN提供商購買CDN加速服務,這個時候他們要求你的域名做個CNAME指向他們給你的一個域名叫www.xdd.com,當用戶訪問www.dd.com的時候,本地DNS會獲得CDN提供的CNAME域名:www.xdd.com,然后再次向DNS調度系統發出請求,通過DNS調度系統的智能分析,把這個www.xdd.com指向一個(離用戶地理位置最近的)CDN提供商的服務器IP,讓用戶就近取到想要的資源(如訪問網站),大大降低了延遲。
————————————————
版權聲明:本文為CSDN博主「沒事重啟一下」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/DD_orz/article/details/100034049


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM