今天继续给大家介绍IPv6,本文讲的是IPv6的邻居状态与邻居检测机制。当一个网络设备上线后,如果存在了IP地址,那么该设备必然要进行IP地址的检测,以判断本地的IP地址是否与网络中其他IP地址造成冲突。在IPv4中,该功能的实现是依靠免费的ARP报文,而在IPv6中,该功能的实现是依靠ICMPv6协议报文实现的。
本文涉及到一些IPv6的理论知识,要想读懂本文,您需要又一定的IPv6的基础,如果您对IPv6还不是很熟悉,欢迎查阅以下文章:IPv6地址解析详解、IPv6各地址计算方式汇总、IPv6地址简介、IPv6报文格式讲解及其科学性探究

一、IPv6邻居检测简介

我们都知道,常用的IPv6单播地址有GUA(全球唯一地址)、ULA(本地唯一地址)和LLA(本地链路地址)三种。对于这三种IPv6地址,在设备上线后,都必须进行IPv6冲突地址检测。(所谓设备上线就是说当一个接口由down状态转变成up状态后,或者是当一个接口刚刚激活了IPv6功能配置了IPv6地址后)
而IPv6的邻居检测,还是使用了NS和NA报文。
在IPv6的NS报文中,源IP地址为::(两个冒号,表示未定地址),目的IP地址为本地IPv6地址对应的被请求节点组播地址。如果网络中确实存在冲突,则对该NS报文的回复的NA报文中源IP地址为发生冲突的IPv6地址,目的地址为ff02::1,即所有节点组播地址。

二、IPv6邻居状态简介

在IPv4中,网络设备使用ARP缓存表简单的存储了IP地址和MAC地址的对应关系。但是在IPv6中,对链路上项链的邻居进行了更加详细的规定。
在IPv6中邻居状态有以下5种:
1、complete。 complete状态表示已经发出NS报文但是没有收到NA响应报文。
2、reachable。 reachable状态则是已经收到了NA响应报文(30s内)
3、stale。 当设备处于reachable状态后30s内,如果没有收到其他报文,则邻居状态进入stale状态,表示“陈旧”。如果设备不需要向该邻居发送数据,则此状态会一直持续下去,要注意的是,stale状态是这些状态中唯一可以稳定持续存在的状态。
4、delay。 当设备处于stale状态后,有向该邻居发送数据的需求时,该设备会首先发送NS包检测对方是否在线,当NS包发送完毕后,设备处于delay状态。delay时间为5s,在这5s内,如果收到了对方的NA包,则会进入到reachable状态,如果没有收到,则会进入probe状态。
5、probe。 当设备进入probe状态后,会间隔1s发送NS报文,但是这里发送的NS报文为单播的NS报文(目的IP地址为该IPv6邻居的IP地址)。若3s内仍然收不到NA报文,则认定该IPv6邻居已经下线。接下来会在自己的IPv6邻居表中删除该邻居。
IPv6邻居状态流程如下所示:

注意,该图中只说明了当一方作为主动端主动发送NS报文的情景,实际上,如果有别的网络设备主动发球NS请求,则当本网络设备收到该NS报文后,就知道了一个IPv6邻居上线,此时就会自动生成该邻居表项,并将其状态置为reachable。

三、IPv6相对于IPv4的改进

①IPv6在检测到地址冲突后,会把该地址状态置为duplicate状态,在该状态下,该IP地址不能起到收发数据包的作用。而IPv4中,并没有对该状态的处理,因此计算机网络表现出混乱的状态,具体体现就是一会可以通,一会不能通。(注:由于冲突地址检测只在设备上线时检测一次,因此在某些特殊的环境下,还是不可避免的出现没有检测出来从而出现混乱的情景,比如在检测完成后拓扑发生变化)
②由于引入了邻居状态和检测机制,因此长时间(30s)不通信的IPv6地址就处于STALE状态,当网络设备要与该状态下的IPv6地址通信时,要首先发NS包进行检测对方是否在线,相比于IPv4在默认情况下ARP缓存存放20min来说,IPv6能更快速的检测出邻居失效。
③由于IPv6的NS和NA报文是三层协议封装,因此可以利用将IPSEC协议应用在IPv6的ICMP报文中,这样可以避免IPv4中ARP协议的安全性不足带来的安全风险。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200/article/details/118656125

IPv6邻居状态与邻居检测机制相关推荐

  1. 华为 IS-IS中间系统数据包与邻居状态

    少年易老学难成,一寸光阴不可轻.--朱熹 文章目录 一.简要 二.拓扑 三.基础配置 四.观察描述 一.简要 1.NET标识符号=由三部组成: 区域ID+系统ID+协议(服务)标识符 区域ID:12. ...

  2. IPV6地址解析和邻居状态

    IPV6的地址解析和邻居状态   IPV6无ARP协议,取而代之的时ICMPV6.相比较而言有许多优点.   IPV4确认双向可达:ARP报文   IPV6如何确认双向可达:1:发送NS,后接收到NA ...

  3. 【IPv6】IPv6 NDP邻居状态详解

    NDP 邻居状态 任意两个通信的主机在通信之前,先要建立邻居.(省的去查找arp了) 因为接下来的文字会很乱,排版费劲,所以用这个来. 未完成(Incomplete),可达(Reachable),陈旧 ...

  4. 邻居子系统之邻居项状态更新

    文章目录 概念 可达性 邻居项状态迁移 数据发送 neigh_event_send() 状态更新定时器: neigh_timer_handler() 邻居项状态更新: neigh_update() n ...

  5. linux网络协议栈源码分析 - 邻居子系统邻居状态转移

    1.邻居项状态转移图 邻居项主要的状态转移如下(省略邻居项垃圾回收及转移原因,更权威详细的状态转移图参看<深入理解LINUX网络技术内幕>P648 "图26-13: NUD状态间 ...

  6. OSPF 协议中各种邻居状态的含义是什么?

    原文链接:https://zhidao.baidu.com/question/174294544.html ospf邻居状态有7种,分别是: down init 2way Exstart Exchan ...

  7. donotage标记、MTU及MTU不匹配问题、OSPF邻居状态记录

    目录 一. donotage标记 二.MTU详解 (1)-- MTU简介 (2)--图解 (3)--!!!邻居关系起不来原因: (4)-- 解决: 三.两种特殊的邻居关系: 四.OSPF邻居状态的记录 ...

  8. OSPF邻居状态详解

    OSPF 邻居路由器之间之所以要建立邻接关系,是为了相互交换路由信息.在广播网络环境中,并非每台邻居路由器之间都要建立"齐备的" OSPF 邻接关系.OSPF邻居路由器之间会通过 ...

  9. FAQ-NE40E BGP邻居状态中的no neg代表什么含义

    NE40E BGP邻居状态中的no neg表示对端设备没有能力与本端设备进行的相应的邻居协商,例如有两台NE40E建立了IPV4的BGP邻居,其中一台上面配置了VPNV4的邻居,一端没有配置,那么VP ...

  10. H3C交换机4核心节点IRF2虚拟化下检测机制

    背景介绍 项目中涉及4台核心交换机做虚拟化,实施中发现不同的检测方式在脑裂情况下存活设备并不是一样的现象,在BFD监测.万兆业务单板的情况下,一旦主master节点主业务单板故障,则业务会全部中断.所 ...

最新文章

  1. PTA混淆总结(就做个笔记储存一下)
  2. 学习flask的网址
  3. c# 调用音库开发英语单词记忆本
  4. 1.4 Matplotlib:绘图
  5. android442电视怎么投屏,哔哩哔哩怎么投屏电视? b站投屏的方法
  6. IE6下png图片透明代码
  7. 20180826(01)-Java数据结构
  8. 渗透测试中dns log的使用
  9. 这个textview有问题吗 为什么一使用就崩溃
  10. html图片平移,CSS3 按钮悬停时背景图片平移入场
  11. CentOS6离线升级CentOS7
  12. Centos6配置samba服务器并批量添加用户和文件夹
  13. python实现编辑距离,最长公共子序列,最长公共子串
  14. pdf怎么解除限制?如何解密?一步解决
  15. wps怎么关闭那个登录界面_关闭wps窗口快捷键是什么?
  16. Web前端面试指导(四):面试前准备-有备而去百战百胜
  17. Hibernate使用手册(官网)
  18. a+++a和a+a++的区别
  19. 基于无人机倾斜摄影和深度学习算法的单树点云分割方法研究
  20. 水面漂浮物垃圾识别检测系统 YOlOv7

热门文章

  1. 03 ZooKeeper底层原理剖析与命令实战
  2. Harbor 2.1发布,工程师的发际线有救了!
  3. iPhone SDK开发基础之使用UINavigationController组织和管理UIView
  4. 一站式学习 Linux C语言编程
  5. 8.8LSTM作为元学习器学习梯度下降
  6. 重新leetcode第2天——递归讲解合集
  7. Django项目实践3 - Django模型(view-数据库)
  8. linux常见权限相关错误及解决
  9. 打开终端报错:bash: /某路径/bashrc: No such file or directory
  10. Agile入门系列-1