一、 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地址。