架構師必須搞懂DNS,一篇文章就夠了。

Java技術棧發表於2017-08-13

概念

DNS,全稱Domain Name System,即域名系統,搞清楚,它不是DNF地下城與勇士。

DNS是怎麼來的,我們知道要訪問一個伺服器的資源可以通過IP的形式訪問,但IP地址比較難記,也不方便讀,所以有了DNS的存在,DNS通過解析域名並與實際的遠端伺服器主機建立連線。

即我們訪問www.baidu.com的時候,通過DNS伺服器解析出實際的IP地址去連線並返回給客戶端。

解析過程

windows和linux可以通過命令nslookup查詢域名解析結果,如下圖所示。

linux中還可以通過dig命令檢視更詳細的解析過程,如圖所示。

本地對映

我們可以在作業系統中修改host自定義配置域名與IP的關係,即我們可以讓任何一個域名訪問任何一個IP地址。

windows: c:windowsSystem32driversetchosts

linux: /etc/hosts

比如我們經常把localhost對映到127.0.0.1,可以把baidu.com對映到xx.xx.xx.xx。如果我們本地的對映關係被不得而知的修改了會導致嚴重的安全問題,如果把taobao.com對映到黑客或者攻擊者的IP,那我們的資訊及財產安全就得不到保障。早期的windows中的hosts檔案可以隨意修改,win7之後這個檔案設定為只讀的,避免惡意修改。當然我們電腦裝有防毒防護類軟體的話,也可以防範這個檔案被惡意修改。

域名解析方式

最後講下幾種域名的解析方式,一般不是域名管理者不會用到。

A記錄

IP地址解析,就是域名與IP地址繫結,一個域名只能繫結一個IP地址,但一個IP地址可以被多個域名繫結。

AAAA記錄

即IPV6地址解析。

CNAME記錄

別名解析,比如我們可以將wx.qq.com解析到www.weixin.com,weixin.qq.com也可以解析到www.weixin.com,www.weixin.com就是A記錄繫結的實際的IP地址。一般大型網站都使用這種解析方式,這樣做的好處就是不管www.weixin.com的ip地址怎麼更換解析,都不會影響wx.qq.com和weixin.qq.com的解析。

MX記錄

Mail Exchange解析,郵件伺服器地址,即xx@baidu.com的路由會發到MX記錄的繫結記錄伺服器。

NS記錄

指定解析DNS伺服器地址,即這個域名由哪個IP地址的DNS伺服器解析。

TXT記錄

為域名設定說明,用命令解析的時候就能看到這個域名的說明。

在設定域名解析的時候還有一個TTL值,即DNS伺服器快取域名解析結果的時間,超過這個時間才會重新解析,否則返回已經解析的快取的解析結果,這個一般設定為1小時,即3600秒。

我們來看看阿里雲域名新增解析的截圖


相關文章