对于很多网络小白来说,一般网络出了故障,都是先打开360的断网急救箱,但是对于网络工程师来说,就好像PS设计大神看普通人用某图秀秀的感觉一样,三个字:瞧!不!起!
作为一名合格的网络管理员,必须逼格满满啊!随时做好解决整个企业基础设施中的故障问题的准备。短短一分钟时间里,他们可能会排除PC无法向无线网络进行身份验证的原因,而下一步他们可能正在试图找出为什么BGP neighbor命令正在漂移。小到基本故障排除工具(如ping,traceroute和DNS查找),先进一点的比如协议分析器、SNMP监控工具等等。
网络抓包
从网络抓包就可以分析出很多东西,其中一项就是用来做排错。首先最常见的是通过抓包数量来判定网络行为的是否正常,比如ARP病毒爆发一定会收到大量ARP数据包;攻击行为也很多时候体现为大量数据包(但是一般判断这种攻击行为抓包不会放在第一步,只是在确定攻击特征时需要抓包);当然还有其他很多情况,适用于通过抓包数量来分析的。
简单网络监控协议(SNMP)
在企业环境中,SNMP工具,如SolarWinds网络性能监视器,HPE的网络节点管理器i(NNMi)或CA Spectrum,都可以监控网络设备和特定接口的运行状况。这些工具还可以设置警报,以便在特定接口或设备关闭时通知网络工程师,这有助于管理员迅速清除网络中断的根本原因。
协议分析器
协议判断,比如win2008和win2003通信时因为window scale不兼容,导致窗口过小,而程序设计适当时,通信变动极其缓慢。这些判断都是建立在抓包协议分析的基础上的;另外不同厂商SIP通信对接也有可能会用到协议分析。
协议分析器对于需要调查数据流到数据包级别大有用处,通过这个工具可以查看客户端和服务器之间的特定交互,是拦截和记录数据包的软件,例如,如果特定PC与驻留在服务器上的应用程序的连接缓慢,可以使用协议分析器来识别任何通信、延迟问题或可能是根本原因的其他问题。
NetFlow分析
NetFlow是一种数据交换方式,其工作原理是:NetFlow利用标准的交换模式处理数据流的第一个IP包数据,生成NetFlow 缓存,随后同样的数据基于缓存信息在同一个数据流中进行传输,不再匹配相关的访问控制等策略,NetFlow缓存同时包含了随后数据流的统计信息。
例如Plixer的Scrutinizer或SevOne的NetFlow工具来钻取数据,以获得多种用途。从网络故障排除的角度来看,NetFlow分析可以快速跟踪诸如顶级应用程序、顶级主机以及网络流动行为的变化等现象,以发现诸如带宽pig之类的问题。
集中式日志系统
解密网络设备日志的做法是非常有用的故障排除技术。我们要用到的软件是syslog-ng和php-syslog-ng,安装了syslog-ng和php-syslog-ng(当然还需要apache、php和mysql的支持)的机器作为这个系统的服务端,其它所有的服务器或者网络设备作为客户端,通过udp协议向syslog-ng服务器发送syslog信息。syslog-ng服务器将这些log记录下来,记录为log文件或者insert到mysql数据库中,通过将所有网络设备日志收集并存储到中央存储库中来简化此操作,然后使用分析功能将来自多个设备的日志事件相关联,以识别并快速解决网络问题。
此外,专业Wi-Fi分析仪,如Netscout AirMagnet或Ekahau频谱分析仪,可以很好的解决企业中需要维持高可靠性和无处不在的Wi-Fi的需求。
反正万变不离其宗,基本思路就是,出了故障,做分析,定位故障的层面,涉及到哪个协议,哪个阶段,然后抓包,筛选出对应的报文,然后读报文,看报文中的字段反应的情况是否和你分析的一致,如果和你分析的一致,则证明你的分析很大可能是正确的,按你的分析去排错,如果和你分析的不一致,则推倒重来。