尽管前面我们对NetBIOS协议进行了一些简单的了解,但是NetBIOS协议的使用包含了不少内容。那么我们先来了解一下这个协议的数据报结构。然后我们分析一下相关的命令以及参数。希望能给大家提供一个全面的参考资料。
NetBIOS协议结构
NetBIOS协议数据包有很多不同格式,主要取决于服务和信息类型,以及用以传送NetBIOS数据包的传输协议。NetBIOS包含三种基本服务: NAME、SESSION 和 DATAGRAM。作为例子,我们提供 TCP/IP 环境中的NetBIOS名称数据包格式:
Header (12 bytes)
Question Entry (variable)
Answer Resource Records (variable)
Authority Resource Records (variable)
Additional Resource Records (variable)
NBTSTAT命令可以用来查询涉及到NetBIOS协议信息的网络机器。另外,它还可以用来消除NetBIOS高速缓存器和预加载LMHOSTS文件。这个命令在进行安全检查时非常有用。
用法:nbtstat [-a RemoteName] [-A IP_address] [-c] [-n] [-R] [-r] [-S] [-s]
NetBIOS协议参数 :
-a列出为其主机名提供的远程计算机名字表。
-A列出为其IP地址提供的远程计算机名字表。
-c列出包括了IP地址的远程名字高速缓存器。
-n列出本地NetBIOS协议名字。
-r列出通过广播和WINS解析的名字。
-R消除和重新加载远程高速缓存器名字表。
-S列出有目的地IP地址的会话表。
-s列出会话表对话。
NBTSTAT生成的列标题具有以下含义:
Input :接收到的字节数。
Output :发出的字节数。
In/Out :无论是从计算机(出站)还是从另一个系统连接到本地计算机(入站)。
Life :在计算机消除名字表高速缓存表目前“度过”的时间。 #p#
Local Name :为连接提供的本地NetBIOS名字。
Remote Host :远程主机的名字或IP地址。
Type :一个名字可以具备两个类型之一:unique or group
在16个字符的NetBIOS协议名中,***一个字节往往有具体含义,因为同一个名可以在同一台计算机上出现多次。这表明该名字的***一个字节被转换成了16进制。
State
NetBIOS协议连接将在下列“状态”(任何一个)中显示:
状态含义:
Accepting: 进入连接正在进行中。
Associated: 连接的端点已经建立,计算机已经与IP地址联系起来。
Connected: 这是一个好的状态!它表明您被连接到远程资源上。
Connecting: 您的会话试着解析目的地资源的名字-IP地址映射。
Disconnected: 您的计算机请求断开,并等待远程计算机作出这样的反应。
Disconnecting: 您的连接正在结束。
Idle: 远程计算机在当前会话中已经打开,但现在没有接受连接。
Inbound: 入站会话试着连接。
Listening: 远程计算机可用。
Outbound: 您的会话正在建立TCP连接。
Reconnecting: 如果***次连接失败,就会显示这个状态,表示试着重新连接。