小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

DNS的麻煩

 99學無涯 2012-02-21

 盡管DNS服務非?;A(chǔ)也很簡單,但也會經(jīng)常出現(xiàn)一些問題。通常,各種Windows對話框中的不清晰字眼或沒有解釋說明的選項可能會導致這些問題。下面我們來看看一些常見的經(jīng)常困擾管理員的DNS問題,以及如何解決它們。

動態(tài)更新,并沒有更新
Windows允許客戶端通過DNS服務器動態(tài)更新A和PTR記錄,以簡化跨域的DNS管理。因此在集成的AD區(qū)域里,在組織中分配IP地址時,客戶端機器可以使用自己新的IP地址來動態(tài)更新AD。不過有時你可能會留意到客戶端系統(tǒng)并沒有正確地使用新地址更新DNS記錄。要保證該更新能順利進行,必須在DNS服務器上配置允許動態(tài)更新。按照以下步驟操作,打開DNS區(qū)域的屬性設(shè)置,在“動態(tài)更新”設(shè)置處選擇“Secure only”,如圖1所示。

圖1:在DNS服務器上配置允許動態(tài)更新

下一步,在客戶端上,打開網(wǎng)絡(luò)適配器的高級TCP/IP設(shè)置對話框,切換到DNS選項卡,如圖2所示,選中“在DNS中注冊此連接的地址”。

圖2:在客戶端上配置“在DNS中注冊連接的地址”

最后,DHCP客戶端服務——它不僅僅是DNS客戶端服務——可以處理DNS注冊,該服務必須在每個系統(tǒng)上運行。即使你沒有使用DHCP來分配IP地址,也需要在每臺機器上運行DHCP客戶端服務,這樣才能動態(tài)更新DNS記錄。
默認設(shè)置下,客戶端會在以下幾個時間更新DNS記錄:機器啟動時,IP地址或機器名更改后;使用ipconfig /registerdns命令行強制更新時。此外,客戶端每24小時會重新注冊IP地址。

DNS客戶端服務導致性能下降
在DNS客戶端服務啟動時,它會將hosts文件中的所有入口加載到緩存中。如果hosts文件很大,例如用來阻止一些不希望訪問的主機名,此時你會發(fā)現(xiàn)這個服務會顯著降低系統(tǒng)的性能。這種情況你可能想禁用該服務。
不過,通常禁用DNS客戶端服務對DNS查找并沒有影響。這時你可能會產(chǎn)生疑惑,為什么要最先運行這個服務呢?
答案是DNS客戶端服務對于名稱解析來說并不是必需的;它只是讓名稱解析更為智能和高效。DNS客戶端服務的主要目的是為DNS入口點提供本地緩存。實際上,這個服務本身就是一個DNS服務器。它只是簡單地將之前解析過的DNS記錄緩存下來,以提高以后的查找效率,而不是使用DNS記錄數(shù)據(jù)庫來存儲。除了緩存之外,該服務還能通過網(wǎng)絡(luò)位置、速度和可用性對資源記錄進行先后排序,從而優(yōu)化網(wǎng)絡(luò)連接。
DNS客戶端服務還對系統(tǒng)中配置的DNS服務器列表進行管理。和它對資源記錄的處理類似,它會根據(jù)網(wǎng)絡(luò)位置、速度和可用性,在DNS服務器列表中選擇最優(yōu)的服務器。

防火墻規(guī)則需要優(yōu)化
通過防火墻將DNS服務器發(fā)布到公眾網(wǎng)時,你需要建立一套規(guī)則來保護你的配置。DNS查詢通常由UDP 53端口進入,源端口則通常大于1023。DNS服務器在53端口響應,并回傳到客戶端之前使用的端口上。大多數(shù)的狀態(tài)防火墻可以處理DNS響應,因此一個簡單的規(guī)則就基本上可以管理所有請求。
如果查詢的響應大于512字節(jié),DNS服務器會告知客戶端,響應被截斷。然后客戶端可以通過擴展DNS(Extended DNS)重新提交該請求,它允許大的UDP響應;或客戶端可以通過TCP重新提交請求。如果要允許TCP查詢,還需要一個規(guī)則允許源端口大于1023的TCP 53端口的流入通信。如果你知道DNS服務器并不會返回超過512字節(jié)的查詢響應,這個端口就可以關(guān)閉。一些DNS服務器使用UDP或TCP 53端口作為服務器間查詢的源和目標端口,因此在防火墻上還要再加上這個配置。

Windows是如何查找多臺DNS服務器的
默認設(shè)置下,Windows首先會在首選網(wǎng)絡(luò)適配器上查詢DNS服務器列表中的第一個。如果該服務器在1秒內(nèi)沒有響應,Windows會將查詢發(fā)送給系統(tǒng)其它網(wǎng)絡(luò)適配器上的第一個DNS服務器。如果在兩秒內(nèi)沒有響應,Windows會將查詢發(fā)送給系統(tǒng)中所有網(wǎng)絡(luò)適配器上配置的所有DNS服務器。如果兩秒內(nèi)仍然沒有一臺響應,Windows會向所有服務器重發(fā)一次查詢,并等待4秒。如果有必要,它會再次重發(fā)并等待8秒。
Windows會根據(jù)網(wǎng)絡(luò)情況重新調(diào)整它查詢過的DNS服務器列表。如果沒有一臺DNS服務器有響應,Windows會認為網(wǎng)絡(luò)連接失敗,30秒內(nèi)不會再對任何服務器進行請求。如果其中一臺DNS服務器返回了拒絕的響應,Windows不會再請求該適配器上的任何其它服務器。此外,Windows可能會根據(jù)服務器響應的速度來調(diào)整DNS服務器的順序。
如果要為客戶端系統(tǒng)配置很多DNS服務器,你很可能希望一個比Windows GUI界面更高效簡單的辦法??梢栽诿钚兄性囋囘@些命令。以下命令可以列出客戶端上配置的所有DNS服務器:
c:\>netsh interface ip show dns
要清除某個網(wǎng)絡(luò)適配器上的DNS服務器,輸入以下命令(假定網(wǎng)絡(luò)適配器名為“Local Area Connection”):
c:\>netsh interface ip set DNS "Local Area Connection" static none
要向網(wǎng)絡(luò)適配器添加DNS服務器,輸入以下命令(假定網(wǎng)絡(luò)適配器名為“Local Area Connection”):
c:\>netsh interface ip set DNS "Local Area Connection" static 192.168.0.1

域中的DNS問題
在進行DNS設(shè)置時可能會遺漏某個配置,這個問題在Windows域中很常見。一種快速檢測設(shè)置的方法是執(zhí)行對域名的查詢,使用以下命令:
c:\>nslookup <yourdomain>
該命令應該會返回一個IP地址列表,它們分別對應到每臺DC。如果還返回了其它東西,那你就要檢查一下DNS的設(shè)置了。
另外一種檢測DNS配置的方法是,在任何一臺Windows XP或Windows Server 2003系統(tǒng)上執(zhí)行一個快速網(wǎng)絡(luò)配置測試。輸入以下命令:
c:\>netsh diag show test
該測試會對所有TCP/IP中配置的DNS服務器和網(wǎng)關(guān)進行ping測試。如果你有Microsoft Windows Server 2003資源工具包,還可以使用netdiag或dnsdiag命令作為替代命令,如下所示:
C:\>netdiag /test:dns 

C:\>dnsdiag
如果想從外網(wǎng)測試公共的DNS服務器,可以使用以下URL:
http://www.http://www.。要測試遠程DNS服務器是否允許區(qū)域轉(zhuǎn)移(Zone Transfers),使用以下命令:
c:\> echo ls -d <targetdomain>
| nslookup - <nameserver>
如果名稱服務器允許在域中進行區(qū)域轉(zhuǎn)移,它會返回該區(qū)域中的所有記錄。否則會返回錯誤。

BIND是縮寫,而不是動詞
在DNS服務器的屬性對話框中,可以找到BIND Secondaries設(shè)置。BIND并不是動詞——而是Berkeley Internet Name Domain的縮寫,它是DNS的一種實現(xiàn)方法,用于在Internet上處理DNS請求。
在執(zhí)行區(qū)域轉(zhuǎn)移時,DNS服務器會使用一種更快的區(qū)域轉(zhuǎn)移方法,它可以利用壓縮在每條TCP消息中傳輸多條記錄。這種格式與舊版本的BIND并不兼容。如果使用4.9.4之前的BIND版本,你需要選擇BIND Secondaries選項。這一選項可以讓Windows DNS服務器不使用快速區(qū)域轉(zhuǎn)移方法。

何時禁用遞歸
遞歸是DNS在域中沿著授權(quán)服務器向下遍歷的過程。如果你向一臺DNS服務器查詢域中的某個主機名,而該服務器并不是該域的授權(quán)服務器,而且在緩存中也沒有該主機記錄,這臺服務器就會代你在Internet上遞歸查詢其它服務器,從而返回正確的響應。如果服務器沒有執(zhí)行遞歸,它會告知客戶端未知記錄或應該去哪里查詢該記錄。
應該在何時禁用遞歸呢?需要查看該DNS服務器上所存儲的記錄的類型。如果DNS服務器記錄了域中的所有記錄,那就不再需要遞歸。例如,DC上存儲了域中的所有主機,所以DC就沒有必要再向其它服務器發(fā)送請求。對于存儲了所有已知域名記錄的公共DNS服務器來說也是一樣的。
在那些向本地用戶提供DNS查詢的服務器上,通常應該開啟遞歸。也就是說,如果要向用戶提供Internet訪問,那就還需要提供遞歸DNS服務器,用于解析所有Internet主機名。
注意要保證遞歸服務器僅對內(nèi)部有效,對組織外部無效。否則服務器可能被攻擊,并可能被用來作為DDoS攻擊(Distributed Denial of Service,分布式拒絕服務)的放大器。

阻止Internet主機
下面描述的問題其實并不一定要用DNS,但DNS可以起到一部分作用??梢允褂梅阑饓虼矸掌鱽碜柚褂脩粼L問一些不需要的Internet主機,但這些解決方案在有的場景并不適用。例如,某個ISP可能需要阻止某些主機名,同時不想要求客戶必須使用代理服務器或加重防火墻的負載。這時可以采用以下的替代方案,在DNS服務器上阻止主機名。
要使用這種方案,首先要準備好要阻止的主機名列表??梢栽趷阂廛浖柚沽斜淼木W(wǎng)站上獲取到Microsoft DNS服務器格式的列表:http://www./#blocklist。可以直接將這個阻止列表導入到DNS服務器。如果你想重新進行格式調(diào)整,可以從hpHosts Online(http://www.)或Spamassassin Blacklists(http://www.sa-blacklist./sa-blacklist)獲取阻止列表。
另外一種方法是OpenDNS(http://www.),這是一個免費的DNS服務,它能提供域名過濾,將已知的釣魚網(wǎng)站都阻止掉了。要使用OpenDNS,只需要將它的DNS服務器IP地址配置到網(wǎng)絡(luò)中即可。
注意使用DNS阻止訪問的方法只能通過名稱來阻止這些列表。無法阻止用戶通過IP地址來訪問,新增的主機名如果沒有在列表中,也不能被阻止掉。

同時使用Round-Robin循環(huán)和Netmask Ordering
在Windows DNS服務器上可以同時啟用round-robin循環(huán)和netmask ordering特性。通常像www.microsoft.com的域名會有很多個IP地址,以便提高負載均衡和性能。這些IP地址對同一臺服務器或某個點來說,路徑可能不一樣,因為它們對應的服務器在地理位置上都是分散的。
對于負載均衡的DNS請求,DNS服務器使用round-robin循環(huán)算法在IP地址列表中查找,有效地將通信分布到不同服務器上。利用netmask ordering技術(shù),DNS服務器會試圖返回與客戶端最近的主機IP地址。DNS服務器通過對IP地址的前8個字節(jié)進行判斷,并認為相差最少的服務器IP和客戶端IP在物理位置上最近。默認情況下,DNS服務器會為處于相同Class C網(wǎng)絡(luò)的所有主機地址標上優(yōu)先級,與客戶端的處理類似。
盡管看上去好像round robin和netmask ordering無法同時應用,但Windows仍然可以同時啟用這兩個特性,如圖3所示。同時啟用這兩個選項時,Windows會檢查主機的IP列表,找出與客戶端IP最相近的。如果Windows找到了匹配的IP,這個IP地址在round robin時的優(yōu)先級就會最高。這樣DNS服務器在為IP地址做round robin循環(huán)時,使用的算法是變種的round robin,因為它會偏向于那些看上去離客戶端最近的IP地址。

圖3:同時啟用round robin和netmask ordering特性

在AD中集成DNS
在DC上安裝DNS時,可以選擇將區(qū)域文件存儲在AD數(shù)據(jù)庫中,而不是簡單的文本文件中。這時你可能會問,為什么要將區(qū)域集成到AD中呢?
在大多數(shù)情況下,在AD中集成DNS區(qū)域有很多優(yōu)點,最重要的一點是改進復制。在集成到AD的區(qū)域中,AD可以自動地在服務器間對DNS記錄進行安全復制。AD復制是多主控的復制,也就是說你可以在任何一臺DC上做修改,這些修改都會自動在域中進行復制和傳播。對于沒有集成到AD的DNS區(qū)域來說,必須設(shè)置主從DNS服務器。在進行更改時,通常必須在主服務器上做修改,這樣才能更新所有從服務器。
附文“DNS-AD大營救”通過一個實例講述了如何排除由于DNS導致的AD故障。

學習基本原理
DNS問題通??梢允褂靡恍┖唵蔚霓k法解決,但你還是需要對DNS的工作原理有一個清晰的認識。對任何IT人員來說,花一定的時間了解DNS知識是非常值得的。


附文:
DNS-AD大營救
我是如何解決由于一位管理員無計劃的升級所導致的DNS-AD混亂的

在我上中學時,我拿到了潛水證書。在這個課程中學到的最重要的一點是:平靜,深思,在跳水前做好計劃。忽略這些細節(jié)可能會失敗,甚至可能死亡。我們的老師有一句話:計劃后再潛水,潛水時執(zhí)行計劃(Plan you dive,dive your plan)。
對于網(wǎng)絡(luò)管理員執(zhí)行大量的升級或者應用可能影響現(xiàn)有產(chǎn)品的新技術(shù)時,同樣的道理也適用。而我經(jīng)常看到相反的情形,能力很強的技術(shù)工程師由于缺少一個明確定義好的執(zhí)行計劃,將自己逼入了死角。他們只是簡單地放入升級光碟,雙擊安裝文件,然后按照安裝向?qū)?zhí)行操作。這種方法幾乎都會導致災難。
這種情況最近在我認識的一位管理員身上發(fā)生了,他試圖將Windows NT 4.0域升級到Windows Server 2003的AD。他從事網(wǎng)絡(luò)管理的經(jīng)驗還比較少,并沒有意識到一個完善的計劃是非常重要的。最后,他向我求助,但那時已經(jīng)導致主機名無法正確解析,組策略無效,事件日志中滿是錯誤。
開始我們通過網(wǎng)上論壇、郵件討論這些問題,后來直接通過電話。從他所描述的情況來看,似乎是DNS和AD無法進行相互通信。這里我會介紹我是如何解決這個問題的(在一個周末解決的)。

AD-DNS的混亂
我發(fā)現(xiàn)了以下這些AD和DNS問題(還有其它的,但那些是次要的):
 DCs沒有指向一臺DNS服務器。
 AD DNS資源記錄(RRs)——_msdcs, _sites, _tcp,以及_udp——都丟失了。
 DNS沒有被設(shè)置為接受動態(tài)更新。
 客戶端被指向到ISP的DNS服務器,而不是內(nèi)部DNS服務器。
這位管理員不清楚DNS在AD環(huán)境中的重要程度。沒有DNS就意味著沒有AD。AD和DNS入口都是空的,通過這一點我可以向管理員強調(diào)DNS的重要性,以及DNS的工作原理。在每臺DC上配置好所有正確的DNS設(shè)置后,我們開始著手解決下一個問題:丟失的RRs。
在查看域中的DNS區(qū)域時,馬上就發(fā)現(xiàn)有問題。我不能立即就解決這個問題,因為我要先回到測試域中,將兩個環(huán)境的設(shè)置進行對比。問題馬上就顯露出來,就像手指的刺痛一樣尖銳,他的域中并沒有所需的RRs!這次歷險更刺激了。我讓他將DC重啟,滿以為丟失的信息會重現(xiàn)。但是重啟并沒有恢復這些丟失的RRs,因此下一步是讓管理員重啟Netlogon服務,在命令行中輸入以下命令:
net stop netlogon
net start netlogon
仍然沒有RRs。之后我去尋找微軟的幫助和支持,找到這篇文檔“How to reinstall a dynamic DNS Active Directoryintegrated zone”(http://support.microsoft.com/?kbid=294328)。我們按照文中所描述的步驟,徹底將DNS刪除,并重新安裝。這個過程比較順利,問題解決了。

更多的DNS問題
我們發(fā)現(xiàn)的第三個問題——DNS沒有被設(shè)置為接受動態(tài)更新——這個問題可能是某些PC無法正確獲取IP地址的原因之一。PC在DNS中有入口,而在PC的IP地址被DHCP修改后這些入口并沒有更新。解決的方法很簡單,將客戶端配置為允許DNS動態(tài)更新。
現(xiàn)在還有最后一個問題,在從NT向AD升級時我見到過很多這種問題。在NT中,通常沒有理由用DNS來解析主機名;我們只是使用WINS來解析NetBIOS名稱。DNS那時只是在用IE訪問Internet時用于解析Internet名稱。這個過程在NT環(huán)境中能正常運行,但升級到AD需要調(diào)整??蛻舳擞嬎銠C需要DNS來指向一臺內(nèi)部DNS服務器,以便一些AD服務如組策略等可以正常工作。在Windows 200x中,一切都依賴于DNS。

環(huán)境正常了
花了好幾天我們才將網(wǎng)絡(luò)中所有的小問題都解決掉,最后網(wǎng)絡(luò)運行得非常流暢。盡管在執(zhí)行每個主要操作系統(tǒng)升級時,你無法預見到每個可能發(fā)生的網(wǎng)絡(luò)問題,但以我的經(jīng)驗來說,定制一個詳細的升級計劃——并執(zhí)行該計劃——可以有效地避免各種煩惱管理員的問題。

評論
安裝AD之后,對新的DC上運行的DNS服務器操作時,可以使用兩種存儲和復制區(qū)域的選項:
使用基于文本文件的標準區(qū)域存儲。按這種方式存儲的區(qū)域位于.Dns文件中,這些文件存儲在運行DNS服務器的每臺計算機上的systemroot\System32\Dns文件夾中。區(qū)域文件名稱與創(chuàng)建區(qū)域時為區(qū)域選擇的名稱相對應,如區(qū)域名稱為example.microsoft.com時的Example.microsoft.com.dns。
使用AD數(shù)據(jù)庫的目錄集成區(qū)域存儲。按這種方式存儲的區(qū)域位于域或應用程序目錄分區(qū)下的AD樹中。每個目錄集成區(qū)域都存儲在按照創(chuàng)建該區(qū)域時為它選擇的名稱標識的dnsZone容器對象中。
一旦將DNS與AD進行集成,DNS 控制臺便可提供訪問控制列表(ACL)的編輯功能,這樣就可為指定的區(qū)域或資源記錄添加或刪除來自ACL的用戶或組。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多