換一種視角看DNS(采坑篇)
換一種視角看DNS
我們盡量用精煉的語言,盡可能的規劃DNS的全貌(當然筆者水平有限,如有錯誤請不吝賜教)。
通常啊我們在個人PC中能看到DNS的配置身影就是在上網的時候,通常如果你不配置DNS可能找不到IP地址等等,那這是我們就回去配置一個DNS服務器,我們可以吧DNS服務器理解為地址簿,沒錯漫遊在全網的地址簿;那你想過沒有它背後的作用呢?我們繼續看。
1、什麽是DNS服務?
DNS服務全程Domain Name System,中文譯名為域名系統。就是互聯網中地址簿,通常我們PC端都是自動獲取,有過管理服務器的效果版一般手工配置的多。
DNS是一個超大的地址簿,但是呢統一管理太麻煩怎麽辦呢?分層管理,非常類似郡縣制
www.baidu.com.
上面這個字符串就是域名,也就是我們熟知百度的域名,眼尖的小夥伴可能發現最後怎麽多了一點,沒錯這個點就是最高層的管理者也就是根,當然我們默認情況下都是隱藏的,我們拆分來看下:
- com:這個頂級域名,是有一個家域名發行商管理,當然類似的還有io, cn, hk 等等;
- baidu:在頂級域名下面,我們稱之為一級域名,這個域名都是用戶或者公司進行購買,需要付出費用;
- www:接著就是www,我們稱之為二級域名,這個完全是由一級域名所有者進行管理的。
看到這裏有的小夥伴有些懵,那麽簡單來說下規則:
.(根) --> com(頂級域名) --> baidu(一級域名) --> www(二級域名)
一般情況下就是這樣的一個分層構建了我們看到的DNS服務。
2、DNS應用場景
場景:就是地址簿....
場景一:域名管理
這也是最常見的情況,在購買一級域名後你可以進行配置你的域名記錄,域名指向你的實際地址我們稱之為A記錄,相關的常用記錄還有:
- A記錄,一般作用於域名-->IP的直接解析也是企業最常用的;
- CNAME,就是別名解析,一般多用於CDN的場景下,相當於域名和主機之間增加了一個橋梁;
- MX,郵件解析記錄,這個筆者接觸也不多;
- NS,指定你的DNS服務器地址,剛才我們說過了域名是自上而下的管理,你需要一個老大哥來罩著你,這個DNS就是你大哥地址,默認情況下購買域名後默認給你配置;
- TXT,這個記錄一般多用於域名驗證,判斷域名是否有管理權限。
好用的DNS,如萬網或者DNSPOD 會有 A記錄負載均衡以及智能DNS的功能。
- A記錄負載均衡,當你的入口服務器一臺機器扛不住的情況下,這個是非常贊的功能;
- 智能DNS,可以根據用戶來源的DNS位置進行解析不同的記錄,這樣就可以實現用戶分流了(從源頭控制很舒心,多用於跨境服務以及CDN)。
場景二:企業內部DNS
上周還在吐槽,公司內部測試環境服務器通過IP+端口來劃分,記憶混亂整個人都難受,平白無故都發也稀少了,這樣我們就可以通過構建一臺內部DNS解決這個問題了
還有一個非常重要的事情就是,集群內部環境,當我們使用外部服務器的DNS,如果他們DNS抽風或者網絡的種種原因我們最好在自己機房做一個DNS服務,來保證內部服務的通暢。
筆者認識的小夥伴就因為某DNS服務商除了問題,整個內部服務有一多半出現非常卡頓的問題。
3、DNS踩過的坑
Q: 我配置的DNS為啥沒有效果呢?
A: DNS默認生效是有周期行知的默認都在10分鐘以內,如果更改的級別越高比如你修改了NS服務則需要24小時甚至更長。(所以筆者建議,在切割DNS時特別註意這一點,以免造成服務不可訪問)
Q: 為什麽我明明配置的DNS解析記錄,然而還是搜尋不到呢?
A: 鑒於國內行情DNS和運營商的的緩存刷新還不一致,你可以指定你服務器配置的DNS Server測試一下
Q: 智能DNS 為什麽解析的服務器不是對應地區的呢?
A: 這個智能DNS能夠獲取到的是用戶PC上配置的DNS地址,所以你懂的(所以測試的小夥伴需要註意了)
Q: DNS 負載均衡怎麽不是1V1?
A: DNS服務商也想啊,但是實力不允許啊,能夠做到相對輪訓的,可靠地不用擔心(只是負載均衡,沒有健康檢查,Bro 特別註意)
Q: 我配置了CDN 但是經常出現404,尤其是配置HTTPS的情況下?
A: 這個呢是CDN服務器宕機或者智能調度到其他Server,但是運營商的緩存沒有刷新;建議聯系你的CDN的銷售經理幫助你換到更加穩定服務器哦。
其實最大的坑,莫過於運營商和DNS服務商的緩存刷新了
4、DNS兩種解析機制
鑒於網上有比較好的文章了,我就不水了,傳送門:https://blog.51cto.com/13570193/2105393
換一種視角看DNS(采坑篇)