美文网首页路由联盟
3-ipv6基础知识之-ICMPv6网络控制协议

3-ipv6基础知识之-ICMPv6网络控制协议

作者: Creator_Ly | 来源:发表于2020-06-17 15:01 被阅读0次

在RFC2463中定义Internet Control Message Protocol Version 6(ICMPv6协议),ICMP是在TCP/IP网络中传递网络控制信息的主要手段,同时,ICMP还提供了差错报告的功能。在IPv6中,ICMPv6实现IPv4中ICMP、ARP、RARP和IGMP的功能;

image.png

1. ICMPv6报文的基本格式


graph LR
类型/1字节-->代码/1字节
代码/1字节-->校验和/2字节
校验和/2字节-->ICMP报文体/可变长
  • 类型:标识ICMPv6报文类型,它的值根据报文的内容来确定。
  • 代码:用于确定ICMPv6进一步的信息,对同一类型的报文进行了更详细的分类。
  • 校验和:用于检测ICMPv6的报文是否正确传送。
  • 报文体:用于返回出错的参数和记录出错报文的片段,帮助源结点判断错误的原因。或是其它参数。
image.png
ICMPv6报文类型
image.png

2 差错报文

2.1 目地不可达报文(type=1)
代码字段值 对应的原因
0 没有到达目的结点的路由,路由器无法转发
1 路由器或防火墙的管理策略上禁止与某个目的结点通信
3 因链路或无法解析到目的结点链路层地址,导致目的地址不可到达
4 IPv6分组己经传送到目的IP结点,但是不能递交给目的TCP或UDP端口的端口不可到达
2.2 分组太长(type=2)

当路由器转发一个分组时,发现分组的长度大于准备转发该分组的出口链路MTU ,那么路由器只能丢器该分组,并且向发送该分组的源结点发送"包过大报文”,报告出现差错。代码值为0 。

应用:Path MTU Discovery

2.3 超时报文(type=3)

当路由器接收到一个分组时发现分组的跳数限制字段值为0或1 ,路由器将丢弃该分组,并且向发送该分组的源结点发送"超时报文",报告出错。

代码字段值 对应的原因
0 表示传送过程中超过了跳数的限制值;
1 表示分段重组超时.
2.4 参数问题报文(type=4)

当路由器或主机接收到一个分组的基本报头或扩展报头出现错误,而不能继续处理时,路由器将丢弃该分组,并且发送"参数问题报文” ,报告出错。

代码字段值 对应的原因
0 表示报头字段错误
1 表示无法识别"下一个报头”
2 表示无法识别IPv6选项
2.5 PMTU发现功能

Path MTU Discovery是利用ICMPv6分组太长差错报文,重复的检测源到达目的节点的指定路径上所有链路的最小链路MTU值。

image.png

3. 消息报文


3.1 回送请求报文

类型字段值为128 ,表示该ICMPv6信息报文中的回送请求报文。代码字段在发送端置为0校验和字段在计算之前被置0.标识字段与序列号字段用于在回送请求报文与回送应答报文之间建立对应关系。数据字段是诊断的内容,为8b的整数倍。

3.2 回送应答报文

当结点收到一个回送请求报文时,回送请求报文会发送一个回送应答报文。结构与回送请求报文相同。类型字段值为129.
常见应用:

1、Ping是测试目的主机是否能够到达的一种通用的方法。如下图:

image.png

2、tracert是IP 网络中重要的诊断工具之一,它可以给出到达目的地址的路径。其工作原理如下图:

image.png

4. ICMPv4与ICMPv6消息对应表


ICMPv4消息 ICMPv6的对应消息
目的不可达-网络不可达(类型3,代码0) 目的不可达-没有目的地址的路由(类似1,代码0)
目的不可达-主机不可达(类型3,代码1) 目的不可达-地址不可达(类型1,代码3)
目的不可达-协议不可达(类型3,代码2) 参数问题-无法识别下一个头部的类型(类型4,代码1)
目的不可达-端口不可达(类型3,代码3) 目的不可达-端口不可达(类型1,代码4)
目的不可达-需要分片并将DF置位(类型3,代码4) 数据包过大(类型2,代码0)
目的不可达-与目标主机的通讯被管理策略禁止(类型3,代码10) 目的不可达-与目标的通信被管理策略禁止(类型1,代码1)
源站抑制(类型4,代码0) IPv6中不发这个消息
重定向(类型5,代码0) 邻居节点发现重定向消息(类型137,代码0)
超时-传输中的TTL超时(类型11,代码1) 超时-超过传输中的跳数限制(类型3,代码0)
超时-分片重组超时(类型11,代码1) 超时-分片重组超时(类型3,代码1)
参数问题(类型12,代码0) 参数问题(类型4,代码0或代码2)

相关文章

  • 3-ipv6基础知识之-ICMPv6网络控制协议

    在RFC2463中定义Internet Control Message Protocol Version 6(IC...

  • 4-ipv6基础知识之-邻居发现协议NDP

    邻居发现协议(NDP--Neighbor Discovery Protocol) 是指用icmpv6协议实现的一种...

  • HTTP协议

    (http协议是什么?有什么用?) 网络基础知识之 HTTP 协议 一、输入 www.baidu.com 访问百度...

  • 网络协议之基础知识

    一、基础知识: 路由器、交换机 静态路由、动态路由 局域网、以太网、无线局域网 DNS、CDN、VPN、NAT M...

  • PHP面试题集合

    互联网基础知识: TCP/IP协议TCP(传输控制协议)和IP(网际协议 ) 简称TCP/IPIP协议:是将多个包...

  • HTTP协议笔记

    HTTP协议笔记 标签(空格分隔): HTTP,TCP/IP [TOC] 1.网络协议基础知识 TCP/IP协议族...

  • 名词解析

    网络层:IP协议 : 网络协议ICMP协议: Internet互联网控制报文协议 ->IP协议的附属协议 IP...

  • 文章笔记

    TCP/IP协议(一)网络基础知识 TCP/IP协议(二)tcp/ip基础知识 字符编码常识及问题解析 代码命名的...

  • 2019-04-04 网络与信息安全基础知识

    主要考点:计算机网络基础知识、计算机网络分类、网络设备、网络标准、网络协议、TCP/IP 协议族、网络安全、网络信...

  • 网络协议之:sctp流控制传输协议

    简介 要讲网络协议,肯定离不开OSI(Open System Interconnection)的七层模型。 我们一...

网友评论

    本文标题:3-ipv6基础知识之-ICMPv6网络控制协议

    本文链接:https://www.haomeiwen.com/subject/kyrsxktx.html