网络排错大讲解

学徒
2021-09-25 / 2 评论 / 22 阅读 / 正在检测是否收录...

网络拍错大讲解

背景:
网络排错(TS-Trouble Shooting)对于网络工程师或运维人员甚至对很多人(搞IT的朋友们)都十分重要,因此知道网络排错的一个详细流程以及流程中每一步的原理就显得非常重要了,当网络出现问题时,工程师就可以迅速排查出网络问题所在,从而快速解决网络问题。

思路:
一、网络排错的必备条件
二、网络排错的基本思路
三、网络排错详细步骤
四、最后重要说明
一、网络排错的必备条件:网络排错并不仅仅是停留在某一个小小命令的使用上,而是一套系统的方法。
1.熟悉OSI七层模型与TCP/IP协议栈:
*无论是OSI七层模型还是TCP/IP协议栈,都是用来描述网络通信的一个过程,以让我们对网络数据的发送和接收有一个大致的过程。
2.而TCP/IP协议栈里面的协议就显得十分重要了,比如:
DNS、TCP、UDP、IP、ICMP、ARP,这些最基本的应该得知道吧,不一定需要有像《TCP/IP协议栈》中说得的那么细,但至少,对于这些协议的基本功能我们是必须得要知道的。
2.了解网络通信的基础设备和其对应的OSI层次:
*像交换机、三层交换机、路由器、防火墙这些最基本的网络设备应该要有些了解,尤其是它们对应的OSI层次以及作用,比如:普通的二层交换机对应OSI七层模型中的数据链路层,它可以隔绝广播域,同时可能通过虚拟局域网技术
(VLAN)来隔绝广播域,二层交换机通过二层地址即MAC地址来实现数据帧的转发;再比如路由器,它对应网络层,可以提供路由寻址的功能等等。
3.了解中小型企业网络的基本架构:
*其实就是要知道上面所说的那些网络设备一般是怎么连接起来的,如果在实际环境中排错,应该就要知道当前网络的一个基本架构情况。
*一般中小型企业网络的基本架构都是这样的:接入层--汇聚层--核心层--出口层。
ktz9x7bx.png
*如果网络环境比较庞大,汇聚层和核心层都会有,像这里的话,就直接没有汇聚层,不过思想是一样的。
4.知道常用的网络排错命令:
*如果用户使用的是Windows操作系统,那么下面的这些命令就很重要了:
ktz9yppz.png
*如果使用的是Linux操作系统,那么也有对应的相关命令。一定熟悉你所使用的设备。
5.清楚知道网络排错的一个重要原则:
*网络排错,就是要判断网络哪里出了问题,因此,你就必须掌握一个重要的原则:关注数据的走向.
*网络排错思路其实就是通过追踪数据的走向来一步步缩小网络故障点的,因此,时刻记住这一点非常非常重要!这也是为什么需要了解中小型企业网络的基本架构。

二、网络排错的基本思路:
1.检查物理链路是否有问题
2.查看本机IP地址、路由、DNS的设置是否有问题
3.测试网关或路由器的通畅情况。先测网关然后再测路由器,一级一级地测试
4.测试ping公网ip的通畅情况(平时要记几个外部IP)
5.测试DNS的通畅情况,可以直接ping网站地址

三、网络排错详细步骤:
*假设有下面的一个网络环境:
ktza20db.png
1.检查物理链路是否有问题:
*这一步有时候是在做网络排错时必须要做的第一步!经常会听朋友说,领导的电
脑上不了网,需要过去排错,搞了老半天,还发现不了问题,最后在几经绝望之
时,竟然发现网线都没接上电脑。这就真的是悲剧了,浪费了很多时间不说,这
样的网络排错思路本来就是有错误的。
*因为也许不是每个人都可以去机房查看交换机的接线情况,所以这一步,排查的
重点范围就应该放在如下面图所示的地方:
ktza35fw.png
*在这一步,下面几点是需要注意排查的:
a.确认电脑本身的网卡有没有问题
b.确认接的网线有没有问题
c.本机所连接的交换机(如果可以去机房查看的话)
*如果上面这几点排查都没有问题了,那么就是该网络环境中的其他设备问题了。
这一范围的排查相对比较简单,因为只涉及到物理链路的连接问题。
*对于这种测试,可以考虑使用测线器,也可以拿一台配置正确的笔记本来做测试
也未尝不可。
2.查看本机IP地址、路由、DNS的设置是否有问题:
*上面第一步,物理链路的排查没有问题了,也就是说,电脑接上网线之后,电脑
有有反应了,可以识别,但是网络还是不通,来到这一步,就应该先把注意的范
围放在电脑的设置上面了。
*这上步,关注的重点是:
a.IP地址设置
*如果采用的是DHCP自动获取的方法,那么这时候只需要看自己本机的设置
上有没有开启自动获取IP的设置以及有没有开启相关的服务;
*如果用的是静态IP,那么就必须要注意IP地址的填写有没有错(一般网络管
理人员给的)、IP地址的子网掩码有没有问题(这很重要,对于静态IP,很
多人在这里设置错误,建议是,最好把IP地址、VLSM这方面的知识学一
下)。
*一般可以用下面的命令查看:
ktza87sx.png
*相关的设置可以在自己的计算机环境上面查看了。
b.路由设置
*对于服务器、PC,一般是指默认网关的设置了;对于路由器本身或三层交
换机,那就是静态路由或动态路由的设置问题了。
c.DNS设置
*主要是要确保所设置的DNS服务器地址到底有没有提供域名解析服务或者
是否出现了故障,至于如何判断,后面会给出方法,这里关注的是,你得设
置一个正确的DNS服务器地址或可以自动获取。在Windows上面可以通过
下面的命令查看:
ktzaa0gy.png
3.测试网关或路由器的通畅情况。先测网关然后再测路由器,一级一级地测试:
*在上面的网络环境中,在网络通的情况下,我们在电脑上使用命令tracert -d命令,会得到下面的结果:
ktzaav8j.png
*通过这个测试结果,可以清楚地知道电脑在访问互联网时,数据的走向情况:
ktzabiha.png
*根据这个数据走向,就可以得到一个重要的思路,就是根据数据走向来检测网络的通畅情况!因此,可以分两步:
a.先测试电脑到网关192.168.2.254的通畅情况
ktzac4zk.png
*可以在自己的电脑上自己ping网关的地址,看是否有响应:
ktzacqve.png
*一般这样的判断方法是比较快的,但有时候,无论怎样ping都不能,那么则可能有以下的几种情况

1.网关设备做了禁止ping的设置
2.网关接口或网关设备出现故障

*对于禁止ping,一般很少会在这些设备在做ping的限制操作,实在是没有太大的必要这样做,当然,网络安全等要求十分严格的除外。ping通192.168.2.254网关后,再ping一下172.16.13.1以确认电脑到整个网关设备都没有问题。
*对于ping不通的时候,建议在电脑上执行如下操作:
ktzaebtl.png
*即查看电脑本身有没有获取到网关的MAC的地址,显然,如果没有网关的MAC地址,那也是不可能ping通网关的,在排除了前面电脑设置的问题后,可以猜测是网关设备出了问题,这时就可以联系网络工程师对网关设备进行测试了。
b.测试到其它路由器的通畅情况
*前面一步没有问题了,也就是电脑到网关通信正常了,再测试网关到出口路由器的通畅情况:
ktzafqnh.png
*这里,使用tracert -d命令就可以了:
ktzag43c.png
*当然,如果发现不通,那么则可能是下面的情况:
1.网关设备与路由器之间的物理链路问题
2.网关设备与路由器之间的设置问题,比如路由协议、接口配置之类的
*出现上面的情况,那就是网络工程师的问题了,当然,如果你是网络工程师,应该要马上查看一下设备的状态,看是不是设备哪里出现问题了。
4.测试ping公网ip的通畅情况(平时要记几个外部IP):
*来到这一步的时候,就说明前面三步是没有问题的,也就是说,本地局域网络的通信是正常的,这时要做的就是判断本地局域网络与外网(公网)之间的通信有没有问题了:
ktzahxou.png
*这里采取的是直接ping公网地址的方法,是为了排除DNS的影响(万一DNS设置又有问题),比如114.114.114.114:
ktzaihej.png
*这样之后,基本上就可以确定网络是没有问题的了。当然,这里并没有提到出口放置防火墙的情况,实际上,思路是一致的,但是需要考虑的是,访问数据有没有被防火墙给过滤掉,是数据出去的时候过滤了,还是数据回来的时候过滤了?由于还要涉及到防火墙的设置,这里就不再提及了,只是仍要注意这一点就是了。
*当然,也不排除是ISP那边的问题了,打电话去问问吧。
5.测试DNS的通畅情况,可以直接ping网站地址:
*如题,可以直接ping网站地址,看有没有回显IP地址,至于通不通是另外一回事,只要可以回显IP地址,那么DNS就没有问题了,也可以使用nslookup这个命令:
ktzajr0x.png
*当然也可以像下面这样使用:
ktzak4qc.png
*使用nslookup命令,作用有二:
a.测试设置的DNS服务器有没有问题
b.在不考虑DNS服务器是否智能的前提下,可以根据回显IP地址速度的快慢来大致判断DNS服务器的优劣情况
*所以可以充分利用nslookup命令了。
五、最后重要说明:
*其实基本上,一个相对完整的网络排错过程就应该如上面所说的了,不过,是基本上的,因为上面的讲解,都几乎是假定你是没有权限进入机房查看网络设备的情况的。
*事实上,你是根本不需要照搬来进行上面的全部步骤的,在实际排错的过程中,可能你用到的只是其中的一小部分而已,毕竟,如果每次都这样下来,没有谁是不会疯掉的,因为一些很简单的问题也要这样折腾,那就是太浪费时间了!但是,上面的方法,只是提出一种网络排错的思路,希望按照这个思路可以判断出网络的问题出现在哪里,至于如何去解决,这中间真的又涉及到太多太多的经验问题(其实遇到问题可以百度)。
*其实整个下来,最重要的仍然不是技术本身,而是在网络排错过程当中的一个思路,思路决定出路,这可以让自己在网络排错的过程中时刻保持清醒的头脑,这一点很重要!

本文共 3030 个字数,平均阅读时长 ≈ 8分钟
5

打赏

海报

正在生成.....

评论 (2)

取消
  1. 头像
    Lv.1
    Android · QQ Browser
    沙发

    更新完了嘛?

    回复 删除 垃圾
    1. 头像
      学徒 Lv.1 作者
      Android · Google Chrome
      @

      当然没有。

      回复 删除 垃圾