Domain的架構大致上是以一個節點以下的sub-domain來說,每個sub-domain都是一個domain。之前有提到一個domain底下有許多sub-domain,又提到DNS是分散式的架構,有一部份是指,管理該domain的server可以把sub-domain授權(delegate)給其他管理者去管理。一旦授權之後,所有該sub-domain的主機名稱跟該sub-domain底下的權限都給該機器管理。
理論上是以domain為單位來看DNS管理,可是實際上卻是用zone的方式,所謂的zone只一台機器的資料庫管理的範圍,他有可能是兩三個domain組成的
在domain的架構完成之後,接著是如何解析,也就是完成Name=>IP這樣的動作,基本上會有幾個角色resolver也就是發出Name=>IP的程式或者host,Name Server也就是管理某個domain的機器,整個查詢會是反覆(iterative)跟遞迴(recursive)的查詢,以底下的圖來說明
一開始resolver會跟預設的DNS Server提出要求,預設的DNS Server會先察看自己的domain跟要求的是否一致,如果屬於自己的管理範圍,則直接回傳IP,如果不一致,則由root開始尋找,root會回應一個管理該sub-domain的name server去負責這件事情,接著預設的DNS Server會改查詢該name server,一直反覆這個動作,直到找到該負責name server記錄者有這筆資料為止,其實上面的過程是一個在尋訪DNS樹狀架構的過程,可以另外以這張圖表示
圖片來自Oreilly的書籍DNS & Bind
沒有留言:
張貼留言