ipv6,nd协议,广播
IPV6-邻居发现ND协议

2021/2/4
1
9
ND协议功能
邻居发现协议
地址解析 (NUD)
路由器发现
无状态自动配置
路由器重定向
重复地址检测 (DAD)
2021/2/4
1
2
接口(interface): 节点附着到链路的点。
邻居(neighbors):附着在相同链路的节点们。
前缀(prefix):由地址的一些起始比特构成的比特串。
链路层地址(link-layer address):接口的链路层标识符。例如以太网链路 的 IEEE802 地址。
on-link:
•
从该地址收到任何Neighbor Discovery消息。
2021/2/4
1
3
off-link:
• 与“on-link”相反;它也是一个地址,该地址没有分配给特定链路上的 任何接口。
最长前缀匹配(longest prefix match):
• 在覆盖目标地址的一组前缀中确定一个前缀的处理。如果前缀中的所 有比特匹配目标地址的最左边比特,目标地址由该前缀覆盖。当多个 前缀覆盖一个地址时,最长前缀是那个匹配的前缀。
2021/2/4
1
16
无状态地址自动配置—接口ID生成
将48比特的MAC地址转化为64比特的接口ID MAC地址的唯一性保证了接口ID的唯一性 设备自动生成,不需人为干预
48位MAC地址
64位接口ID
2021/2/4
1
17
CMTS中无状态地址自动配置
IPV6 - ND

| Cur Hop Limit |M|O| Reserved |
Router Lifetime
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
Reachable Time
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
第5页 共20页
- ICMP 核验有效 - ICMP 的 code 字段为 0 - 所有包含的选项长度大于 0 2)保留字段的内容,以及无法识别的选项,必须丢弃 3)目前在 RA 中定义的选项包含:源链路层地址、前缀消息选项和 MTU 选项 4)通过消息检测的 RA 称为有效通告(valid advertisement)
2.1.4 消息实例
内部传阅
这是一个常见的 RS 消息,包含一个源链路层地址选项,其中的链路层地址等发送接口的链路层地址
第3页 共20页
内部传阅
00:1e:e3:60:27:f2。 ICMP Type 为 133 表示 RS 消息,ICMP Code 为 0,检验和为 correct 表示有效,IP 首部的 Hop Limit
IPV6ND协议之地址解析

IPv6地址解析之链路层地址学习
IPV6地址解析包括两个部分:一部分解析目的IP对应的链路层地址(类似于IPV4的ARP 协议),另一部分是邻居状态可达性检测(NUD)。
IPV6地址解析工作在网络层,与链路层协议无关。
地址解析过程:
假设PC1pingPC2
PC1------------------------------------------------------PC2
2001:0206::1/64 2001:0206::2/64
00:24:ac:ef:47:8a 00:24:ee:ee:ee:88
1、PC1pingPC2需要封装二层头部,首先暂停发送该ping包,学习链路层地址。
2、PC1发送一条请求消息(NS),请求PC2的链路层地址,该请求消息的目的IP为被请求节点的组播地址,源地址为PC1的IP地址。
3、PC2收到该请求后,回应一个邻居宣告消息(NA),源IP为PC2,目的IP为PC1(单播)。
消息的内容是PC2的链路层地址。
PC2将PC1的IP地址和MAC地址加入自己的邻居缓存表中。
4、PC1收到邻居宣告消息后,将PC2的IP地址和MAC地址加入自己的邻居缓存表中。
5、此时PC1可以发送对PC2的ping包了。
解析过程中NS消息二层地址与三层地址的形成:
三层地址:取全球单播地址的后24位,与固定前缀FF02:1:FF::/104形成。
二层地址:RFC2464规定使用33-33-xx-xx-xx-xx,其后32位取用三层地址后32位。
IPV6核心技术

IPV6核心技术1.ipv6地址结构:因此前缀最小长度为48,子网ID最大为642.ipv6 ipv4地址对比3.IPV6接口ID生成算法4.IPV6地址配置5. Linux内核双栈架构Linux内核中,IPv6协议栈与IPv4协议栈并行关系。
IPv6和IPv4完全是两套不一样的代码实现。
IPv6完整的协议栈逻辑模块包括:1、网络层IPv6,核心逻辑:IPv6路由子系统2、传输层TCP/UDP实现:TCPv6、UDPv63、控制报文协议ICMPv6,这里值得一提的是ICMPv6在IPv6协议中的地位十分重要。
ICMPv6不仅提供了与ICMPv4相同的服务诊断功能,例如报告数据包的错误和提供简单的echo服务,ICMPv6是IPv6中邻居发现协议的重要组成部分,用于管理链路上的点到点的通信。
4、邻居子系统的实现:邻居发现协议NDP(对应于IPv4里面的ARP协议)5、其他高级实现(IPv6 NAT、IPv6隧道、iPv6 IPSec等)由于我们平时的开发工作在应用层,以上1-4是将会接触得最多。
6. IPV6地址获取:无状态地址获取:无状态自动配置过程:解释二:1、由链路上的主机向链路发起“路由请求”报文,这个报文是以组播协议发送,寻找链路上最合适的路由器。
2、路由器收到请求会返回“路由通告”报文,报文里面带着本链路的地址前缀信息主机将接收到的前缀和自身的接口ID,组成完整的新地址。
3、主机尝试使用新地址发起地址重复检测,检测链路上是否有其他主机也是这个地址,如果有,就停止使用该地址;如果没有,就启用这个新地址。
可以看到无状态自动配置过程十分简易(对比DHCPv4和DHCPv6来说),实际上,无状态自动配置可以单独组网使用,也可以配合有状态自动配置一般会配合使用,加强网络节点管理。
涉及自动配置和地址检测等更多细节,可以查阅RFC1971、RFC4861。
IpV6中的M位和O位:M位,O位是RA报文里携带的,值为1代表有状态,值为0代表无状态RA报文中的有状态自动配置地址的标志位(M标志位)全称:managed-address-flag。
IPv6网络邻居发现概述

15
配置RA消息相关参数
取消对RA消息发布的抑制
[Router-Ethernet0/0] undo ipv6 nd ra halt
配置RA消息发布的时间间隔
[Router-Ethernet0/0] ipv6 nd ra interval maxinterval-value min-interval-value
1::2:B/64
Stale Delay Probe Reachable Stale
10
目录
邻居发现协议 地址解析 无状态地址自动配置 ND协议配置
IPv6地址自动配置
有状态地址自动配置
从DHCP服务器获取地址及相关信息
无状态地址配置
根据路由器发布的信息而自动配置IPv6地址及相 关信息
IPv6网络邻居发现概述
技术创新,变革未来
引入
ND(Neighbor Discovery,邻居发现)协议是IPv6 的一个关键协议,它综合了IPv4中的一些协议如 ARP、ICMP路由器发现和ICMP重定向等,并对他 们做了改进。本章介绍了IPv6邻居发现协议中的地 址解析、无状态地址自动配置等重要功能,并对如何 配置ND协议进行了讲解。
Type = 137
Redirect -(重定向消息)
5
目录
邻居发现协议 地址解析 无状态地址自动配置 ND协议配置
IPv6地址解析概述
与IPv4中的地址解析不同,IPv6地址解析包 含了两个过程
解析IPv6地址所对应的链路层地址过程 邻居可达性状态的维护过程,即邻居不可达检测
(NUD)
IPv6基本介绍

3、快速部署-6RD
IPv6
ETH0_0 2011::1 PC1 2011::2 ETH0_1
IPv4 CE1
123.1.1.2 ETH0_1 ETH0_1 123.1.1.1 ETH0_0 2011::1
IPv6
BR
ETH0_0 2012::1 PC3 2012::2
CE2 123.1.1.3
PC2 2011::2
3)前缀重新编址(优先时间<=有效时间)
前缀在重新编址期间,链路上是同时存在两个前缀的连接的 优先时间(用旧前缀IPv6地址新建连接) 旧的前缀 有效时间(维持旧连接,为0后不再维持,连接自动老化) 优先时间(旧前缀优先时间为0后新建连接) 新的前缀 有效时间(维持新连接)
3、路由器重定向 主机A
ETH0_1 ETH0_0 FW2 123.1.1.2 10.10.12.1 PC2 10.10.12.2
原理为:当PC1向PC2发送报文时,源地址为2011::2,目的地址为 2011::10.10.12.2,此报文到达FW1后,FW1查看目的地址的前缀为2011::,并根 据它检查NAT64的规则,然后对其进行地址转换,从地址池中选取一个地址,比 如:123.1.1.3来替换IPv6的源地地址2011::2,再根据IPv6的目的地址 2011::10.10.12.2的低32位IPv4地址信息10.10.12.2来替换IPv6的目的地址。 转换结果就是:源地址2011::2123.1.1.3,目的地址2011::10.10.12.2 10.10.12.2;转换后的报文到达PC2后,PC2回复此报文,FW1对其进行逆向转 换。
二、IPv6邻居发现
1、ND协议功能组成:
1)地址解析(替代IPv4中的ARP) 2)无状态地址自动配置 路由器在其相连的链路上发布参数信息,主机捕获消息后,可获得v6 地址的前缀、默认路由、链路参数等 3)路由器重定向 当本地链路上存在一个到达目网络有更好的链路时,路由器需要通告节点 来进行相应的配置改变
IPv6讲解

IPv6讲解IPv6是第六代互联网协议(Internet Protocol Version 6)的缩写,它是互联网工程任务组(IETF)设计的用于替代IPv4的下一代IP协议。
IPv6的使用,不仅能解决网络地址资源数量的问题,而且也解决了多种接入设备连入互联网的障碍。
IPv6使用更小的路由表,使得路由器转发数据包的速度更快。
IPv6增加了增强的组播支持以及对流的控制,对多媒体应用很有利,对服务质量(QoS)控制也很有利。
IPv6加入了对自动配置的支持,这是对DHCP协议的改进和扩展,使得网络(尤其是局域网)的管理更加方便和快捷。
第二代互联网IPv4技术,核心技术属于美国。
它的最大问题是网络地址资源有限,从理论上讲,编址1600万个网络、40亿台主机。
但采用A、B、C三类编址方式后,可用的网络地址和主机地址的数目大打折扣,以至目前的IP地址近乎枯竭。
其中北美占有3/4,约30亿个,而人口最多的亚洲只有不到4亿个,中国只有3千多万个,只相当于美国麻省理工学院的数量。
地址不足,严重地制约了我国及其他国家互联网的应用和发展。
一方面是地址资源数量的限制,另一方面是随着电子技术及网络技术的发展,计算机网络将进入人们的日常生活,可能身边的每一样东西都需要连入全球因特网。
在这样的环境下,IPv6应运而生。
单从数字上来说,IPv6所拥有的地址容量是IPv4的约8×10^28倍,达到2^128-1个。
这不但解决了网络地址资源数量的问题,同时也为除电脑外的设备连入互联网在数量限制上扫清了障碍。
但是与IPv4一样,IPv6一样会造成大量的IP地址浪费。
准确的说,使用IPv6的网络并没有2^128-1个能充分利用的地址。
首先,要实现IP地址的自动配置,局域网所使用的子网的前缀必须等于64,但是很少有一个局域网能容纳2^64个网络终端;其次,由于IPv6的地址分配必须遵循聚类的原则,地址的浪费在所难免。
但是,如果说IPv4实现的只是人机对话,而IPv6则扩展到任意事物之间的对话,它不仅可以为人类服务,还将服务于众多硬件设备,如家用电器、传感器、远程照相机、汽车等,它将是无时不在,无处不在的深入社会每个角落的真正的宽带网。
IPv6邻居发现协议介绍剖析.

11
可达性验证
(Neighbor Unreachability Detection)
确认可达性的两种方式
上层协议获取:一般出现在运行TCP连接的场合,而且 节点本身就是通信的一端,依靠TCP的捎带确认机制.
主机发送路由器请求
Host的接口使能后,需要及时 获取RA,向FF02::2发送RS
被请求的路由器公告
Router可以选择向该node单播 一条RA,也可以选择向组播地 址FF02::1组播一条RA
9
地址解析
(Address resolution)
主要用途:
获得邻居的链路层地址:邻居地址必为直连关系的 单播地址.
Neighbor Solicitation(NS) —— Type=135
解析链路层地址 验证邻居的可达性(NUD) 验证地址的唯一性(DAD)
Neighbor Advertisement(NA) —— Type=136
响应NS 链路层地址变化时,广播NA
Redirect —— Type=137
用于router通知主机更好的下一跳
6
NDP报文(ICMPv6)说明
NDP协议定义了2对报文和1条Redirect报文
Router Solicitation(RS) —— Type=133 主机发送该报文请求router广播RA
Router Advertisement(RA) —— Type=134
router通过该报文广播前缀信息,internet参数信息 router响应node发送的RS报文
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
竭诚为您提供优质文档/双击可除
ipv6,nd协议,广播
篇一:网络基础邻居发现(nd)协议
网络基础邻居发现(nd)协议
ipv6邻居发现(nd)是一组确定邻居节点之间关系的消
息和过程。
nd代替了在ipv4中使用的“地址解析协议(aRp)”、“internet控制消息协议(icmp)”、路由器发现和icmp重定向,并提供了其他功能。
nd在RFc2461“用于ip版本6(ipv6)的邻居发现”(neighbordiscoveryforipVersion6(ipv6))中进行了描述。
邻居发现(nd)协议的使用主要可分为三个方面,包括nd由主机使用、nd由路由器使用和nd由节点使用。
其中,在nd由主机使用中,主要用于探索邻居路由器、探索地址、地址前缀和其他配置参数;在nd由路由器使用中,主要用于公告它们的存在、主机配置参数以及处于链路的前缀,通知主机更好的下一个跃点地址,以便转发用于特定目标的数据包;在nd由节点使用中,主要用于解析ipv6数据包所转
发到的邻居节点的链路层地址,确定邻居节点的链路层地址何时发生变化,确定ipv6数据包是否可以发送到邻居和能否收到来自邻居的数据包。
邻居发现(nd)协议的描述过程如表5-2所示。
篇二:ipV6基本协议分析实验
上机报告
篇三:ipv6协议实验
项目名称:实验报告
i.实验目的
1.配通自己pc的ipv6网络,熟悉ipv6相关的控制台命令;
2.学习nd及相关应用(如路由器发现、不可达检测、重复地址检测、前缀发现、参数发现、重定向等);(可选做其它感兴趣的协议或应用)
ii.实验要求
在网络上抓取任意4种nd消息报文(至少4个截图),做报文分析。
提交的作业内容包括:
1.自己pc的ipv6地址,如何知道ipv6是通的?请以截图配文字说明;
2.用抓包工具(如wireshark),抓取nd 消息报文,分析之,以截图(至少4个截图)配文字的形式。
iii.现有条件
学校的网络,能够上ipv6网站。
microsoftwindows7操
作系统抓包工具wiresharkv1.6.2
1.检测网络连接:
打开命令窗口,使用ping命令访问一个ipv6网站:
查看自己pc的ipv6地址:
在cmd窗口运行ping命令
physicaladdress:
88-ae-1d-30-22-3d
link-localipv6address:fe80::5d51:ccc:788d:a416ipv6a ddress:
20xx:250:3000:3cf0:5d51:ccc:788d:a416
temporaryipv6address:20xx:250:3000:3cf0:2d86:e04:5d ca:7910defaultgateway:dnsservers:
fe80::20c:dbff:fe23:1ea020xx:da8:2000:20xx::3320xx: da8:2000:2193::33
通过结果可以看出链路本地地址(link-localaddress)的interfaceid不是由mac地址(physicaladdress)根据eui-64规范自动生成的,而是使用其它的机制来生成的。