亚洲韩日午夜视频,欧美日韩在线精品一区二区三区,韩国超清无码一区二区三区,亚洲国产成人影院播放,久草新在线,在线看片AV色

您好,歡迎來到思海網絡,我們將竭誠為您提供優質的服務! 誠征網絡推廣 | 網站備案 | 幫助中心 | 軟件下載 | 購買流程 | 付款方式 | 聯系我們 [ 會員登錄/注冊 ]
促銷推廣
客服中心
業務咨詢
有事點擊這里…  531199185
有事點擊這里…  61352289
點擊這里給我發消息  81721488
有事點擊這里…  376585780
有事點擊這里…  872642803
有事點擊這里…  459248018
有事點擊這里…  61352288
有事點擊這里…  380791050
技術支持
有事點擊這里…  714236853
有事點擊這里…  719304487
有事點擊這里…  1208894568
有事點擊這里…  61352289
在線客服
有事點擊這里…  531199185
有事點擊這里…  61352288
有事點擊這里…  983054746
有事點擊這里…  893984210
當前位置:首頁 >> 技術文章 >> 文章瀏覽
技術文章

鳥哥的Linux學習筆記 DNS服務器相關知識

添加時間:2011-1-28  添加: admin 

1.MAC<--ARP-->IP

IP<---DNS-->DOMAIN

 

2.網絡傳送資料的方法并不是只有TCP/IP協議,比如在LAN里經常用到的可能是NetBIOS

 

3.DNS的由來

==>為了解決網絡傳送資料時IP地址難以記憶的問題,就有了利用某些特定的檔案將主機名稱與IP對應起來,這樣就可以通過主機名稱來取得該主機的IP了,也就可以完成資料的傳送了。

==>可是主機名稱與IP的對應無法自動與所有的電腦內更新,且當IP數量太多時,該檔案就會大到不像話,也就更不利于主機同步化。

==>柏克萊大學發展出了一套階層式管理主機名稱對應IP的系統,稱之為BIND(Berkeley Internet Name Domain)

==>進而發展成為全世界使用最廣泛的域名系統DNS

 

4.DNS與BIND的區別

DNS——一種主機名稱與IP的解析協議

BIND——提供DNS服務的套件

 

5./etc/hosts

ping -c 5 localhost

windows下面對應的文件為:c:\i386\hosts

 

這個會加快IP的搜尋速度

可以嘗試一下

 

6./etc/hosts與DNS系統區別:

/etc/hosts——直接在Client端的檔案內輸入主機名稱對應的IP來查詢

DNS系統——利用額外的DNS服務,讓client端可以通過名稱解析來取得目的地主機的IP

 

7.Domain Name與Hostname的區別:

Domain Name——

Hostname——

我們已經知道DNS系統是個分層次的系統,所以在每一層上域名與主機名是不一樣的

如www.yahoo.com中域名為yahoo.com,主機名為www

又如yahoo.com中域名為.com,主機名為yahoo

 

8.DNS架構

每個上一層的DNS主機,所記錄的資訊,其實只有其下一層的主機名稱而已!

DNS樹狀目錄

root

____________________________________________________

| | | | | | |

com edu gov mil org cn 其他國家

|

___________________________________________________

| | | | |

com.cn edu.cn gov.cn mil.cn org.cn

|

_____________________________________________

| | |

sina.com.cn yahoo.com.cn others.com.cn

 

com: 商業、公司

org: 組織、機構

edu: 教育

gov: 政府

net: 網絡、通訊

mil: 軍事

 

9.DNS的搜尋流程

DNS是以類似樹狀目錄的形態來管理域名的,每一部DNS主機只管理下一層DNS主機的域名解析

至于下層的下層,則授權給下層的DNS主機來管理

 

DNS服務器工作原理

客戶端linux主機利用/etc/resolv.conf中提供的DNS服務器的IP來進行查詢

DNS服務器會這樣做:

假設要訪問

(1) 先看本身有沒有記錄

(2) 向最頂層查詢

向最頂層的.(root)這部主機來查詢.(root)的下一層.cn

(3) 向第二層查詢

就到.cn查詢,找到.edu.cn

(4) 接著一步一步下來

(5) 記錄暫存記憶檔

查找要找的IP后,就將,對應的IP信息在自己的暫存記憶檔中保存起來

這個暫存檔是有時間性的,當過了DNS設定記憶的時間(通常是24小時),該記憶就會被釋放

 

幾點注意:

a> 只有域名是經過上層合法的DNS主機設定的,才可以在INTERNET上被查詢到

b> 主機的暫存記憶檔,是有時間性的,所以當修改一個域名之后,可能要2~3天才能全面的啟用

c> 每一部可以記錄主機名稱與IP對應的DNS服務器都可以隨意更動他自己的資料庫,注意,是他自己的

 

10.DNS使用的端口

cat /etc/services | grep domain

可以看到DNS使用的端口為53

通常進行DNS查詢時,是以UDP這個較快速的資料傳輸協議來查詢的,但若沒有查詢,會再次以TCP查詢。

所以啟動DNS的daemon(即named),會同時啟動TCP及UDP的53這個端口。

 

11.要讓你的主機名稱對應IP且讓Internet上的電腦都可以查詢的到,就需要:

(1) 上層DNS 授權讓你設定DNS主機,或者

(2) 直接請上層DNS主機來幫你設定

 

12.什么是正解與反解?

(1) 正解

由主機名去尋找IP的程序稱為正解

(2) 反解

由IP去查詢得到主機名就稱為反解

(3) 區域(Zone)

一個正解或反解的設定就是一個zone

如,以鳥哥的vbird.idv.tw為例,一個域名的DNS設定檔里必需有

。hint(root)的設定

。vbird.idv.tw這個域名的正解設定

。localhost的正解設定(非必要)

。localhost的反解設定(非必要)

 

那么就有四個zone

 

13.DNS server使用的是bind這個套件,他的主要參數檔是/etc/named.conf

 

14.查詢DNS是否安裝

(1)

# rpm -qa | grep bind

bind-utils-9.2.4-16.EL4 <==是用戶端搜尋主機名稱的相關指令

bind-9.2.4-16.EL4 <==DNS服務器主程序

bind-chroot-9.2.4-16.EL4 <==將bind主程序關在家里?

那個chroot即change to root,那個root代表的是根目錄

可以用該命令來將某個目錄指定為bind程序的根目錄,由于是根目錄,所以bind便不能離開該目錄。

CentOS默認將bind鎖在/var/named/chroot中

 

(2)

yum install bind

 

15.BIND的默認設定

/etc/named.conf ——設定檔

/etc/sysconfig/named ——是否啟動chroot及額外的參數,由這個檔案控制

/var/named/ ——資料庫檔案默認放置在這個目錄

/var/run/named ——named這去程序執行時默認放置pid-file在此目錄內

可通過查看/etc/sysconfig/named來查看chroot所指定的目錄

# vi /etc/sysconfig/named

ROOTDIR=/var/named/chroot

這樣bind的相關程序所需要的所有資料會是在:

/var/named/chroot/etc/named.conf

/var/named/chroot/var/named/zone_file1

/var/named/chroot/var/named/zone_file...

/var/named/chroot/var/run/named/...

不過,仍舊可以使用/etc/named.conf來設定你的DNS

因為系統會主動的幫你將/var/named/chroot/etc/named.conf鏈接到/etc/named.conf

 

16.DNS的master/slave架構

master——本身具有提供Internet查詢所需的資料

slave——

Cache-only——這種DNS主機沒有自己的資料庫,單純幫助Client端向外部的DNS主機要求資料而已。代理?

 

17.Cache-only單純的forward DNS主機設定

(1) 編輯主要設定檔 /etc/named.conf

a> 注釋用"http://"

b> 每個段落之后要用";"結束

c> 實例:

------------------------------------------------------------------

[root@linux ~]# vi /etc/named.conf

// 雖然 CentOS 將這個檔案放置到 /var/named/chroot/etc 當中,

// 不過他很好心的幫我們作了個連結,所以你還是可以直接編輯這個檔案啦!

options {

directory "/var/named";

dump-file "/var/named/data/cache_dump.db";

statistics-file "/var/named/data/named_stats.txt";

pid-file "/var/run/named/named.pid";

forward only; //只允許 forward!

forwarders {

168.95.1.1; //我這里使用 hinet 的 DNS !

139.175.10.20; //這個是 seednet 的 DNS !

};

};

include "/etc/rndc.key";

------------------------------------------------------------------

這里要確認一下,pid-file的所有人必須是named這個user才行

[root@linux ~]# ls -ald /var/named/chroot/var/run/named

drwxrwx--- 2 named named 4096 Oct 12 11:48 /var/named/chroot/var/run/named

 

(2) 啟動named

# /etc/init.d/named start

 

(3) 觀察port的變化

并不一定啟動時成功就表明DNS成功了,還要來看一下port 53有沒有啟動

# netstat -utln

 

(4) 檢查/var/log/messages的信息

tail -n 15 /var/log/messages | grep named

Oct 16 15:08 linux named[76]: starting BIND 9.2.4 -u named -t /var/named/chroot <==成功啟動

(5) 客戶端測試

 

18.DNS服務器小結:

a> 主要設定檔是/etc/named.conf

b> 每個正解、反解都需要一個檔案,而檔案的檔名是由/etc/named.conf所設定的

c> 目前的BIND程序已經進行chroot了,可以參考/etc/sysconfig/named

d> 當DNS查詢時,若本身沒有資料庫,則前往root(.)或forwarders主機查詢

e> DNS服務器的架設需要上層DNS的授權才可以成為合法的DNS服務器,否則只能是內部的

f> named是否啟動成功務必要查閱/var/log/messages內的信息

 

19.一個內部的DNS服務器的架設案例

[目標及環境]

該DNS服務器針對vbird.tsai這個域名來設計,并且對應的反解為192.168.1.0/24

另外還針對本機localhost以及127.0.0.1這個預設的領域來對應

當然還要包含最上層.(root)這個域名的主機名資料庫

所以,設定檔及正反解zone的資料庫檔案應該有:

(1) named.conf 設定檔

(2) named.vbird.tsai vbird.tsai的正解

(3) named.192.168.1 192.168.1.0/24的反解

(4) named.root .(root)的資料庫

(5) named.localhost localhost的正解

(6) named.127.0.0 127.0.0.1/24的反解

如果還想加入其他的域名,例如niki.tsai,那就再多一個資料庫正解檔案即可!

資料庫的對應:

操作系統與IP 對應主機名 說明

linux 192.168.1.254 linux.vbird.tsai 這部是主要的DNS服務器,主要主機名為 www.vbird.tsai linux.vbird.tsai,其他的三個主機名

ftp.vbird.tsai 為主機別名

forum.vbird.tsai

linux 192.168.1.150 slave.vbird.tsai 主要作為slave DNS主機

winxp 192.168.1.100 winxp.vbird.tsai 某一部主機的IP與主機名對應

sun 192.168.1.200 sun.vbird.tsai 另一部主機

 

★/etc/named.conf的設定檔

a> 功能:

。規范DNS服務器的使用權限(可否查詢、forward與否、master/slave架構等)

。設定出zone(domain name)以及zone file的所在

。設定DNS本機管理界面以及其相關的key file

 

b> 注意:

在整體服務器環境與使用權限,主要是通過options {...}來設定的

 

c> 最簡單的規劃示例:

-----------------------------------------------------------------

[root@linux ~]# vi /etc/named.conf

// 先定義出整個 DNS 服務器的相關環境,包括查詢、檔案放置目錄等

options {

directory "/var/named";

dump-file "/var/named/data/cache_dump.db";

statistics-file "/var/named/data/named_stats.txt";

pid-file "/var/run/named/named.pid";

forwarders { 168.95.1.1; 139.175.10.20; };

allow-query { any; }; // 是否允許被查詢?當然要可以被查詢;

allow-transfer { none; }; // 是否允許傳送 zone ,預設不可

};

 

// 關于 DNS 服務器的一些加密數據,先忽略過去先!

include "/etc/rndc.key";

 

// 關于 root (.) 的設定喔:

zone "." {

type hint; // 特殊的類別!專給 root (.) 用的

file "named.root"; // 就是檔名的定義啦!

};

 

// 關于本機 localhost 的正反解

zone "localhost" {

type master;

file "named.localhost";

};

zone "0.0.127.in-addr.arpa" {

type master;

file "named.127.0.0";

};

 

// 這里規范出我們的 vbird.tsai 領域名

zone "vbird.tsai" {

type master;

file "named.vbird.tsai";

};

zone "1.168.192.in-addr.arpa" {

type master;

file "named.192.168.1";

};

-----------------------------------------------------------------

 

d> options內的參數說明

設定值 意義

directory 指定zone file要放置在哪個目錄,與zone設定項目的file配合而成完整的檔名

dump-file 指定暫存資料記錄到哪個檔案

statistics-file DNS的一些統計資料寫入的檔案

pid-file 將named這個程序的PID記錄下來的一個檔案,這個檔案通常在named啟動、關閉時提供 正確的PID

forwarders

allow-query 是否允許用戶端的查詢,內容可以為any任何來源或IP或網段(IP/netmask)

allow-transfer 是否允許slave DNS整個域名資料的傳送,除非你有slave DNS服務器,否則這里不要 開放

e> zone內的參數說明

設定值 意義

type 主要類型有:master,slave及hint。其中,最上層.使用的是hint類型,然后master主 機用master,slave主機就用slave

file 就是zone file,完整的zone file放在哪里:

[chroot_dir]/[options內的directory]/[file 設定值],所以說

root(.)設定檔就在:/var/named/chroot/var/named/named.root

反解zone 反解,必須要將IP反過來寫,并在最后面加上".in-addr.arpa"來表示反解。

關鍵詞:DNS   服務器

分享到:

頂部 】 【 關閉
版權所有:佛山思海電腦網絡有限公司 ©1998-2024 All Rights Reserved.
聯系電話:(0757)22630313、22633833
中華人民共和國增值電信業務經營許可證: 粵B1.B2-20030321 備案號:粵B2-20030321-1
網站公安備案編號:44060602000007 交互式欄目專項備案編號:200303DD003  
察察 工商 網安 舉報有獎  警警  手機打開網站