实验拓扑

BGP 联盟实验 - 图1

图 1-1

注:如无特别说明,描述中的 R1 或 SW1 对应拓扑中设备名称末尾数字为 1 的设备,R2 或 SW2 对应拓扑中设备名称末尾数字为 2 的设备,以此类推;另外,同一网段中,IP 地址的主机位为其设备编号,如 R3 的 g0/0 接口若在 192.168.1.0/24 网段,则其 IP 地址为 192.168.1.3/24,以此类推


实验需求

  1. 按照图示配置 IP 地址,R2,R3,R4,R5 分别配置 Loopback0 口地址作为 OSPF 的 Router_id 和 IBGP 邻居地址,地址格式为 X.X.X.X/32,X 为设备编号。R1 上配置 Loopback 口模拟业务网段
  2. AS 200 内部配置 OSPF,仅用于实现 BGP 的 TCP 可达
  3. AS 200 内部建立 BGP 联盟,联盟 AS 为 AS 200,包含 2 个 子 AS 为 AS 65001 和 AS 65002。R1 和 R2 建立 EBGP 邻居,R4 和 R6 建立 EBGP 邻居,R2 和 R4 建立 EBGP 邻居,子 AS 内部建立 IBGP 全连接
  4. R1 把业务网段宣告进 BGP,要求 AS 200 内部所有路由器都能够学习到该业务网段路由
  5. 通过配置团体属性,使 192.168.0.0/24 网段路由只能传递至 AS 200

实验解法

  1. 配置 IP 地址部分略

  2. AS 200 内部配置 OSPF 部分略

  3. AS 200 内部建立 BGP 联盟,联盟 AS 为 AS 200,包含 2 个 子 AS 为 AS 65001 和 AS 65002。R1 和 R2 建立 EBGP 邻居,R4 和 R6 建立 EBGP 邻居,R2 和 R4 建立 EBGP 邻居,子 AS 内部建立 IBGP 全连接
    分析:由于 AS 200 建立 BGP 联盟,所以 R2 和 R3 的 BGP 运行在 AS 65001 中,R4 和 R5 的 BGP 运行在 AS 65002 中,子 AS 之间通过 R2 和 R4 建立 EBGP 邻居来解决 BGP 路由黑洞问题
      真实 AS 之间的 EBGP 邻居仍然使用真实 AS 编号,子 AS 之间的 EBGP 邻居使用子 AS 编号

    步骤 1:R1 上使用直连接口地址配置与 R2 的 EBGP 邻居,AS 编号为真实 AS

    1. [R1]bgp 100
    2. [R1-bgp-default]peer 100.1.1.2 as-number 200
    3. [R1-bgp-default]address-family ipv4 unicast
    4. [R1-bgp-default-ipv4]peer 100.1.1.2 enable


步骤 2:R2 上创建 BGP 进程运行在 AS 65001 中,联盟 ID 为 200,与 R1 和 R4 建立 EBGP 邻居,与 R3 建立 IBGP 邻居,联盟内邻居 AS 为 AS 65002
注意:R4 虽然是 R2 的 EBGP,但由于是联盟内的 EBGP,所以仍然需要配置下一跳变更为本机

  1. [R2]bgp 65001
  2. [R2-bgp-default]confederation id 200
  3. [R2-bgp-default]confederation peer-as 65002
  4. [R2-bgp-default]peer 3.3.3.3 as-number 65001
  5. [R2-bgp-default]peer 3.3.3.3 connect-interface LoopBack0
  6. [R2-bgp-default]peer 100.1.1.1 as-number 100
  7. [R2-bgp-default]peer 100.2.2.4 as-number 65002
  8. [R2-bgp-default]address-family ipv4 unicast
  9. [R2-bgp-default-ipv4]peer 3.3.3.3 enable
  10. [R2-bgp-default-ipv4]peer 3.3.3.3 next-hop-local
  11. [R2-bgp-default-ipv4]peer 100.1.1.1 enable
  12. [R2-bgp-default-ipv4]peer 100.2.2.4 enable
  13. [R2-bgp-default-ipv4]peer 100.2.2.4 next-hop-local


步骤 3:R3 创建 BGP 进程运行在 AS 65001 中,联盟 ID 为 200,仅与 R2 建立 IBGP 邻居

  1. [R3]bgp 65001
  2. [R3-bgp-default]confederation id 200
  3. [R3-bgp-default]peer 2.2.2.2 as-number 65001
  4. [R3-bgp-default]peer 2.2.2.2 connect-interface LoopBack0
  5. [R3-bgp-default]address-family ipv4 unicast
  6. [R3-bgp-default-ipv4]peer 2.2.2.2 enable


步骤 4:R4 的配置与 R2 类似,对照拓扑进行配置

  1. [R4]bgp 65002
  2. [R4-bgp-default]confederation id 200
  3. [R4-bgp-default]confederation peer-as 65001
  4. [R4-bgp-default]peer 5.5.5.5 as-number 65002
  5. [R4-bgp-default]peer 5.5.5.5 connect-interface LoopBack0
  6. [R4-bgp-default]peer 100.6.6.6 as-number 300
  7. [R4-bgp-default]peer 100.2.2.2 as-number 65001
  8. [R4-bgp-default]address-family ipv4 unicast
  9. [R4-bgp-default-ipv4]peer 5.5.5.5 enable
  10. [R4-bgp-default-ipv4]peer 5.5.5.5 next-hop-local
  11. [R4-bgp-default-ipv4]peer 100.6.6.6 enable
  12. [R4-bgp-default-ipv4]peer 100.2.2.2 enable
  13. [R4-bgp-default-ipv4]peer 100.2.2.2 next-hop-local


步骤 5:R5 的配置与 R3 类似,对照拓扑进行配置

  1. [R5]bgp 65002
  2. [R5-bgp-default]confederation id 200
  3. [R5-bgp-default]peer 4.4.4.4 as-number 65002
  4. [R5-bgp-default]peer 4.4.4.4 connect-interface LoopBack0
  5. [R5-bgp-default]address-family ipv4 unicast
  6. [R5-bgp-default-ipv4]peer 4.4.4.4 enable


步骤 6:R6 的配置与 R1 类似,对照拓扑进行配置

  1. [R6]bgp 300
  2. [R6-bgp-default]peer 100.6.6.4 as-number 200
  3. [R6-bgp-default]address-family ipv4 unicast
  4. [R6-bgp-default-ipv4]peer 100.6.6.4 enable
  1. R1 把业务网段宣告进 BGP,要求 AS 200 内部所有路由器都能够学习到该业务网段路由
    分析:由于上一步配置的 BGP 联盟已经解决了 BGP 路由黑洞问题,AS 200 内部所有路由器都能够学习到 R1 的业务网段路由
    步骤 1:在 R1 上把业务网段宣告进 BGP
    1. [R1-bgp-default-ipv4]network 192.168.0.0 24
    2. [R1-bgp-default-ipv4]network 192.168.1.0 24


效果测试:AS 200 内部所有路由器都学习到 R1 的业务网段路由,步骤略

  1. 通过配置团体属性,使 192.168.0.0/24 网段路由只能传递至 AS 200
    分析:BGP 公认团体属性中,No_export 为不能被发布到本 AS 之外,如果存在联盟,则不能发布到联盟之外,但可以发布到其他子 AS。根据需求,需要在 R1 上对 192.168.0.0/24 网段的路由赋予团体属性 No_export,并且在 AS 100 到 AS 300 的途径路由器中都开启团体属性传递
       步骤 1:在 R1 上配置 ACL 抓取 192.168.0.0/24 网段路由
    1. [R1]acl basic 2000
    2. [R1-acl-ipv4-basic-2000]rule permit source 192.168.0.0 0.0.0.255


步骤 2:创建路由策略,赋予 192.168.0.0/24 网段路由 No_export 团体属性。并配置空节点放行其他路由

  1. [R1]route-policy tt permit node 10
  2. [R1-route-policy-tt-10]if-match ip address acl 2000
  3. [R1-route-policy-tt-10]apply community no-export
  4. [R1]route-policy tt permit node 20


步骤 3:在 R1 上对 R2 调用上一步创建的路由策略

  1. [R1-bgp-default-ipv4]peer 100.1.1.2 route-policy tt export


步骤 4:在 R1 上开启对 R2 传递团体属性,在 R2 上开启对 R4 传递团体属性

  1. [R1-bgp-default-ipv4]peer 100.1.1.2 advertise-community
  1. [R2-bgp-default-ipv4]peer 100.2.2.4 advertise-community


效果测试:R6 已经无法学习到 192.168.0.0/24 网段路由

  1. [R6]display bgp routing-table ipv4
  2. Network NextHop MED LocPrf PrefVal Path/Ogn
  3. * >e 192.168.1.0 100.6.6.4 0 200 100i


http://www.dengfm.com/15258786264229.html