网络基础:Ping、Traceroute应用与排错

简介: 网络基础:Ping、Traceroute应用与排错


01

导读:

这篇文章通过一共实例,演示ping、traceroute、debug等命令的用法;测试网络的连通性,分享网络数据不可达的原因。


02

文章内容:

  • 1、实例拓扑图与配置
  • 2、测试连通性
  • 3、高级ping命令和路由追踪命令traceroute
  • 4、常用排错命令


01

 

实例拓扑图与配置


640.png

pc1是实验vpcs虚拟出来的,SW1是一台二层交换机,R1、R2、R3上面都添加了串口,用于设备之间互联,R3上面配置了一个环回接口3.3.3.3/24,各设备ip配置和连接如上图所示:


vpcs配置如下:

640.png

配置vpcs的ip子网掩码与网关


R1配置如下:

640.png

640.png

640.png

640.png


R2配置如下:

640.png

640.png

640.png

R3配置如下:

640.png

640.png

640.png


02

测试连通性:


首先在PC1上面测试ping自己的网关(R1的e0/1接口):


640.png

如上图所示可以ping通


继续在pc1上测试ping不同网段的地址



640.png

由上图可以看出,pc1 pingR1上的串口也是成功的,但是ping与R1相连的R2上面的接口就超时了。

这一步为什么会超时呢?是不是数据包没有到达R2?我们在R2上开启debug命令进行调试:

640.png

开启调试后,再一次用pc1 ping12.1.1.2 ,发现R2上出现了下面提示

640.png

注:关闭所有调试的方法是:

640.png

从上面的显示可以看出R2收到了pc1发过来的icmp包,我们查看一些R2的路由表

640.png

从输出可以明显的看到R2的路由表中由两个直连路由条目(c)发往23.1.1.0/24网段的数据从serial1/1发出

发往12.1.1.0/24网段的数据从serial1/0发出并没有发往192.168.1.0/24网段的路由条目R2不知道发往192.168.1.0/24的数据应该从那个接口发出,所以R2丢弃192.168.1.2发送过来的数据。


下面在R2添加静态路由,让他知道发往192.168.1.0/24网段的数据应该发给12.1.1.1(R1),之后PC1在ping12.1.1.2,就能ping通了,关于静态路由的知识在之前的文章中有讲,这里有这个概念就可以了:640.png

640.png

这个时候pc1 ping R3的任何地址都是ping不通的,因为数据包到达R1后,R1检查自己的路由表,它会发现没有任何去往R3的路由条目(3.3.3.0/24、23.1.1.0/24),所以它直接给PC1回复“Destination host unreachable 主机不可达”:


640.png

在R1上开启ICMP调试,就会看到下面的输出,R1对PC1的每一个ICMP报文都回复“目标主机不可达”

640.png

要想让这个拓扑图中的每台设备都能互相ping通,需要在R1、R2、R3上添加下面的静态路由条目:

640.png

640.png

640.png


这个时候,不论在那个设备上,都能ping通拓扑上的所有接口ip,下面是R1上面pingR3环回接口的返回信息:

640.png

注:这里显示五个感叹号,说明上面默认ping发送5次,ping成功5次,超时会显示省略号“……”

关闭R3的环回接口,就会出现超时情况:


640.png

640.png

用R1去ping,显示超时,实际上这里产生了路由环路。


对于每一个ping,R2都会返回一条信息,意思是TTL=0了,数据包被丢弃,实际上是因为这种静态路由配置出现了路由环路,如果环回口没有关闭,R3将应答这个ICMP,但是此时R3上环回口关闭了,R3根据自己的默认路由又将数据发回R2,R2在再次将数据发回R3;而这条信息为什么在R2上呢?这是因为,每个ICMP报文中都有一个TTL字段,这个字段的初始值是32,64,128,256中的一个,而每经过一台路由,这个值自动减一,直到变成0,ICMP包从R1发往R2的时候,初始TTL是一个偶数,通过R2之后变成了奇数,通过R3发回R2的时候又变成了偶数,然后这个数据包在R2和R3之间不停来回发送(因为静态路由表的原因),直到TLL=0,而根据这个数学模型分析,偶数的时候这个数据包是在R2上的,所以R2丢弃这个数据包,并且返回一条信息。


下面我们打开R3的lo0回环接口,关闭R2的s1/1,再次用R1去ping 3.3.3.3:

640.png

640.png

640.png

注:U 代表目的主机不可达

R2上的显示如下:

640.png


查看R2的路由表,发现直连接口条目23.1.1.0/24消失了同样,目的地址是这个直连接口网段的静态路由条目也消失了所以R2返回一个消息告诉R1"(3.3.3.3) host unreachable"


640.png


打开R2的S1/1继续下面的实验


03

高级ping命令和路由追踪命令traceroute


使用高级ping命令,从R1 ping  R3的环回接口:


640.png

高级ping命令同样能实现路由跟踪:


640.png

ping命令可以测试网络通不通,但是如果中间网络不通,ping不能很好的定位问题出在哪里,而traceroute可以很好的定位问题出现的位置,下面是正常状态下在R1上traceroute 3.3.3.3结果:

640.png

可以看到数据首先经过了12.1.1.2,然后到达23.1.1.3 11  * 3.3.3.3和23.1.1.3同处于R3上,所以追踪到此完成 12  * 与ping追踪不同的是,traceroute记录的是路由的接收端口,而ping记录的是路由的发出端口


Traceroute的工作原理:


首先,发送设备将数据包中的TTL设置成1,数据包会被第一台接收路由器丢弃,返回一个错误码信息,发送设备根据错误码信息判断经过的中间设备和延时,发送设备一般发送三个重复的包(这就是为什么每个IP后面有3个返回时间的原因"12.1.1.2 40 msec 24 msec 40 msec");之后发送设备发送TTL为2的数据包,再发送TTL为3的数据包,直到数据包达到目的地或者TTL=30为止;在正常情况下,除非路由存在环路,否则TTL不会超过30就到达目的地;数据到达目的地后,目的设备会返回一个"端口不可达",发送设备就是利用返回的是错误码,还是端口不可达判断是否到达了目的主机。


04

       

常用排除命令:


  • 针对某接口,以太网接口可以看到MAC地址,带宽,IP地址等

640.png

  • 查看接口是否开启

640.png

  • 查看路由器IOS版本,硬件信息等


640.png

注:最后一行会显示配置寄存器的值


  • 查看路由器接口硬件信息

640.png

查看路由器接口硬件信息,如果串行接口可以看到如下一行,可以判断接口是DCE端还是DTE端还有时钟

640.png

  • 查看路由器ARP缓存

640.png


相关文章
|
4月前
|
机器学习/深度学习 PyTorch TensorFlow
卷积神经网络深度解析:从基础原理到实战应用的完整指南
蒋星熠Jaxonic,深度学习探索者。深耕TensorFlow与PyTorch,分享框架对比、性能优化与实战经验,助力技术进阶。
|
6月前
|
监控 安全 Shell
管道符在渗透测试与网络安全中的全面应用指南
管道符是渗透测试与网络安全中的关键工具,既可用于高效系统管理,也可能被攻击者利用实施命令注入、权限提升、数据外泄等攻击。本文全面解析管道符的基础原理、实战应用与防御策略,涵盖Windows与Linux系统差异、攻击技术示例及检测手段,帮助安全人员掌握其利用方式与防护措施,提升系统安全性。
265 6
|
6月前
|
负载均衡 网络协议 Linux
网络ping不通到底有多少原因?一文搞明白!
网络ping不通是网络中出现频率最高的故障之一,同时也是最让人抓狂的故障,谁没遇到过?今天就和你细说下ping不通的原因,看看能不能和你遇到的情况对上号。
4734 0
|
7月前
|
JSON 监控 API
在线网络PING接口检测服务器连通状态免费API教程
接口盒子提供免费PING检测API,可测试域名或IP的连通性与响应速度,支持指定地域节点,适用于服务器运维和网络监控。
929 0
|
5月前
|
机器学习/深度学习 人工智能 算法
卷积神经网络深度解析:从基础原理到实战应用的完整指南
蒋星熠Jaxonic带你深入卷积神经网络(CNN)核心技术,从生物启发到数学原理,详解ResNet、注意力机制与模型优化,探索视觉智能的演进之路。
541 11
|
6月前
|
数据采集 存储 数据可视化
Python网络爬虫在环境保护中的应用:污染源监测数据抓取与分析
在环保领域,数据是决策基础,但分散在多个平台,获取困难。Python网络爬虫技术灵活高效,可自动化抓取空气质量、水质、污染源等数据,实现多平台整合、实时更新、结构化存储与异常预警。本文详解爬虫实战应用,涵盖技术选型、代码实现、反爬策略与数据分析,助力环保数据高效利用。
385 0
|
6月前
|
安全 Linux
利用Libevent在CentOS 7上打造异步网络应用
总结以上步骤,您可以在CentOS 7系统上,使用Libevent有效地构建和运行异步网络应用。通过采取正确的架构和代码设计策略,能保证网络应用的高效性和稳定性。
197 0
|
8月前
|
监控 安全 Linux
AWK在网络安全中的高效应用:从日志分析到威胁狩猎
本文深入探讨AWK在网络安全中的高效应用,涵盖日志分析、威胁狩猎及应急响应等场景。通过实战技巧,助力安全工程师将日志分析效率提升3倍以上,构建轻量级监控方案。文章详解AWK核心语法与网络安全专用技巧,如时间范围分析、多条件过滤和数据脱敏,并提供性能优化与工具集成方案。掌握AWK,让安全工作事半功倍!
309 0
|
8月前
|
人工智能 安全 网络安全
网络安全厂商F5推出AI Gateway,化解大模型应用风险
网络安全厂商F5推出AI Gateway,化解大模型应用风险
284 0

热门文章

最新文章