你们好,我的网工朋友。
做网工,你遇到最多的问题是啥?大部分人的回答都是网络故障吧。
所以有很多朋友多次问到,如何检测网络故障和对网络进行基础的操作。比如:网络经常掉线、网络时好时坏,ip地址冲突、监控有几路不显示等等这些问题。
今天就老生常谈一回,给你整理一下网络中使用较多且有效的四大命令用法,方便大家日常工作对网络的管理和故障排除。
ping、arp、tracert、route这四大命令配合使用,可以查出或解决网络中的大部分基本故障问题。
今日文章阅读福利:《思科、华为、华三命令大合集》
除了这些常用命令,今天再给你分享个思科、华为、华三这些大厂商的命令合集。私信发送暗号“命令”,限时获取资源哈。
01 ping命令的详细用法
在网络中ping是一个十分强大的TCP/IP工具。它的作用主要为:
1、用来检测网络的连通情况和分析网络速度
2、根据域名得到服务器IP
3、根据ping返回的TTL值来判断对方所使用的操作系统及数据包经过路由器数量。
我们通常会用它来直接ping ip地址,来测试网络的连通情况。
类如这种,直接ping ip地址或网关,ping通会显示出以上数据,有朋友可能会问,bytes=32;time<1ms;TTL=128 这些是什么意思。
bytes值:数据包大小,也就是字节。
time值:响应时间,这个时间越小,说明你连接这个地址速度越快。
TTL值:Time To Live,表示DNS记录在DNS服务器上存在的时间,它是IP协议包的一个值,告诉路由器该数据包何时需要被丢弃。可以通过Ping返回的TTL值大小,粗略地判断目标系统类型是Windows系列还是UNIX/Linux系列。
01 ping -t的用法
不间断地Ping指定计算机,直到管理员中断。
这就说明电脑连接路由器是通的,网络效果很好。下面按按住键盘的Ctrl+c终止它继续ping下去,就会停止了,会总结出运行的数据包有多少,通断的有多少了。
02 ping -a的使用
ping-a解析计算机名与NetBios名。就是可以通过ping它的ip地址,可以解析出主机名。
03 ping -n的使用
在默认情况下,一般都只发送四个数据包,通过这个命令可以自己定义发送的个数,对衡量网络速度很有帮助。
比如我想测试发送10个数据包的返回的平均时间为多少,最快时间为多少,最慢时间为多少就可以通过以下获知:
从以上我就可以知道在给47.93.187.142发送10个数据包的过程当中,返回了10个,没有丢失,这10个数据包当中返回速度最快为32ms,最慢为55ms,平均速度为37ms。说明我的网络良好。
如果对于一些不好的网络,比如监控系统中非常卡顿,这样测试,返回的结果可能会显示出丢失出一部分,如果丢失的比较多的话,那么就说明网络不好,可以很直观的判断出网络的情况。
04 ping -l size的使用
-l size:发送size指定大小的到目标主机的数据包。
在默认的情况下Windows的ping发送的数据包大小为32byt,最大能发送65500byt。当一次发送的数据包大于或等于65500byt时,将可能导致接收方计算机宕机。
所以微软限制了这一数值;这个参数配合其它参数以后危害非常强大,比如攻击者可以结合-t参数实施DOS攻击。(所以它具有危险性,不要轻易向别人计算机使用)。
例如:ping -l 65500 -t 211.84.7.46
会连续对IP地址执行ping命令,直到被用户以Ctrl+C中断。
这样它就会不停的向211.84.7.46计算机发送大小为65500byt的数据包,如果你只有一台计算机也许没有什么效果,但如果有很多计算机那么就可以使对方完全瘫痪,网络严重堵塞,由此可见威力非同小可。
05 ping -r count 的使用
在“记录路由”字段中记录传出和返回数据包的路由,探测经过的路由个数,但最多只能跟踪到9个路由。
ping -n 1 -r 9 202.102.224.25 (发送一个数据包,最多记录9个路由)
将经过 9个路由都显示出来了,可以看上图。
ping命令用的较多的就这6类的,大家有可能在项目中会用到的。
06 批量ping网段
对于一个网段ip地址众多,如果单个检测实在麻烦,那么我们可以直接批量ping网段检测,那个ip地址出了问题,一目了然。
先看代码,直接在命令行窗口输入:
for /L %D in (1,1,255) do ping 10.168.1.%D
IP地址段修改成你要检查的IP地址段。
当输入批量命令后,那么它就自动把网段内所有的ip地址都ping完为止。
那么这段“for /L %D in(1,1,255) do ping 10.168.1.%D” 代码是什么意思呢?
代码中的这个(1,1,255)就是网段起与始,就是检测网段192.168.1.1到192.168.1.255之间的所有的ip地址,每次逐增1,直接到1到255这255个ip检测完为止。
02 arp命令的使用
arp是地址解析协议,其基本功能为透过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。
它是IPv4中网络层必不可少的协议,不过在IPv6中已不再适用,并被邻居发现协议(NDP)所替代。
说白了,就是把通过ip地址找到设备mac地址。
arp的命令一般有三个用法,就是查询显示、添加记录、与删除记录,这个在我们做网络项目时经常会用到。
01 arp -a
当你需要了解你网络中设备对应的mac地址时,你可以使用arp地址进行显示,这个有利于我们可以清楚了解到ip地址对应的mac地址是哪台设备。
在命令提示符中输入“arp -a”并回车;自动在缓存中,读取IP地址和mac地址的对应关系表;
02 arp -s
arp -s,当你需要手动添加或绑定一条arp记录时使用。
手工输入一条ARP项目,格式为“ARP+空格+-a+IP地址+MAC地址”;
在网络中,通常在办公网络或监控项目中,为了防止用户乱改ip地址或ip地址冲突,我们需要给ip地址绑定设备的mac地址。
如下图,先用ARP -s 192.168.1.1 3c-22-3f-5d-f6-77绑定一条记录,然后用arp -a查询了ARP记录添加是否成功。
其实这个命令也叫作绑定mac地址的命令。
例如一个公司的网络,员工经常喜欢改自己电脑的ip地址,经常会造成ip地址混乱,无法管理,那么这个时候你只需要把它的ip地址与它电脑mac地址进行绑定,那么下次出现网络故障,就可以直接mac地址定位到那几台电脑。
03 arp -d
当你觉得某条arp记录有问题时,可以删除。
功能为:删除所有ARP记录
其实如果想彻底清空ARP列表,需要您禁止所有网络连接,否则网络数据交互过程中仍然会产生新的ARP列表。
当你网络中出了问题,可能是有某些ip地址发生冲突了,mac对应的ip地址有误,那么你可以对它进行删除这条arp记录,然后重新添加新的记录,网络问题就会得到解决。
03 tracert命令的使用
tracert是路由跟踪命令,用于确定 IP 数据包访问目标所采取的路径。
在使用Tracert命令之前,我们先来简单地介绍一下它的语法。其中最简单也是最常用的命令格式为:
基本用法:
Tracert 目标设备的ip地址或者网址:
01 检测ip地址经过几个跃点
这里面是经过了两个跃点。
02 检测网址经过几个跃点
03 “tracert -d baidu.com”
“tracert -d baidu.com”,代表不将IP地址解析到主机名称,如下图所示:
04 “tracert -h 3 baidu.com”
“tracert -h 3 baidu.com”代表本次tracert搜索的最大跳数,输入3表示搜索在路由器跳转3次,如下图所示:
这个就是查跟设备最近的几个连接点的问题,通常在网络问题中,先要排除前端跟设备直接连接的最近的几个设备是否有故障,如果这几个近点跟踪可以正常互通,那么问题可能就出现在后端。
05 “tracert -w 6 baidu.com”
“tracert -w 6 baidu.com”代表tracert为每次回复所指定的毫秒数,其它命令根据需求,可以根据第二步图介绍使用,如下图所示:
当网络很慢,或者很卡时,我们要检测是那个设备的反应速度比较慢,所以这里面可以设个标准值,例如上面是直接显示回复6ms以内的设备,超过6ms的设备不显示,就是反应比较慢的,这个数值可以根据情况设置。
04 route命令使用
route命令用于显示和操作IP路由表。
要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现。
route命令主要用来管理本机路由表,可以查看,添加、修改或删除路由表条目,也就是说可以让哪些ip地址可以访问网络,哪些ip段不能访问网络。
在我们做项目时,经常可能会用到外网与外网切换使用,这样就造成了插拔网线在切换内外网,极其麻烦,这个在我们弱电vip技术群中经常有朋友问题,能否内网和外网同时接入到笔记本,不用每次拔网线呢?
例如:
笔记本上一张机械网卡,一张无线网卡, 一般笔记本都是这样的配置,都联上了内外与外网,其中外网网关是49.222.151.207,内网网关10.168.1.1,如何实现双网卡同时使用有线网上内网、无线网上外网?
第一步:设置无线网卡为默认路由网关。
步骤:无线网络连接属性—Internet协议(TCP/IP)-属性-高级,手动添加无线路由网关,添加自己的外网网关即关,跃点数为“1”,是最高优先级。到了这一步,如果有线连接,无线连接同时存在的话,所有的数据都是经由无线网卡处理的。
第二步:查看当前路由表
使用route print命令看一个0.0.0.0的网络目标分别映射你的外内网的网关。
当然,这里面你也可以对当前的路由进行删除
第三步:通过route命令,将所有网段添加到外网网卡,为默认路由,即所有的ip都走外网。
显示查看路由表,查看是否添加成功。
第四步:通过route命令将内网网段添加到内网网卡,内网使用,即10.168.0.0这个ip段走内网。
显示查看路由表(route print命令),查看是否添加成功。
那么就设置成功了,整体的意思就是:
对于所有IP地址的访问,都从 49.222.151.207网关走;但是,对于10.168.0.0开头的地址的访问,从10.168.1.1走。
这样,再也不用插拔网线这种粗鲁的方式来切换网络了。
整理:老杨丨10年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部