BGP策略實驗(路徑屬性和選路規則)

要求:

1、使用preval策略,確保R4通過R2到達192.168.10.0/24
2、使用AS Path策略,確保R4通過R3到達192.168.11.0/24
3、配置MED策略,確保R4通過R3到達192.168.12.0/24
4、使用Local Preference策略,確保R1通過R2到達192.168.1.0/24
5、使用Local Preference策略,確保R1通過R3到達192.168.2.0/24
6、配置負載均衡,確保R1通過R2和R3到達192.168.3.0/24
7、使用As策略,AS 500不接受任何始發于AS 123的路由
8、使用自定義Community策略,確保192.168.3.0/24路由不會被發布到AS 500
9、IBGP使用環回接口建鄰,EBGP使用物理接口建鄰
10、修改AS 123中的用戶網段為Broadcast,方便后續在BGP中宣告

11、BGP宣告路由時,僅宣告24網段的用戶路由

做法:

首先,配置IP和環回地址

[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip ad 12.0.0.1 24
[R1-GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip ad 13.0.0.1 24
[R1-GigabitEthernet0/0/1]int g0/0/2
[R1-GigabitEthernet0/0/2]ip ad 15.0.0.1 24
[R1-GigabitEthernet0/0/2]int l 0
[R1-LoopBack0]ip ad 1.1.1.1 32
[R1-LoopBack0]int l 1
[R1-LoopBack1]ip ad 192.168.100.1 24
[R1-LoopBack1]ospf network-type broadcast

[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip ad 24.0.0.2 24
[R2-GigabitEthernet0/0/0]int g0/0/1
[R2-GigabitEthernet0/0/1]ip ad 12.0.0.2 24
[R2-GigabitEthernet0/0/1]int l 0
[R2-LoopBack0]ip ad 2.2.2.2 32
[R2-LoopBack0]int l 1
[R2-LoopBack1]ip ad 192.168.20.1 24
[R2-LoopBack1]ospf network-type? broadcast

[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]ip ad 34.0.0.3 24
[R3-GigabitEthernet0/0/0]int g0/0/1
[R3-GigabitEthernet0/0/1]ip ad 13.0.0.3 24
[R3-GigabitEthernet0/0/1]int l 0
[R3-LoopBack0]ip ad 3.3.3.3 32
[R3-LoopBack0]int l 1
[R3-LoopBack1]ip ad 192.168.30.1 24
[R3-LoopBack1]ospf network-type? broadcast

[R4]int g0/0/0
[R4-GigabitEthernet0/0/0]ip ad 24.0.0.4 24
[R4-GigabitEthernet0/0/0]int g0/0/1
[R4-GigabitEthernet0/0/0]ip ad 34.0.0.4 24
[R4-GigabitEthernet0/0/0]int l 0
[R4-LoopBack0]ip ad 192.168.1.1 24
[R4-LoopBack0]int l 1
[R4-LoopBack1]ip ad 192.168.2.1 24
[R4-LoopBack1]int l 2
[R4-LoopBack2]ip ad 192.168.3.1 24

[R5]int g0/0/0
[R5-GigabitEthernet0/0/0]ip ad 15.0.0.5 24
[R5-GigabitEthernet0/0/0]int l 0
[R5-LoopBack0]ip ad 192.168.10.1 24
[R5-LoopBack0]int l 1
[R5-LoopBack1]ip ad 192.168.11.1 24
[R5-LoopBack1]int l 2
[R5-LoopBack2]ip ad 192.168.12.1 24

隨后,測試是否互通,若可以,進入下一步

隨后,配置ospf,搭建IGP

[R1]ospf 1 router-id 1.1.1.1
[R1-ospf-1]area 0
[R1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[R1-ospf-1-area-0.0.0.0]network 12.0.0.1 0.0.0.0
[R1-ospf-1-area-0.0.0.0]network 13.0.0.1 0.0.0.0
[R1-ospf-1-area-0.0.0.0]network? 192.168.100.1 0.0.0.0

[R2]ospf 1 router-id 2.2.2.2
[R2-ospf-1]area 0
[R2-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0
[R2-ospf-1-area-0.0.0.0]network 12.0.0.2 0.0.0.0
[R2-ospf-1-area-0.0.0.0]network 192.168.20.1 0.0.0.0

[R3]ospf 1 router-id 3.3.3.3
[R3-ospf-1]area 0
[R3-ospf-1-area-0.0.0.0]network 13.0.0.3 0.0.0.0
[R3-ospf-1-area-0.0.0.0]network 3.3.3.3 0.0.0.0
[R3-ospf-1-area-0.0.0.0]network 192.168.30.1 0.0.0.0

隨后,配置BGP

[R1]bgp 123
[R1-bgp]router-id 1.1.1.1
[R1-bgp]peer 15.0.0.5 as-number 500
[R1-bgp]peer 2.2.2.2 as-number 123?? ?
[R1-bgp]peer 2.2.2.2 connect-interface l0
[R1-bgp]peer 2.2.2.2 next-hop-local
[R1-bgp]peer 3.3.3.3 as-number 123?? ?
[R1-bgp]peer 3.3.3.3 connect-interface l0
[R1-bgp]peer 3.3.3.3 next-hop-local

[R2]bgp 123
[R2-bgp]router-id 2.2.2.2
[R2-bgp]peer 24.0.0.4 as-number 400
[R2-bgp]peer 1.1.1.1 as-number 123
[R2-bgp]peer 1.1.1.1 connect-interface l0
[R2-bgp]peer 1.1.1.1 next-hop-local

?

[R3]bgp 123
[R3-bgp]router-id 3.3.3.3

[R3-bgp]peer 34.0.0.4 as-number 400
[R3-bgp]peer 1.1.1.1 as-number 123
[R3-bgp]peer 1.1.1.1 connect-interface l0
[R3-bgp]peer 1.1.1.1 next-hop-local

?

???

[R4]bgp 400

[R4-bgp]router-id 4.4.4.4?? ?
[R4-bgp]peer 24.0.0.2 as-number 123
[R4-bgp]peer 34.0.0.3 as-number 123

?

[R5]bgp 500
[R5-bgp]router-id 5.5.5.5
[R5-bgp]peer 15.0.0.1 as-number 123

隨后,使用preval策略,確保R4通過R2到達192.168.10.0 24

??? [R4]ip ip-prefix PV permit 192.168.10.0 24
??? [R4]route-policy PV permit node 10
??? [R4-route-policy]if-match ip-prefix PV
??? [R4-route-policy]apply preferred-value 100
??? [R4-route-policy]q??????????? 要記得允許所有
??? [R4]route-policy PV permit node 20
??? [R4-route-policy]q
??? [R4]bgp 400
??? [R4-bgp]peer 24.0.0.2 route-policy PV import

?

??? display bgp routing-table 192.168.10.0

使用AS Path策略,確保R4通過R3到達192.168.11.0/24

???????? AS-Path屬性越短則該路由越優,因為這條路徑距離目的地所要經過的AS個數更少。
???????? AS_Path屬性最開始是空的列表,當該路由被通告給一個EBGP對等體鄰居時,才會被加上一個AS號,在每次經過一個AS時,都會在AS_Path屬性的最前端增加最新的AS號。
??????????? 而該屬性在IBGP對等體之間傳播時,這條屬性是不會發生改變

R4配置

??? [R4]ip ip-prefix AS permit 192.168.11.0 24
??? [R4]route-policy AS permit node 10
??? [R4-route-policy]if-match ip-prefix AS
??? [R4-route-policy]apply as-path 123 123 500 overwrite
??? [R4-route-policy]q
??? ?
??? [R4]bgp 400
??? [R4-bgp]peer 24.0.0.2 route-policy AS import

??? 當然,我們也可以使用方法二

??? [R4]ip ip-prefix AS permit 192.168.11.0 24
??? [R4]route-policy PV permit node 15
??? [R4-route-policy]if-match ip-prefix PV
??? [R4-route-policy]apply as-path 123 123 500 overwrite
??? [R4-route-policy]q

??? 不需要調用,因為PV已經調用過了

???

配置MED策略,確保R4通過R3到達192.168.12.0/24

?

??????? MED值是繼承了IGP協議的度量值。
??????? MED屬性值可以傳遞給自己的EBGP對等體,并且該EBGP對等體可以將該路由傳遞給

IBGP對等體,并且因為AS-BY-AS規則,該屬性在IBGP對等體之間傳遞時不變。
??????? MED屬性可以干擾訪問本地的流量的走向。也就是說,本AS的策略調整可以影響到別的AS對路徑的判斷,這是在BGP選路中唯一一個可以影響到其他AS的屬性
??????????? 即MED是干涉其他的設備,所以MED不在R4上配置
??????? BGP規定,非本地始發的BGP路由信息,在傳遞給自己的EBGP對等體時,將MED值修改為0。

R2配置

??? [R2]ip ip-prefix MED permit 192.168.12.0 24
??? [R2]route-policy MED permit node 10
??? [R2-route-policy]if-match ip-prefix MED
??? [R2-route-policy]apply cost 200
??? [R2-route-policy]q
??? [R2]route-policy MED permit node 20
??? ?
??? [R2]bgp 123
??? [R2-bgp]peer 24.0.0.4 route-policy MED export

R3配置

??? [R3]ip ip-prefix MED permit 192.168.12.0 24
??? [R3]route-policy MED permit node 10
??? [R3-route-policy]if-match ip-prefix MED
??? [R3-route-policy]apply cost 20
??? [R3-route-policy]q
??? [R3]route-policy MED permit node 20
??? ?
??? [R3]bgp 123
??? [R3-bgp]peer 34.0.0.4 route-policy MED export

使用Local Preference策略,確保R1通過R2到達192.168.1.0/24

??????? 該屬性的默認值為100,并且LP屬性只能在IBGP對等體之間傳遞,而不能在EBGP對等體之間傳遞。
??????? 如果路由在傳遞到本地時并不攜帶LP屬性,則BGP在決策時,使用缺省值來計算。
??????? 該屬性越大越優。
??????? 該屬性的傳遞范圍為本AS內部。
??????? 該屬性是AS內部優選路由的最佳選擇。

R1配置

??? [R1]ip ip-prefix LP1 permit 192.168.1.0 24
??? [R1]route-policy LP1 permit node 10
??? [R1-route-policy]if-match ip-prefix LP1
??? [R1-route-policy]apply local-preference 200
??? [R1-route-policy]q
??? [R1]route-policy LP1 permit node 20
??? ?
??? [R1]bgp 123
??? [R1-bgp]peer 2.2.2.2 route-policy LP1 import

使用Local Preference策略,確保R1通過R3到達192.168.2.0/24

??? [R1]ip ip-prefix LP2 permit 192.168.2.0 24
??? [R1]route-policy LP2 permit node 10
??? [R1-route-policy]if-match ip-prefix LP2
??? [R1-route-policy]apply local-preference 200
??? [R1-route-policy]q
??? [R1]route-policy LP2 permit node 20
??? ?
??? [R1]bgp 123
??? [R1-bgp]peer 3.3.3.3 route-policy LP2 import

配置負載均衡,確保R1通過R2和R3到達192.168.3.0/24

R1配置

??? [R1]bgp 123
??? [R1-bgp]maximum load-balancing 2

使用As策略,AS 500不接受任何始發于AS 123的路由

R1配置

??? 方法一:

??? [R5]ip as-path-filter 1 deny? ^123$
??? [R5]ip as-path-filter 1 permit .*
??? ?
??? [R5]bgp 500
??? [R5-bgp]peer 15.0.0.1 as-path-filter 1 import

??? 方法二:

??? [R1]ip as-path-filter 1 deny ^$??? 抓空列表
??? [R1]ip as-path-filter 1 permit .*
??? ?
??? [R1]bgp 123
??? [R1-bgp]peer 15.0.0.5 as-path-filter 1 export

使用自定義Community策略,確保192.168.3.0/24路由不會被發布到AS 500

自定義Community策略

打上社團屬性標記和打開社團屬性傳播功能

R4配置

??? [R4]route-policy com permit node 10
??? [R4-route-policy]apply community 400:500
??? ?
??? [R4]bgp 400
??? [R4-bgp]network 192.168.3.0 24 route-policy com
??? [R4-bgp]peer 24.0.0.2 advertise-community
??? [R4-bgp]peer 34.0.0.3 advertise-community

R2配置

??? [R2]bgp 123
??? [R2-bgp]peer 1.1.1.1 advertise-community

R3配置

??? [R3]bgp 123
??? [R3-bgp]peer 1.1.1.1 advertise-community

R1配置

??? [R1]bgp 123
??? [R1-bgp]peer 15.0.0.5 advertise-community

社團屬性過濾器

R1配置

??? [R1]ip community-filter 1 permit 400:500
??? [R1]route-policy com deny node 10
??? [R1-route-policy]if-match community-filter 1
??? [R1-route-policy]q
??? [R1]route-policy com permit node 20
??? ?
??? [R1]bgp 123
??? [R1]peer 15.0.0.5 route-policy com export

至此,實驗完成。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/16170.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/16170.shtml
英文地址,請注明出處:http://en.pswp.cn/web/16170.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Python輕松玩轉excel操作指導

目錄 一、一圖概覽 二、表格操作 三、內容操作 四、單元格操作 五、Pandas實現表格操作 六、常見場景示例 一、一圖概覽 ? ?本文主要對openpyxl庫的常用表格操作進行了梳理,熟練的運用后可極大地提升工作效率。 二、表格操作 #創建一個表格sheet.xlsx #…

LINQ(四) ——使用LINQ進行對象類型初始化

總目錄 C# 語法總目錄 上一篇:LINQ(三) ——查詢表達式/into關鍵字 LINQ 四 ——使用LINQ進行對象類型初始化 6. 使用LINQ進行對象初始化6.1 對象類型 6. 使用LINQ進行對象初始化 6.1 對象類型 需要聲明定義一個對象類,然后使用select 配合new關鍵字進…

C++編程揭秘:虛表機制與ABI兼容性的實例剖析

前言: 假設你的應用程序引用的一個庫某天更新了,雖然 API 和調用方式基本沒變,但你需要重新編譯你的應用程序才能使用這個庫,那么一般說這個庫是源碼兼容(Source compatible);反之,如…

C語言指針相關知識(第五篇章)(非常詳細版)

提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔 文章目錄 前言一、sizeof和strlen對比二、數組之間的比較(依據strlen和sizeof來呈現)(一)、一維整型數組(二&#…

Value-Based Reinforcement Learning(2)

Temporal Difference (TD) Learning 上節已經提到了如果我們有DQN,那么agent就知道每一步動作如何做了,那么DQN如何訓練那?這里面使用TD算法。 簡略分析: 是的估計 是的估計 所以: Deep Re…

對vue3/core源碼ref.ts文件API的認識過程

對toRef()API的認識的過程: 最開始認識toRef()是從vue3源碼中的ref.ts看見的,右側GPT已經舉了例子 然后根據例子,在控制臺輸出ref對象是什么樣子的: 這就是ref對象了,我們根據對象中有沒有__v_isRef來判斷是不是一個ref對象,當對象存在且__v_isRef true的時候他就判定為是一個…

Linux-組管理和權限管理

1 Liunx組的基本介紹: 在Linux中的每個用戶必須屬于一個組,不能獨立于組外。在Linux中每個文件都有所有者、所在組、其他組的概念 所有者所在組其它組改變用戶所在的組 2 文件/目錄的所有者 一般文件的創建者,誰創建了該文件,就…

Docker in Docker(DinD)原理與實踐

隨著云計算和容器化技術的快速發展,Docker作為開源的應用容器引擎,已經成為企業部署和管理應用程序的首選工具。然而,在某些場景下,我們可能需要在Docker容器內部再運行一個Docker環境,即Docker in Docker(…

002 CentOS 7.9 redis-7.2.5安裝及配置

https://github.com/redis/redis https://redis.io/insight/#insight-form 安裝及配置 在CentOS 7.9上安裝和配置Redis 7.2.5版本,可以遵循以下詳細步驟: 一、準備工作 確保安裝包已準備好: 確認您已經下載了redis-7.2.5.tar.gz安裝包&a…

從程序被SQL注入來MyBatis 再談 #{} 與 ${} 的區別

緣由 最近在的一個項目上面,發現有人在給我搞 SQL 注入,我真的想說我那么點資源測試用的阿里云服務器,個人估計哈,估計能抗住他的請求。狗頭.png 系統上面的截圖 數據庫截圖 說句實在的,看到這個之后我立馬就是在…

游戲找不到d3dcompiler_43.dll怎么辦,教你5種可靠的修復方法

在電腦使用過程中,我們經常會遇到一些錯誤提示,其中之一就是“找不到d3dcompiler43.dll”。這個問題通常出現在游戲或者圖形處理軟件中,它會導致程序無法正常運行。為了解決這個問題,我經過多次嘗試和總結,找到了以下五…

idea2023的git從dev分支合并到主分支master

1.本地項目切換到主分支master 右鍵項目-git-Branches 依次點擊項目-Remote-Origin-master-CheckOut 現在你的idea中的這個項目就是遠程master分支的代碼了。 2.合并dev分支到master 右擊項目-git-Merge 選擇origin-dev 點擊Merge按鈕,此時只是合并到本地的maste…

每日一題---有效的括號問題

文章目錄 前言1.題目以及分析2.參考代碼 前言 前面我們學習了棧的相關操作,現在我們做一道題,進行鞏固 Leetcode—有效的括號 1.題目以及分析 這道題就可以使用棧進行操作,因為把最左邊的括號當成棧底,最右邊的是棧頂&#xff0c…

【每日刷題】Day49

【每日刷題】Day49 🥕個人主頁:開敲🍉 🔥所屬專欄:每日刷題🍍 🌼文章目錄🌼 1. 110. 平衡二叉樹 - 力扣(LeetCode) 2. 501. 二叉搜索樹中的眾數 - 力扣&…

基于YOLOv8的車牌檢測與識別(CCPD2020數據集)

前言 本篇博客主要記錄在autodl服務器中基于yolov8實現車牌檢測與識別,以下記錄實現全過程~ yolov8源碼:GitHub - ultralytics/ultralytics: NEW - YOLOv8 🚀 in PyTorch > ONNX > OpenVINO > CoreML > TFLite 一、環境配置 …

python學習:基礎語句

目錄 條件語句 循環語句 for 循環 while 循環 break continue 條件語句 Python提供了 if、elif、else 來進行邏輯判斷。格式如下: Pythonif 判斷條件1: 執行語句1... elif 判斷條件2: 執行語句2... elif 判斷條件3: 執行語句3... else: 執行語句4…

C# 集合(六) —— 自定義集合Collection類

總目錄 C# 語法總目錄 集合六 Collection 1. 自定義集合Collection其他 1. 自定義集合Collection Collection可以對添加刪除元素或者添加刪除屬性進行事件響應。 class Person {public string name;public int age;public Person(){this.name "";this.age 0;}pub…

ubuntu 硬盤轉移

我插了兩個 文件系統: ubuntu 硬盤轉移: sudo dd if/dev/sdX1 of/dev/sdY1 bs128K convnoerror,sync statusprogressdd 的意思是DiskToDisk,if 是輸入文件系統,of是輸出文件系統。 bs是每次傳遞的數據大小。 注意:接…

mysql-主從同步原理

AB復制(重點) 一、什么是主從復制? 1、主從同步也叫AB復制,是用來建立一個和主數據庫完全一樣的數據庫環境,稱為從數據庫;主數據庫一般是準實時的業務數據庫。 2、主從復制的作用 1.做數據的熱備,作為后備數據庫,…

如何用MySQL的SQL語句來讀寫硬盤目錄文件

1.先確保創建表,例如起名Temp CREATE TABLE temp ( id int(11) NOT NULL AUTO_INCREMENT, image mediumblob, PRIMARY KEY (id) ) ENGINEInnoDB AUTO_INCREMENT7 DEFAULT CHARSETutf8; 注意這里的image字段用mediumblog,就可以避免出現data too …