zoukankan      html  css  js  c++  java
  • Hub & Spoke Service

    Hub & Spoke Service

    Hub / Spoken模型的部署要点:
    在Hub端PE设备上启用两个VRF分别关联不同的子接口
    一个用于导入Spoken端客户路由
    一个用于导出一条默认路由供Spoken端使用
    (可不可以只用一个物理接口? / 可以)

    PE-SA:
    ip vrf green-spoke1
    rd 300:111
    route-target export 1:1
    route-target import 2:2

    PE-SB:
    ip vrf green-spoke2
    rd 300:112
    route-target export 1:1
    route-target import 2:2

    在Hub上用e0/0.100导出RT,使用e0/0.200导入RT,使得导入导出不再集成在一个PE设备上
    PE-Hub:
    ip vrf IN
    rd 300:11
    route-target import 1:1
    int e0/0.1
    ip vrf forwarding IN
    ip address 100.1.1.1 255.255.255.0
    roueter bgp 100
    address-family ipv4 vrf IN
    neighbor 100.1.1.2

    ip vrf OUT
    rd 300:12
    route-target export 2:2
    int e0/0.2
    ip vrf forwarding OUT
    ip route vrf OUT 0.0.0.0 0.0.0.0 e0/0.2 200.1.1.2 (下发默认路由给SPOKE-CE设备)
    router bgp 100
    address-family ipv4 vrf OUT
    network 0.0.0.0
    r1#show ip route
    Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
    D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
    N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
    E1 - OSPF external type 1, E2 - OSPF external type 2
    i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
    ia - IS-IS inter area, * - candidate default, U - per-user static route
    o - ODR, P - periodic downloaded static route, + - replicated route

    Gateway of last resort is 12.1.1.2 to network 0.0.0.0

    B* 0.0.0.0/0 [20/0] via 12.1.1.2, 00:13:30
    1.0.0.0/32 is subnetted, 1 subnets
    C 1.1.1.1 is directly connected, Loopback0
    12.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
    C 12.1.1.0/24 is directly connected, Ethernet0/0.12
    L 12.1.1.1/32 is directly connected, Ethernet0/0.12
    171.68.0.0/16 is variably subnetted, 2 subnets, 2 masks
    C 171.68.1.0/24 is directly connected, Loopback1
    L 171.68.1.1/32 is directly connected, Loopback1

    r1#traceroute 171.68.2.6 source 171.68.1.1

    Type escape sequence to abort.
    Tracing the route to 171.68.2.6

    1 12.1.1.2 [AS 100] 4 msec 4 msec 0 msec
    2 23.1.1.3 [AS 100] [MPLS: Label 3002 Exp 0] 8 msec 8 msec 4 msec
    3 100.1.1.1 [AS 100] 4 msec 4 msec 0 msec
    4 200.1.1.2 [AS 100] 4 msec 4 msec 4 msec
    5 56.1.1.5 [AS 100] [MPLS: Label 5006 Exp 0] 4 msec 4 msec 4 msec
    6 56.1.1.6 [AS 100] 8 msec * 8 msec

    Lab


    Cisco Hub-Spoke三层VPN配置指导

    在BGP/MPLS三层VPN网络中,通过VPN的Route Target属性来控制VPN路由信息在各Site 之间的发布和接收。VPN Export Route Target和Import Route Target的设置相互独立,并且可以通过设置多个值,可以实现灵活的VPN间的互访控制,这里我首先通过Cisco的设备讲解Hub-Spoke方式的三层VPN的配置以及一些关键点。

    Hub-Spoke VPN的核心思想是在VPN中设置中心访问控制设备,其它用户的互访都通过中心访问控制设备进行。上图是一个典型的Hub-Spoke网络,其中的元素分别为Hub-PE、Hub-CE、Spoke-PE和Spoke-CE,一般情况下Spoke-PE均与Hub-PE互联,Spoke-PE之间无需互联。在这里Hub-PE看上去有点类似于路由反射器RR的功能,其实并不是这样的,可以通过后面的配置中我们可以看到,在Hub-PE上并没有配置任何RR的功能,这里是通过Hub-PE和Spoke-PE互联,组成以Hub-PE为核心的星形网络,然后通过Hub-CE将两个VPN之间的路由信息导通,并且进行互访控制,在这里,我就不对具体做那些互访控制进行详细的阐述了,在配好Hub-Spoke的VPN之后,通过Hub-CE进行互访控制其实是件很简单的事情。

    Hub-Spoke组网的优点主要体现在可以方便的实现VPN间的受限访问,比如不同企业间的互访,不可能是完全互访的,所以受限访问是很典型并且很实际的应用,这也是基于安全这一前提的。

    配置要点

    对于Hub-Spoke的组网,需要设置两个Route Target,其一表示用于接收从Spoke-PE发布的路由信息,其二表示用于向Spoke-PE发布路由信息。各Site在PE上的vrf的Route Target设置原则大致为:
    Spoke-PE上设置Import Target和Export Target分别对应上面提到的两个Route Target;
    Hub-PE上需要使用两个接口(可以是一个CE,也可以是两个或多个CE),其一只用来接收Spoke-PE发布的路由信息,其二只用来向Spoke-PE发布路由信息,与Spoke-PE上的Import和Export Route Target正好相反。

    从上图可以看出:Spoke Site之间的通信通过Hub Site进行:
    Hub-PE能够接收所有Spoke-PE发布的VPN-IPv4路由信息;
    Hub-PE发布的VPN-IPv4路由能够为所有Spoke-PE接收;
    Hub-PE将从Spoke-PE学到的路由信息发布给其他Spoke-PE,因此,Spoke Site之间可以通过Hub Site互访,而Hub Site正好通过在自身上设置互访控制策略对Spoke Site之间的互访进行控制和管理;
    任意Spoke-PE的Import Route Target属性不与其它Spoke-PE的Export Route Target属性相同。因此,任意两个Spoke-PE之间不直接发布VPN-IPv4路由,Spoke Site之间不能直接互访。这里我们配置的是域内三层VPN,由于Spoke-PE均是只和Hub-PE建立IBGP邻居关系,故根据BGP路由信息发布的原则,IBGP邻居不会把自己从IBGP邻居学到的路由信息向其他IBGP邻居发布,所以从这一点上来看Spoke-PE之间也不会直接发布VPN-IPv4路由。

    由于在PE-CE之间互联会采用EBGP的方式,那么Hub-Spoke组网中就会出现as-path有环的问题,所以这里我们在配置时必须在Hub-PE和Spoke-PE上配置可以接收自治系统号重复的路由通过。

    数据设计

    由于一般的跨域VPN配置示例都是两个AS,这里我故意调整成了三个AS,其实也没什么变化,就是多配置一些EBGP邻居而已。

  • 相关阅读:
    django学习第85天Django的Ajax
    django学习第84天Django常用字段和参数
    django学习第83天Django聚合查询.分组查询.FQ查询
    django学习第82天Django多表查询
    django学习第81天Django模板层2(单表查询.模块的导入和继承.静态文件配置)
    django学习第80天Django模板层1
    django学习第79天Django视图层
    Linux 内核文档翻译
    Linux设备模型——设备驱动模型和sysfs文件系统解读
    内核空间内存申请函数kmalloc kzalloc vmalloc的区别
  • 原文地址:https://www.cnblogs.com/cyrusxx/p/12806676.html
Copyright © 2011-2022 走看看