未在任何地方列出的 BGP 路徑前綴路由
我們有一個簡單的多宿主設置,有兩個路由器將我們的 AS 通告給兩個 ISP。第二個 ISP (ISP B) 僅在 ISP A 出現故障時用於備份,因此我們在此路由上預先設置了 3 次 AS。
注意:這些是範例 ASN,而不是真實的。
今天早上我花了幾個小時在網際網路上的窺鏡路由器上戳,沒有一個列出我們的備用路由和前置路徑。我檢查了南非網際網路交換、倫敦網際網路交換、俄勒岡網際網路交換和幾十個 ISP。它們都有通過 ISP A 的多條路由,通常有 3 或 4 跳。通過 ISP B 的路由至少應該出現在某個地方並且有 5 或 6 個躍點。但我在任何地方都找不到。(我檢查了鏡子路由器上的完整 bgp 表,使用
show ip bgp 65000
)我的問題是:
- 路由的大小是否有限制,在此之後大多數路由器將簡單地丟棄該路由?
- 如果沒有路由器知道,當 ISP A 出現故障時,我們的備份路由是否還能正常工作?
我們的兩個路由器在 iBGP 上連接。是否有可能因為 iBGP 會話更喜歡通過 ISPA 的路由而不宣布通過 ISPB 的路由?這是non-exist-map和Advertisement-map應該做的,但在這兩個路由器中都沒有使用。
1.) 給定的講 BGP 的路由器從多個對等點呈現相同的前綴,然後它將僅傳播這些路徑中的最佳路徑(根據 BGP 的路徑選擇規則)。在您的情況下,這意味著如果某個遠端路由器同時看到普通路由和前置路由,它只會將普通路由傳遞給它的鄰居。宣布路由器將在“sh ip bgp abcd”中擁有兩條路徑,但其鄰居不會。
1a.) 您看不到前置路由的事實並不意味著備份不起作用。表中同時具有前置和非前置路由的路由器通常只會通告非前置路由,但如果非前置路由被撤回/超時,則將立即提供前置路由。
在您的備份路由器上嘗試此命令:
sh ip bgp neighbors x.y.z.q advertised-routes
查看發送給您的提供商的確切內容。2.) 如果不知道您如何創建(和處理)您的前綴,很難說 iBGP 對等互連會產生什麼影響。您是否有理由在這些路由器之間需要 iBGP 對等體?
3.) 該
advertise-map
命令將導致基於另一個前綴的存在來通告特定前綴。一個範例可能是在 10.0.0.0/8 存在時宣傳 10.128.0.0/16。同樣,non-exist-map
當另一個前綴不存在時,將通告一個特定的前綴。基本的多宿主設置都不需要。最終,最好的測試是花時間關閉您的主要路由,以確認備份將佔用流量。
哦-順便說一句-您是在宣傳真正的 PI 空間,還是有問題的前綴是提供商聚合之一的一部分?最長的比賽勝過其他一切。