网络基础-ICMP协议

ICMP(Internet Control Message Protocol, Internet控制消息协议)
ICMP协议是IP协议的辅助协议,用于在IP网络上发送控制消息,它通常被用于诊断网络故障、执行网络管理任务以及提供一些错误报告;对于收集各种网络信息、诊断 和排除各种网络故障等方面起着至关重要的作用。
ICMP协议涉及的一些常见数据包类型:
Echo Request (Type 8): 发送此类型的数据包以请求目标主机响应;通常用于Ping命令。
Echo Reply (Type 0): 响应Echo请求的数据包。包含与Echo请求相同的数据。
Destination Unreachable (Type 3): 当目标主机无法访问时发送的数据包。可能是因为网络不可达、主机不可达或端口不可达等原因。
Source Quench (Type 4): 当路由器或主机希望通知发送方减慢发送速度时发送的数据包。
Redirect (Type 5): 当路由器希望通知发送方通过另一个路由器发送数据时发送的数据包。
Time Exceeded (Type 11): 当数据包在路由器上的生存时间(TTL)过期时发送的数据包。
Parameter Problem (Type 12): 当IP头部中的某些字段有问题时发送的数据包。
Timestamp Request (Type 13): 请求目标主机发送当前时间的数据包。
Timestamp Reply (Type 14): 响应Timestamp请求的数据包,包含发送时间和接收时间。
Address Mask Request (Type 17): 请求目标主机发送子网掩码的数据包。
Address Mask Reply (Type 18): 响应Address Mask请求的数据包,包含子网掩码信息。

常用的基于ICMP协议应用
1.ping:

当你使用命令行工具或者网络诊断工具执行ping时,实际上在使用ICMP协议发送和接收消息来测试你计算机和目标主机之间的连接性和延迟;这个命令通常在Windows、Linux和其他类Unix系统上都是可用的。

ping命令的工作原理:

1.发送Echo请求: 执行ping命令并指定目标主机的地址时,计算机会发送一个ICMP Echo请求消息到目标主机。
2.等待Echo回复: 一旦目标主机收到Echo请求消息,它会生成并发送一个Echo回复消息作为响应;这个回复消息携带着与请求中相同的数据。
3.计算往返时间(Round-Trip Time,RTT): 一旦计算机收到了Echo回复消息,它会记录当前时间,并计算发送Echo请求和接收Echo回复之间的时间差。这个时间差就是往返时间(RTT),它表示了数据从计算机发送到目标主机并返回的时间。
4.显示结果: ping命令会显示每个Echo请求的往返时间,并且通常还会显示每个请求的成功率(通常以百分比形式);此外,一般还会显示有关网络状态的统计信息,如平均往返时间、最小和最大往返时间等。

ping命令的用途:
检测网络连接性: 通过发送Echo请求并接收Echo回复,可以确定目标主机是否可达;如果主机不可达,ping命令会显示请求超时或者目标不可达的消息。
测量延迟: 往返时间(RTT)可以用来评估计算机与目标主机之间的通信延迟;较低的RTT通常表示更快的网络连接。
诊断网络问题: 如果ping命令显示了不寻常的延迟或者丢包率,这可能表明网络中存在问题,如拥塞、路由问题或者网络设备故障等。

2.traceroute (tracert)

Traceroute是一种网络诊断工具,用于确定数据包从源主机到目标主机之间经过的路径;它通过发送一系列的数据包,并记录每个数据包经过的路由器,从而帮助用户了解网络中的延迟和网络拓扑。

traceroute工作原理
1,发送数据包: Traceroute发送一系列的UDP数据包(在Unix/Linux系统上,默认使用UDP,而在Windows系统上则默认使用ICMP)到目标主机,每个数据包的TTL(生存时间)逐渐增加。
2.路由器处理: 当数据包到达网络中的路由器时,路由器会将TTL减1,并检查TTL是否变为0。如果TTL变为0,路由器将丢弃数据包并发送一个ICMP "Time Exceeded"消息给发送主机。
3.记录路由器信息: Traceroute捕获"Time Exceeded"消息,并记录下每个路由器的IP地址和响应时间。
4.重复过程: Traceroute重复发送数据包,每次增加TTL,直到数据包到达目标主机。通过收集每个路由器的响应,Traceroute能够构建出数据包从源主机到目标主机的完整路径。

在思科设备和Linux系统中使用traceroute命令,在华为、华三设备和Windows中使用tracert命令进行使用。

输出解释:

Traceroute的输出通常会显示每个路由器的IP地址、主机名(如果可解析)、每个路由器的响应时间(通常以毫秒为单位),以及整个路径的总响应时间。这些信息可用于诊断网络问题和评估网络性能。

应用用途:
网络故障排除: Traceroute可用于诊断网络连接问题,如确定数据包在网络中的哪个节点丢失或受阻。
网络性能评估: 通过分析Traceroute的输出,可以评估网络中各个节点的延迟,并确定数据包传输的瓶颈所在。
网络拓扑发现: Traceroute可以用来发现网络中的路由器和主机,从而帮助绘制网络拓扑图和理解网络架构。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/617288.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【MySQL】SQL基本知识点DML(2)

目录 1.DML添加数据 2.DML-修改数据 (1)改​编辑 (2)删​编辑​编辑 3.DQL-基本查询 (1)查询多个字段​编辑​编辑​编辑 (2)设置别名 (3)去重操作 4…

别的项目都有 awesome 仓库,RT-Thread 也要有!

awesome 仓库是 GitHub 上用于收集某个项目或者某个语言相关的优质内容的仓库,例如中间件、新闻资讯、网站等。 作为 RT-Thread 开发者,看到别的项目都有 awesome 仓库,我想 RT-Thread 也应该有! 于是,我创建一个 aw…

【Python基础】装饰器(3848字)

文章目录 [toc]闭包什么是装饰器装饰器示例不使用装饰器语法使用装饰器语法 装饰器传参带参数的装饰器类装饰器魔术方法\__call__()类装饰器示例带参数类装饰器property装饰器分页操作商品价格操作 个人主页:丷从心 系列专栏:Python基础 学习指南&…

从0开始学python(七)

目录 前言 1 break、continue和pass函数 1.1 break 1.2 continue 1.3 pass 2、序列的索引及切片操作 2.1字符串的索引和切片 2.1.1 字符串索引 2.1.2 字符串切片 总结 前言 上一篇文章我们介绍了python中的循环结构,包括for和while的使用。本章接着往下讲。…

中仕公考:要报深圳教师编的考生们要注意了,往届、应届都可报!

2024上半年广东深圳市(区)属公办中小学教师招聘公告已发布 5月13日10:00至5月17日17:00报名,6月2日笔试。

基于SSM+Vue的物流管理系统

运行截图 获取方式 Gitee仓库

智慧公厕解决了什么问题?

在现代城市生活中,公厕是一个不可忽视的环节。然而,过去的公共厕所常常存在管理不力、环境脏乱差等问题,给人们的生活带来了许多不便和困扰。为了解决这些问题,智慧公厕应运而生,成为了公共厕所使用、运行、管理、养护…

Linux-进程管理类命令实训

实训1:进程查看,终止,挂起及暂停等操作 1.使用ps命令显示所有用户的进程 2.在后台使用cat命令。查看进程cat,并杀死进程 3.使用top命令只显示某一用户的进程。 4.执行命令cat,把Ctrlz挂起进程,输入jobs命令…

Excel办公技巧之下拉菜单

在日常办工中,经常需在单元格中输入特定的值,此时我们可以使用下拉菜单解决,输入错误和错误值,可以一劳永逸的解决固定数据输入问题。 使用Excel下拉菜单时,它在数据输入和验证方面发挥着重要作用通过点击单元格的下拉…

时序分解 | Matlab实现LMD局域均值分解

时序分解 | Matlab实现LMD局域均值分解 目录 时序分解 | Matlab实现LMD局域均值分解效果一览基本介绍程序设计参考资料 效果一览 基本介绍 时序分解 | Matlab实现LMD局域均值分解 Matlab语言 1.算法新颖小众,用的人很少,包含分解图 2.直接替换数据即可用…

iOS 安装cocoapds

注意 CocoaPods安装是基于ruby环境的,所以要安装CocoaPods先要安装Ruby环境,国内不能直接安装,只能通过VPN或淘宝的Ruby镜像来访问。 安装过程 gem sources --remove https://rubygems.org/ ** (注意是两个“-”,否则会移除失败) …

【分立元件】一起读读10/100 Base-T网络变压器规格书

网络变压器亦称为网络隔离变压器或数据泵。广泛应用于太网交换机、路由器、网络机顶盒、智能电视、网络摄像机、网络刻录机、笔记本电脑、无线AP、智能网关等设备,起到信号耦合、高压隔离、阻抗匹配、波形修复、电磁干扰抑制等作用。 下面我们一起读一读网络变压器规格书,来看…

计算机网络实验3:路由器安全防控配置

实验目的和要求 理解标准IP访问控制列表的原理及功能理解CHAP、DHCP配置原理了解家用式无线路由配置方法实验项目内容 标准IP访问控制列表配置 CHAP验证路由器上配置DHCP网络地址转换NAT配置无线路由实现实验环境 1. 硬件:PC机; 2. 软件:W…

CCPD车牌检测识别数据集

CCPD 是一个在开源免费的中国城市车牌识别数据集。 1. 介绍 CCPD (Chinese City Parking Dataset, ECCV)是中国城市车牌数据集,共有两个CCPD2019和CCPD2020 数据集,总数据量约35W左右,可用于车牌检测和识别模型算法开发。 CCPD 发表的论文:…

该从哪些方面提升系统的吞吐量?

更多大厂面试内容可见 -> http://11come.cn 该从哪些方面提升系统的吞吐量? 我们平时自己做的项目一般没有用户量,都是练手项目,所以并不会在吞吐量上做出很多的优化,但是这样的话,又会导致项目和其他人相比并没有…

找不到d3dx9_42.dll无法继续执行代码的原因分析及解决方法

当您在使用电脑过程中遇到提示“缺少d3dx9_42.dll”时,这实际上是操作系统在运行某些应用程序或游戏时遇到的一个常见问题。D3DX9_42.dll是DirectX 9的一部分,DirectX是一组由微软开发的多媒体处理软件组件,广泛用于提升游戏与多媒体程序的性…

【Python项目】高校社团学生会管理系

技术简介:使用Django框架、MYSQL数据库、JS技术、XCode等实现。 系统简介:PYTHON高校社团管理系统的功能需求总体而言可以分为不同的角色,管理员主要包括:社团信息管理、社团活动管理、社团报名管理、留言板、社团会员管理及管理员…

蓝桥杯-网络安全比赛(6) 模拟实验 Metasploit 控制并获取Windows 登录HASH、LM Hash和NTLM Hash密文解析

窃取WINDOWS账号密码 系统环境:主机(Windows系统 IP:192.168.126.129),虚拟机(KALI系统 IP:192.168.126.3),两者需要能通过本地网络互通互连。 攻击工具:Metasploit是一…

随形透气钢是解决模具困气问题的新利器

在制造领域,创新的技术不断推动着行业的发展,3D 打印随形透气钢就是这样一种令人兴奋的创新,它为解决模具困气问题提供了前所未有的便捷。 3D打印随形透气钢,顾名思义就是可以根据工件形状来做透气。很多模具镶件由于位置、形状、…

【计算机毕业设计】基于微信小程序校友会系统的实现

由于APP软件在开发以及运营上面所需成本较高,而用户手机需要安装各种APP软件,因此占用用户过多的手机存储空间,导致用户手机运行缓慢,体验度比较差,进而导致用户会卸载非必要的APP,倒逼 管理者必须改变运营…