首頁>技術>

在用TCP/IP協議族架設的網路中,每一個節點都有一個唯一的IP地址,用來作為它們唯一的標誌。然而,如果讓使用者來記住這些毫無記憶規律的IP地址將是不可想象的。人們就需要一種有記憶規律的字串來作為唯一標記節點的名字。然而,雖然符號名對於人來說是極為方便的,但是在計算機上實現卻不是那麼方便的。為了解決這個需求,應運而生了一個域名服務系統DNS,它執行在TCP協議之上,負責將字元名——域名轉換成實際相對應的IP地址。這個過程就是域名解析,負責域名解析的機器就叫域名伺服器。8.1 域名解析的方法8.1.1 最早的域名解析方法最簡單的主機名解析方法是,在一個檔案中記錄所有主機名及與其對應的IP地址,並保證該檔案中主機名的唯一性,透過檢索檔案中的便可以完成主機名的解析。採用這種最簡單的解決方法有其歷史原因:在整個70年代,APRANET只是一個小規模的,由類似的數百臺主機組成的團體。於是為了解決主機名解析的問題,將連線到ARPANET上每臺主機的名字與對應的地址都儲存在HOSTS.TXT檔案中。這樣每增加一臺機器,就必須修改HOSTS.TXT檔案一次。隨著網路的不斷髮展,網路中的主機數量爆炸性地增加,這種域名解析的方法已經無法適應新的解析需要。8.1.2 分散式的域名伺服器這種方法,我們已經在基礎篇的第六章中有了詳細的敘述,在此就不再重複了。在這種分散式的域名伺服器體系中,每一臺域名伺服器(DNS)負責解析屬於自己的這一部分主機的域名。一般說來,如果你所處在公司或組織所擁有的主機並不多,一般是將域名的解析工作交給自己的ISP的域名伺服器來完成。而如果你所在組織擁有的主機比較多,我們就可以組建自己的域名伺服器負責解析你所在組織的主機。8.2 域名伺服器建立例項8.2.1 例項環境假設我們需要建立一臺應用於以下情況的一個企業主域名伺服器。1. 擁有一個C類網段地址,為202.101.55.02. 企業域名註冊為company.com。3. 域名伺服器的IP定為202.101.55.55,主機名為dns.company.com。它同時充當Proxy.4. 企業網透過路由器與Internet連線。5. 要解析的伺服器有:www.company.com (202.101.55.1) Web伺服器mail.company.com (202.101.55.2) E-Mail伺服器8.2.2 安裝前的準備工作首先要保證在作為系中統有/etc/resolv.conf和/etc/hosts.conf這兩個檔案。/etc/resolv.conf檔案中內容如下所示:domain compay.comnameserver 202.101.55.55其中第一行指出對於任何希望連到它上面的主機應該搜尋的域。而第二行指出了在哪個地址可以找到需要的域名服務大。/etc/hosts.conf的內容如下所示:order hosts,bindmulti on這裡的設定告訴主機名稱先在/etc/hosts檔案中搜索,然後再查詢域名伺服器。8.2.3 定義檔案/etc/named.boot要使LINUX系統完成域名伺服器的功能,則需要執行一個named的服務程序。這個服務程序可以在安裝LINUX時選中。named啟動時需要讀取一個初始化檔案——/etc/named.boot,這個檔案是named的基本配置檔案。它並不包含任何DNS資料,針對前面的假定環境,我們要在這個檔案中寫入:diretory /etc/namedprimary company.com db.companyprimary 0.0.127.IN-ADDR.ARPA db.127.0.0primary 55.101.202.IN-ADDR.ARPA db.202.101.55cache . db.cache下面我們逐行講解這個檔案中的內容:1) 在第一行中我們指定named從/etc/named目錄下讀取DNS資料檔案。這個目錄可以自行指定並建立,指定後將所有的DNS資料檔案均存放在這個目錄下;2) 第二行指定named作為company.com的主域名伺服器,db.company檔案中包含了所有*.my.com形式的域名的解析資料。3) 第三行則指定named作為127.0.0網段(本地loopback)地址的轉換主伺服器。其中db.127.0.0檔案中包含了所有127.0.0.*形式的地址到域名的轉換資料。4) 第四行指定named作為202.101.55網段地址轉換主伺服器,db.202.101.55檔案中包含了所有以202.101.55.*形式的地址到域名的轉換資料。5) 最後一行指定named從db.cache檔案中獲得Internet的頂層“根”伺服器地址。要說明的是,這些資料檔案的名稱均是自行決定的。8.2.3 建立正向域名轉換資料檔案db.company根據/etc/named.boot檔案中的定義,我們在/etc/named目錄下建立檔案db.company,並且在其中寫入所有在company.com域內的主機節點。根據前面假定的環境,可以寫入:@ IN SOA dns.company.com. root.dns.company.com.(200002011 ;檔案版本號28800 ;重新整理時間(秒)7200 ;重試時間(秒)3600000 ;終止時間(秒)86400) ;TTL生存時間(秒)IN NS dns.company.comwww IN A 202.101.55.1email IN A 202.101.55.2proxy IN CNAME dns下面我們就逐句地理解這裡的配置。1. SOA是主伺服器設定檔案中一定要設定的命令,我們通常將它放在檔案的第一行。1) 最前面的符號“@”代表目前所管轄的域。2) 接著的“IN”代表地址類別,這裡就是固定使用“IN”的。3) 接下來就是命令SOA。4) 接下來填入域名伺服器,記住由於DNS資料檔案的特殊格式規定,在最後一定要加上“·”,在這個例子中,我們填入域名伺服器:“dns.company.com.”5) 接下來是域名伺服器管理員的E-MAIL地址,但要注意的是,E-Mail地址中的分隔符“@”在這裡用“·”來代替,在最後也要加上“。”,在這裡,我們相應寫入:“root.dns.company.com.”6) 接下來在括號內填上各種選項:檔案版本號:當你修改這個檔案的內容時,也要修改這個版本序列號。以此來區分是否有更新。更新時間:指定二級伺服器向主伺服器複製資料的更新時間週期。重試時間:指定二級伺服器在更新出現通訊故障時的重試時間。終止時間:指定二級伺服器重新執行更新動作後仍然無法完成更新任務而終止更新的時間。生存時間:指定當域名伺服器詢問某個域名和其IP地址後,在域名伺服器上放置的時間。注:二級伺服器所設定的域名伺服器是主伺服器的備份主機。2. 在第二行中,我們用NS命令指定這個域的域名伺服器。在這裡我們指出這個域的域名伺服器是“dns.company.com”。3. 接下來的兩行我們使用A命令來指定域名與IP地址的對應關係。我們將Web伺服器的域名www.company.com與其IP地址202.101.55.1對應起來;將E-Mail伺服器的域名mail.company.com與其IP地址202.101.55.2對應起來。4. 最後一行,我們使用了CNAME命令為dns.company.com指定了另一個域名以供使用:proxy.company.com。8.2.3 建立反向域名轉換資料檔案db.127.0.0和db.202.101.55反向域名轉換資料檔案用來提供IP地址查詢相應的DNS主機名,每個網段分別有一個數據檔案。1. 網段127.0.0通常只有一個地址,那就是127.0.0.1 loopback地址。所以我們在db.127.0.0中寫入的內容是:@ IN SOA dns.company.com. root.dns.company.com.(200002011 ;檔案版本號28800 ;重新整理時間(秒)7200 ;重試時間(秒)3600000 ;終止時間(秒)86400) ;TTL生存時間(秒)IN NS dns.company.com1 IN PTR localhost前面兩名相信讀者已經不會陌生,最後一句我們使用PTR命令讓配置檔案中的主機可以使用IP地址來知道所對應的域名。最前面的1代表127.0.0.1,對應的域名就是localhost。2.網段202.101.55就可能會存在更多的記錄,前面假定環境下的設定應是:@ IN SOA dns.company.com. root.dns.company.com.(200002011 ;檔案版本號28800 ;重新整理時間(秒)7200 ;重試時間(秒)3600000 ;終止時間(秒)86400) ;TTL生存時間(秒)IN NS dns.company.com1 IN PTR www2 IN PTR email55 IN PTR dns55 IN PTR proxy8.2.4 獲得db.cache檔案在LINUX系統中通常在提供了一個named.ca的檔案,該檔案中Internet的頂層域名伺服器,但是這個檔案通常會發生變化,所以建議最好從Internet上下載最新的版本。該檔案可以透過匿名FTP從ftp.rs.internic.net/domain下載,檔名是named.boot。將它複製一份為db.cache就可以了。8.3 測試域名伺服器8.3.1 使用nslookup測試nslookup命令的功能是查詢域名伺服器中的資料資料。下例就是使用它來測試域名伺服器是否架設成功,其中斜體字代表要輸入的內容。# nslookupDefault server:dns.company.comAddress:202.101.55.55 ;能出現這些資訊代表成功> wwwserver:dns.company.comAddress:202.101.55.18.3.2 使用ping測試還有一種更簡單的測試方法,那就是用ping命令,如果成功將顯示:# ping www.company.comPing www.company.com(202.101.55.1);56 data bytes64 bytes from 202.101.55.1:icmp_seq=0 ttl=255 time=1.3ms64 bytes from 202.101.55.1:icmp_seq=1 ttl=255 time=0.6ms64 bytes from 202.101.55.1:icmp_seq=2 ttl=255 time=0.6ms……8.4 小技巧安裝好域名伺服器後,在內部使用域名進行遠端連線時,會發現速度非常慢。其實只要/etc/hosts中加上所有內部的機器的域名就可以了。

11
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • 遊戲是怎麼被“敲”出來的?