BGP路由協定學習一

2023-10-18 06:00:35

轉載請註明出處:

1.BGP的特點:

  • BGP使用TCP作為其傳輸層協定(埠號為179),使用觸發式路由更新,而不是週期性路由更新。

  • BGP能夠承載大批次的路由資訊,能夠支撐大規模網路。

  • BGP提供了豐富的路由策略,能夠靈活的進行路由選路,並能指導對等體按策略釋出路由。

  • BGP能夠支撐MPLS/VPN的應用,傳遞客戶VPN路由。

  • BGP提供了路由聚合和路由衰減功能用於防止路由振盪,通過這兩項功能有效地提高了網路穩定性。

 2.BGP特徵:

  • BGP使用TCP為傳輸層協定,TCP埠號179。

  • 路由器之間的BGP對談基於TCP連線而建立。

  • 執行BGP的路由器被稱為BGP發言者(BGP Speaker),或BGP路由器。

  • 兩個建立BGP對談的路由器互為對等體(Peer),BGP對等體之間交換BGP路由表。

  • BGP路由器只傳送增量的BGP路由更新,或進行觸發式更新(不會週期性更新)。

  • BGP能夠承載大批次的路由字首,可在大規模網路中應用。

  • BGP通常被稱為路徑向量路由協定(Path-Vector Routing Protocol)。

  • 每條BGP路由都攜帶多種路徑屬性(Path attribute),BGP可以通過這些路徑屬性控制路徑選擇,而不像IS-IS、OSPF只能通過Cost控制路徑選擇,因此在路徑選擇上,BGP具有豐富的可操作性,可以在不同場景下選擇最合適的路徑控制方式。

3.BGP常用設定

  1.啟動BGP程序

[Huawei] bgp { as-number-plain | as-number-dot }
[Huawei-bgp] router-id ipv4-address

  啟動BGP,指定本地AS編號,並進入BGP檢視。使用router-id命令設定BGP的Router ID,建議將BGP Router ID設定為裝置Loopback介面的地址。

  AS號(Autonomous System Number):

  • AS號是唯一標識一個自治系統(AS)的數位。
  • AS號用於區分不同的自治系統,每個自治系統都被分配了一個獨特的AS號。
  • AS號有兩種型別:32位元的AS號(ASN32)和16位元的AS號(ASN16)。ASN32支援更大範圍的AS號分配。
  • AS號的作用:

    • 標識和區分不同的自治系統。
    • 用於確保全球範圍內的自治系統號的唯一性。
    • 在BGP中,AS號用於路由選擇、策略控制和路徑標識。

  2.設定BGP對等體

[Huawei-bgp] peer { ipv4-address | ipv6-address } as-number { as-number-plain | as-number-dot }

  建立BGP對等體,指定對等體地址以及AS號。

  對等體(Peering Entity):

  • 對等體是指在BGP中建立鄰居關係的兩臺BGP路由器。
  • 對等體之間通過建立BGP鄰居關係來實現路由資訊的交換和學習。
  • 對等體可以是直連的邊界路由器,也可以通過網路連線進行通訊。
    • 對等體的作用:

      • 建立BGP鄰居關係,實現路由資訊的交換和學習。
      • 通過對等體之間的鄰居關係,自治系統可以傳遞路由資訊並選擇最佳路徑。

  3.設定建立對等體使用的源地址、EBGP對等體最大跳數

[Huawei-bgp] peer ipv4-address connect-interface interface-type interface-number [ ipv4-source-address ]
[Huawei-bgp] peer ipv4-address ebgp-max-hop [ hop-count ]

  指定傳送BGP報文的源介面,並可指定發起連線時使用的源地址。指定建立EBGP連線允許的最大跳數。預設情況下,EBGP連線允許的最大跳數為1,即只能在物理直連鏈路上建立EBGP連線。

 4.檢查BGP設定結果

  • 使用display bgp router-id [ vpn-instance [ vpn-instance-name ] ]命令檢視路由器的Router ID。
  • 使用display bgp peer [ verbose ]命令檢視所有BGP對等體的資訊。
  • 使用display bgp peer ipv4-address { log-info | verbose }命令檢視指定BGP對等體的資訊。
  • 使用display bgp routing-table命令檢視BGP路由的資訊。
  • 使用display bgp routing-table route-filter route-filter-name命令檢視XPL能匹配的BGP路由資訊。

 5.BGP路由設定和學習規律

  1. BGP路由設定規律:

  • 每個BGP路由器需要設定自身的自治系統號(AS號)。
  • BGP路由器需要設定與其鄰居建立對等體關係的IP地址。
  • BGP路由器可以設定出口策略、過濾和轉發規則等來控制路由的選擇和傳播。

  2. BGP路由學習規律:

  • BGP路由學習通常發生在邊界路由器之間,即EBGP鄰居之間,或者在同一個自治系統內的路由器之間,即IBGP鄰居之間。
  • BGP學習的路由資訊包括目的地網路字首、下一跳、AS路徑和其他屬性。
  • 學習到的BGP路由資訊會被儲存在原生的BGP路由表中。

  下面是一個範例圖示,展示了兩個自治系統(AS1和AS2)之間的BGP路由學習和傳播的過程:

                        AS1                                       AS2
                  +---------------+                       +---------------+
                  |    R1         |                       |      R3       |
                  |(EBGP Neighbor)|                       |(EBGP Neighbor)|
                  +------|--------+                       +------|--------+
                         |                                           |
                         |  BGP Route Advertisement                  |
                         +------------------------------------------>|
                         |                                           |
                         |  BGP Route Learning                       |
                         |<------------------------------------------+
                         |                                           |

  在上述範例中,R1和R3分別是AS1和AS2的邊界路由器,它們之間建立了EBGP鄰居關係。

  • 路由設定規律:

    • R1需要設定自身的AS號為AS1,同時設定R3的IP地址作為EBGP鄰居。
    • R3需要設定自身的AS號為AS2,同時設定R1的IP地址作為EBGP鄰居。
  • 路由學習規律:

    • R1向R3通告它所學習到的路由資訊(目的地字首、下一跳、AS路徑等)。
    • R3收到來自R1的BGP路由廣告後,將其儲存在原生的BGP路由表中,同時可以選擇最佳路徑進行轉發。
    • 如果R3也有其他的EBGP鄰居,它還可以將學習到的路由資訊傳播給其他鄰居。