剖析NETBIOS的具體工作機(jī)理
2020-10-27 20:40:53
供稿:網(wǎng)友
有關(guān)網(wǎng)上鄰居的問(wèn)題,問(wèn)的人一直比較多,在理解上存在的誤區(qū)也普遍較為嚴(yán)重。鑒于Microsoft的NETBIOS文檔不是很細(xì)致,我四處收集了一些相關(guān)資料加上自己的實(shí)踐經(jīng)驗(yàn)寫(xiě)了這個(gè)系列,希望能對(duì)大家有所幫助.
本來(lái)想為了增加可讀性,把這個(gè)系列寫(xiě)成問(wèn)答的形式,不過(guò)一時(shí)之間腦袋里也編不出這么多的問(wèn)題,還是按部就班先感性的對(duì)微軟的瀏覽服務(wù)作一大致介紹,然后再深入剖析NETBIOS的具體工作機(jī)理,大家要是有什么問(wèn)題,可以提出來(lái)我們一起討論.
在“Windows NT系統(tǒng)管理技術(shù)內(nèi)幕”一書(shū)中,講到了一個(gè)非常具有代表性的問(wèn)題,我把它摘抄了下來(lái):
問(wèn):什么情況下會(huì)導(dǎo)致在網(wǎng)絡(luò)鄰居中計(jì)算機(jī)能看見(jiàn)卻無(wú)法訪問(wèn)或可以訪問(wèn)卻看不見(jiàn)?
請(qǐng)選擇最佳答案:
A.你的網(wǎng)絡(luò)存在物理問(wèn)題,比如網(wǎng)線
B.作為域主瀏覽器的Windows NTserver的瀏覽服務(wù)壞了
C.Windows NTserver網(wǎng)卡有問(wèn)題
D.你的網(wǎng)絡(luò)沒(méi)有問(wèn)題,用戶描述的是正常的微軟瀏覽現(xiàn)象
正確答案:D
書(shū)上的解釋:微軟的網(wǎng)絡(luò)瀏覽可能在使用中出現(xiàn)"中斷",而實(shí)際上它們并沒(méi)有中斷, 這種誤解是由于用戶對(duì)微軟網(wǎng)絡(luò)瀏覽的處理過(guò)程不熟悉造成的。
就象有人經(jīng)常在抱怨的“為什么別人的網(wǎng)上鄰居可用,我的卻不行?”“為什么有時(shí)候可以瀏覽,有時(shí)候卻無(wú)法瀏覽網(wǎng)絡(luò)?”解鈴還須系鈴人,讓我們一起去看看微軟的網(wǎng)絡(luò)瀏覽到底是如何實(shí)現(xiàn)的。鑒于大家可能對(duì)NT的“域”概念還不甚了解,出現(xiàn)瀏覽故障的也多為98的機(jī)子,我將以98的“工作組模式”為大家講解。
1.什么是瀏覽列表(Browsing List)
在微軟網(wǎng)絡(luò)中,用戶可以在瀏覽列表里看到整個(gè)網(wǎng)絡(luò)(何指?子網(wǎng)還是廣播域?大家可以考慮考慮)上所有的計(jì)算機(jī)。當(dāng)你通過(guò)網(wǎng)上鄰居窗口打開(kāi)整個(gè)網(wǎng)絡(luò)時(shí),你將看到一個(gè)工作組列表,再打開(kāi)某個(gè)工作組,你將看到里面的計(jì)算機(jī)列表(也可在 DOS方式下用net view /domain:workgroupname命令得到),這就是我們所說(shuō)的 Browsing List。工作組從本質(zhì)上說(shuō)就是共享一個(gè)瀏覽列表的一組計(jì)算機(jī),所有的工作組之間都是對(duì)等的,沒(méi)有規(guī)定不可以讓所有的計(jì)算機(jī)同處于一個(gè)工作組中。
2.瀏覽列表在哪里
曾在木棉上看到過(guò)一場(chǎng)爭(zhēng)論,有人說(shuō):網(wǎng)上鄰居里的計(jì)算機(jī)列表是廣播查詢得來(lái)的。可有人舉反例說(shuō):我的同學(xué)都關(guān)機(jī)了,可我還是能在網(wǎng)上鄰居里看到它,應(yīng)該是從HUB或交換機(jī)之類較為固定的設(shè)備的緩存中取得的。 其實(shí)他們都只說(shuō)對(duì)了一個(gè)方面,把他們二人的說(shuō)法結(jié)合起來(lái)就是正確答案了--- 瀏覽列表是通過(guò)廣播查詢?yōu)g覽主控服務(wù)器,由瀏覽主控服務(wù)器提供的。
3.瀏覽主控服務(wù)器又是什么
瀏覽主控服務(wù)器是工作組中的一臺(tái)最為重要的計(jì)算機(jī),它負(fù)責(zé)維護(hù)本工作組中的瀏覽列表及指定其他工作組的主控服務(wù)器列表,為本工作組的其他計(jì)算機(jī)和其他來(lái)訪本工作組的計(jì)算機(jī)提供瀏覽服務(wù),每個(gè)工作組都為會(huì)每個(gè)傳輸協(xié)議選擇一個(gè)瀏覽主控服務(wù)器,而我們經(jīng)常遇到的無(wú)法瀏覽網(wǎng)絡(luò)的錯(cuò)誤大多是因?yàn)槟闼幍墓ぷ鹘M沒(méi)有瀏覽主控服務(wù)器而造成的。你可以在一個(gè)工作組中用NBTSTAT -a computername 命令找出使用NBT協(xié)議的瀏覽主控服務(wù)器,它的標(biāo)識(shí)是含有//_MSBROWSE_名字段。
4.瀏覽主控服務(wù)器是如何指定的
缺省情況下,win98工作組中的瀏覽主控服務(wù)器是該工作組中第一臺(tái)啟用文件及打印機(jī)共享功能的計(jì)算機(jī),也允許手工將一臺(tái)win計(jì)算機(jī)配置為瀏覽主控服務(wù)器(方法會(huì)在后面講述網(wǎng)絡(luò)配置時(shí)具體介紹,但由于瀏覽主控服務(wù)器需要維護(hù)動(dòng)態(tài)瀏覽列表,性能會(huì)受影響),如果一個(gè)工作組中有多臺(tái)計(jì)算機(jī)配置了這個(gè)選項(xiàng),或是當(dāng)前的瀏覽主控服務(wù)器關(guān)閉了系統(tǒng),又沒(méi)有其他計(jì)算機(jī)啟用主控設(shè)置時(shí),就要進(jìn)行主控瀏覽器的選舉。
5.如何通過(guò)瀏覽器選舉產(chǎn)生瀏覽主控服務(wù)器
關(guān)于瀏覽器的選舉報(bào)文,不太好抓包,我就只好按書(shū)上的東西來(lái)講述了.其實(shí)過(guò)程很簡(jiǎn)單,首先由一臺(tái)計(jì)算機(jī)發(fā)送一個(gè)選舉臨界報(bào)文,該報(bào)文包含了來(lái)自發(fā)送計(jì)算機(jī)的信息(操作系統(tǒng),版本及NET名等),選舉報(bào)文向網(wǎng)絡(luò)中廣播,工作組中的每一臺(tái)計(jì)算機(jī)都會(huì)用自身信息與選舉報(bào)文進(jìn)行優(yōu)先級(jí)比較,主要是操作系統(tǒng)起主要作用,記得好像是NT Server>NT Workstation>Win98>WFWG,反正到最后是那個(gè)自身?xiàng)l件最好的成為新的瀏覽主控服務(wù)器.
6.整個(gè)網(wǎng)絡(luò)瀏覽的過(guò)程是怎樣的
當(dāng)一臺(tái)win98進(jìn)入網(wǎng)絡(luò)時(shí),如果它帶有服務(wù)器服務(wù)(啟用了文件及打印機(jī)共享)會(huì)向網(wǎng)絡(luò)廣播宣告自己的存在,而瀏覽主控服務(wù)器會(huì)取得這個(gè)宣告并將它放入自己維護(hù)的瀏覽列表中;而沒(méi)有在相應(yīng)協(xié)議上綁定文件及打印機(jī)共享的計(jì)算機(jī)則不會(huì)宣告,因而也就不會(huì)出現(xiàn)在網(wǎng)絡(luò)鄰居里了。