史萊姆論壇

史萊姆論壇 (http://forum.slime.com.tw/)
-   網路軟硬體架設技術文件 (http://forum.slime.com.tw/f133.html)
-   -   建立本機的DNS伺服器&如何測試DNS伺服器效率 (http://forum.slime.com.tw/thread149231.html)

psac 2005-05-12 03:45 AM

建立本機的DNS伺服器&如何測試DNS伺服器效率
 
通常很多關於網站不能訪問的問題都出在DNS解析上面。不正確的DNS伺服器設定,指向的DNS伺服器負荷過大或者失效,某些ISP在DNS伺服器上面做了「劫持」,等等,都會影響我們對目標網站的訪問。

本文將介紹怎麼在個人電腦(WINDOWS伺服器,XNIXS可能有更好地選項)上面建立本機帶緩衝的DNS伺服器。並且也將介紹怎麼去簡單的測試一個DNS伺服器的執行效率。

1.建立DNS伺服器;
首先去:
程式碼:
http://ntcanuck.com/DL-kN/TreeWalk.zip
下載TreeWalk這個軟體的最新版本。它是一個支持多處理器並且對個人用戶免費的DNS伺服器軟體。我們只需要使用預設安裝,安裝完畢以後,啟動TWDNS這個服務,本機DNS伺服器就可以工作了。按照官方介紹,需要手動設定網路界面的首選DNS為1 27.0.0.1(在2000系統中由於是保留位址,需要借助另外的工具來設定),但是其實最新版本在安裝完畢以後已經通過更加底層的方法把首選DNS設定成了127.0.0.1,不需要用戶的介入。要測試是否如此,請在指令行打入:



程式碼:
nslookup bbs.net檢視返回的訊息,就可以知道當前使用的DNS伺服器。
通常預設的組態就可以滿足基本的要求,你已經在使用一個不依賴ISP,並且帶有快取功能的DNS本機伺服器。但是如果你想對組態有更加深入的瞭解,請開啟:
程式碼:
%SystemDriver%:\%SystemFolder%\system32\dns\etc\named.conf這個文件。下面是這個文件中一些參數的中文說明。
引用:
/*
** TreeWalk master config
*/

controls {
inet 127.0.0.1 port 953
allow { 127.0.0.1; } keys { "rndc-key"; };
};

// the private (LAN) network space //定義你的私有(信任)網路
acl "privlan" { 127.0.0.0/8; 10.0.0.0/8; 169.254.0.0/16; 192.168.0.0/16; 172.16.0.0/20; };

// our own private subnets
acl "private" { 127.0.0.0/24; 192.168.0.0/16; 192.168.0.0/16; };

options {
directory "D:\WINNT\system32\dns\etc";
cache-file "named.cache";
version "TWDNS";
hostname none;
server-id none;
dialup no;
interface-interval 0;
listen-on port 53 { 127.0.0.1; }; //需要綁定的監聽連接阜和網路界面位址,如果要在區域網路使用,可以增加 192.168.0.1 等更多
listen-on-v6 { none; };
// query-source address * port 5353;
// query-source-v6 address * port 5354;
recursion yes;
allow-query { "private"; }; //允許進行查詢地網段,就是你上面設定的信任位址
allow-recursion { "private"; };
blackhole { "bogons"; };
forward first; //設定轉發。如果你不使用root-hints查詢,將這行的註釋取消,然後在下一行添入你自訂的DNS伺服器位址。這樣的話TreeWalk就是純粹的一個DNS緩衝器。(如果這樣做的話,你將不能繞過你的ISP對某些位址所作的「劫持」)
forwarders { 202.96.134.133; 202.96.128.166; }; //你定義的DNS伺服器。
auth-nxdomain no;
minimal-responses yes;
transfer-format many-answers;
// edns-udp-size 512;
max-transfer-time-in 60;
request-ixfr yes;
provide-ixfr yes;
recursive-clients 2000;
tcp-clients 500;
max-cache-size 4m; //快取大小。
max-ncache-ttl 30;
lame-ttl 100;
zone-statistics no;
cleaning-interval 240;
};

// the bogon list
include "bogons.conf";

include "logs.conf";
include "rndc.key";
include "root.conf";
include "local.conf";
include "extra.conf";



2.測試DNS伺服器的效率

我們使用下面的工具:
程式碼:
http://www.grc.com/miscfiles/dnsru.exeDNS Benchmarking & Research utility 會在一段時間內發出大量的DNS請求來測試DNS伺服器的工作狀況。工具已經非常古老,而且會提示測試時間已到,請使用「時光倒流」或者「永不過期」在Google搜尋相應的工具來解除這個限制。例如:
程式碼:
http://www.softsea.net/cat/30111.htm所列出來的工具,都是免費的。
執行DNSRU後,點擊它的Benchmark標籤進行測試。程序會自動找到本地機的首選,輔助DNS伺服器進行測試。結果會是如下圖:

"快取d Name" 表示從被查詢的DNS伺服器本機快取查詢的結果。
"Uncached Name"表示從被查詢的DNS伺服器本機快取不能獲得查詢結果,次伺服器向另外的DNS伺服器查詢的結果。
"DotCom Lookup" 查詢DotCom這種特殊域名的結果。

Min,Max,Avg分別表示各個項目的最小,最大和平均查詢時間;Std.Dev是隨機抽取位址的查詢時間;Reliab%是可靠程度,這個可以看出被測試的DNS伺服器查詢總量/成功的百分率。

從測試圖可以看出本機DNS伺服器的穩定性和可靠程度比ISP的要高;而且這還是在凌晨時間的測試結果,如果在上網高峰器,本機DNS伺服器穩定性還會下降。

關於TreeWalk的更多套用請參考它的主頁:

url:
http://ntcanuck.com/


http://xqplus.com/upimg/20050512/hSNy8H2bxUNyBV7NH0kc.DNSRU.jpg


所有時間均為台北時間。現在的時間是 03:51 AM

Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2022, Jelsoft Enterprises Ltd.

『服務條款』

* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *


SEO by vBSEO 3.6.1