IPv6有无状态区分

有状态可控、可管理。有IP地址管理者,能够识别客户端。根据不同客户端分配对应v6地址,客户端和服务器存在租期及续约。
无状态无控、难管理。无IP地址管理者,没人识别客户端。客户端根据网关发送的相同的RA报文内容,自行配置地址

可聚合全球地址分为手动配置和自动配置

手动配置无需多言。

自动配置分为两种情况:有状态和无状态

无状态就是通过路由器网关发送的RA通告中的prefix+EUI64或者是prefix+随机。这个prefixt是肯定在的。然后组成的地址

有状态就是通过DHCP分配

​ 有状态又分为两种:有状态DHCPv6和无状态DHCPv6

有状态DHCPv6就是地址和其他参数如DNS通过DHCP发送。

无状态DHCPv6就是地址通过RA通告获取,其他参数如DNS通过DHCPv6发送。

正文

RA报文中3个关键的FLAG

3XdlJe.png

▷Managed Flag(M flag)

表示是否配置有状态IP。M flag是RA报文的全局参数,一个RA报文只有一个M flag

为on时(对应bit=1):表示在stateless(无状态)流程结束后开始stateful(有状态)流程,等于告诉客户端可以通过DHCPv6来获得v6地址和其他参数(如DNS列表)

为Off是(对应bit=0):表示不通过DHCPv6来获得v6地址

▷Other flag(O flag)

表示是否通过DHCPv6来获得除IP以外的其他参数(如DNS列表)。一个RA报文也只有一个 A flag。注:仅当M flag为off时,该参数才会被读取。

为on时(对应bit=1):当M flag为on,或者M为off且至少有一个A flag为on时,将通过DHCPv6获取其他参数

为off时(对应bit=0):当M flag为on,依然通过DHCPv6获取其他参数;当M=off时,则不通过DHCP获取其他参数。

▷Autonomous flag(A flag)

表示是否配置无状态化IP。在一个RA报文中,可存在多个prefix,例如2401::/64或2402::/64等等,每个Prefixt都可以独立配置A flag

为on时(对应bit=1):表示客户端应当在该prefix范围内自动生成v6地址(客户端通过DAD自行保证地址可用)并配置子网路由条目和网关。

为Off是(对应bit=0):表示客户端不应当在该prefix范围内自动生成v6地址,但是可以配置子网路由条目和网关。

测试内容:测试M、O、A flag在所有排列组合的情况下

▪ 客户端是否会通过RA报文配置无状态IP

▪ 客户端是否会通过RA报文配置prefix子网路由

▪ 客户端是否会通过RA报文配置gateway

▪ 客户端是否会通过DHCPv6获得有状态IP

▪ 客户端是否会通过DHCPv6获得DNS

3XDPmR.png

从图中可知,在M值on有和A值有的情况,你O值有无都不影响。

M,A=on那么都后续都是Yes 上述的情况都是会

A值=foo导致RA IP为N。M=off导致DHCPv6 IP为没有。如果M和O都=0 那么ip和DNS都没有。

应用场景(状态的选择)

何时采用无状态、何时采用有状态,关键看应用场景。核心在于是否需要控制IP地址,比如保持IP不变,如果需要控制,就采用有状态如果无需控制,就采用无状态。

▷ 服务端领域:如对外提供服务,通常需要采用有状态IP。因为业务IP的突然变化容易导致业务中断(除非做好服务发现)

▷ 客户端领域:如移动设备、办公室内PC机,只需要上IPv6互联网,并不需要对外提供服务,可以采用无状态IP


IPv6静态路由配置

静态路由写法 三种

1)直连静态路由 不推荐多路访问中使用,会出问题

例:ipv6 route 2022::2/64 s1/1

说明:到达目标网络2022::2/64的数据包从接口s1/1发出。

2)递归静态路由 多环境适用

例:ipv6 route 2022::2/64 2012:1:1:1::1/64

说明到达目标网络2022:2:2:22::/64 的数据包发给下一跳地址2012:1:1:1::1

3)完全静态路由 出接口为多路访问 并且需要明确下一跳地址时

例:ipv6 route 2022::2/64 s1/1 2012:1:1:1::1/64

说明:到达目标网络2022::2/64的数据包从s1/1发出,并且交给下一跳地址2012:1:1:1::1/64

静态路由配置

!3XhFY9.png

需求:通过配置静态路由,使得双方都能ping痛回环口地址。由于是多路访问接口,所以不采用第一种直连静态路由配置方法。

R1初始配置: 记得配置完地址后去ping一下

R1(config)#ipv6 unicast-routning  开启 IPV6 路由功能
R1(config)#int e0/0
R1(config-if)#ipv6 address 2012::1/64
R1(config-if)#no shutdown
R1(config)#int l0
R1(config-if)#ipv add 2011:1:1:11::1/64

R2初始配置 show ipv int br是查看v6的地址配置情况的

R2(config)#ipv6 unicast-routning  开启 IPV6 路由功能
R2(config)#int e0/0
R2(config-if)#ipv6 address 2012::2/64
R2(config-if)#no shutdown
R2(config)#int l0
R2(config-if)#ipv add 2022:2:2:22::2/64

递归静态路由配置

ipv6 route 2022:2:2:22::2/64 2012::2

这个时候R1能够访问R2的loopback了 然后你再R2也配置镜像的就行。静态路由也不需要多讲。

IPv6 RIP(RIPng)

v6的RIP规则于v4 RIPv2基本相同,不同之处是IPv4 RIPv2采用UDP520,而v6采用UDP 521。v4中RIPv2地址采用224.0.0.9 在v6中是 FF02::9

配置RIPng的方法不同于v4那样,RIPng是采用先配置进程,然后选择让那些接口运行在RIPng下,就必须到相应的接口下明确确定。并不像v4那样,直接在进程中发布。

3XWe91.png

R1初始配置: 这里R1和R2的地址我不想改图片了,它们互联接口地址和静态路由案例的地址一样

1、初始化配置

R1初始化配置

R1(config)#ipv6 unicast-routning
R1(config)#int e0/0
R1(config-if)#no shutdown
R1(config-if)#ipv6 address 2012::1/64
R1(config)#int l1
R1(config-if)#ipv add 3001::1/64
R1(config)#int l2
R1(config-if)#ipv add 3002::1/64
R1(config)#int l3
R1(config-if)#ipv add 3003::1/64

R2初始配置

R2(config)#ipv6 unicast-routning
R2(config)#int e0/0
R2(config-if)#ipv6 address 2012::2/64
R2(config-if)#no shutdown
R2(config)#int l0
R2(config-if)#ipv add 2022::2/64

2、RIPng配置

R1(config)# ipv6 router rip ZHY #CZHY名字,思科IOS最多支持4个RIPng,进程名仅本地有效
R1(config-rtr)#exit #RIPng主要配置方式是先开启进程,然后将接口确定到这里
R2(config)# ipv6 router rip ccZHYR2(config-rtr)#exit 

配置RIPng接口

R1(config)# int e0/0
R1(config-if)# ipv6 rip ZHY enable
R1(config)# int l1
R1(config-if)# ipv6 rip ZHY enable
R2(config)# int e0/0
R2(config-if)# ipv6 rip ZHY enable
R2(config)# int l0
R2(config-if)# ipv6 rip ZHY enable

这样就配置好了,具体的效果我就不拿出来了,RIP和静态路由,没啥好说的。

3、重分发配置

R1(config)#route-map zhy per 10
R1(config-route-map)#match int l2
R1(config-route-map)#exit
R1(config)#route-map zhy per 20
R1(config-route-map)#match int l3
R1(config-route-map)#exit
R1(config)#ipv6 router rip ZHY
R1(config-rtr)#redistribute connected route-map ZHY

原先路由表

R2#show ipv route
IPv6 Routing Table - default - 6 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
       B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP
       H - NHRP, I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea
       IS - ISIS summary, D - EIGRP, EX - EIGRP external, NM - NEMO
       ND - ND Default, NDp - ND Prefix, DCE - Destination, NDr - Redirect
       O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
       ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2, la - LISP alt
       lr - LISP site-registrations, ld - LISP dyn-eid, a - Application
C   2012::/64 [0/0]
     via Ethernet0/0, directly connected
L   2012::2/128 [0/0]
     via Ethernet0/0, receive
C   2022::/64 [0/0]
     via Loopback0, directly connected
L   2022::2/128 [0/0]
     via Loopback0, receive
R   3001::/64 [120/2]
     via FE80::A8BB:CCFF:FE00:1000, Ethernet0/0
L   FF00::/8 [0/0]
     via Null0, receive

重分发之后的路由表

R2#show ipv route
IPv6 Routing Table - default - 8 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
       B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP
       H - NHRP, I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea
       IS - ISIS summary, D - EIGRP, EX - EIGRP external, NM - NEMO
       ND - ND Default, NDp - ND Prefix, DCE - Destination, NDr - Redirect
       O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
       ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2, la - LISP alt
       lr - LISP site-registrations, ld - LISP dyn-eid, a - Application
C   2012::/64 [0/0]
     via Ethernet0/0, directly connected
L   2012::2/128 [0/0]
     via Ethernet0/0, receive
C   2022::/64 [0/0]
     via Loopback0, directly connected
L   2022::2/128 [0/0]
     via Loopback0, receive
R   3001::/64 [120/2]
     via FE80::A8BB:CCFF:FE00:1000, Ethernet0/0
R   3002::/64 [120/2]
     via FE80::A8BB:CCFF:FE00:1000, Ethernet0/0
R   3003::/64 [120/2]
     via FE80::A8BB:CCFF:FE00:1000, Ethernet0/0
L   FF00::/8 [0/0]
     via Null0, receive

4、过滤配置

配置IPv6路由过滤采用distribute-list

配置只保留3002网段,也就是说l1和l3的都被deny。

R2(config)#ipv6 prefix-list ZHY permit 3002::1/64
R2(config)#ipv6 router rip ZHY
R2(config-rtr)#distribute-list prefix-list ZHY in e0/0

**注:**ipv6的 prefix-list同样支持ge , le等关键字来匹配范围。

清空路由表R2#clear ipv rip 后的路由表

R2#show ipv route
IPv6 Routing Table - default - 6 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
       B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP
       H - NHRP, I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea
       IS - ISIS summary, D - EIGRP, EX - EIGRP external, NM - NEMO
       ND - ND Default, NDp - ND Prefix, DCE - Destination, NDr - Redirect
       O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
       ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2, la - LISP alt
       lr - LISP site-registrations, ld - LISP dyn-eid, a - Application
C   2012::/64 [0/0]
     via Ethernet0/0, directly connected
L   2012::2/128 [0/0]
     via Ethernet0/0, receive
C   2022::/64 [0/0]
     via Loopback0, directly connected
L   2022::2/128 [0/0]
     via Loopback0, receive
R   3002::/64 [120/2]
     via FE80::A8BB:CCFF:FE00:1000, Ethernet0/0
L   FF00::/8 [0/0]
     via Null0, receive

IPv6 OSPF(OSPFv3)

OSPFv3与OSPFv2(IPv4 OSPF)的原理都是相同的,OSPFv3选举Router-ID的规则与OSPFv2相同,OSPFv3也是选择路由器上的IPv4地址作为Router-ID,如果设备上没有配置IPv4地址,那么必须手工指定Router-ID。在配置OSPFv3时,先配置进程,然后需要让哪些接口运行在OSPFv3下,就必须到相应的接口下明确指定,并不像OSPFv2那样在进程下通过network来发布。

IPv6 6to4Tunnel

手工配置

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐