浅谈netbios及其相关内容

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://jeffyyko.blog.51cto.com/28563/141086

       Netbios想必大家都有接触。对于netbios的理解,我以前有很多困惑,不知道如何掌握这些知识点,这几天通过了一段时间的实验和学习,有了一些体会,和大家一起分享。

 

阅读本文,你可以了解到以下内容

 

◆netbios的来龙去脉

◆netbios名和计算机名的关系

◆netbios名的存在依据

◆netbios名和IP地址解析的4种方式

◆如何查看本机netbios缓存

◆netbios和netbeui的关系

 

一、来历

       用几句简单的话来概括netbios的来由,毕竟了解一个事物,我们不能摈弃它的历史,尽管可能很久远。跳过这步,即使明白了,我想这也是不完整的。

       Netbios,到底是协议还是接口?不同的出处可能因侧重点不懂而不尽相同。我们一起来刨根问底,NetBIOS是什么?是一种协议。什么协议?是一种在局域网上的协议。谁来用呢?是局域网的一些应用程序(软件)。这些应用程序需要通过某种手段或者途径协同合作才能实现或完成某种操作或目的,他们运行的基础平台是什么??  是小型的局域网内的网络,也就是小型局域网。基础平台有了,如何去区分或者标记他们呢? 那就需要给每个应用程序打上标签,命名,否则就会混乱不堪。

好,重点来了,这个工作谁来完成,netbios应运而生。它就是这样一种东西。

简而言之,NetBIOS是一种在局域网上的应用程序可以使用的应用程序编程接口,

       最早由Sytec Inc在1983年为IBM开发。微软把netbios作为一种高级程序接口来标识网络上的每个资源,它的长度是有限的,仅仅16个字符位。现在的2000/2003系统中依然存在,只是集成到Tcp/IP协议中,即Netbios over Tcp/IP,也称之为NetBT。可能有朋友要问了,我们平时用计算机名对一台电脑进行标识,那这个和netbios名称有什么关系呢?恩,好问题! 之前已经提到过,netbios名的字符长度为16位,前15位由用户指定,第16个字符用来标识名称后缀。其实,前15位和我们现在用的计算机名是一模一样的,没有什么区别,只是计算机名的最大长度是63个字节而已。

 

二、Netbios的存在形式

      尽管在win2000以后就不再独立支持netbios了,但依然存在于windows系统中。我们来找找看。为了保证最大的系统兼容性(主要是为了照顾98/NT系统),netbios以两种形式存在。

1、第一种

我们可以打开网卡的TCP/IP属性设置界面,

1.jpg

点击右下方的【高级】,如下图:

2.jpg

下方的红框内就是netbios的一种体现形式,我们可以手动开启或关闭。

主要运用于2000、xp 等客户端系统上,当然2000adv ser、2003 ser也有。

2、第二种

为了实现netbios名称解析和提高解析效率,微软开发了WINS,它是专门来负责netbios名称解析的一种网络服务。这也就是netbios的第二种体现方式,我们把netbios的名称解析服务简称为NBNS,即NetBIOS Name Server。

 

三、Netbios名和IP地址解析的4种查询方式

      我们再来谈一谈netbios的解析。解析,我们可以理解是一种对应关系,就是netbios名和计算机ip的对应关系。 有一点要先说明,当我们的网络上的各类资源通过netbios进行通信时,那我们就说这种通信是基于NetBIOS名的,而不能基于IP地址。netbios既是一种接口,也是一种协议,而TCP/IP是一类协议簇,在此之上通信的基础就是IP地址。netbios名和ip地址混合存在,必定会涉及到相互解析的问题。

那由谁来完成这项任务呢?通常有几种不同的查找方式:

1、netbios广播

在本地网络上发送广播信息,查找某个netbios名对应的IP地址。这种方式也可以用来注册自己的NetBIOS名,因为当netbios主机启动的时候就会向整个网络通告自己当前的NetBIOS名,如果已经有其他计算机使用了这个名字,这个计算机就会收到错误信息。

2、本机缓存

支持NetBIOS的计算机都维护一张NetBIOS名和相应IP地址的列表。当有解析请求时,通过对应自己的缓存表来查找IP地址。

我们还可以通过nbtstat -c 这个命令查询本机的netbios缓存表。

下面是一个查询的实例,

3.jpg

3、NetBIOS名字服务器

也就是NBNS,NetBIOS Name Server(s))。在windows中,NBNS的具体体现就是WINS。通过WINS服务来实现netbios名到ip地址的解析。

4、Lmhosts文件

这个文件位于C:\WINDOWS\system32\drivers\etc下,与hosts文件在同一路径。windows可以通过查询lmhos ts来判断NetBIOS名和IP的对应关系。

 

四、Netbios和Netbeui协议

 

      什么是Netbeui呢?即NetBIOS Extend User Interface,由IBM于1985年提出的一种传输协议,而NetBIOS仅仅是通过一组命令来让系统或程序使用网络而已。所以严格意义上将,Netbeui才算得上是一种真正早期的小型局域网协议。以前的不少程序都需要运行在netbeui的基础只上,当然自动TCP/IP大规模应用起来以后,这类协议就很少被使用,只是作为一种补充协议存在,新装的XP没有默认被安装,关于安装netbeui协议,网上有很多教程可以参考,所以这里就不作讨论了。

     欢迎指正,谢谢大家。

原创文章,作者:s19930811,如若转载,请注明出处:http://www.178linux.com/1651

(1)
上一篇 2015-03-26 08:35
下一篇 2015-03-26 10:00

相关推荐

  • 一些鲜为人知的编程事实

    我的程序员经历让我明白了一些关于软件开发的事情。下面是一些在编程中可能会让人感到诧异的事情: 一个程序员用了大约只用了10%-20%的时间来编码,而且大多数程序员,无论他的水平如何,其平均每天只有10-12行的代码最终会进入最终的软件产品中。这是因为,优秀的程序员会花费90%的时间来思考、调查、研究最佳的设计。而糟糕的程序员则会花费90%的时间来调试代码,并…

    Linux干货 2016-07-11
  • 创建一个简易的Linux

      目标:   为CentOS 6添加一块新硬件,提供两个主分区;    (1) 为硬盘新建两个主分区;并为其安装grub;    (2) 为硬盘的第一个主分区提供内核和ramdisk文件; 为第二个 分区提供rootfs;    (3) 为rootfs提供bash、ls、cat程序及所依赖的库文件;    (4) 为grub提供配置文件;    …

    Linux干货 2016-12-30
  • wordpress和discuz的负载均衡(lvs-dr)

    wordpress和discuz的负载均衡 实验目的:利用lvs-dr模型实现wordpress和discuz的负载均衡 实验要求:客户端访问wordpress或discuz服务器时,无论被调度至哪台RS上,其会话和访问的页面都应保持一致; 实验环境:一台server用作VS,两台server用作RS,一台server用于部署mysql、NFS、wordpr…

    2017-05-13
  • shell脚本编程

    shell俗称壳(用来区别于核),提供使用者使用界面(命令解析器),它接受用户命令,然后调用相应的应用程序。 同时它还是一种程序设计语言,作为命令语言,它交互式解释和执行用户输入的命令或者自动地解释和执行预先设计好的一连串的命令。作为程序涉及语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。 一、shell脚本基础概念 …

    Linux干货 2016-08-16
  • Elasticsearch 5.0 集群

    IT运维 www.chinasa.net 下载地址:https://www.elastic.co/downloads/elasticsearch 1、JDK 安装略过 node1 部署 2、Elasticsearch安装 #tar zxvf elasticsearch-5.0.0.tar.gz -C /opt/ #cd /opt #mv elast…

    系统运维 2016-12-27
  • JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof使用详解

    摘要: JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsole外,还有jps、jstack、jmap、jhat、jstat、hprof等小巧的工具,本博客希望能起抛砖引玉之用,让大家能开始对JVM性能调优的常用工具有所了解。     现实企业级Java开发中,有时候我们会碰到下面这些问题: Out…

    2017-08-17