DNS的internet類中有非常多的資源記錄類型。常用的是SOA記錄零蓉、NS記錄、A記錄(IPV6則為AAAA記錄)穷缤、PTR記錄壁公、CNAME記錄、MX記錄等绅项。
SOA記錄
SOA記錄:start of authority紊册,起始授權(quán)機構(gòu)。該記錄存儲了一系列數(shù)據(jù),若不明白SOA記錄囊陡,請結(jié)合下面的NS記錄芳绩,SOA更多的信息見"子域"部分的內(nèi)容。
格式如下:
alibaba.com. IN SOA dnsserver.alibaba.com. mail.alibaba.com. (
1
3h
1h
1w
1h )
第四列指定了"dnsserver.alibaba.com."為該域的master DNS服務(wù)器撞反。
第五列是該域的管理員郵箱地址妥色,但注意不能使用@格式的郵箱,而是要將@符號替換為點"."遏片,正如上面的例子"mail.alibaba.com."嘹害,其實際表示的是"mail@alibaba.com"。
第六列使用括號將幾個值包圍起來吮便。第一個值是區(qū)域數(shù)據(jù)文件的序列編號serial笔呀,每次修改此區(qū)域數(shù)據(jù)文件都需要修改該編號值以便讓slave dns服務(wù)器同步該區(qū)域數(shù)據(jù)文件。第二個值是刷新refresh時間間隔髓需,表示slave dns服務(wù)器找master dns服務(wù)器更新區(qū)域數(shù)據(jù)文件的時間間隔许师。第三個值是重試retry時間間隔,表示slave dns服務(wù)器找master dns服務(wù)器更新區(qū)域數(shù)據(jù)文件時僚匆,如果聯(lián)系不上master微渠,則等待多久再重試聯(lián)系,該值一般比refresh時間短咧擂,否則該值表示的重試就失去了意義逞盆。第四個值是過期expire時間值,表示slave dns服務(wù)器上的區(qū)域數(shù)據(jù)文件多久過期松申。第五個值是negative ttl纳击,表示客戶端找dns服務(wù)器解析時,否定答案的緩存時間長度攻臀。這幾個值可以分行寫焕数,也可以直接寫在同一行中使用空格分開,所以刨啸,上面的SOA記錄可以寫成如下格式:
alibaba.com. IN SOA dnsserver.alibaba.com. mail.alibaba.com. ( 1 3h 1h 1w 1h )
前三列是聲明性的語句堡赔,表示"alibaba.com."這個域內(nèi)的起始授權(quán)機構(gòu)為第四列的值"dnsserver.alibaba.com."所表示的主機。第五列和第六列是SOA的附加屬性數(shù)據(jù)设联。
每個區(qū)域數(shù)據(jù)文件中都有且僅能有一個SOA記錄善已,且一般都定義為區(qū)域數(shù)據(jù)文件中的資源記錄。
注意离例,資源記錄的作用之一是存儲域相關(guān)的對應(yīng)數(shù)據(jù)换团,所以第4、5宫蛆、6列表示的是該SOA記錄所存儲的相關(guān)值艘包。
NS記錄
NS記錄:name server,存儲的是該域內(nèi)的dns服務(wù)器相關(guān)信息。即NS記錄標識了哪臺服務(wù)器是DNS服務(wù)器想虎。格式如下:
alibaba.com. IN NS dnsserver.alibaba.com.
前三列仍然是聲明性語句卦尊,表示"alibaba.com."域內(nèi)的DNS服務(wù)器(name server)為第四列值所表示的"dnsserver.alibaba.com."主機。
如果一個域內(nèi)有多個dns服務(wù)器舌厨,則必然有主次之分岂却,即master和slave之分。但在NS記錄上并不能體現(xiàn)主次關(guān)系裙椭。例如:
alibaba.com. IN NS dnsserver1.alibaba.com.
alibaba.com. IN NS dnsserver2.alibaba.com.
表示主機"dnsserver1.alibaba.com."和主機"dnsserver2.alibaba.com."都是域"alibaba.com."內(nèi)的dns服務(wù)器躏哩,但沒有區(qū)分出主次dns服務(wù)器。
不少朋友搞不懂SOA記錄揉燃,也很容易混淆SOA和NS記錄扫尺。其實,僅就它們的主要作用而言你雌,NS記錄僅僅只是聲明該域內(nèi)哪臺主機是dns服務(wù)器器联,用來提供名稱解析服務(wù)二汛,NS記錄不會區(qū)分哪臺dns服務(wù)器是master哪臺dns服務(wù)器是slave婿崭。而SOA記錄則用于指定哪個NS記錄對應(yīng)的主機是master dns服務(wù)器,也就是從多個dns服務(wù)器中挑選一臺任命其為該域內(nèi)的master dns服務(wù)器肴颊,其他的都是slave氓栈,都需要從master上獲取域相關(guān)數(shù)據(jù)。由此婿着,SOA的名稱"起始授權(quán)機構(gòu)"所表示的意思也就容易理解了授瘦。
A記錄
A記錄:address,存儲的是域內(nèi)主機名所對應(yīng)的ip地址竟宋。格式如下:
dnsserver.alibaba.com. IN A 172.16.10.15
客戶端之所以能夠解析到主機名對應(yīng)的ip地址提完,就是因為dns服務(wù)器中的有A記錄存儲了主機名和ip的對應(yīng)關(guān)系。
AAAA記錄存儲的是主機名和ipv6地址的對應(yīng)關(guān)系丘侠。
PTR記錄
PTR記錄:pointer徒欣,和A記錄相反,存儲的是ip地址對應(yīng)的主機名蜗字,該記錄只存在于反向解析的區(qū)域數(shù)據(jù)文件中(并非一定)打肝。格式如下:
16.10.16.172.in-addr.arpa. IN PTR www.alibaba.com.
表示解析172.16.10.16地址時得到主機名"www.alibaba.com."的結(jié)果。
CNAME記錄
CNAME記錄:canonical name挪捕,表示規(guī)范名的意思粗梭,其所代表的記錄常稱為別名記錄。之所以如此稱呼级零,就是因為為規(guī)范名起了一個別名断医。什么是規(guī)范名?可以簡單認為是fqdn。格式如下:
www1.alibaba.com. IN CNAME www.alibaba.com.
最后一列就是規(guī)范名孩锡,而第一列是規(guī)范名即最后一列的別名酷宵。當查詢"www1.alibaba.com.",dns服務(wù)器會找到它的規(guī)范名"www.alibaba.com."躬窜,然后再查詢規(guī)范名的A記錄浇垦,也就獲得了對應(yīng)的IP地址并返回給客戶端。
CNAME記錄非常重要荣挨,很多時候使用CNAME可以解決很復雜的問題男韧。而且目前常用的CDN技術(shù)有一個步驟就是在dns服務(wù)器上設(shè)置CNAME記錄,將客戶端對資源的請求引導到與它同網(wǎng)絡(luò)環(huán)境(電信默垄、網(wǎng)通)以及地理位置近的緩存服務(wù)器上此虑。
MX記錄
MX記錄:mail exchanger,郵件交換記錄口锭。負責轉(zhuǎn)發(fā)或處理該域名內(nèi)的郵件朦前。和郵件服務(wù)器有關(guān),且話題較大鹃操,所以不多做敘述韭寸,如有深入的必要,請查看《dns & bind》中"Chapter 5. DNS and Electronic Mail"荆隘。
關(guān)于資源記錄恩伺,最需要明確的概念就是它不僅僅用來區(qū)分和標識區(qū)域數(shù)據(jù)的類型,還用來存儲對應(yīng)的域數(shù)據(jù)椰拒。