您好,欢迎来到南京仲子路科技有限公司!
您好,欢迎来到南京仲子路科技有限公司!
create smarter cities via our expertise
在弱电工作中,网络故障是最容易出现的问题,特别是我们弱电者经常和网络打交道,那么如何才能对网络进行排查,快速解决问题?这些基本的技术是必不可少的,我们一起来看下。
一、网络排错必备
为何需要一些必要条件?由于这里所说的网络排错,不只是某个小小的指令的使用,而是一套系统的方法,假如没有这些条件,很难在项目中灵活运用,所以还是先看看这些基础条件。
1、了解网络通信的基础设备和其对应的osi层次
诸如交换机、三层交换机、路由器、防火墙这些最基本的网络设备应该有所了解,特别是它们所对应的 osi层次和作用,如普通的二层交换机与 osi七层模式中的数据链路层。
可使冲突域隔离开来,同时通过虚拟局域网技术(vlan)对广播域进行隔离,二层交换机通过二层即 mac地址实现数据帧的转发;再比如路由器,它对应网络层,可以提供路由寻址的功能等等。
2、了解中小型企业网络的基本架构
一般中小型企业网络的基本架构都是这样的:接入层--汇聚层--核心层--网络出口。
下面给个图:
假如网络环境较大,汇聚层和核心层都会有,就像这里,一般小的网络,直接没有汇聚层,不过想法是一样的。
以下所说的排错其实都是针对用户pc的,实际上,数据中心的网络排错也是相似的。无论网络环境有多复杂,其实简化下来和这个差不多。
3、知道常用的网络排错命令
如果用户使用的是windows操作系统,那么下面的这些命令就很重要了:
这些命令都是网络排错和检查过程中会用到的基础命令。
4、清楚知道网络排错的一个重要原则
网上排错了,不就是要判断网上出了什么问题,所以,你必须了解数据的走向。因此,这一重要原则是:关注数据的走向。
以下所说的网络排错思路实际上就是通过追踪数据的走向,逐步缩小网络故障点,因此,时刻牢记这一点非常重要!因此,上面需要您对中小企业网络的基本架构有所了解。
二、网络排错基本思路
基本思路如下,这跟网上的大多数人写的应该是差不多的。
(1)检查物理链路是否有问题
(2)查看本机ip地址、路由、dns的设置是否有问题
(3)测试网关或路由器的通畅情况。先测网关然后再测路由器,一级一级地测试
(4)测试ping公网ip的通畅情况(平时要记几个外部ip)
(5)测试dns的通畅情况,可以直接ping网站地址
三、网络排错详细步骤
为了更好的讲述网络排错的过程和思路,假设我们有下面的一个网络环境:
以下,我们以上述网络环境为例,详细介绍我们的网络排错思路,每一步该怎么做,每一步为什么要这么做,以及以后能得到什么信息,都会做一个说明。
一、检查物理链路是否有问题
这个步骤是我个人认为,当你做网络错误的时候,你必须做的第一步!常听朋友说,领班的电脑上不了网,需要先排错,老半天,还是找不到问题,最后在几经绝望的时候,竟发现网线都没有接上电脑。
那真是悲剧,浪费了很多时间不说,这样的网络排错思路本来就是错的,所以清晰的思路很重要,避免走弯路。
由于可能不是每个人都能到机房看到交换机的接线情况,所以这一步,我们要检查的重点区域应该放在如下图所示的地方:
在这一步,下面几点是需要注意排查的:
1.确认电脑本身的网卡有没有问题
2.确认接的网线有没有问题(检查水晶头、网线的连接、网线的质量)
3.本机所连接的交换机(如果可以去机房查看的话)
如果上面这几点排查都没有问题了,那么就是该网络环境中的其他设备问题了。这一范围的排查相对比较简单,因为只涉及到物理链路的连接问题。
二、查看本机ip地址、路由、dns的设置是否有问题
以上第一步,物理链路的检查没有问题,也就是说,电脑接上上网线后,电脑有反应,可以识别,但网络还是不通,来到这一步,应先将注意力放在电脑设置上。
这一步,我们关注的重点是:
1、ip地址设置
若采用 dhcp自动获取方法,那么此时只需看自己是否在设定中本机是否打开了自动获取 ip的设置,以及是否开启了相关的服务;
若使用静态ip,则必须注意ip地址的填写是否有错误(一般网络管理者给出的),ip地址的子网掩码是否有问题(这很重要,对于静态ip,很多人在这里设置错误)。
此外,在将 ip地址分配到电脑上时,最好将 mac地址绑定起来,避免用户对 ip地址进行私改,从而引起 ip冲突。
一般可以用下面的命令查看:
2、路由设置
对服务器、 pc机,一般指默认网关设置;对于路由器本身或三层交换机,即静态路由或动态路由的设置问题。
3、dns设置
首先要确定所设置的 dns服务器地址是否提供了域名解析服务,或者 dns服务器是否有故障,您必须设置正确的 dns服务器地址或自动获取。您可以通过以下命令在 windows上查看:
三、测试网关或路由器的通畅情况。
先测网关然后再测路由器,一级一级地测试。
在上面的网络环境中,在网络通的情况下,我们在电脑上使用命令tracert -d命令,会得到下面的结果:
通过这个测试结果,我们可以清楚地知道计算机访问互联网时数据的方向:
根据这个数据方向,我们可以得到一个重要的想法,就是根据数据方向检测网络的流畅性!所以可以分两步:
1、先测试电脑到网关192.168.2.254的通畅情况
我们可以在自己的电脑上自己ping网关的地址,看是否有响应
一般来说,这类判断的方法比较快,但有时,不管 ping是不正确的,那么可能有以下几种情况:
a、网关设备做了禁止ping的设置
b、网关接口或网关设备出现故障
对于a,一般很少会在这些设备在做ping的限制操作,实在是没有太大的必要这样做,当然,网络安全等要求十分严格的除外。ping通192.168.2.254网关后,再ping一下172.16.13.1以确认电脑到整个网关设备都没有问题。
对于ping不通的时候,我个人还建议在电脑上执行如下操作:
arp -a :网关地址和网关的mac地址,这个命令弱电行业网前面有详解过。
也就是说,检查计算机本身是否获得了网关的mac地址。显然,如果没有网关的mac地址,就不可能通过网关。
之前把电脑设置排除在外之后,可以猜想是网关设备出了问题,此时就可以联系网络工程师去测试网关设备。
2、测试到其它路由器的通畅情况
前一步没有问题,即电脑与网关之间的通讯正常,再测试网关与输出路由器的通畅情况:
这里,我们使用tracert -d命令就可以了:
当然,如果发现不通,那么则可能是下面的情况:
a、网关设备与路由器之间的物理链路问题
b、网关设备与路由器之间的设置问题,比如路由协议、接口配置之类的
如上所述,这是一个网络工程师的问题,当然,如果你是一个网络工程师,应该立即查看设备的状态,看看是否有设备出了什么问题。
以上步骤已经完成,假设您的出口路由器设置没有问题,例如nat和默认路由设置没有问题,那么我们大致可以知道,内部网络的基本通信是正常的(至少你的计算机和出口路由器的通信没有问题),我们需要看看计算机是否能够访问互联网。
四、测试ping公网ip的通畅情况(平时要记几个外部ip)
达到此步骤时,说明前三步是不存在问题的,即局部局域网络的通信正常,此时要做的就是判断局域网与外网(公网)之间的通信是否存在问题:
这里采取的是直接ping公网地址的方法,是为了排除dns的影响(万一你的dns设置又有问题),至于要ping什么样的公网地址,个人建议是,可以ping一些没有禁止ping的公共dns服务器地址,比如114.114.114.114和8.8.8.8的:
这样之后,基本上就可以确定网络是没有问题的了。能ping通外网,说明网络是没有问题的,当然,这里并没有提到出口放置防火墙的情况,实际上,思路是一致的,但是,你需要考虑的是,你的访问数据有没有被防火墙给过滤掉,是数据出去的时候过滤了,还是数据回来的时候过滤了?由于还要涉及到防火墙的设置,这里就不再提及了,只是仍要注意这一点就是了。
五、测试dns的通畅情况,可以直接ping网站地址
如题,可以直接ping网站地址,看有没有回显ip地址,至于通不通是另外一回事,只要可以回显ip地址,那么dns就没有问题了,不过这里仍然要说一下nslookup这个命令,这是一个非常好用的命令,我平常自己在网络排错时,基本上都会用到:
当然也可以像下面这样使用:
使用nslookup命令,作用有二:
1、帮你测试你设置的dns服务器有没有问题
2、在不考虑dns服务器是否智能的前提下,你可以根据回显ip地址速度的快慢来大致判断dns服务器的优劣情况
所以可以充分利用nslookup命令了。
所以对于网络排错的思路和一些基本命令的掌握还是很重要的,虽然单个命令的使用的功能不是特别大,但组合起来使用却是可以解决很多问题。
声明:本文只做技术研究讨论,请勿用于非法目的,如果恶意使用造成任何法律责任本站概不负责!