当前位置: 首页 > news >正文

网络层协议 - ICMP

Internet 控制报文协议ICMP(Internet Control Message Protocol)是网络层的一个重要协议。ICMP协议用来在网络设备间传递各种差错和控制信息,它对于收集各种网络信息诊断和排除网络故障具有至关重要的作用。

虽然ICMP和IP协议一样都属于网络层协议,但是它不像IP或ARP协议一样直接传递给数据链路层,仍需要先封装层IP协议然后再传递给数据链路层。

ICMP报文格式

从ICMP报文格式来说,ICMP是IP的上层协议,但是ICMP实际上分担了IP的部分功能(在IP通信中如果某个包因为未知原因没有到达目的地,那么这个具体的原因由ICMP负责告知)。因此也被认为是IP同层协议。


Ping命令

通过抓包软件可以看到

每ping一次本地计算机都会向远程主机发送一次回显请求的数据包,而远程主机在接收到请求后会应答回显请求

回显请求

回显应答

通过两个数据可以看出:

  • 回显请求的数据类型为:8
  • 回显应答的数据类型为:0
  • 序列号用于区分是否为同一个请求和应答

常见的Ping报错


TTL:Time to live (生存时间)

  • 防止IP数据包在网络内无休止的传输(环路)
  • 没经过一次路由TTL值就会减一
  • 当TTL = 0 时,丢弃数据包

利用TTL特性,可以实现路由跟踪技术,时重要的排错方法之一

同时使用TTL可以有效防止网络出线环路导致资源消耗的情况


Tracert 命令

语法:

tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout] [-R] [-S srcaddr] [-4] [-6] target_name

参数说明

参数说明
-d不将节点主机名解析为 IP 地址,直接进行路由跟踪。当路由器不支持 ICMP/UDP/ICMPv6 数据包时,建议使用该选项。
-h maximum_hops指定最多经过多少个节点进行路由跟踪,默认值为 30。
-j host-list枚举一个节点列表,并在路由跟踪过程中只走该列表中的节点
-w timeout设置等待每个回复消息的超时时间,默认值为 4000 毫秒。
-R跟踪路由时,使用“参考路由”而不是“严格源路由”。如果启用了该选项,则可以跨越某些无法到达但能够到达目标的路由器。
-S srcaddr指定源地址。如果电脑上安装了多个网卡,该选项可以指定网卡发出路由跟踪请求。
-4强制使用 IPv4 进行路由跟踪。
-6强制使用 IPv6 进行路由跟踪。
target_name要查询的目标 IP 地址或主机名。

使用示例:

  • 在进行路由跟踪时,可能因为某些网络节点的安全限制而导致 tracert 命令无法收到反馈,但是不代表此节点不通。在这种情况下,可以尝试使用其他一些网络工具,例如 Ping 命令。

http://www.dtcms.com/a/577902.html

相关文章:

  • DINO系列粗读
  • Java设计模式精讲---03建造者模式
  • P3384 【模板】重链剖分/树链剖分
  • OpenCV(二十):位运算
  • 重组蛋白纯化标签科普:从His到SUMO、Avi的全面解析
  • 【QT第三章】常用控件1
  • 鱼台做网站多少钱wordpress 防黑
  • 南通网站建设排名公司网站怎么做图片放映效果
  • AI Agent:突破工作流局限,开启智能决策新时代
  • 自己动手写深度学习框架(神经网络的引入)
  • 西安专业网站建设服务好查询食品注册商标查询官网
  • ref对比reactive
  • 基于融智学双重形式化的汉字汉语数学建模方法
  • 手机wap网站多少钱wordpress页面简码
  • 嘉兴网嘉兴网站建设网址大全汽车之家官方网
  • 基于单片机的智能高温消毒与烘干系统设计
  • vue.js设计与实现(待续)
  • 2025 Vue UI 组件库选型
  • 网站内置字体法治网站的建设整改措施
  • 杭州高端网站设计南宁伯才网络建站如何
  • 面试题001
  • 【C#】NLog配置同时写入网络共享路径与本地路径日志
  • 用通俗易懂 + Android 开发实战的方式,详细讲解 Kotlin Flow 中的 retryWhen 操作符
  • Android 四大组件——BroadcastReceiver(广播)
  • 好看的单页面网站模板免费下载百度知道怎么赚钱
  • HTTP与HTTPS的核心区别及加密流程全解析:从明文传输到安全通信的演进
  • 好大夫王建设在线个人网站第一推广网
  • QML学习笔记(五十三)QML与C++交互:数据转换——序列类型与 JavaScript 数组的转换
  • Spring AI Alibaba语音合成实战:从零开始实现文本转语音功能
  • 科技向善,让养老更有温度——智慧养老的痛点破局与趋势前瞻