1. DNS功能簡介
站在用戶的角度思考問題,與客戶深入溝通,找到襄城網(wǎng)站設(shè)計(jì)與襄城網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、國際域名空間、網(wǎng)站空間、企業(yè)郵箱。業(yè)務(wù)覆蓋襄城地區(qū)。
DNS(Domain Name System,域名系統(tǒng)),因特網(wǎng)上作為域名和IP地址相互映射的一個(gè)分布式數(shù)據(jù)庫,用戶能夠通過域名訪問互聯(lián)網(wǎng),而不用去記住IP地址。通過域名得到其對應(yīng)的IP地址的過程叫做域名解析。每個(gè)域名都對應(yīng)一個(gè)IP地址,但一個(gè)IP地址可以對應(yīng)多個(gè)域名。
2. SylixOS中DNS靜態(tài)映射
主機(jī)名到IP地址的映射有兩種方式:
1) 靜態(tài)映射,每臺設(shè)備上都配置主機(jī)到IP地址的映射,各設(shè)備獨(dú)立維護(hù)自己的映射表,而且只供本設(shè)備使用;
2) 動態(tài)映射,建立一套域名解析系統(tǒng)(DNS),只在專門的DNS服務(wù)器上配置域名到IP地址的映射。網(wǎng)絡(luò)上需要使用域名的設(shè)備,首先需要到DNS服務(wù)器查詢域名所對應(yīng)的IP地址。SylixOS中提供了兩種主機(jī)名到IP地址的靜態(tài)映射的實(shí)現(xiàn)方式。一種是在“/etc/hosts”文件中記錄靜態(tài)地址映射表;一種是以tshell命令的形式,在系統(tǒng)維護(hù)的哈希表中存放靜態(tài)地址映射信息。
2.1 /etc/hosts文件
網(wǎng)絡(luò)組件初始化函數(shù)halNetInit中,會調(diào)用到函數(shù)API_NetInit初始化網(wǎng)絡(luò)系統(tǒng)。在向操作系統(tǒng)內(nèi)核注冊網(wǎng)絡(luò)組件的過程中,系統(tǒng)會調(diào)用函數(shù)__netCfgFileInit初始化“/etc/hosts”文件?!?etc/hosts”文件中默認(rèn)保存的信息為“127.0.0.1 localhost”,如圖 2.1所示。
圖2.6 本地主機(jī)名sylixos
2. 查詢/etc/hosts文件保存的地址映射信息如果主機(jī)名不是“sylixos”,函數(shù)__inetHostTableGetItem會打開“/etc/hosts”文件,查詢本地主機(jī)域名表,如果查詢到相同主機(jī)名,輸出參數(shù)傳出對應(yīng)的IP地址,并且函數(shù)返回成功。
3. 查詢hosttable命令添加的哈希表中的地址映射信息如果“/etc/hosts”文件中沒有查詢到相應(yīng)的主機(jī)名,函數(shù)__inetHostTableGetItem隨后會遍歷hosttable命令添加的哈希表中的地址映射信息,如果查詢到相同主機(jī)名,輸出參數(shù)傳出對應(yīng)的IP地址,并且函數(shù)返回成功;如果沒有查詢到相應(yīng)主機(jī)域名信息,則函數(shù)__inetHostTableGetItem返回失敗。