|
最近遭遇的一個(gè)網(wǎng)絡(luò)共享文件訪問故障非常奇怪,以某一臺固定的主機(jī)為例,不同時(shí)間訪問另外一臺主機(jī)的共享文件時(shí),卻出現(xiàn)時(shí)通時(shí)不通的現(xiàn)象。
一、現(xiàn)象介紹
具體表現(xiàn)為在主機(jī)上運(yùn)行“\\IP地址”命令,來嘗試連接另外一臺主機(jī),輸入正確的用戶名和密碼之后卻提示“當(dāng)前沒有可用的登錄服務(wù)器來服務(wù)登錄請求”,但是過一陣子再使用相同的操作又有可能正常訪問。
在對希望互訪的兩臺計(jì)算機(jī)進(jìn)行檢查,發(fā)現(xiàn)它們有一個(gè)共同的特點(diǎn),那就是它們都配置了兩個(gè)IP地址。當(dāng)前內(nèi)網(wǎng)使用的IP地址是192.168.0網(wǎng)段的,網(wǎng)關(guān)為192.168.0.1;但為了讓幾臺服務(wù)器之間進(jìn)行文件交換,不讓其他客戶端訪問,因此在服務(wù)器上又添加了10.10.20網(wǎng)段的IP地址,由于只是內(nèi)網(wǎng)訪問,因此就沒有配置10.10.20網(wǎng)段的網(wǎng)關(guān)。
二、共享協(xié)議介紹
碰到這樣的問題只能求助于網(wǎng)絡(luò)。在網(wǎng)絡(luò)上經(jīng)過一翻搜索之后,才發(fā)現(xiàn)是因?yàn)楣蚕韰f(xié)議才引發(fā)這個(gè)故障的。要想徹底認(rèn)識這個(gè)問題,必須先了解共享協(xié)議的工作原理。
在Windows系統(tǒng)中,文件共享是通過SMB協(xié)議來完成的。SMB協(xié)議有兩種工作方式,分別為NetBios Over TCP/IP(簡稱NetBT)和Direct hosting。當(dāng)采用NetBT方式通信時(shí),會(huì)通過NetBIOS接口來進(jìn)行連接,分占別用UDP137、138和TCP139端口,其中137端口用來進(jìn)行名字解析,138端口傳遞數(shù)據(jù)包,139用于會(huì)話服務(wù),進(jìn)行文件傳輸,因此最重要的就是139端口了;而采用Direct hosting則更為簡單,直接跳過NetBIOS直接口,不需要進(jìn)行名稱解析,直接使用TCP445端口傳輸。

在早期的Windows系統(tǒng)之中,主要使用NetBIOS進(jìn)行通訊,但是到了Windows 2000后,又新增加了Direct hosting方式,但并沒有取消NetBT。同時(shí)NetBT是隨網(wǎng)卡綁定的,并且只能綁定在網(wǎng)卡的第一個(gè)IP地址上,在本例中,即192.168.0網(wǎng)段的IP地址;而Direct hosting卻沒有這樣的限制。通過八哥網(wǎng)(http://www.it8g.com)專家的介紹,我們知道在本例中,訪問10.10.20網(wǎng)段的其它主機(jī)時(shí),會(huì)優(yōu)先使用自己綁定的同網(wǎng)段的IP地址進(jìn)行連接,而不會(huì)采用192.168.0網(wǎng)段的地址進(jìn)行連接。看到這里,大家或許已經(jīng)明白了。問題的關(guān)鍵就在于主機(jī)不能自動(dòng)識別采用正確的連接方式,而是采取的類似“隨機(jī)搶答”的方式,既可能采用NetBT,也可能采用Direct hosting,當(dāng)選擇前者時(shí)就會(huì)出現(xiàn)不通的故障,使用后者時(shí)則完全正常。 |
【收藏】【打印】【進(jìn)入論壇】 |
|
|
|
|
|
|
|