HCIP-十二、BGP常用属性

十二、BGP常用属性

  • 实验拓扑
  • 实验需求及解法
    • 1.IP 地址已配置,自行测试直连。
    • 2.AS100 中运行 OSPF
    • 3.AS200 中运行 ISIS
    • 4.运行 BGP
    • 5.发布 BGP 路由
    • 6.修改起源属性 Origin
    • 7.修改 AS-path
    • 8.修改本地优先 Local-preference
    • 9.修改 MED

实验拓扑

在这里插入图片描述

实验需求及解法

  • 本实验模拟 A 公司与 B 公司因项目合作,使用 AS65012 传递私网路由。
  • 其中 AS100 与 AS200 是 A/B 公司合作向 ISP 购买的专用网络,用于传递 AB 公司的路由并承载 AB 公司之间的流量。

1.IP 地址已配置,自行测试直连。

  • 所有设备都有 Loopback0,用于建立 ibgp 邻居。

2.AS100 中运行 OSPF

  • 2.1 进程号为 1,手动设置 RID 为 Loopback0 地址。
  • 2.2 全部属于区域 0
  • 2.3 network 命令使用通配符 0.0.0.0
  • 2.4 不允许宣告与其他 AS 互联的网段。
R3:
ospf 1 router-id 3.3.3.3 
area 0.0.0.0 
 network 3.3.3.3 0.0.0.0 
 network 34.1.1.3 0.0.0.0
R4:
ospf 1 router-id 4.4.4.4 
area 0.0.0.0 
 network 4.4.4.4 0.0.0.0 
 network 34.1.1.4 0.0.0.0 

3.AS200 中运行 ISIS

  • 3.1 进程号为 1
  • 3.2 区域号为 49.0200
  • 3.3 系统 ID 分别为
  • R5:0000.0000.0005
  • R6:0000.0000.0006
  • R7:0000.0000.0007
  • 3.4 所有 isis 路由器均为 level-2.
  • 3.5 不允许激活与其他 AS 互联的接口。
R5:
isis 1
is-level level-2
network-entity 49.0200.0000.0000.0005.00
interface LoopBack0
isis enable 1
interface GigabitEthernet0/0/1
isis enable 1
#
R6:
isis 1 
is-level level-2
network-entity 49.0200.0000.0000.0006.00
interface LoopBack0
isis enable 1
interface GigabitEthernet0/0/1
isis enable 1
#
R7:
isis 1 
is-level level-2
network-entity 49.0200.0000.0000.0007.00
interface GigabitEthernet0/0/0
isis enable 1
interface GigabitEthernet0/0/1
isis enable 1
interface LoopBack0
isis enable 1

4.运行 BGP

  • 4.1 R1 和 R2 属于 AS65012
  • R3 和 R4 属于 AS100
  • R5/6/7 属于 AS200,配置 ibgp 全互联。
  • 4.2 所有路由器手动设置 BGP 的 router-id 为 Loopback0 地址
  • 4.3 所有 ibgp 都使用 Loopback0 建立邻居关系,所有 ebgp 都使用直连接口建立邻居关系。
  • 4.4 确认各路由的 bgp 邻居关系建立完成。
R1:
bgp 65012
router-id 1.1.1.1
peer 13.1.1.3 as-number 100
#
R2:
bgp 65012
router-id 2.2.2.2
peer 27.1.1.7 as-number 200
#
R3:
bgp 100
router-id 3.3.3.3
peer 4.4.4.4 as-number 100 
peer 4.4.4.4 connect-interface LoopBack0
peer 4.4.4.4 next-hop-local
peer 13.1.1.1 as-number 65012 
peer 35.1.1.5 as-number 200
#
R4:
bgp 100
router-id 4.4.4.4
peer 3.3.3.3 as-number 100 
peer 3.3.3.3 connect-interface LoopBack0
peer 3.3.3.3 next-hop-local
peer 46.1.1.6 as-number 200
#
R5:
bgp 200
router-id 5.5.5.5
peer 6.6.6.6 as-number 200 
peer 6.6.6.6 connect-interface LoopBack0
peer 6.6.6.6 next-hop-local
peer 7.7.7.7 as-number 200 
peer 7.7.7.7 connect-interface LoopBack0
peer 7.7.7.7 next-hop-local
peer 35.1.1.3 as-number 100 
#
R6:
bgp 200
router-id 6.6.6.6
peer 5.5.5.5 as-number 200 
peer 5.5.5.5 connect-interface LoopBack0
peer 5.5.5.5 next-hop-local
peer 7.7.7.7 as-number 200 
peer 7.7.7.7 connect-interface LoopBack0
peer 7.7.7.7 next-hop-local
peer 46.1.1.4 as-number 100
#
R7:
bgp 200
router-id 7.7.7.7
peer 5.5.5.5 as-number 200 
peer 5.5.5.5 connect-interface LoopBack0
peer 5.5.5.5 next-hop-local
peer 6.6.6.6 as-number 200 
peer 6.6.6.6 connect-interface LoopBack0
peer 6.6.6.6 next-hop-local
peer 27.1.1.2 as-number 65012

5.发布 BGP 路由

  • 5.1 在 R1 上引入直连路由 192.168.1.0/24,过滤其他路由,策略如下:
  • 5.1.1 使用 ip-prefix,名称 1,index 10 ,仅匹配 192.168.1.0/24
ip ip-prefix 1 index 10 permit 192.168.1.0 24
  • 5.1.2 使用 route-policy,名称 toBGP(注意大小写),node 10,匹配 prefix。
route-policy toBGP permit node 10 
if-match ip-prefix 1
  • 5.1.3 BGP 中引入直连路由,调用 route-policy。
bgp 65012
 import-route direct route-policy toBGP
  • 5.2 在 R2 上使用 network 命令直接宣告 192.168.2.0/24。
bgp 65012
 network 192.168.2.0

6.修改起源属性 Origin

  • 6.1 在 R3 上查看 bgp 路由表,确认 192.168.1.0/24 的起源属性为“?”
  • 6.2 R3 上部署策略,将所有来自 R1 的路由,全部修改起源属性为 “i”
  • 6.2.1 使用 route-policy,名称 formR1(注意大小写),node 10
  • 6.2.2 匹配所有路由,修改起源属性为 igp。
route-policy formR1 permit node 10 
apply origin igp
  • 6.2.3 R3 的 bgp 视图下,接收 R1 路由时调用 route-policy。
bgp 100
 peer 13.1.1.1 route-policy formR1 import
  • 6.3 再次查看 R3 的 bgp 路由表,确认 192.168.1.0/24 的起源属性为“i”
[R3]dis bgp routing-table

在这里插入图片描述

7.修改 AS-path

  • 7.1 查看 R2 路由表,无法收到 192.168.1.0/24;查看 R1 路由表,无法收到 192.168.2.0/24而 R3/4/5/6/7 都能收到以上两条路由,请分析原因。
  • 7.2 R2 配置以下命令,当从 R7 接收路由时,允许接收有本地 AS 号的路由,而不丢弃。 allow-as-loop
bgp 65012
 peer 27.1.1.7 allow-as-loop
  • 7.3 再次查看 R2 路由表,确认已收到 192.168.1.0/24
<R2>dis bgp routing-table

在这里插入图片描述

  • 7.4 R7 部署策略,当从 R2 接收路由时,覆盖 AS 号,删除 AS65012(不是丢弃路由)。
  • 7.4.1 使用 route-policy,名称为 formR2(注意大小写),node 10
  • 7.4.2 匹配所有路由,修改 as-path 为空。
route-policy formR2 permit node 10 
apply as-path none overwrite
  • 7.4.3 R7 从 R2 收路由时调用此策略。
bgp 200
 peer 27.1.1.2 route-policy formR2 import
  • 7.5 再次查看 R1 路由表,确认已收到 192.168.2.0/24
<R1>dis bgp routing-table

在这里插入图片描述

8.修改本地优先 Local-preference

  • 8.1 在 R7 上查看路由 192.168.1.0/24,发现最佳下一跳为 R5
[R7]dis bgp routing-table

在这里插入图片描述

  • 8.2 修改 R6 的默认本地优先为 106。
bgp 200
 default local-preference 106
  • 8.3 再次查看 R7 路由表,确认去往 192.168.1.0/24 选择 R6 为下一跳。
[R7]dis bgp routing-table

在这里插入图片描述

9.修改 MED

  • 在 R3 上查看路由 192.168.2.0/24,发现最佳下一跳为 R5
  • 此时 R2 去往 R1 路径为 2-7-6-4-3-1,而 R1 去往 R2 路径为 1-3-5-7-2
  • 为确保来回路径一致,在 R5 上部署以下策略:
  • 9.1 使用 ip-prefix,名称 2,index 10,匹配路由 192.168.2.0/24
ip ip-prefix 2 index 10 permit 192.168.2.0 24
  • 9.2 使用 route-policy,名称 toR3,node 10,调用 ip-prefix,修改 cost 为 100。node 100,放过其他路由。
route-policy toR3 permit node 10 
if-match ip-prefix 2 
apply cost 100
route-policy toR3 permit node 100
  • 9.3 当 R5 发送路由给 R3 时调用此策略。
bgp 200
 peer 35.1.1.3 route-policy toR3 export
  • 9.4 再次在 R3 上查看路由 192.168.2.0,确认已选择下一跳为 R4,且从 R5 收到的 MED 为100.
<R3>dis bgp routing-table

在这里插入图片描述

  • 分别在 R1 和 R2 上使用追踪命令,确认来回路径一致。
    在这里插入图片描述

本篇实验拓扑及配置步骤参考资料来自思博教育

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/199879.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

从0开始学习JavaScript--JavaScript 闭包的应用

JavaScript的高级概念中&#xff0c;闭包&#xff08;closure&#xff09;常常是一个让人感到困惑但又强大的概念。在这篇文章中&#xff0c;将深入探讨闭包的概念以及它在JavaScript中的各种应用场景。 什么是闭包&#xff1f; 在JavaScript中&#xff0c;闭包是指一个函数能…

LINUX入门篇【11】---进程篇【3】---进程优先级,进程切换,进程调度

前言&#xff1a; 有了前面知识点的铺垫&#xff0c;本篇我们将围绕进程的三个方面来展开&#xff0c;即进程优先级&#xff0c;进程切换以及进程调度的问题&#xff0c;这里的进程调度其实本质就是CPU是如何去调度进程的。 进程优先级&#xff1a; 优先级的概念&#xff1a…

matlab配置

matlab配置 windowslinux挂载安装MATLAB windows 按照这里一步步配置就行( 移动硬盘中软件备份中自取) linux linux配置步骤 挂载 sudo mount -t auto -o loop /media/oyk/Elements/ubuntu/MATLAB/R2017a_glnxa64_dvd1.iso ./matlab/安装MATLAB 挂载完成后&#xff0c;先…

JS之Object.defineProperty方法

给对象添加属性的方法有许多&#xff0c;这次让我为大家介绍一种给对象添加属性的静态方法吧&#xff01; 语法&#xff1a;Objcet.defineProperty(对象的名称&#xff0c;“添加的键名”&#xff0c;{value&#xff1a;键值}) const obj {name:"张三",age:18}// 我…

MySQL索引使用总结

索引(index) 官方定义&#xff1a;一种提高MySQL查询效率的数据结构 优点&#xff1a;加快查询速度 缺点&#xff1a; 1.维护索引需要消耗数据库资源 2.索引需要占用磁盘空间 3.增删改的时候会影响性能 索引分类 索引和数据库表的存储引擎有关&#xff0c;不同的存储引擎&am…

广州华锐视点:基于VR元宇宙技术开展法律法规常识在线教学,打破地域和时间限制

随着科技的飞速发展&#xff0c;人类社会正逐渐迈向一个全新的时代——元宇宙。元宇宙是一个虚拟的、数字化的世界&#xff0c;它将现实世界与数字世界紧密相连&#xff0c;为人们提供了一个全新的交流、学习和娱乐平台。在这个充满无限可能的元宇宙中&#xff0c;法律知识同样…

docker镜像原理

什么是镜像 容器解决应用开发、测试和部署的问题&#xff0c;而镜像解决应用部署环境问题。镜像是一个只读的容器模板&#xff0c; 打包了应用程序和应用程序所依赖的文件系统以及启动容器的配置文件&#xff0c;是启动容器的基础。镜像所打 包的文件内容就是容器的系统运行环…

迷你洗衣机哪个牌子好又实惠?口碑最好的小型洗衣机

不得不说洗衣机的发明解放了我们的双手&#xff0c;而我们从小到大就有这个意识&#xff0c;贴身衣物不可以和普通的衣服一起丢进去洗衣机一起&#xff0c;而内衣裤上不仅有肉眼看见的污渍还有手上根本无法消灭的细菌&#xff0c;但是有一款专门可以将衣物上的细菌杀除的内衣洗…

界限与不动产测绘乙级申请条件

整理一期关于测绘资质界限与不动产测绘乙级资质的申请要求 测绘资质是由测绘资质主管部门自然资源部制定的 想要了解标准、正规的申请条件&#xff0c;可以到当地省份的政务网搜索测绘资质办理相关标准&#xff08;例如下图&#xff09; 1、通用标准 http://gi.mnr.gov.cn/20…

vue3中的setup()函数详解

​&#x1f308;个人主页&#xff1a;前端青山 &#x1f525;系列专栏&#xff1a;Vue篇 &#x1f516;人终将被年少不可得之物困其一生 依旧青山,本期给大家带来vue篇专栏内容:vue3-setup()函数 目录 setup()函数 1.1 基本使用 1.2 访问 Prop 1.3 Setup的上下文 1.4 与渲…

【古月居《ros入门21讲》学习笔记】16_tf坐标系广播与监听的编程实现

目录 说明&#xff1a; 1. 实现过程&#xff08;C&#xff09; 创建功能包&#xff08;C&#xff09; 创建tf广播器代码&#xff08;C&#xff09; 创建tf监听器代码&#xff08;C&#xff09; 配置tf监听器与广播器代码编译规则 编译并运行 编译 运行 2. 实现过程&a…

CCFCSP试题编号:202109-2试题名称:非零段划分

用差分法 #include<iostream> #include<algorithm> #include<cstring> using namespace std;const int N 500000; const int M 10000; int a[N 2 ] { 0 }; int d[M 1] { 0 };int main() {int n;cin >> n;for (int i 1; i < n; i){cin >&g…

泛微E-Office SQL注入漏洞复现

0x01 产品简介 泛微E-Office是一款标准化的协同 OA 办公软件&#xff0c;泛微协同办公产品系列成员之一,实行通用化产品设计&#xff0c;充分贴合企业管理需求&#xff0c;本着简洁易用、高效智能的原则&#xff0c;为企业快速打造移动化、无纸化、数字化的办公平台。 0x02 漏…

数组filter()方法的使用

输入价格后失去焦点就展示符合条件的商品&#xff0c;没有符合条件的商品就弹框提示 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-…

在ubuntu系统安装SVN服务端,并通过客户端进行远程访问

文章目录 前言1. Ubuntu安装SVN服务2. 修改配置文件2.1 修改svnserve.conf文件2.2 修改passwd文件2.3 修改authz文件 3. 启动svn服务4. 内网穿透4.1 安装cpolar内网穿透4.2 创建隧道映射本地端口 5. 测试公网访问6. 配置固定公网TCP端口地址6.1 保留一个固定的公网TCP端口地址6…

Python变量及其使用

无论使用什么语言编程&#xff0c;总要处理数据&#xff0c;处理数据就需要使用变量来保存数据。 形象地看&#xff0c;变量就像一个个小容器&#xff0c;用于“盛装”程序中的数据。常量同样也用于“盛装”程序中的数据。常量与变量的区别是&#xff1a;常量一旦保存某个数据…

自写一个函数将js对象转为Ts的Interface接口

如今的前端开发typescript 已经成为一项必不可以少的技能了&#xff0c;但是频繁的定义Interface接口会给我带来许多工作量&#xff0c;我想了想如何来减少这些非必要且费时的工作量呢&#xff0c;于是决定写一个函数&#xff0c;将对象放进它自动帮我们转换成Interface接口&am…

oracle免费资源 终止实例 以及新建一台实例的折腾记录

事情的背景是这样的&#xff0c;我的一台oracle小鸡&#xff0c;不太好用的样子&#xff0c;有时候SSH连不上&#xff0c;有时候莫名其妙卡住。所以我就想把它重新安装一下系统&#xff0c;恢复成最初的样子。 然后在网上查资料&#xff0c;是有办法把系统重装一下的。但是略微…

numpy知识库:np.random.randint()用法及其使用场景举例

randint函数解析 import numpy as np# 【随机】返回[0,5)范围内的一个整数 # [0, 5) --> 左闭右开区间 int_a np.random.randint(5) # int_a 可能为 0、1、2、3、4 int_a np.random.randint(low5) # int_a 可能为 0、1、2、3、4# 【随机】返回[1,5)范围内的一个整数 int_…

分布式事务-两阶段提交2PC

2PC协议就是两阶段提交&#xff0c;用来解决分布式事务&#xff0c;分为两个阶段&#xff0c;分别为Prepare和Commit&#xff0c;也是PC由来。 第一阶段Prepare 提交事务请求 如图所示&#xff0c;主要流程有以下三个方面 询问&#xff1a;事务协调者(Manager)向所有的事务参与…
最新文章