您的位置:首页 > 其它

华为 IPv6过渡技术

2020-06-29 15:29 507 查看

理解的执行,不理解的在执行中理解。

文章目录

  • 四、自动隧道
  • 五、IPv6 over IPv4 隧道的应用场景
  • 一、IPv6 over IPv4 隧道简介

    IPv6 over IPv4隧道可实现IPv6网络孤岛之间通过IPv4网络互连。由于IPv4地址的枯竭和IPv6的先进性,IPv4过渡为IPv6势在必行。因为IPv6与IPv4的不兼容性,所以需要对原有的IPv4设备进行替换。但是如果贸然将IPv4设备大量替换所需成本会非常巨大,且现网运行的业务也会中断,显然并不可行。所以,IPv4向IPv6过渡是一个渐进的过程。在过渡初期,IPv4网络已经大量部署,而IPv6网络只是散落在各地的“孤岛”,IPv6 over IPv4隧道就是通过隧道技术,使IPv6报文在IPv4网络中传输,实现IPv6网络之间的孤岛互连。

    二、双协议栈

    双栈技术是IPv4向IPv6过渡的一种有效的技术。网络中的节点同时支持IPv4和IPv6协议栈,源节点根据目的节点的不同选用不同的协议栈,而网络设备根据报文的协议类型选择不同的协议栈进行处理和转发。双栈可以在一个单一的设备上实现,也可以是一个双栈骨干网。对于双栈骨干网,其中的所有设备必须同时支持IPv4/IPv6协议栈,连接双栈网络的接口必须同时配置IPv4地址和IPv6地址。

    双协议栈具有以下特点:

    1、多种链路协议支持双协议栈多种链路协议(如以太网)支持双协议栈。图中的链路层是以太网,在以太网帧上,如果协议ID字段的值为0x0800,表示网络层收到的是IPv4报文,如果为0x86DD,表示网络层是IPv6报文。

    2、多种应用支持双协议栈
    多种应用(如DNS/FTP/Telnet等)支持双协议栈。上层应用(如DNS)可以选用TCP或UDP作为传输层的协议,但优先选择IPv6协议栈,而不是IPv4协议栈作为网络层协议。

    三、手动隧道

    根据IPv6报文封装的不同,手动隧道又可以分为IPv6 over IPv4手动隧道和IPv6 over IPv4 GRE隧道两种。

    3.1 IPv6 over IPv4隧道

    IPv6 over IPv4 手动隧道手动隧道直接把IPv6报文封装到IPv4报文中去,IPv6报文作为IPv4报文的净载荷。手动隧道的源地址和目的地址也是手工指定的,它提供了一个点到点的连接。手动隧道可以建立在两个边界路由器之间为被IPv4网络分离的IPv6网络提供稳定的连接,或建立在终端系统与边界路由器之间为终端系统访问IPv6网络提供连接。隧道的边界设备必须支持IPv6/IPv4双协议栈。其它设备只需实现单协议栈即可。因为手动隧道要求在设备上手工配置隧道的源地址和目的地址,如果一个边界设备要与多个设备建立手动隧道,就需要在设备上配置多个隧道,配置比较麻烦。所以手动隧道通常用于两个边界路由器之间,为两个IPv6网络提供连接。

    IPv6 over IPv4 手动隧道封装格式

    IPv4 Header IPv6 Header IPv6 Data

    (1)过渡初期使用,用于IPv6网络穿越IPv4网络
    (2)通过隧道技术,使用IPv6报文在IPv4网络中传输
    (3)手动隧道包括IPv6 over IPv4手动隧道和IPv6 over IPv4 GRE隧道
    (4)自动隧道包括IPv4兼容IPv6隧道,6to4隧道和ISATAP隧道

    1、手动隧道

    (1)简介:IPv4 over IPv4隧道是手动隧道的一种,隧道底层源地址和目的地址需要手动指定;用于边界路由器和边界路由器或者主机与边界路由器之间

    2、拓扑


    3、路由器角色

    (1)双栈路由器
    AR-1;AR-2;AR-3;
    (2)IPv6协议栈路由器
    AR-4;AR-5;AR-6;

    4、地址

    (1)IPv4互联地址,设备编号组合网段
    例如:12.1.1.1,13.1.1.1;
    (2)环回口地址,设备编号+环回口编号
    例如:1.1.1.1、1.1.1.2;
    (3)IPv6互联地址,20+设备编号组合前缀
    例如:2012::1/64、2034::3/64
    (4)IPv6环回口地址,2001+设备编号
    例如:2001::5/128; 2001::6/128

    IPv4地址簇IS-IS 49.0001

    [Huawei]sysname AR-1
    [AR-1]int g0/0/0
    [AR-1-GigabitEthernet0/0/0]ip address 12.1.1.1 24
    [AR-1-GigabitEthernet0/0/0]int g0/0/1
    [AR-1-GigabitEthernet0/0/1]ip address 13.1.1.1 24
    [AR-1-GigabitEthernet0/0/1]int l0
    [AR-1-LoopBack0]ip address 1.1.1.1 32
    [AR-1-LoopBack0]isis 1
    [AR-1-isis-1]network-entity 49.0001.0000.0000.0001.00
    [AR-1-isis-1]auto-cost enable
    [AR-1-isis-1]int g0/0/0
    [AR-1-GigabitEthernet0/0/0]isis enable
    [AR-1-GigabitEthernet0/0/0]int g0/0/1
    [AR-1-GigabitEthernet0/0/1]isis enable
    [AR-1-GigabitEthernet0/0/1]int l0
    [AR-1-LoopBack0]isis enable
    AR-2、3的配置类似

    [AR-3]ping 12.1.1.2

    [Huawei]sysname AR-6
    [AR-6]ipv6
    [AR-6]int g0/0/1
    [AR-6-GigabitEthernet0/0/1]ipv6 enable
    [AR-6-GigabitEthernet0/0/1]ipv6 address 2036::6 64
    [AR-6-GigabitEthernet0/0/1]int l0
    [AR-6-LoopBack0]ipv6 enable
    [AR-6-LoopBack0]ipv6 address 2001::6 128
    AR-4、5的配置类似
    [AR-3-GigabitEthernet0/0/1]ospfv3 1
    [AR-3-ospfv3-1]router-id 3.3.3.3
    [AR-3-ospfv3-1]quit
    [AR-3]int g0/0/2
    [AR-3-GigabitEthernet0/0/2]ipv6 enable
    [AR-3-GigabitEthernet0/0/2]ipv6 address 2026::3/64
    [AR-3-GigabitEthernet0/0/2]ospfv3 1 a 0
    [AR-3-GigabitEthernet0/0/2]quit
    
    [AR-6]ospfv3 1
    [AR-6-ospfv3-1]router-id 6.6.6.6
    [AR-6-ospfv3-1]quit
    [AR-6]int g0/0/1
    [AR-6-GigabitEthernet0/0/1]ospfv3 1 a 0
    [AR-6-GigabitEthernet0/0/1]int l0
    [AR-6-LoopBack0]ospfv3 1 a 0
    [AR-6-LoopBack0]quit

    dis ospfv3 peer


    AR-1和AR-4、AR-2和AR-5的配置类似

    [AR-2]int Tunnel 0/0/1
    [AR-2-Tunnel0/0/1]tunnel-protocol  ipv6-ipv4    //选择隧道封装模式为ipv6 to ipv4的手动模式
    [AR-2-Tunnel0/0/1]ipv6 enable
    [AR-2-Tunnel0/0/1]ipv6 address 2012::1:101 112  //配置隧道的IPv6逻辑地址
    [AR-2-Tunnel0/0/1]source 2.2.2.2
    [AR-2-Tunnel0/0/1]destination 1.1.1.1
    [AR-2-Tunnel0/0/1]quit
    
    [AR-1]int Tunnel 0/0/1
    [AR-1-Tunnel0/0/1]tunnel-protocol  ipv6-ipv4
    [AR-1-Tunnel0/0/1]ipv6 enable
    [AR-1-Tunnel0/0/1]ipv6 address 2012::1:100 112
    [AR-1-Tunnel0/0/1]source 1.1.1.1
    [AR-1-Tunnel0/0/1]destination 2.2.2.2
    [AR-1-Tunnel0/0/1]quit

    [AR-2] ping ipv6 2012::1:100

    [AR-1]int Tunnel 0/0/1
    [AR-1-Tunnel0/0/1]ospfv3 1 a 1
    
    [AR-2]int Tunnel 0/0/1
    [AR-2-Tunnel0/0/1]ospfv3 1 a 1

    [AR-2]dis ospfv3 peer

    [AR-5]ping ipv6 2014::4

    3.2 GRE隧道

    IPv6 over IPv4 GRE隧道使用标准的GRE隧道技术提供了点到点连接服务,需要手工指定隧道的端点地址。GRE隧道本身并不限制被封装的协议和传输协议,一个GRE隧道中被封装的协议可以是协议中允许的任意协议(可以是IPv4、IPv6、OSI、MPLS等)。

    1、继拓扑


    2、配置如下:

    [AR-1]int Tunnel 0/0/2
    [AR-1-Tunnel0/0/2]tunnel-protocol gre  //隧道 封装协议选择GRE通用封装
    [AR-1-Tunnel0/0/2]source 1.1.1.2
    [AR-1-Tunnel0/0/2]destination 3.3.3.3
    [AR-1-Tunnel0/0/2]ipv6 enable
    [AR-1-Tunnel0/0/2]ipv6 address 2013::2:131 112
    [AR-1-Tunnel0/0/2]ospfv3 1 a 0
    [AR-1-Tunnel0/0/2]quit
    
    [AR-3]int Tunnel 0/0/2
    [AR-3-Tunnel0/0/2]tunnel-protocol gre
    [AR-3-Tunnel0/0/2]source 3.3.3.3
    [AR-3-Tunnel0/0/2]destination 1.1.1.2
    [AR-3-Tunnel0/0/2]ipv6 enable
    [AR-3-Tunnel0/0/2]ipv6 address 2013::2:133 112
    [AR-3-Tunnel0/0/2]ospfv3 1 a 0
    [AR-3-Tunnel0/0/2]quit

    [AR-3]dis ospfv3 peer

    [AR-6]ping ipv6 2025::5

    已实现全网互通

    四、自动隧道

    自动隧道中,用户仅需要配置设备隧道的起点,隧道的终点由设备自动生成。为了使设备能够自动产生终点,隧道接口的IPv6地址采用内嵌IPv4地址的特殊IPv6地址形式。设备从IPv6报文中的目的IPv6地址中解析出IPv4地址,然后以这个IPv4地址代表的节点
    作为隧道的终点。根据IPv6报文封装的不同,自动隧道又可以分为IPv4兼容IPv6自动隧道、6to4隧道和
    ISATAP隧道三种。

    4.1 IPv4兼容IPv6自动隧道

    其承载的IPv6报文的目的地址(即自动隧道所使用的特殊地址)是IPv4兼容IPv6地址。IPv4兼容IPv6地址的前96位全部为0,后32位为IPv4地址。

    注意:

    如果IPv4兼容IPv6地址中的IPv4地址是广播地址、组播地址、网络广播地址、出接口的子网广播地址、全0地址、环回地址,则该IPv6报文被丢弃,不会进行隧道封装处理

    1、IPv4 兼容 IPv6 地址

    0 IPv4 address
    -96 bit- -32 bit-

    2、拓扑


    3、配置如下:

    <AR-7>dis current-configuration
    #
    sysname AR-7
    .....
    #
    isis 1
    auto-cost enable
    network-entity 49.0001.0000.0000.0007.00
    #
    interface GigabitEthernet0/0/0
    ip address 78.1.1.7 255.255.255.0
    isis enable 1
    #
    interface GigabitEthernet0/0/1
    ip address 79.1.1.7 255.255.255.0
    isis enable 1
    #
    interface GigabitEthernet0/0/2
    #
    interface LoopBack0
    ip address 7.7.7.7 255.255.255.255
    isis enable 1
    #
    interface Tunnel0/0/3
    ipv6 enable
    ipv6 address ::7.7.7.7/96
    tunnel-protocol ipv6-ipv4 auto-tunnel  //选择使用IPv6 to IPv4自动隧道(将隧道源地址嵌入进隧道自身的IPv6逻辑地址中)
    source LoopBack0
    #
    ......
    <AR-7>
    
    <AR-9>dis current-configuration
    #
    sysname AR-9
    ......
    #
    isis 1
    auto-cost enable
    network-entity 49.0001.0000.0000.0009.00
    #
    interface GigabitEthernet0/0/2
    ip address 79.1.1.9 255.255.255.0
    isis enable 1
    #
    interface LoopBack0
    ipv6 enable
    ipv6 address 2001::9/128
    #
    interface LoopBack10
    ip address 9.9.9.9 255.255.255.255
    isis enable 1
    #
    interface Tunnel0/0/5
    ipv6 enable
    ipv6 address ::9.9.9.9/96
    tunnel-protocol ipv6-ipv4 auto-tunnel
    source LoopBack10
    #
    ......
    <AR-9>
    AR-8、10的配置类似

    [AR-10]ping ipv6 ::9.9.9.9

    4.2 6to4隧道

    6to4隧道也属于一种自动隧道,隧道也是使用内嵌在IPv6地址中的IPv4地址建立的。与IPv4兼容自动隧道不同,6to4自动隧道支持Router到Router、Host到Router、Router到Host、 Host到Host。

    1、6to4 地址

    2、6to4地址是用IPv4地址做为网络标识

    (1)6to4地址可以表示为2001::/64,网络号为2002:IPv4地址::/64
    (2)6to4的网络前缀长度为64bit,其中64bit:2002:a.b.c.d,有路由器的ipv4地址决定,用户不能变更,后16位(SLA)用户自己定义。用以一个源对应多个目的地址时需要建立多条隧道时的区分

    注意:
    (1)数据转发时路由器会基于IPv6地址中嵌入的IPv4地址的进行下一跳解析和封装
    (2)配置基于6to4隧道网段数数据和基于此6to4网络转发的数据的隧道发出接口

    例如:IPv6路由查表解析的下一跳为2002:201:102:1 双栈路由器会基于 6to4的规则提取此IPv6地址中的2.1.1.2此IPv4地址为穿越IPv4网络的下一跳和隧道底层目的地址的的封装地址

    3、拓扑


    4、配置如下:

    [AR-1]dis current-configuration
    #
    sysname AR-1
    ......
    #
    ipv6
    #
    ......
    interface GigabitEthernet0/0/1
    ip address 2.1.1.1 255.255.255.0
    #
    interface GigabitEthernet0/0/2
    ipv6 enable
    ipv6 address 2002:201:101:1::1/64
    #
    interface Tunnel0/0/1
    ipv6 enable
    ipv6 address 2002:201:101::1/64
    tunnel-protocol ipv6-ipv4 6to4
    source GigabitEthernet0/0/1
    #
    ipv6 route-static :: 0 2002:201:102::1
    ......
    
    [AR-2]dis current-configuration
    #
    sysname AR-2
    ......
    #
    ipv6
    #
    ......
    interface GigabitEthernet0/0/1
    ip address 2.1.1.2 255.255.255.0
    #
    interface GigabitEthernet0/0/2
    ipv6 enable
    ipv6 address 2001::1/64
    #
    interface Tunnel0/0/1
    ipv6 enable
    ipv6 address 2002:201:102::1/64
    tunnel-protocol ipv6-ipv4 6to4
    source GigabitEthernet0/0/1
    #
    ipv6 route-static 2002:: 16 Tunnel0/0/1
    #
    ......

    ping ipv6 2001::1


    AR-2接口g0/0/1抓包

    五、IPv6 over IPv4 隧道的应用场景

    隧道类型 隧道源/ 目的地址 隧道接口地址 应用场景
    IPv6 over IPv4手动隧道 源/目的地址为手动配置的IPv4地址 IPv6地址 简单的IPv6网络或主机之间的点到点连接,隧道仅可以承载IPv6报文。
    IPv6 over IPv4 GRE隧道 源/目的地址为手动配置的IPv4地址 IPv6地址 简单的IPv6网络或主机之间的点到点连接,隧道可以承载包括IPv6协议在内的多种上层协议。
    IPv6 over IPv4自动隧道 源地址为手动配置的IPv4地址,目的地址不需配置 IPv4兼容IPv6地址,其格式为 ::IPv4-source-address/96 多用于IPv6主机之间的点到多点的连接
    6to4隧道 源地址为手动配置的IPv4地址,目的地址不需配置 6to4地址,其格式为2002:IPv4-source-address::/48 多用于IPv6网络之间的点到多点的连接。
    ISATAP隧道 源地址为手动配置的IPv4地址,目的地址不需配置 ISATAP地址,其格式为Prefix:0 多用于在IPv4网络之内的IPv6节点之间的互联

    本人所有文章都受版权保护,著作权归艺博东所有!未经授权,转载必究或附上其原创链接。

    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: