IPV6简介

思维导图

在这里插入图片描述

简介

IPv6是英文“Internet Protocol Version 6”(互联网协议第6版)的缩写,是互联网工程任务组(IETF)设计的用于替代IPv4的下一代IP协议,由于IPv4最大的问题在于网络地址资源不足,严重制约了互联网的应用和发展。IPv6的使用,不仅能解决网络地址资源数量的问题,而且也解决了多种接入设备连入互联网的障碍。

改近点

  • 近乎“无限”的地址空间:IPV6由128位二进制构成
  • 层次化的地址结构:吸取IPV4地址分配不均的教训,IPV6在分配时会更加合理,便于汇总等操作
  • 即插即用:终端可以自动获取IP;相较于IPV4通过DHCP获取IP地址,IPV6不仅由DHCPv6可以自动获取地址,还可以通过SALLC(无状态地址自动配置)技术实现快捷的地址下发,该技术不需要DHCP服务器,仅需存在网关即可
  • 简化的报文头部,由于IPV4的报头功能字段过多,路由器查找选路时许读取每个字段,但往往很多字段都是空的,导致转发效率低下,所以IPV6把报文的报头分为基本头和扩展头,基本头只包含基本的功能,扩展头只在需要的时候添加到基本头后面
    在这里插入图片描述

IPV6报头字段
Version:4bit,ipv6为6
Traffic Class:8bit,相当于IPV4的Tos,用来标记流量方便区分优先级方便做策略
Flow Label:20bit,配合Trafic Class使用,目前未启用
Payload Length:16bit,IPV6数据包的负载长度,指报头后的数据内容长度,包含扩展头部分
Next Header:8bit,指明基本头后面是哪种扩展头或上层协议中的协议类型
在这里插入图片描述
Hop limit:8bit,类似于ipv4中的TTL,最大值为255,报文每被转发一次该字段值就会减1

  • 端到端网络的完整性:在IPV6网络中,不使用NAT技术,所有设备都可以会得唯一的IP地址标识
  • 安全性增强:在以往的IPV4中,数据都是明文传输,为了保证IPV6网络数据传输的安全,专门研发了IPSEC(因特网协议安全协议,这是一个协议簇),目前IPV4也可以配合IPSEC使用
  • 增强QOS特性:IPV6有更多位数用来做QOS
  • 多宿主特性:在IPV6中,接口支持多宿主, 即一个接口可以配置多个不同网段的IPV6地址;但在华为设备上一个接口上不允许配置同一个网段的多个IPV6地址。

地址表示

  • IPV6地址由128位二进制构成,采用冒分十六进制表述
  • 首选格式:2001:0123:0000:4560:0000:0000:0000:001A
  • 压缩格式:2001:123:0:4560::1A

每一段前导0可以省略,如果这一段全是0,则至少保留一个0,拖尾的0不能省略
一个或多个连续的段为全0时,可以使用“::”来标识,但是注意,一个IPV6地址中只能出现一处“::”

  • 内嵌IPV4格式:::192.168.1.1,这种 IPv6地址的低32位携带一个IPv4地址,一般使用于IPv4兼容IPv6自动隧道,现已经被6TO4隧道取代
  • PV6中也存在网络位和主机位。只不过,在IPV6中将网络位称为网络前缀,将主机位称为接口标识。在IPV6地址中,也需要用子网掩码来标识网络前缀的长度,只使用简写格式:2001::1 /64

地址分类

单播地址

  • GUA:全球单播地址,相当于IPV4中的公网IP地址,可在全球分为内使用的单播地址

目前使用的GUA地址范围位:==2000:: /3 ==
目前商用的IPV6地址段:2001:: /16
用于6TO6隧道的地址段:2002:: /16

  • ULA:唯一本地地址,相当于IPV4中的私网地址,由于IPV6中不使用NAT技术,所以这一部分私网地址只是用于私网内实验使用,不允许出现在IPV6公网中

FC00:: /7: 这个地址段是专门为私网地址分配的地址段
目前仅使用了FD00:: /8,FC00:: /8目前保留,以后拓展使用。

  • LLA :本地链路地址,ipv4中也存在本地链路地址:169.254.0.0/16,在IPV6中,因为接口是支持多宿主的,所以每一个接口只要激活了IPV6,就会给自己配置一个LLA地址,动态路由协议选择下一跳IP时,处于稳定性考虑,会优先选择LLA地址作为下一跳地址。

FE80:: /10:用于本地链路地址,使用时网络前缀位FE80::/64,接口标识按照EUI-64的方法自动生成

组播地址

  • 其目的是为了标识某个组播组,发送一个目标IP地址为组播地址的数据包,则该报文将被发送至整个组播组中的所有成员

ipv4中的组播地址如:RIPV2:224.0.0.9,OSPF:224.0.0.5、224.0.0.6
224.0.0.1:针对的是所有节点,默认所有节点都处于该组中;224.0.0.2:针对所有路由器

  • IPV6组播地址段为:FF:: /8,IPV6组播地址对应组播MAC地址,前16位为固定值 :33:33,组播IPV6地址的后32位为组播MAC地址的后32位。

224.0.0.1 ---- FF02::1 ----- 33:33:00:00:00:01
224.0.0.2 ---- FF02::2 ----- 33:33:00:00:00:02
224.0.0.9 ---- FF02::9 ----- 33:33:00:00:00:09
224.0.0.5 ---- FF02::5 ----- 33:33:00:00:00:05
224.0.0.6 ---- FF02::6 ----- 33:33:00:00:00:06

  • 被请求节点组播,用于NDP(IPV6中的ARP)协议,当一个节点,具备单播地址之后,将自动生成一个被请求节点组播地址。生成后,被请求节点就会加入到对应的组播组中。

被请求节点组播 前104位固定:FF02::1:FF,后24位为单播地址的后24位

任播地址

  • 任播(Anycast),又称为选播、泛播或任意播,是IPv6中定义的一种新型通信服务,是IPv6中三大通信方式之一,该定义最早由C Partridge在RFC 1546中首次提出,但是RFC1546对任播的描述仅仅是一个实验性的服务

特殊地址

  • ::,128位全0,等同于IPV4中的0.0.0.0,1.代表没有地址,2.代表所有地址(缺省)
  • ::1,环回地址,等同于IPV4中的127.0.0.1

ICMPv6

  • ICMPv6:互联网控制管理协议,包含大量的子协议,不同功能的数据报会通过ICMPV6数据报中的type字段进行区分
  • PMTU:在IPV6路由生成后,设备会发送ICMPV6报文检测包,去检测整条路径中最小的MTU值(PMTU)。之后,在发送数据包时按照最小MTU值发送,避免过程中出现分片的现象。
  • PING: echo request:type = 128,echo reply:type = 129
  • NDP:邻居发现协议,取代了IPV4的ARP,无状态地址自动配置功能也是通过NDP协议来实现的

NDP实现DAD(地址冲突检测)和地址解析需要使用两种报文:
邻居请求报文(NS):相当于ARP请求报文,type = 135
SIP:本地IP DIP:请求IP所对应的被请求节点组播地址
SMAC:本地MAC DMAC:被请求组播地址对应的对应的组播MAC地址
邻居通告报文(NA):相当于ARP应答报文,type = 136,使用单播回复

地址配置

  • 手工配置
[r1]ipv6 # 让这台设备可以转发IPV6报文
[r1-GigabitEthernet0/0/0]ipv6 enable # 让接口允许配置IPV6地址
[r1-GigabitEthernet0/0/0]ipv6 address 12::1 64 # 配置IPV6地址
[r1-GigabitEthernet0/0/0]display ipv6 interface g 0/0/0 # 查看接口IP信息
GigabitEthernet0/0/0 current state : UP  
IPv6 protocol current state : UP
IPv6 is enabled, link-local address is FE80::2E0:FCFF:FEE6:1FA7 # 本地链路地址
  Global unicast address(es): # 我们所配置的GUA地址
    12::1, subnet is 12::/64 [TENTATIVE]
  Joined group address(es): # 默认参加的组播地址
    FF02::1:FF00:1
    FF02::2
    FF02::1
    FF02::1:FFE6:1FA7
  MTU is 1500 bytes
  ND DAD is enabled, number of DAD attempts: 1
  ND reachable time is 30000 milliseconds
  ND retransmit interval is 1000 milliseconds
  Hosts use stateless autoconfig for addresses
  • 无状态自动配置:SLAAC,通过NDP协议实现,无需DHCP服务器,只要有网关,便可以让接入设备获得IPV6地址,即插即用。但因为无状态地址配置无法下发DNS等其他参数信息,所以,一般多应用于物联网等终端较多,且不需要除地址外其他参数的场景。

SLLAC需要利用ICMPV6中的两种报文:RS、RA
路由器请求报文(RS),主机主动发送RS请求,type = 133
路由器通告报文(RA),网关收到RS后会回复RA报文,报文中包含网关的网络前缀,后面的接口标识需要设备自动生成,type = 134
还存在另一种形式,网关设备会周期性的主动发送RA报文,携带自己的网络前缀,华为设备默认关闭自动发送功能

  • IPV6地址网络前缀默认为64位,后64位接口标识可通过EUI-64自动生成

EUI-64自动生成方法:48位的MAC地址前24位为公司标识,后24位为扩展标识,第一步将FFFE插入MAC的公司标识和扩展标识之间,第二步将第七位二进制取反

  • 有状态自动配置,通过DHCPv6实现

IPV6的路由配置

静态路由

[r1]ipv6 route-static 23:: 64 12::2 # 静态路由
[r1]display ipv6 routing-table protocol static 
Public Routing Table : Static
Summary Count : 1

Static Routing Table's Status : < Active >
Summary Count : 1 

 Destination  : 23::                            PrefixLength : 64
 NextHop      : 12::2                           Preference   : 60
 Cost         : 0                               Protocol     : Static
 RelayNextHop : ::                              TunnelID     : 0x0
 Interface    : GigabitEthernet0/0/0            Flags        : RD

Static Routing Table's Status : < Inactive >
Summary Count : 0


RIPNG

[r1]ripng 1 # 启动进程
[r1-ripng-1] interface g 0/0/0 # 进入需要宣告的接口
[r1-GigabitEthernet0/0/0]ripng 1 enable # 激活并宣告接口
[r1-GigabitEthernet0/0/0]display ipv6 routing-table protocol ripng # 查看路由表中RIPNG学到的路由
Public Routing Table : RIPng
Summary Count : 1

RIPng Routing Table's Status : < Active >
Summary Count : 1 

 Destination  : 23::                            PrefixLength : 64
 NextHop      : FE80::2E0:FCFF:FE11:55D7  #下一跳的本地链路地址  Preference   : 100
 Cost         : 1                               Protocol     : RIPng
 RelayNextHop : ::                              TunnelID     : 0x0
 Interface    : GigabitEthernet0/0/0            Flags        : D

RIPng Routing Table's Status : < Inactive >
Summary Count : 0

OSPFV3

[r1]ospfv3 1 # 启动进程
[r1-ospfv3-1]router-id 1.1.1.1 # 配置RID
[r1-ospfv3-1]interface g 0/0/0 # 进入需要宣告的接口
[r1-GigabitEthernet0/0/0]ospfv3 1 area 0 # 宣告时标明进程号和区域号,激活并宣告接口
[r2]display ospfv3 peer # 查看邻居
OSPFv3 Process (1)
OSPFv3 Area (0.0.0.0)
Neighbor ID     Pri  State            Dead Time Interface            Instance ID
1.1.1.1           1  Full/Backup      00:00:39  GE0/0/0                        0
[r1]display ospfv3 lsdb # 查看OSSPFLSA数据库

* indicates STALE LSA

           OSPFv3 Router with ID (1.1.1.1) (Process 1)
               Link-LSA (Interface GigabitEthernet0/0/0)

Link State ID   Origin Router    Age   Seq#       CkSum  Prefix
0.0.0.3         1.1.1.1          0165  0x80000001 0xba09      1
0.0.0.3         2.2.2.2          0130  0x80000001 0x7eb0      1

               Router-LSA (Area 0.0.0.0)

Link State ID   Origin Router    Age   Seq#       CkSum    Link
0.0.0.0         1.1.1.1          0079  0x80000005 0x45c3      1
0.0.0.0         2.2.2.2          0078  0x80000007 0x23df      1

               Network-LSA (Area 0.0.0.0)

Link State ID   Origin Router    Age   Seq#       CkSum
0.0.0.3         2.2.2.2          0090  0x80000001 0x4cc5

               Intra-Area-Prefix-LSA (Area 0.0.0.0)

Link State ID   Origin Router    Age   Seq#       CkSum  Prefix  Reference
0.0.0.1         2.2.2.2          0078  0x80000006 0xc6c5      1  Router-LSA
0.0.0.2         2.2.2.2          0076  0x80000002 0x811c      1  Network-LSA
[r1]display ipv6 routing-table protocol ospfv3 # 查看路由表中有OSPFV3学习到的路由
Public Routing Table : OSPFv3
Summary Count : 2

OSPFv3 Routing Table's Status : < Active >
Summary Count : 1 

 Destination  : 23::                            PrefixLength : 64
 NextHop      : FE80::2E0:FCFF:FE11:55D7        Preference   : 10
 Cost         : 2                               Protocol     : OSPFv3
 RelayNextHop : ::                              TunnelID     : 0x0
 Interface    : GigabitEthernet0/0/0            Flags        : D

OSPFv3 Routing Table's Status : < Inactive >
Summary Count : 1

 Destination  : 12::                            PrefixLength : 64
 NextHop      : ::                              Preference   : 10
 Cost         : 1                               Protocol     : OSPFv3
 RelayNextHop : ::                              TunnelID     : 0x0
 Interface    : GigabitEthernet0/0/0            Flags        :  

MP-BGP

[r1]bgp 1 # 启动进程 bgp AS号
[r1-bgp]router-id 1.1.1.1 # 配置RID
[r1-bgp]peer 2::2 as 1 # 建邻
[r1-bgp]peer 2::2 connect-interface l0
[r1-bgp]ipv6-family # 进入IPV6配置
[r1-bgp-af-ipv6]peer 2::2 enable # 建邻
[r1-bgp-af-ipv6]network 1:: 64 # 宣告路由
[r1-bgp-af-ipv6] # 其余配置均在此视图下完成
[r1-bgp-af-ipv6]display bgp ipv6 peer  # 查看ipv6BGP邻居

 BGP local router ID : 1.1.1.1
 Local AS number : 1
 Total number of peers : 1		  Peers in established state : 1

  Peer            V          AS  MsgRcvd  MsgSent  OutQ  Up/Down       State Pre
fRcv

  2::2            4           1        2        5     0 00:00:21 Established  
 [r2]display bgp ipv6 routing-table # 查看本地ipv6bgp表

 BGP Local router ID is 2.2.2.2 
 Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


 Total Number of Routes: 1
 *>i Network  : 1::                                      PrefixLen : 64     
     NextHop  : 1::1                                     LocPrf    : 100       
     MED      : 0                                        PrefVal   : 0         
     Label    : 
     Path/Ogn : i

IPV4到IPV6的过渡技术

GRE

在这里插入图片描述

  • 通过GRE实现上图中的ipv6环回互通
[r1]inter Tunnel 0/0/0
[r1-Tunnel0/0/0]tunnel-protocol gre
[r1-Tunnel0/0/0]ipv6 enable 
[r1-Tunnel0/0/0]ipv6 address 13::1 64
[r1-Tunnel0/0/0]source 12.1.1.1
[r1-Tunnel0/0/0]destination 23.1.1.2
[r1-Tunnel0/0/0]quit
[r1]ipv6 route-static 2:: 64 13::2
  • R3同理配置
[r1]ping ipv6 -a 1::1 2::2
  PING 2::2 : 56  data bytes, press CTRL_C to break
    Reply from 2::2 
    bytes=56 Sequence=1 hop limit=64  time = 30 ms
    Reply from 2::2 
    bytes=56 Sequence=2 hop limit=64  time = 30 ms
    Reply from 2::2 
    bytes=56 Sequence=3 hop limit=64  time = 20 ms
    Reply from 2::2 
    bytes=56 Sequence=4 hop limit=64  time = 20 ms
    Reply from 2::2 
    bytes=56 Sequence=5 hop limit=64  time = 30 ms

  --- 2::2 ping statistics ---
    5 packet(s) transmitted
    5 packet(s) received
    0.00% packet loss
    round-trip min/avg/max = 20/26/30 ms

6TO4Tunnel

  • 当IPV6网络过多时,GRE面临的问题:1,需要知道对端的IP地址;2,添加到达对端的路由,每两个ipv网络都需连GRE

  • 在IPV6地址中,还存在一种地址: IPV4兼容地址,如果你拥有一个合法的IPV4地址,则将拥有一段IPV6地址

  • IPV4地址的网络前缀为2002:: + ipv4地址共48位,如12.1.1.1转为十六进制为0C010101,和2002::拼凑得2002:C01:101:: /4就是12.1.1.1ipv4兼容地址的网络前缀

  • 在6TO4Tunnel中,IPV6网络使用ipv4兼容地址,IPV6数据在出IPV6网络时边界路由器会自动识别数据中的SIP和DIP,并提取出ipv4地址,然后添加一层ipv4网络层封装,有IPV4网络将该数据包传输到对应的IPV6网络边界路由器上。

  • 还是以GRE中的图示范,取消之前做的GRE配置

#
interface LoopBack0
 ipv6 enable 
 ipv6 address 2002:C01:101::1/64 
#
interface Tunnel0/0/0
 ipv6 enable 
 ipv6 address 2002:C01:101:1::1/64 
 tunnel-protocol ipv6-ipv4 6to4 # 指定tunnel口使用6to4
 source 12.1.1.1 # 指定封装的源IPv4地址,目标IP由目标ipv6地址提取
#
ipv6 route-static 2002:: 16 Tunnel0/0/0  # 配置静态路由,访问其他ipv4兼容地址,出接口都为tunnel口
#
  • R3同理配置
[r3]ping ipv6 -a 2002:1701:101::1 2002:c01:101::1
  PING 2002:c01:101::1 : 56  data bytes, press CTRL_C to break
    Reply from 2002:C01:101::1 
    bytes=56 Sequence=1 hop limit=64  time = 90 ms
    Reply from 2002:C01:101::1 
    bytes=56 Sequence=2 hop limit=64  time = 20 ms
    Reply from 2002:C01:101::1 
    bytes=56 Sequence=3 hop limit=64  time = 20 ms
    Reply from 2002:C01:101::1 
    bytes=56 Sequence=4 hop limit=64  time = 20 ms
    Reply from 2002:C01:101::1 
    bytes=56 Sequence=5 hop limit=64  time = 50 ms

  --- 2002:c01:101::1 ping statistics ---
    5 packet(s) transmitted
    5 packet(s) received
    0.00% packet loss
    round-trip min/avg/max = 20/40/90 ms

双栈

  • 由于多宿主的特性,接口可以同时配置ipv6和ipv4地址,当终端同时配置了ipv4和ipv6地址,当它访问ipv6网络时就会以ipv6地址为SIP发送数据包,当它访问ipv4网络时就会以ipv4地址为SIP发送数据包

在这里插入图片描述

  • 通过双栈实现PC2可以通过IPV4地址和IPV6地址访问PC1
#
 sysname r1
#
ipv6 
#
interface GigabitEthernet0/0/0 # 连接用户网段上的接口同时配置IPV4地址和IPV6地址
 ipv6 enable 
 ip address 1.1.1.1 255.255.255.0 
 ipv6 address 1::1/64 
 ripng 1 enable
#
interface GigabitEthernet0/0/1
 ip address 12.1.1.1 255.255.255.0 
#
interface GigabitEthernet0/0/2
 ipv6 enable 
 ipv6 address 13::1/64 
 ripng 1 enable
#
rip 1
 undo summary
 version 2
 network 1.0.0.0
 network 12.0.0.0
#
ripng 1
#
#
 sysname r2
#
interface GigabitEthernet0/0/1
 ip address 12.1.1.2 255.255.255.0 
#
interface GigabitEthernet0/0/2
 ip address 24.1.1.1 255.255.255.0 
#
rip 1
 undo summary
 version 2
 network 12.0.0.0
 network 24.0.0.0
#
#
 sysname r3
#
ipv6 
#
interface GigabitEthernet0/0/1
 ipv6 enable 
 ipv6 address 34::1/64 
 ripng 1 enable
#
interface GigabitEthernet0/0/2
 ipv6 enable 
 ipv6 address 13::2/64 
 ripng 1 enable
#
ripng 1
#
#
 sysname r4
#
ipv6 
#
interface GigabitEthernet0/0/0
 ipv6 enable 
 ip address 2.2.2.1 255.255.255.0 
 ipv6 address 2::1/64 
 ripng 1 enable
#
interface GigabitEthernet0/0/1
 ipv6 enable 
 ipv6 address 34::2/64 
 ripng 1 enable
#
interface GigabitEthernet0/0/2
 ip address 24.1.1.2 255.255.255.0 
#
rip 1
 undo summary
 version 2
 network 2.0.0.0
 network 24.0.0.0
#
ripng 1
#

在这里插入图片描述

  • 结果测试
    在这里插入图片描述
  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值