NetBIOS协议

来源:互联网 发布:程序员代码面试指 pdf 编辑:程序博客网 时间:2024/06/10 07:36


一、 NetBIOS (网络输入输出系统)简介   ---- 通过主机名称转换IP

NETBIOS协议是由IBM公司开发,主要用于数十台计算机的小型局域网。用于将NetBIOS名解析为相应IP地址。

在局域网内部使用NetBIOS协议可以方便地实现消息通信及资源的共享。因为它占用系统资源少、传输效率高,所以几乎所有的局域网都是在NetBIOS协议的基础上工作的。

本机的NetBIOS名字通常与本机的计算机名一样,所以两者经常混为一谈。但NetBIOS名字最长由 16个字符 组成,其中前15个字符由用户指定,最后一个字符表示一种服务。当计算机名长度少于等于15个字符时,NetBIOS名字与计算机名一样,当计算机名超过15个字符时,NetBIOS名字只取前15个字符。当我们启动计算机时,计算机会将本机的NetBIOS名字和IP地址在网络中注册,如果该名字或IP地址已被其他人使用,就会收到一条消息,我们必须更改计算机名或IP地址,否则无法连入网络。

C:\Users\cuipingxu>nbtstat -n

本地连接:

节点 IP 址址: [10.19.85.70] 范围 ID: []

               NetBIOS 本地名称表

      名称               类型         状态

   ---------------------------------------------

   CUIPINGXU-PC2 <00>   唯一        已注册

    TENCENT         <00>   组          已注册

    CUIPINGXU-PC2   <20>   唯一        已注册

NETBIOS名字分两种类型:唯一名(UNIQUE)和组名(GROUP)。

二、NetBIOS应用:

  1、网上邻居

      当我们打开网上邻居,可以看到很多计算机名,这些计算机名就是NetBIOS名字,用它可以打开指定的计算机。

  2、访问共享资源

      如果我们已知某计算机的计算机名,可以直接打开"开始 | 运行",输入地址"\\计算机名\路径",这样可打开指定计算机上的相应文件夹。

  3、samba应用

      Windows 和 Unix 的互访

三、查看本机的NetBIOS名字:

  "nbtstat -n"命令可查看NetBIOS名字。

  这里可看到多个NetBIOS名字,其中包括计算机名、工作组名等,其中名字的第16个字符用十六进制数标识,它代表了一种服务。

四、NetBIOS名字的作用范围

一般情况下NetBIOS名字只能用于本网络,所以我们用网上邻居通常只能看到并访问本网络中的那些计算机,但如果配置了WINS服务器,NetBIOS名字也可以跨网络使用,

这时,用网上邻居或UNC地址就可以跨网络访问计算机了。

五、NetBIOS的解析流程 :  

1.检查NetBIOS名称 缓存 (NetBIOS Name Cache)

  如果计算机与其它计算机已经通讯过,则对方的计算机名与IP地址会被保存到本机的NetBIOS缓存中,通过缓存可以快速找到对方IP地址,每一条缓存的有效期是10分钟,

   我们可以通过命令: nbtstat -c 来查看NetBIOS名称缓存中的数据。

2. 广播 (Local Broadcast)

  计算机利用发送广播消息的方式来查找对方的IP地址,拥有此计算机名的计算机收到广播消息后,就会将它的IP地址告诉发送广播消息的计算机。

3.直接向 WINS (Windows Internet Name Server)服务器查询;

  WINS客户端会将其计算机名与IP地址注册到WINS服务器,因此WINS客户端可以过能WINS服务器来得知其它WINS客户端的IP地址。



0 0
原创粉丝点击