ICMP: Internet control message protocol互联网控制信息协议 ;

ICMP的一个典型应用是Ping。Ping是检测网络连通性的常用工具,同时也能够收集其他相关信息。用户可以在Ping命令中指定不同参数,如ICMP报文长度、发送的ICMP报文个数、等待回复响应的超时时间等,设备根据配置的参数来构造并发送ICMP报文,进行Ping测试。
常见的应用:

1、ping ,该工具是用来测试设备之间互联互通性的;

@-a source-ip-address指定发送ICMP ECHO-REQUEST报文的源IP地址。如果不指定源IP地址,将采用出接口的IP地址作为ICMP ECHO-REQUEST报文发送的源地址。

@-c count指定发送ICMP ECHO-REQUEST报文次数。缺省情况下发送5个ICMP ECHOREQUEST报文。

@-h ttl-value指定TTL的值。缺省值是255。

@-t timeout指定发送完ICMP ECHO-REQUEST后,等待ICMP ECHO-REPLY的超时时间。
    工作原理:
       1.发送一个 ping  的 请求 (icmp 的 echo request)
       2.返回一个 ping  的 回应 (icmp 的 echo reply )
    注意:
      通常情况下,设备发送的 ping 报文,必须在2s内返回一个“回应”报文,
      如果无法在规定的时间返回,就会报错:请求时间超时。

2、tracert 路由跟踪

Tracert常用的配置参数说明如下:

@-a source-ip-address指定tracert报文的源地址。

@-f first-ttl指定初始TTL。缺省值是1。

@-m max-ttl指定最大TTL。缺省值是30。

@-name使能显示每一跳的主机名。

@-pport指定目的主机的UDP端口号。

源端(RTA)向目的端(主机B)发送一个UDP报文,TTL值为1,目的UDP端口号是大于30000的一个数,因为在大多数情况下,大于30000的UDP端口号是任何一个应用程序都不可能使用的端口号。

第一跳(RTB)收到源端发出的UDP报文后,判断出报文的目的IP地址不是本机IP地址,将TTL值减1后,判断出TTL值等于0,则丢弃报文并向源端发送一个ICMP超时(Time Exceeded)报文(该报文中含有第一跳的IP地址10.0.0.2),这样源端就得到了RTB的地址。

源端收到RTB的ICMP超时报文后,再次向目的端发送一个UDP报文,TTL值为2。

第二跳(RTC)收到源端发出的UDP报文后,回应一个ICMP超时报文,这样源端就得到了RTC的地址(20.0.0.2)。以上过程不断进行,直到目的端收到源端发送的UDP报文后,判断出目的IP地址是本机IP地址,则处理此报文。根据报文中的目的UDP端口号寻找占用此端口号的上层协议,因目的端没有应用程序使用该UDP端口号,则向源端返回一个ICMP端口不可达(Destination Unreachable)报文。

源端收到ICMP端口不可达报文后,判断出UDP报文已经到达目的端,则停止Tracert程序,从而得到数据报文从源端到目的端所经历的路径(10.0.0.2;20.0.0.2;30.0.0.2)。

ICMP协议以及应用相关推荐

  1. 4.3.9 ICMP协议

    4.3.9 ICMP协议

  2. 协议森林06 瑞士军刀 (ICMP协议)

    作者:Vamei 出处:http://www.cnblogs.com/vamei 严禁任何形式转载. 到现在为止,我们讲解了网络层中最重要的IP协议(参考协议森林).IP协议的一个重要补充是是ICMP ...

  3. PING的原理以及ICMP协议

    主要内容: 1.ping的原理以及工作过程 2.ICMP协议 3.ICMP的应用:ping,traceroute 1.ping的原理以及工作过程  ping的原理  ping 程序是用来探测主机到主机 ...

  4. linux c icmp协议 判断主机存活

    详细参考 <linux c ping 分析实现> https://blog.csdn.net/whatday/article/details/104192608 ICMP(Internet ...

  5. TCP/IP详解--学习笔记(4)-ICMP协议,ping和Traceroute

    1.IMCP协议介绍 前面讲到了,IP协议并不是一个可靠的协议,它不保证数据被送达,那么,自然的,保证数据送达的工作应该由其他的模块来完成.其中一个重要的模块就是ICMP(网络控制报文)协议. 当传送 ...

  6. 【计算机网络】网络层 : ICMP 协议 ( ICMP 差错报文 | 差错报文分类 | ICMP 询问报文 | ICMP 应用 | Ping | Traceroute )

    文章目录 一.ICMP 协议 二.ICMP 协议 简介 三.ICMP 五种差错报告报文 四.ICMP 差错报文形成 五.ICMP 差错报文 不发送 情形 六.ICMP 询问报文 七.ICMP 应用 一 ...

  7. 4、以太网基础知识——ICMP协议详解

    返回总目录 上一篇 下一篇 ICMP协议是一个网络层协议.  一个新搭建好的网络,往往需要先进行一个简单的测试,来验证网络是否畅通:但是IP协议并不提供可靠传输.如果丢包了,IP协议并不能通知传输层是 ...

  8. ping程序和tracert(traceroute)背后的故事--ICMP协议

    为路由器生,为交换机死,为了Ping通奋斗一辈子-----tracert.cn 上面是一个网络工程师的个人定位,很有意思,哈哈!那么我们来看看ping和tracert都是什么吧 PING (Packe ...

  9. ping 原理与ICMP协议---转

    http://blog.csdn.net/inject2006/article/details/2139149 ping 的原理 ping 程序是用来探测主机到主机之间是否可通信,如果不能ping到某 ...

  10. ICMP协议抓包分析-wireshark

    ICMP协议抓包分析-wireshark ICMP- (Internet Control Message Protocol,网际报文协议)是Internet协议族的核心协议之一,也可称为是网际控制报文 ...

最新文章

  1. 踏向星辰的少年|敢与自己开“杠”,才能和一群人开挂
  2. 相似三角形_JAVA
  3. 华为鸿蒙os生态,华为鸿蒙系统终于来了! 首款方舟编译器应用正式上架: 鸿蒙OS可用...
  4. 论文排版怕翻车?这个排版神器赶紧用起来!
  5. FLIP-24+-+SQL+Client
  6. C# 读取excel
  7. CentOS利用LVM实现磁盘弹性扩容
  8. .NET开发资源站点和部分优秀.NET开源项目
  9. 温度检测单片机c语言程序设计,基于STC89C52单片机的温度检测系统设计
  10. 外设驱动库开发笔记28:W5500以太网控制器
  11. 利用CMD命令关闭进程
  12. 用友U9破解装备制造业信息化世界级难题
  13. 经营计划与经营利润分析动态报表的实现--业务需求
  14. 2021全国人工智能大赛(NAIC)视觉编码赛道初赛一阶段baseline分享
  15. linux主分区和逻辑分区
  16. 搭建腾讯云通用文字识别General OCR项目及代码部署图文教程
  17. 基于Javaweb实现的人脸识别+GPS定位考勤系统
  18. ps参考线设置,ps参考线定位,ps参考线怎么用
  19. 计算机网络学习笔记(一)应用层、传输层和网络层数据平面
  20. 怎么把文件上传到java se_java se模仿http向web服务器上传文件

热门文章

  1. 如何简单抓取拼多多买家订单列表
  2. TI的C64X系列的DSPLib实现fft
  3. 计算机控制器如何调用打印机,怎样设置打印机的虚拟usb端口
  4. 五个免费数据采集工具网站
  5. 量化交易入门,看这篇就够了
  6. 2012年中国大学最新排名
  7. 计算机病毒如何防范英语作文,英语作文_妙招大看台:如何避免电脑中病毒_沪江英语...
  8. 于飞seo:dedecms织梦文件目录说明讲解大全
  9. wpa_supplicant配置
  10. 在线IDE 在线编辑器