找回密码
 注册账号

QQ登录

只需一步,快速开始

手机号码,快捷登录

手机号码,快捷登录

初学者课程:T3自学|T6自学|U8自学软件下载课件下载工具下载资料:通资料|U8资料|NC|培训|年结积分规则 | 使用常见问题Q&A
知识库:U8 | | NC | U9 | OA | 政务U8|U9|NCC|NC65|NC65客开|NCC客开新手必读 | 任务 | 快速增金币用友QQ群[微信群]
查看: 1667|回复: 2

谈谈NETBIOS与网上邻居的浏览(一 )

[复制链接]
发表于 2009-11-2 10:31:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册账号

×
谈谈NETBIOS与网上邻居的浏览(一 )
发信站: IBM技术中心论坛 (2001年05月21日22:02:26 星期一), 站内信件
有关网上邻居的问题,问的人一直比较多,在理解上存在的误区也普遍较为严重。鉴于
Microsoft的NETBIOS文档不是很细致,我四处收集了一些相关资料加上自己的实践经验
写了这个系列,希望能对大家有所帮助. 本来想为了增加可读性,把这个系列写成问
答的形式,不过一时之间脑袋里也编不出这么多的问题,还是按部就班先感性的对微软
的浏览服务作一大致介绍,然后再深入剖析NETBIOS的具体工作机理,大家要是有什么问
题,可以提出来我们一起讨论. 计划分三部分来讲,微软网络浏览过程,深入NETBIOS剖析
,以及网络设置详述
***微软网络浏览过程简介***
在"Windows NT系统管理技术内幕"一书中,讲到了一个非常具有代表性的问题,我把它
摘抄了下来:
问:什么情况下会导致在网络邻居中计算机能看见却无法访问或可以访问却看不见?
请选择最佳答案:
A.你的网络存在物理问题,比如网线
B.作为域主浏览器的Windows NTserver的浏览服务坏了
C.Windows NTserver网卡有问题
D.你的网络没有问题,用户描述的是正常的微软浏览现象
正确答案
书上的解释:微软的网络浏览可能在使用中出现"中断",而实际上它们并没有中断,这种
误解是由于用户对微软网络浏览的处理过程不熟悉造成的。
就象同学们经常在抱怨的"为什么别人的网上邻居可以用,我的却不行?"
"为什么有时候可以浏览,有时候却无法浏览网络?"解铃还须系铃人,让我们一起去看
看微软的网络浏览到底是如何实现的。鉴于大家可能对NT的"域"概念还不甚了解,出现
浏览故障的也多为98的机子,我将以98的"工作组模式"为大家讲解。
1.什么是浏览列表(Browsing List)
在微软网络中,用户可以在浏览列表里看到整个网络(何指?子网还是广播域?大家可
以考虑考虑)上所有的计算机。当你通过网上邻居窗口打开整个网络时,你将看到一个
工作组列表,再打开某个工作组,你将看到里面的计算机列表(也可在DOS方式下用
net view /domain:workgroupname命令得到),这就是我们所说的Browsing List。工
作组从本质上说就是共享一个浏览列表的一组计算机,所有的工作组之间都是对等的,
没有规定不可以让所有的计算机同处于一个工作组中。
2.浏览列表在哪里
曾在木棉上看到过一场争论,有人说:网上邻居里的计算机列表是广播查询得来的。可
有人举反例说:我的同学都关机了,可我还是能在网上邻居里看到它,应该是从HUB或
交换机之类较为固定的设备的缓存中取得的。 其实他们都只说对了一个方面,把他们
二人的说法结合起来就是正确答案了---浏览列表是通过广播查询浏览主控服务器,由
浏览主控服务器提供的。
3.浏览主控服务器又是什么
浏览主控服务器是工作组中的一台最为重要的计算机,它负责维护本工作组中的浏览列
表及指定其他工作组的主控服务器列表,为本工作组的其他计算机和其他来访本工作组
的计算机提供浏览服务,每个工作组都为会每个传输协议选择一个浏览主控服务器,而
我们经常遇到的无法浏览网络的错误大多是因为你所处的工作组没有浏览主控服务器而
造成的。你可以在一个工作组中用NBTSTAT -a computername命令找出使用NBT协议的浏
览主控服务器,它的标识是含有\_MSBROWSE_名字段。
4.浏览主控服务器是如何指定的
缺省情况下,win98工作组中的浏览主控服务器是该工作组中第一台启用文件及打印机
共享功能的计算机,也允许手工将一台win98计算机配置为浏览主控服务器(方法会在
后面讲述网络配置时具体介绍,但由于浏览主控服务器需要维护动态浏览列表,性能会
受影响),如果一个工作组中有多台计算机配置了这个选项,或是当前的浏览主控服务
器关闭了系统,又没有其他计算机启用主控设置时,就要进行主控浏览器的选举。5.如
何通过浏览器选举产生浏览主控服务器 关于浏览器的选举报文,不太好抓包,我就只好
按书上的东西来讲述了.其实过程很简单,首先由一台计算机发送一个选举临界报文,该
报文包含了来自发送计算机的信息(操作系统,版本及NETBIOS名等),选举报文向网络中
广播,工作组中的每一台计算机都会用自身信息与选举报文进行优先级比较,主要是操作
系统起主要作用,记得好像是NT Server>NT Workstation>Win98>WFWG,反正到最后是那
个自身条件最好的成为新的浏览主控服务器.
6.整个网络浏览的过程是怎样的
当一台win98进入网络时,如果它带有服务器服务(启用了文件及打印机共享)会向网
络广播宣告自己的存在,而浏览主控服务器会取得这个宣告并将它放入自己维护的浏览
列表中;而没有在相应协议上绑定文件及打印机共享的计算机则不会宣告,因而也就不
会出现在网络邻居里了。当客户计算机想获得需要的网络资源列表时,首先会广播发出
浏览请求,浏览主控服务器收到请求后,如果请求的是本组的浏览列表,则直接将客户
所需的资源列表发回;如果请求的是其它工作组的浏览列表,浏览主控服务器会根据本
身Browsing List中的记录找到相应工作组的主控浏览器返回给用户,用户可从那里得
到它想要的浏览列表。至于如何去和另一台计算机共享交换资源,就不是我们这里要讨
论的问题了。
明白了网络浏览的原理,下面我给大家讲一个有用的应用,现在很多同学出于安全的考
虑都不太欢迎陌生人通过网上邻居访问自己的机子,可有时下部电影又需要给认识的同
学共享出来,因而还不能删除文件及打印机共享服务。怎么办?有些人给共享名加个$
,以达到隐藏的效果,可这用DOS下的net share是可被看到的;有些人给共享加上密码
,可听说这也是有办法破解的,而且很容易激起"黑客同志"的好奇心。
有没有办法将自己的机器在网络邻居里隐藏起来呢?而对于认识的同学可以让他用\IP
来访问。想对了,关键就是要阻止自己的机器向网络中去宣告自己,而且我知道我们其
中的一些人已经将此变成了现实,至于方法嘛,就不要来问我了。
cjt注:因为有关win98浏览服务的资料很少,涉及的书籍也多为以NT的"域"模型进行介
绍,因而我只能根据自己的理解结合netxray的实践来测试,细节部分难免有错,欢迎
大家指正。7.在我的网上邻居里为什么有些机子访问不了
如果微软的网上邻居真能做到所见即所得,相信抱怨它的人不会象现在这么多,可通过
前面对浏览服务的介绍,大家已经知道这是不可能的,因为浏览列表的获得不是通过访
问其中每一台机子得到的,很多时候网络中的计算机并不能正确更新浏览列表。当一台
计算机正常关机时,它会向网络发出广播宣告,使浏览主控服务器及时将它从浏览列表
中删除;而非正常关机后,浏览列表里仍会把该条目保持很长一段时间(NT下是45分钟
),这就是我们仍能在网络邻居里看到它的原因.而98的稳定性是众所周知的----在还没
来得及关机前就已经崩溃了^-^ 这第一部分就先写到这里,不知大家的感觉如何,想来
都觉得是看得挺过瘾,却解决不了什么问题,比如浏览网络的必要条件是什么,
NetBEUI?TCP/IP?文件及打印机共享还是NETBIOS API?用\IP浏览远程主机的原理是
什么?查找计算机可以跨路由器查找吗?喜欢动手的同学完全可以自己用Netxray去搞
清楚,懒惰一点的嘛就做好准备等着看下一部分--深入NETBIOS剖析了。
在这部分里,我首先将对NETBIOS作一些基础性的介绍,然后主要针对LANA编号,
NETBIOS名字表,NBT这三方面对NETBIOS的特性进行讲解,使大家对NETBIOS接口通讯的
原理有所了解,并掌握使用NETBIOS名字表来识别网上邻居浏览故障及其排除的方法。
其中可能要借助一些网络命令,如net,nbtstat等,若有不会使用的同学请自行查阅
windows帮助文档(最好看NT下的,98的有点渣渣),这里就不作解释了。 熟悉网络编
程的同学都知道,在Windows下有两套重要的网络API,WINSOCK和NETBIOS。平时我们用
IE浏览网页,用FOXMAIL收发邮件以及用OICQ聊天用的都是WINSOCK API,但还有一部分
网络应用需要用到传统网络接口NETBIOS,浏览网上邻居和共享文件就是其中的典型。
虽然微软已经在其最新的WINSOCK API里加入了对AF_NETBIOS地址族的访问,并打算从
它的win2000中使对NETBIOS API的支持变成可选项,但NETBIOS的真正消亡还有待时
日。这里我不想翻开NETBIOS厚重的历史去评判它的优劣来浪费大家的时间。存在即是
真理,我们切入正题好了。 NETBIOS API的最大优点就是使得编程接口"与协议无关
"---应用程序可通过TCP/IP,NetBEUI以及IPX/SPX来运行。举个例子来说,如果你在网
络属性里同时添加了这三种协议,那当你通过网上邻居浏览某台机子的资源时能确定用
的是哪种协议在和它进行通信吗?不过由于这种"与协议无关"性是通过对传输协议本身
进行改造,在相应协议上添加NETBIOS接口实现的,所以也就产生了一些局限性:

Gdisk32一键分区.rar

2.1 MB, 下载次数: 0, 下载积分: 金币 -5

金币

快速加金币

下载提示积分金币不足,非特定用户等

无法下载,可充值金币

发表于 2009-11-2 10:58:20 | 显示全部楼层
顶一下  谢谢楼主分享!
发表于 2009-11-13 09:56:37 | 显示全部楼层
看过 顺便学习一下!
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

QQ|站长微信|Archiver|手机版|小黑屋|用友之家 ( 蜀ICP备07505338号|51072502110008 )

GMT+8, 2024-6-17 18:53 , Processed in 0.028559 second(s), 11 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表