SLAAC form CISCO

随着大多数公司正在进行或即将进行IPv6的更广泛的IPv6实施,对于拥有IPv6技能的工程师来说,这变得更加重要。 不幸的是,在过去的十年里,IPv6的推出缓慢使得许多工程师不能很详细地学习这个主题,因为大多数公司并不需要这些技能。 随着IPv6实施的进展,这不再是事实,许多工程师需要在短时间内熟悉这些技能。 继续本系列介绍IPv6最重要的技能,它们的操作方式以及如何在工作环境中使用它们,本文特别介绍IPv6无状态地址自动配置或SLAAC,因为它通常被引用。

SLAAC定义

与IPv4一样,主机可以在IPv6中解决的方法有很多种, IPv4中最常见的两种是通过动态主机配置协议(DHCP)进行静态寻址和动态地址配置。 通常,工程师使用DHCP的原因是,它不仅提供了一种动态分配地址的方法,还为主机设备分配了其他服务信息(如DNS服务器,域名和一些不同的自定义信息)。

为了在IPv6上执行地址配置,有几个熟悉的方法和一些其他方法,包括:静态寻址,使用DHCPv6的静态寻址(无状态),通过DHCPv6(有状态)的动态寻址,单独的SLAAC或使用DHCPv6的SLAAC(无状态) 。 IPv6静态寻址的工作原理与IPv4静态寻址完全相同,因此这里不存在任何秘密。 但是,IPv6确实提供了两种不同的实现DHCP的方式,无论是有状态的(例如,IPv4 DHCP服务器跟踪发出的地址时)和无状态的。 无状态DHCP不会跟踪给客户端发送什么信息,也不会给出IPv6地址; 相反,它提供了大多数人与之相关的额外信息 典型 DHCP分配,例如DNS服务器信息。 然后将无状态DHCP与用于IPv6地址分配的另一机制(例如静态寻址或SLAAC)相匹配。

SLAAC提供基于通过路由器广告(RA)从本地网络路由器通告的网络前缀来对主机进行寻址的能力。 RA消息默认由大多数IPV6路由器发送; 这些消息由路由器定期发送并包含以下信息:

一个或多个IPv6前缀(链路本地范围)
前缀寿命信息
标志信息
默认设备信息(使用的默认路由器及其使用寿命)
SLAAC在IPv6客户端上实现,方法是侦听这些本地RA,然后将通告的前缀形成可在网络上使用的唯一地址。 为此,公布的前缀必须公布64位的前缀长度(即/ 64); 然后,SLAAC将动态地形成一个长度为64位的主机标识符,并且将会在通告的前缀末尾添加后缀以形成一个IPv6地址。 最初,主机标识符是使用EUI-64规则形成的(与用于形成链路本地地址的规则相同),并且许多设备仍使用此方法。 但是,默认情况下,某些Microsoft操作系统不使用此原始方法。 相反,他们利用RFC4941中定义的一些额外隐私扩展。

为了说明这是如何工作的,请参考下面的示例拓扑 图1 用来。

http://www.ciscopress.com/content/images/art_wilkins_ipv6slaacconfig/elementLinks/thwilkins_fig01.jpg

图1 : SLAAC示例

如果主机(H1-H4)显示在 图1 使用EUI-64主机识别方法时,使用SLAAC创建的IPv6地址将为:

H1 - 2000年:1234:5678 :: 12FF:FE34:5678
H2-2000:1234:5678 :: EBFF:FEA4:C1AE
H3 - 2000:1234:5678 :: BAFF:FE24:C4AE
H4-2000:1234:5678 :: 84FF:FE67:AEFC
详细说明,H1的EUI-64流程将按以下方式进行概述:

前缀2000:1234:5678:: / 64将从R1的RA消息中学习,并将成为初始前缀。

然后,客户端标识符将从分配给H1的MAC地址(在本例中为0200:1234:5678)中创建。 EUI-64转换的第一步是将MAC地址分成两半,并在中间 放置FF :FE ,结果为0200:12FF:FE34:5678。 然后第七位将被翻转,在这种情况下,前8位是00000010(0x02)。 接下来,第七位被翻转并且该位变为0,导致00000000(0x00); 这给出了0000:12FF:FE34:5678的最终主机标识符结果。 当将前缀和主机标识符放在一起时,会导致用于2000年的Hl中的IPv6地址:1234:5678:0000:0000:12FF:FE34:5678,可以将其缩短为2000:1234:5678: :12FF:FE34:5678 。

 

posted @ 2018-09-19 16:10  Analylx  阅读(998)  评论(0编辑  收藏  举报