蛋鸭的养殖技术:超级网络分析工具Sniffer Pro详解(上)

来源:百度文库 编辑:九乡新闻网 时间:2024/04/29 22:34:28

  【IT专家网独家】当一个网络出现故障时,就需要由网络管理员查找故障并及时进行修复。但局域网一般都有几十台到几百台计算机,以及多个服务器、交换机、路由器等设备,管理员需要检查这些设备,检查各个端口的连接等,检查是否是黑客或者木马所为,工作量非常大,而且排除故障也非常麻烦。有了SnifferPro,就可以很容易的找出问题所在。Sinffer Pro是美国NetworkAssociates公司生产的一款网络分析软件,可用于网络故障与性能管理,在局域网领域应用非常广泛,占到网络分析软件市场的76%。

  Sniffer Pro是一种很好的网络分析程序,允许管理员逐个数据包查看通过网络的实际数据,从而了解网络的实际运行情况。它具有以下特点:

  1. 可以解码至少450种协议。除了IP、IPX和其它一些“标准”协议外,Sniffer Pro还可以解码分析很多由厂商自己开发或者使用的专门协议,比如思科VLAN中继协议(ISL)。

  2. 支持主要的局域网(LAN)、城域网(WAN)等网络技术(包括高速与超高速以太网、令牌环、802.11b无线网、SONET传递的数据包、T-1、帧延迟和ATM)。

  3. 提供在位和字节水平上过滤数据包的能力。

  4. 提供对网络问题的高级分析和诊断,并推荐应该采取的正确措施。

  5. Switch Expert可以提供从各种网络交换机查询统计结果的功能。

  6. 网络流量生成器能够以千兆的速度运行。

  7. 可以离线捕获数据,如捕获帧。因为帧通常都是用8位的分界数组来校准,所以Sniffer Pro只能以字节为单位捕获数据。但过滤器在位或者字节水平都可以定义。

  需要注意的是,使用Sniffer捕获数据时,由于网络中传输的数据量特别大,如果安装Sniffer的计算机内存太小,会导致系统交换到磁盘,从而使性能下降。如果系统没有足够的物理内存来执行捕获功能,就很容易造成Sniffer系统死机或者崩溃。因此,网络中捕获的流量越多,Sniffer系统就应该运行得更快、功能更强。因此,建议Sniffer系统应该有一个速度尽可能快的处理器,以及至少512MB的物理内存。

  1. Sniffer Pro计算机的连接

  要使Sniffer能够正常捕获到网络中的数据,安装Sniffer的连接位置非常重要,必须将它安装在网络中合适的位置,才能捕获到内、外部网络之间数据的传输。如果随意安装在网络中的任何一个地址段,Sniffer就不能正确抓取数据,而且有可能丢失重要的通信内容。一般来说,Sniffer应该安装在内部网络与外部网络通信的中间位置,如代理服务器上,也可以安装在笔记本电脑上。当哪个网段出现问题时,直接带着该笔记本电脑连接到交换机或者路由器上,就可以检测到网络故障,非常方便。

  (1) 监控Internet连接共享

  如果网络中使用代理服务器,局域网借助代理服务器实现Internet连接共享,并且交换机为傻瓜交换机时,可以直接将Sniffer Pro安装在代理服务器上,这样,Sniffer Pro就可以非常方便地捕获局域网和Internet之间传输的数据。

  如果核心交换机为智能交换机,那么最好的方式是采用端口映射的方式,将局域网出口(连接代理服务器或者路由器的端口)映射为另外一个端口,并将SnifferPro计算机连接至该映射端口。例如,在交换机上,与外部网络连接的端口设为A,连接笔记本电脑的端口设置为B,将笔记本电脑的网卡与B端口连接,然后将A和B做端口映射,使得A端口传输的数据可以从B端口监测到,这样,Sniffer就可以监测整个局域网中的数据了。

  (2) 监控某个VLAN或者端口

  若欲监控某个VLAN中的通信时,应将Sniffer Pro计算机添加至该VLAN,使其成为该VLAN中的一员,从而监控该VLAN中的所有通信。

  若欲监控某个或者几个端口的通信时,可以采用端口映射的方式,将被监控的端口(或若干端口)映射为Sniffer Pro计算机所连接的端口。

2. 设置监控网卡

  如果计算机上安装了多个网卡,在首次运行Sniffer Pro时,需要选择要监控的网卡,应该选择代理网卡或者连接交换机端口的网卡。当下次运行时,Sniffer Pro就会自动选择同样的代理。

  Sniffer安装完成以后,从“开始”菜单运行,显示“Settings”对话框,在“Select settings formonitoring”列表框中单击选择要监控的网卡,单击“确定”按钮,Sniffer就会监控该网卡中传输的数据,如图1所示。如果以后要改变监控设置,可以选择“File”菜单中的“Select Settings”选项,同样会出现该对话框,用来改变要监控的网卡。

  图1 选择网卡

  如果在“Settings”对话框中没有显示要监控的网卡,可以将其它网卡添加到该列表框中。单击“New”按钮,显示如图2所示“New Settings”对话框,可以设置新添加的网卡。

  图2 添加新网卡

  Description:为该网卡设置一个名称,可以是关于该网卡的描述。

  Network:该下拉列表中列出了本地计算机上的所有网卡,可以选择要使用的网卡。

  NetpodConfiguration:在这里可以设置高速以太网Pod,为了使以太网可以以全双工模式工作,在“Netpod”下拉列表中选择“FullDuplex Pod(全双工Pod)”选项,在“Netpod IP”框中输入SnifferPro系统的网络适配器的IP地址再加1。例如,Sniffer Pro IP地址为192.168.1.1,NetpodIP地址就必须设置为192.168.1.2。全双工Pod要求有静态IP地址,所以应该禁用DHCP。

  Copy settings:在该下拉列表中显示了本地计算机中以前定义过的网卡设置,可以选择一种配置,将其复制到该新添加的网卡中。

  设置完成以后单击“OK”按钮,添加到“Settings”对话框中,然后就可以选择监控该网卡了。

3. 监控网络状况

  Sniffer的界面并不复杂,通过工具栏和菜单栏就可以完成大部分操作,并在当前窗口中显示出所监测的效果,如图3所示为Sniffer的主窗口。

  图3 Sniffer主窗口

  在Sniffer主窗口中,默认会显示Dashboard(仪表盘)窗口,共显示了三个仪表盘,即“Utilization%”“Packets/s”“Errors/s”,分别用来显示网络利用率、传输的数据和错误统计。

  (1) Utilization%(利用率百分比)

  用传输量与端口能处理的最大带宽值的比值来表示线路使用带宽的百分比。表盘的红色区域表示警戒值,表盘下方有两个数字,第一个数字代表当前利用率百分比,第二个是最大的利用率百分比数值。监控网络利用率是网络分析中很重要的部分。但是,网络数据流通常都是突发型的,一个几秒钟内爆发的数据流和能在长时间保持活性数据流的重要性是不同的。表示网络利用率的理想方法要因网络不同而改变,而且很大程度上要取决于网络的拓扑结构。在以太网端口,利用率到40%,效率可能已经很高了,但是在全双工可转换端口,80%的利用率才是高效的。

  (2) Packets/s(每秒传输的数据包)

  显示当前数据包的传输速度。同样,红色区域表示警戒值,下方的数字显示当前的数据包传输速度及其峰值。根据数据包速率可以得出网络上流量类型的一些重要信息。例如,如果网络利用率很高,而数据包传输速度相对较低,则说明网络上的帧比较大;而如果网络利用率很高,数据包传输速率也很高,说明帧比较小。通过查看规模分布的统计结果,可以更详细的了解帧的大小。

  (3) Errors/s(每秒产生的错误)

  该表盘可显示当前出错率和最大出错率。不过,并非所有的错误都产生故障。例如,以太网中经常会发生冲突,并不一定会对网络造成影响,但过多的冲突就会带来问题。

  如果要重新设定仪表盘的值,可以单击仪表盘窗口上方的Reset(重置)按钮。

  在仪表盘窗口中,单击“Detail(详细)”,显示如图5所示窗口,以表格的形式显示了关于利用率、数据包传输速度和出错率的详细统计结果。在该窗口下方的“Network”窗口中,可以选择要显示的内容,如Packets/s(数据包/秒),每秒出现的数据包的总数;Utilization(利用率),网络利用率,这是Sniffer中最常用的功能,可以查看哪一天中哪个时间利用率最高;Errors/s(错误/秒),每秒出现的整体错误的数目,若设定基准,可以看到一天中哪个时间段遗失的数据包最多;Bytes/s(字节/秒),每秒出现的数据的总字节数,这与数据包不同,字节预先设定好了长度,而数据包长度各不相同;Broadcasts/s(广播/秒),每秒产生的广播数据包数目。广播是从主机发往区段上所有其它主机的数据包;Multicasts/s(每秒组播的数据包的数目),是一个主机向特定的主机发送的数据包。

  图4 详细信息

  在“Network”列表中所显示的信息为:

  Packets(数据包):网络中传输的数据包总数。

  Drops(遗失):Sniffer Pro遗失的数据包数目(可能因为系统性能问题而遗失的帧的数量。在网络活动高峰期经常会遗失数据包)。

  Broadcasts(广播):Sniffer Pro监测到的广播帧的数目。子网或者VLAN上所有的组件都必须处理所有的广播数据包,过多的广播会使网络上所有的系统性能整体下降。

  Multicasts(组播):Sniffer Pro监测到的组播帧的数目。尽管组播帧影响到的网络设备数目要比广播的少,但是组播流量过大也会引起信息通过量出现问题。

  Bytes(字节):Sniffer Pro监控到的总字节数。把这个数乘以8就得到了二进制的位数。

  Utilization(利用率):网络当前利用率。

  Errors(错误):网络当前错误总数。

“SizeDistribution(数据包大小的分布)”列表中显示了网络中各种大小的据包(包括4Bytes的CRC)的分布情况,包括64Bytes,65~127Bytes,128~255Bytes,256~511Bytes,512~1023Bytes,1024~1518Bytes等各种不同字节数的数据包总数。

  “DetailErrors(错误详细信息)”列表中显示了“Errors/s”表盘中显示的错误的详细情况,包括CRC、数据包过短(Runts)、溢出(Oversizes)、数据包碎片(Fragments)、数据包过长(Jabbers)、校准错误(Alignments)和网络冲突(Collisions)。过短的数据包指的是CRC值合理,但是大小低于标准(小于64kB)的数据包。数据包碎片指的是大小低于标准(小于64kB),而且CRC值不合理的数据包。

  这三个仪表盘是非常有用的工具,用它们可以很容易地看到从运行捕获过程开始,有多少数据包经过你的网络,多少帧被过滤挑选出来(拒绝接收),以及你的计算机因没有足够的资源完成捕获而遗失了多少帧,可以看到从开始到当前时间内,网络的利用率、数据包数目和广播数。如果发现网络在每天的一定时间都会收到大量的组播数据包,这就可能出现了问题,就需要分析哪个应用程序在发送组播数据包。

  广播往往导致网络拥塞和计算机性能下降。单播(一台计算机与另一台计算机通信)只会干扰一台计算机,这时目标计算机会中断来处理这些数据包,目标计算机就是单播的终点。如果是广播风暴,网络上的所有主机都必须中断来处理数据包,而且大多数情况下,网络不希望取消任何一个数据包。这种情况会导致延迟,但可以通过安装路由器将网络划分出广播域,或者通过移除广播风暴的来源来解决。因为广播对网络来说也是不可或缺的。

  组播问题也很常见,而且很多程序都被设定可以进行组播,只有使用协议分析软件才会发现它们。

  通过以下这六种情况可以知道,如何阻断网络上的广播流量:

  与使用交换机或者桥接器的网络相比,基于Hub的网络中的节点会发现更多的流量。可以考虑在Hub之间使用一个交换机,如果可能,应升级所有的交换机。

  在Windows网络中,主浏览器服务和NetBIOS是最主要的。要保证将WINS服务器安置到正确的位置,可以将不需要的NetBIOS流量从网络设定和设备中删除,规划并正确安置主浏览器和后备浏览器,然后将允许网络上其它工作站参与选择浏览器的功能取消。Windows的TechNet网站会有这些步骤的详细介绍。

  在Novell网络中,有三种情况会造成网络带宽不足:网络客户端被设置为自动探测服务器的帧类型;客户端被设置为用IPX/SPX和SAP来取代TCP/IP;NetWare服务器被设置来使用RIP,而不是默认路径。

  如果网络上的接口与不必要的RIP(或者IPX RIP)或者SAP相连,网络就会产生不必要的广播数据包。

  路由器可以用来减少广播的数量。在默认情况下,路由器不会通过广播数据包,除非你对它进行了这样的设置。

  删除没有用的协议与设备之间的绑定关系。这样做会提高计算机的速度,因为它不会经受一个绑定命令,而且不需要的协议不会向VLAN发送广播。

  这些提示可以消除网络上的一些流量。还有很多方法可以减少流量,但是如果用这些常用的方法,可以减少25%~50%或者更多的流量。至少有20%的网络流量是由广播或者组播造成的,这些流量应该作为问题标出来。

  SnifferPro的很多网络分析结果都可以设定阀值,若超出阀值,报警记录就会生成一条信息,并在仪表盘上以红色来标记超过设定阀值的范围。另外需要注意的是,要记录下警告信息,并且必须查看系统超过了阀值多少次,以及超出阀值的频率是多少,这些信息可以帮助管理员确定网络是否有问题。

  单击仪表盘上的“Set Thresholds(设定阀值)”按钮,显示如图6所示“DashboardProperties”对话框,可查看或者修改这些值。SnifferPro预先设定了默认的阀值,通常都是网络一些流量平均值。另外,也可以在SnifferPro窗口中,选择“Tools”菜单中的“Options”选项,打开“Options”对话框,选择“MAC Threshold(MAC阀值)”选项卡,同样也可以像该对话框一样查看或者修改其它阀值。

  图5 Dashboard Properties

在“HighThreshold”列表中,可以设置各项的阀值。在调整阀值时,仪表盘也随之改变。例如,利用率表盘默认为50%,如果将“Utilization%(利用率)”阀值改为30%,则表盘的红色阀值区域就会发生变化,如图7所示为利用率表盘设定前后的变化,可以看到红色阀值区域从50已经下降到30处。

  图6 阀值设定前后的变化

  阀值的设定要根据自己的网络状况,比如,管理员觉得网络利用率达到30%就已经很高了,就可以先设定为30%,当超出阀值时,警告记录中就会有信息显示。要查看警告记录,可以选择“Monitor”菜单中的“Alarm Log”选项,显示“AlarmLog”对话框,如图8所示,这里记录了所有超过阀值时的警告信息。另外,还需要注意查看是否始终都超过设定阀值,在“LogTime”中显示大约每隔不到10秒就会超过阀值,并记录到警告记录中,这说明需要提高阀值或者解决已存在的问题。

  图7 警告日志

  在检修故障时设定一个临时的阀值是很有帮助的。例如,正在监控来自路由器的流量,而且知道每秒钟组播的流量不应该多于两个帧,就可以把每秒组播的阀值设为“2”。当SnifferPro监控流量时,如果超过了这个值,警告记录中就会加入一条警告信息。不过要记住,当修复故障以后应把阀值改回原来的数值。