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

IPv6, DAD 工作原理详解

Technorati 标签:  IPv6, IPv6 DAD

关于DAD --> duplicate address detection

IPv4是一样的,不同的是ipv6发送的目的不是广播了。而是被请求节点多播地址。

 

功能原理:

在网络中配置IPv6的地址,如果全都是手工配置,难免会配置成相同的IP地址。而IP在网络中是绝对唯一的,不能有重复的,否则网络设备都不知道该转给谁,因为这个唯一性,所以才又arp欺骗这些攻击存在。

IPv6中,只要这个邻居请求被发送到本地链路上,如果一个节点对这个请求应答,就说明这个临时单播IPv6地址已经被另外一个节点使用。在没有应答的情况下,节点A认为这个临时单播地址2001:410:0:1::1:a在本地链路是唯一的。可以分配使用。

啥都不说了,直接上图:

clip_image002

这个图就是他的原理。

 

每次系统默认一个主机在应用新的IP地址之前会发送3DAD,如果三次以后均没有收到任何回应,那么该地址被认为是可以配置在接口上的.

 

这里我用了两个路由器直连,然后故意在一边的路由器接口上面配置重复的地址。这个时候抓包得到的结果是::作为源往外发送被请求多播地址FF02::1:ff00:2,得到了回应。并且我们可以看到这里始终用的是ICMPv6 type=135.请求是,回应也是。根据上面的原理得知,如果出现了回应,那么在本地网络中一定该地址是一个重复地址。

clip_image004

在路由器上面也可以看到ciscoIOS提示有重复的地址。不能进行配置。

clip_image006

 

其实这个原理不是很难,不像ospf的交互过程需要7步,也不像LDP的邻居交互过程那样繁琐。说穿了只是一个检测地址是否重复的工作机制。主机发送出去,没有回应,三次,那么配置该地址。有回复,那么会提示三层网络设备有地址重复,只要IOS支持,一定会打印出地址重复的信息来的。仅此而已。

 

最后有两个命令,可以修改DAD的发送次数:

clip_image008

设置为非零的任何数,dad正常工作。

设置为0dad关闭,也就是说即使IP地址冲突也不会有任何提示,因为从原理上来说,根本local就没有发送dad请求。

默认肯定是打开的,这个是 IP层面的基本功能。

 

最后总结一下DAD,duplicate address detection, 请求节点多播地址. FF02::1:FFxx:xxxx, ICMPv6的类型为135.邻居请求。



本文转自 hny2000 51CTO博客,原文链接:http://blog.51cto.com/361531/642611

相关文章:

  • 解决configure: error: Please reinstall the libcurl distribution
  • tweak 支持第三方库
  • 第十一章 持有对象
  • 条件变量的接口函数和使用原则
  • C# DataGridView中DataGridViewComboBoxCell列,下拉框事件的处理【完美解决】
  • C# 中的枚举类型 enum (属于值类型)
  • jQuery选择器之表单对象属性过滤选择器Demo
  • Cloudera Mountable HDFS (hadoop-fuse-dfs).
  • linux reiserfs文件系统损坏后的数据恢复过程记录
  • 把一个用户的相关权限赋予另外一个用户
  • gets函数的不安性详解
  • Silverlight知识链接整理(11月-12月)
  • ORACLE 分区与索引
  • C# 视频监控系列(2):客户端——封装API (1)
  • Silverlight书籍推荐阅读排行榜【续】
  • Consul Config 使用Git做版本控制的实现
  • echarts花样作死的坑
  • es6要点
  • Gradle 5.0 正式版发布
  • Kibana配置logstash,报表一体化
  • Next.js之基础概念(二)
  • sessionStorage和localStorage
  • ucore操作系统实验笔记 - 重新理解中断
  • 从输入URL到页面加载发生了什么
  • 搭建gitbook 和 访问权限认证
  • 看完九篇字体系列的文章,你还觉得我是在说字体?
  • 手机app有了短信验证码还有没必要有图片验证码?
  • 通过获取异步加载JS文件进度实现一个canvas环形loading图
  • 译米田引理
  • 原生JS动态加载JS、CSS文件及代码脚本
  • 专访Pony.ai 楼天城:自动驾驶已经走过了“从0到1”,“规模”是行业的分水岭| 自动驾驶这十年 ...
  • $分析了六十多年间100万字的政府工作报告,我看到了这样的变迁
  • (C)一些题4
  • (zhuan) 一些RL的文献(及笔记)
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (分布式缓存)Redis哨兵
  • (附源码)ssm高校升本考试管理系统 毕业设计 201631
  • (深入.Net平台的软件系统分层开发).第一章.上机练习.20170424
  • .babyk勒索病毒解析:恶意更新如何威胁您的数据安全
  • .CSS-hover 的解释
  • .net core IResultFilter 的 OnResultExecuted和OnResultExecuting的区别
  • .NET MVC第五章、模型绑定获取表单数据
  • .NET 编写一个可以异步等待循环中任何一个部分的 Awaiter
  • .Net中的设计模式——Factory Method模式
  • .php结尾的域名,【php】php正则截取url中域名后的内容
  • /proc/vmstat 详解
  • :中兴通讯为何成功
  • ??eclipse的安装配置问题!??
  • ??如何把JavaScript脚本中的参数传到java代码段中
  • @kafkalistener消费不到消息_消息队列对战之RabbitMq 大战 kafka
  • @RestControllerAdvice异常统一处理类失效原因
  • @vue/cli脚手架
  • @取消转义
  • [ 2222 ]http://e.eqxiu.com/s/wJMf15Ku
  • [ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧