天天看點

網絡基礎:NetBIOS

網絡基礎小補。

利用 NetBIOS 名稱與其他計算機通信

網絡中的計算機之間必須知道IP位址後才能互相通信。但對人來說IP難以記憶,NetBIOS計算機名稱比較容易記憶。當計算機使用 NetBIOS 名稱與其他計算機通信時,必須先通過 NetBIOS名稱找到IP位址,然後再通過IP位址通信。由NetBIOS名稱找出IP位址的操作被稱為NetBIOS名稱解析(NetBIOS name resolution)。

NetBIOS名稱是什麼?

NetBIOS名稱是一個長度為16個字元的字元串。MS網絡中用到NetBIOS名稱的地方有:計算機名,域名,工作組名。

NetBIOS 計算機名:nick-os

DNS主機名:nick-os.mydomain.net

計算機全名:加不加域不一樣

不加域時:nick-os

加入域後:nick-os.mydomain.net

全域名 (Fully Qualified Domain Name, FQDN) 或 DNS名稱。

nick-os.mydomain.net

(沒有加入域時,就沒有什麼 “全域名”和 “DNS名稱”)

如何檢視目前機器注冊的NetBIOS名稱:

通過NetBIOS名稱來解析IP位址

主要有下面三種方式:

1. 檢視NetBIOS名稱緩存區

我們也可以通過指令來檢視目前的NetBIOS名稱緩存區:

2. 通過廣播的方式搜尋對方的IP位址(應盡量避免使用這種方式)

3. 直接向WINS伺服器查詢

NetBIOS節點類型

上面的三種方法都可以解析到IP位址,但究竟會用哪一種呢?

這取決于計算機采用的NetBIOS節點類型(node-type):

B-node: 廣播方式

P-node: 直接向WINS伺服器查詢

M-node: B與P的混合方式(mixed),先廣播,若失敗,再向WINS伺服器查詢

H-node: 也是B與P的混合方式(hybird),但是先向WINS伺服器查詢,若失敗,之後才廣播

檢視 NetBIOS節點類型:

采用H節點的WINS用戶端,其NetBIOS名稱解析的完整順序為:

1. 檢查要查詢的計算機名稱是不是自己的計算機名稱。

2. 檢查NetBIOS名稱緩存區。

3. 向WINS伺服器查詢。

4. 發出廣播消息。

5. 檢查LMHOSTS檔案。

6. 檢查HOSTS檔案或向DNS伺服器查詢。

LMHOSTS檔案和HOSTS檔案存放于 “%systemroot%\system32\drivers\etc”目錄下。