產生原因
32比特的IP地址難于記憶;當網絡規模比較小時,每臺主機只需查找一個列出了主機與IP地址的對應關系的文件,當網絡規模很大時,產生了域名系統DNS(Domain Name System)
域名的結構
域名系統是一個多層次的命名系統。域名的結構由若干個分量組成,各分量之間用點隔開:【... . 三級域名 . 二級域名 . 頂級域名】。各分量分別代表不同級別的域名
域名空間
域名服務器
區域劃分:
域名空間被劃分為許多無重疊的區域,每個設有域名服務器管理本區域域名
每個區域有一個主域名服務器和若干個備份域名服務器,比如:edu.cn xjtu.edu.cn
cs.xjtu.edu.cn是三個不同的區域,分別有各自的域名服務器
DNS解析
域名系統是一個典型的客戶/服務器系統。當本地域名服務器不能解析時,就向上一層域名服務器查詢。根域名服務器:如果域名映射位置,則向授權域名服務器查詢→取得映射→將映射返回本地域名服務器
DNS解析過程舉例
主機surf.eurecom.fr要查詢gaia.cs.umass.edu的IP地址
1.詢問本地DNS服務器,dns.eurecom.fr
2.dns.eurecom.fr如果查詢不到則訪問根域名服務器
3.根域名服務器訪問授權的服務器dns.umass.edu
根域名服務器:
可能不知道授權域名服務器的地址。可能知道中間域名服務器:由它負責連續授權域名服務
器
DNS
? 遞歸查詢:對根域名服務器造成工作負擔
? 迭代查詢:被查詢的服務器直接把可查詢的服務器地址返回給客戶端,不需要根域名服務器在中間進行轉發。這樣就可以減小根域名服務器的負擔
DNS緩存和更新記錄:
一旦(任何)域名服務器得知了某種映射,就將其緩存,在一定的時間間隔后緩存的條目將會過期(自動消除)。更新/通知機制由IETF負責設計
DNS資源記錄:
DNS:存儲資源記錄(RR)的分布式數據庫
? RR格式:(name, value, type, ttl)
? Type=A : name=主機名 value=IP地址
? Type=NS :name=域(e.g.foo.com) value=該域授權域名服務器的IP地址
? Type=CNAME:name=別名 www.ibm.com is really servereast.backup2.ibm.cn value=真名
? Type=MX:value=與name相關的郵件服務器域名
DNS協議,報文
DNS協議:查詢和應答報文,二者格式相同
報文首部
? Identification:16bit 用于查詢,應答報文使用同樣的
? Flags:查詢或應答,希望遞歸,可以遞歸,授權應答