1.组网需求

  在AS 200内使用OSPF作为IGP协议,实现AS内的互通。

  Switch A与Switch C之间建立两条IBGP连接。当Switch A与Switch C之间的两条路径均连通时,Switch C与1.1.1.0/24之间的报文使用Switch A<->Switch B<->Switch C这条路径转发;

    当Switch A<->Switch B<->Switch C这条路径发生故障时,BFD能够快速检测并通告BGP协议,使得Switch A<->Switch D<->Switch C这条路径能够迅速生效。

    

 2.配置步骤

  1)配置OSPF,保证Switch A和Switch C之间路由可达

  2)Switch A上的BGP配置

# 配置Switch A和Switch C建立两条IBGP连接。
[SwitchA] bgp 200
[SwitchA-bgp-default] peer 3.0.2.2 as-number 200
[SwitchA-bgp-default] peer 2.0.2.2 as-number 200
[SwitchA-bgp-default] address-family ipv4 unicast
[SwitchA-bgp-default-ipv4] peer 3.0.2.2 enable
[SwitchA-bgp-default-ipv4] peer 2.0.2.2 enable

# 配置当Switch A与Switch C之间的两条路径均连通时,Switch C与1.1.1.0/24之间的报文使用Switch A<->Switch B<->Switch C这条路径转发。(在Switch A上对发布给对等体2.0.2.2的1.1.1.0/24路由配置较高的MED属性值)
¡     定义编号为2000的IPv4基本ACL,允许路由1.1.1.0/24通过。
[SwitchA] acl basic 2000
[SwitchA-acl-ipv4-basic-2000] rule permit source 1.1.1.0 0.0.0.255
¡     定义两个Route-policy,一个名为apply_med_50,为路由1.1.1.0/24设置MED属性值为50;另一个名为apply_med_100,为路由1.1.1.0/24设置MED属性值为100。
[SwitchA] route-policy apply_med_50 permit node 10
[SwitchA-route-policy-apply_med_50-10] if-match ip address acl 2000
[SwitchA-route-policy-apply_med_50-10] apply cost 50
[SwitchA-route-policy-apply_med_50-10] quit
[SwitchA] route-policy apply_med_100 permit node 10
[SwitchA-route-policy-apply_med_100-10] if-match ip address acl 2000
[SwitchA-route-policy-apply_med_100-10] apply cost 100
[SwitchA-route-policy-apply_med_100-10] quit
¡     对发布给对等体3.0.2.2的路由应用名为apply_med_50的Route-policy,对发布给对等体2.0.2.2的路由应用名为apply_med_100的Route-policy。
[SwitchA] bgp 200
[SwitchA-bgp-default] address-family ipv4 unicast
[SwitchA-bgp-default-ipv4] peer 3.0.2.2 route-policy apply_med_50 export
[SwitchA-bgp-default-ipv4] peer 2.0.2.2 route-policy apply_med_100 export
[SwitchA-bgp-default-ipv4] quit
# 配置当Switch A<->Switch B<->Switch C这条路径发生故障时,BFD能够快速检测并通告BGP协议,使得Switch A<->Switch D<->Switch C这条路径能够迅速生效。
[SwitchA-bgp-default] peer 3.0.2.2 bfd

  3)Switch C上的BGP配置。  

# 配置Switch A和Switch C建立两条IBGP连接。
[SwitchC] bgp 200
[SwitchC-bgp-default] peer 3.0.1.1 as-number 200
[SwitchC-bgp-default] peer 2.0.1.1 as-number 200
[SwitchC-bgp-default] address-family ipv4 unicast
[SwitchC-bgp-default-ipv4] peer 3.0.1.1 enable
[SwitchC-bgp-default-ipv4] peer 2.0.1.1 enable
[SwitchC-bgp-default-ipv4] quit

# 配置当Switch A<->Switch B<->Switch C这条路径发生故障时,BFD能够快速检测并通告BGP协议,使得Switch A<->Switch D<->Switch C这条路径能够迅速生效。
[SwitchC-bgp-default] peer 3.0.1.1 bfd

3.验证配置

  # 显示Switch C的BFD信息。

<SwitchC> display bfd session verbose
 Total Session Num: 1     Up Session Num: 1     Init Mode: Active
 IPv4 Session Working Under Ctrl Mode:
       Local Discr: 513                  Remote Discr: 513
         Source IP: 3.0.2.2            Destination IP: 3.0.1.1
     Session State: Up                      Interface: N/A
      Min Tx Inter: 500ms                Act Tx Inter: 500ms
      Min Rx Inter: 500ms                Detect Inter: 2500ms
          Rx Count: 135                      Tx Count: 135
      Connect Type: Indirect           Running Up for: 00:00:58
         Hold Time: 2457ms                  Auth mode: None
       Detect Mode: Async                        Slot: 0
          Protocol: BGP
           Version:1
         Diag Info: No Diagnostic
以上显示信息表明:Switch A和Switch C之间已经建立了BFD连接,而且BFD协议运行正常。
# 在Switch C上查看BGP邻居信息,可以看出Switch A和Switch C之间建立两条BGP连接,且均处于Established状态。
<SwitchC> display bgp peer ipv4
 BGP local router ID: 3.3.3.3
 Local AS number: 200
 Total number of peers: 2                  Peers in established state: 2
  * - Dynamically created peer
  ^ - Peer created through link-local address
  Peer                    AS  MsgRcvd  MsgSent OutQ PrefRcv Up/Down  State
  2.0.1.1                200        4        5    0       0 00:01:55 Established
  3.0.1.1                200        4        5    0       0 00:01:52 Established
# 在Switch C上查看1.1.1.0/24的路由信息,可以看出Switch C通过Switch A<->Switch B<->Switch C这条路径与1.1.1.0/24网段通信。
<SwitchC> display ip routing-table 1.1.1.0 24 verbose
Summary count : 1
Destination: 1.1.1.0/24
   Protocol: BGP             Process ID: 0
  SubProtID: 0x1                    Age: 00h00m09s
       Cost: 50              Preference: 255
      IpPre: N/A             QosLocalID: N/A
        Tag: 0                    State: Active Adv
  OrigTblID: 0x1                OrigVrf: default-vrf
    TableID: 0x2                 OrigAs: 0
      NibID: 0x15000001          LastAs: 0
     AttrID: 0x1               Neighbor: 3.0.1.1
      Flags: 0x10060        OrigNextHop: 3.0.1.1
      Label: NULL           RealNextHop: 3.0.2.1
    BkLabel: NULL             BkNextHop: N/A
    SRLabel: NULL             BkSRLabel: NULL
   SIDIndex: NULL               InLabel: NULL
  Tunnel ID: Invalid          Interface: Vlan-interface101
BkTunnel ID: Invalid        BkInterface: N/A
   FtnIndex: 0x0           TrafficIndex: N/A
  Connector: N/A                 PathID: 0x0
   LinkCost: 0               MicroSegID: 0
# Switch A和Switch B之间的链路发生故障后,在Switch C上查看1.1.1.0/24的路由信息,可以看出Switch C通过Switch A<->Switch D<->Switch C这条路径与1.1.1.0/24网段通信。
<SwitchC> display ip routing-table 1.1.1.0 24 verbose
Summary count : 1
Destination: 1.1.1.0/24
   Protocol: BGP             Process ID: 0
  SubProtID: 0x1                    Age: 00h03m08s
       Cost: 100             Preference: 255
      IpPre: N/A             QosLocalID: N/A
        Tag: 0                    State: Active Adv
  OrigTblID: 0x1                OrigVrf: default-vrf
    TableID: 0x2                 OrigAs: 0
      NibID: 0x15000000          LastAs: 0
     AttrID: 0x0               Neighbor: 2.0.1.1
      Flags: 0x10060        OrigNextHop: 2.0.1.1
      Label: NULL           RealNextHop: 2.0.2.1
    BkLabel: NULL             BkNextHop: N/A
    SRLabel: NULL             BkSRLabel: NULL
   SIDIndex: NULL               InLabel: NULL
  Tunnel ID: Invalid          Interface: Vlan-interface201
BkTunnel ID: Invalid        BkInterface: N/A
   FtnIndex: 0x0           TrafficIndex: N/A
  Connector: N/A                 PathID: 0x0
   LinkCost: 0               MicroSegID: 0

 

posted on 2022-01-14 11:34  星痕1216  阅读(1294)  评论(0编辑  收藏  举报