HCIP(7)-边界网关协议BGP基本配置(对等体peer,宣告network,引入import)

news2024/11/5 20:06:20
边界网关协议(Border Gateway Protocol,BGP)是一种用来在路由选择域之间交换网络层可达性信息(Network Layer Reachability Information,NLRI)的路由选择协议。由于不同的管理机构分别控制着他们各自的路由选择域,因此,路由选择域经常被称为自治系统AS(Autonomous System)
BGP是为了在AS之间更高效率的传递路由和维护大量的路由而产生的一个外部网关协议。
BGP 是一种用于自治系统AS(Autonomous System)之间的动态路由协议。

此次我们通过以下这个简易3个AS的网络来学习BGP基本配置。
net
接口配置

[R1]int lo 0
[R1-LoopBack0]ip ad 1.1.1.1 24
[R1-LoopBack0]int g 0/0/0
[R1-GigabitEthernet0/0/0]ip ad 12.0.0.1 24
[R1-GigabitEthernet0/0/0]q
[R1]ip route-static 0.0.0.0 0 12.0.0.2

[R2]int lo 0
[R2-LoopBack0]ip ad 2.2.2.2 24
[R2-LoopBack0]int g 0/0/0
[R2-GigabitEthernet0/0/0]ip ad 12.0.0.2 24
[R2-GigabitEthernet0/0/0]int g 0/0/1
[R2-GigabitEthernet0/0/1]ip ad 23.0.0.1 24
[R2-GigabitEthernet0/0/1]q
[R2]ospf 2 router-id 2.2.2.2
[R2-ospf-2]a 2
[R2-ospf-2-area-0.0.0.2]network 2.2.2.2 0.0.0.0
[R2-ospf-2-area-0.0.0.2]network 23.0.0.0 0.0.0.255

[R3]int lo 0
[R3-LoopBack0]ip ad 3.3.3.3 2
[R3-LoopBack0]int g 0/0/0
[R3-GigabitEthernet0/0/0]ip ad 23.0.0.2 24
[R3-GigabitEthernet0/0/0]int g 0/0/1
[R3-GigabitEthernet0/0/1]ip ad 34.0.0.1 24
[R3-GigabitEthernet0/0/1]q
[R3]ospf 2 router-id 3.3.3.3
[R3-ospf-2]a 2
[R3-ospf-2-area-0.0.0.2]network 3.3.3.3 0.0.0.0
[R3-ospf-2-area-0.0.0.2]network 23.0.0.0 0.0.0.255
[R3-ospf-2-area-0.0.0.2]network 34.0.0.0 0.0.0.255

[R4]int lo 0
[R4-LoopBack0]ip ad 4.4.4.4 24
[R4-LoopBack0]int g 0/0/0
[R4-GigabitEthernet0/0/0]ip ad 34.0.0.2 24
[R4-GigabitEthernet0/0/0]int g 0/0/1
[R4-GigabitEthernet0/0/1]ip ad 45.0.0.1 24
[R4-GigabitEthernet0/0/1]q
[R4]ospf 2 router-id 4.4.4.4
[R4-ospf-2]a 2
[R4-ospf-2-area-0.0.0.2]net 4.4.4.4 0.0.0.0
[R4-ospf-2-area-0.0.0.2]net 34.0.0.0 0.0.0.255

[R5]int lo 0
[R5-LoopBack0]ip ad 5.5.5.5 24
[R5-LoopBack0]int g 0/0/0
[R5-GigabitEthernet0/0/0]ip ad 45.0.0.2 24

建邻

直连链路

当BGP运行于不同AS之间时,称为EBGP(Externel BGP,外部边界网关协议)

peer 12.0.0.2

  1. 执行命令system-view,进入系统视图。
  2. 执行命令bgp as-number,进入BGP视图。
  3. 执行命令peer { ipv4-address | peerGroupName } as-number as-number,指定对等体的IP地址及其所属的AS编号。

查看配置结果

display bgp peer 查看对等体路由
dis bgp peer

  • Peer :对等体的IP地址
  • V :BGP版本
  • AS:对等体所处的AS号
  • MsgRcvd:从该对等体处接收的BGP数据包
  • MsgSent:发送给该对等体的BGP数据包
  • OutQ:队列,指示剩余未发送BGP数据包的数量
  • Up/Down:建立/断开对等体的时间 State --和该对等体所处的状态
  • PrefRcv:从该对等体出接收到的BGP路由数量
  • PrefRcv:从该对等体出接收到的BGP路由数量

非直连链路

当BGP运行于同一AS内部时,被称为IBGP(Internel BGP,内部边界网关协议)

peer
connect-interface

  1. 执行命令system-view,进入系统视图。
  2. 执行命令bgp as-number,进入BGP视图。
  3. 执行命令peer { ipv4-address | peerGroupName } as-number as-number,指定对等体的IP地址及其所属的AS编号。
    指定对等体所属的AS编号应该和本地AS号相同。
    指定对等体的IP地址可以是以下三种:
    • 直连对等体的接口IP地址。
    • 直连对等体的子接口IP地址。
    • 路由可达的对等体的Loopback接口地址。
  4. 执行命令peer { ipv4-address | peerGroupName } connect-interface interface-type interface-number [ ipv4-source-address ],改变BGP对等体建立的更新源地址(注意,必须保证建立对等体的双方地址匹配)

其它类型EBGP连接

ebgp-max-hop
dis ebgp dis

  • 执行命令peer { ipv6-address | group-name } ebgp-max-hop [ hop-count ],配置EBGP连接的最大跳数。
  • 通常情况下,EBGP对等体之间必须具有直连的物理链路,如果不满足这一要求,则必须使用peer ebgp-max-hop命令允许它们之间经过多跳建立TCP连接。

通过以上命令,就能够实现R4连接到R5的环回接口并成功建邻,当然,这两个机器之间的基本链路需要先正常连接。

宣告网络

network命令用来配置BGP将IP路由表中的路由以静态方式加入到BGP路由表中,并发布给对等体。
BGP协议自身不能发现路由,所以需要引入其他协议的路由(如IGP或者静态路由等)注入到BGP路由表中,从而将这些路由在AS之内和AS之间传播。在引入路由时,可以针对不同的路由协议来对路由信息进行过滤。当需要将IP路由表中的路由以静态方式加入到BGP路由表中,并发布给对等体时,使用network命令。
使用network命令注入到BGP路由表的路由,其Origin属性为IGP。通过network命令将指定前缀和掩码的一条路由注入到BGP路由表中,该路由是从各路由协议的路由中选出的最优路由。

network { ipv4-address [ mask | mask-length ] | ipv6-address prefix-length } [ route-policy route-policy-name ]

此时我们先在R1路由器的宣告1.1.1.0的网络,并查看BGP的路由表。
routing-table

  • NextHop 路径属性,谁发送的下一跳就是谁,注:对于自身发布的路由信息因为下一跳是自身,所以该字段用0.0.0.0来表示
  • MED 路由度量值
  • LocPrf 本地优先级
  • PrefVal 协议首选值
  • Path/Ogn 显示AS路径号及Origin属性
  • 状态码
    * 代表路由可用,路由可用的条件是该网段信息下一跳属性在本身路
    由表中存在,只有可用的路由信息才会参与路由优选
    > 代表该路由是最优的路由(比较路径属性的结果),只有最优的路
    由信息才会加载到自身的路由表,并且传递因为AS-BY-AS特性的存在,导致IBGP对等体传递路由信息时NextHop–默认不做修改

通过isplay bgp routing-table查看BGP的路由信息可以知道这次宣告成功。

next-hop-local

peer next-hop-local命令用来设置向IBGP对等体(组)通告路由时,把下一跳属性设为自身的IP地址。

先查看一下R2和R3的BGP路由表。
dis bgp routing
routing-table
查看R2和R3路由器发现,R2通过EBGP学习的路由能够正常PING通,而R3通过IBGP学习到的路由,下一跳是12.0.0.1无法正常连接到该IP,这是EBGP邻居发来的路由的下一跳都是其EBGP邻居的Peer地址,本端对等体所属AS域内的IBGP邻居收到这样的路由后,由于下一跳不可达导致路由无法活跃。

因此,需要在R2上对IBGP邻居配置peer next-hop-local命令,使得发给IBGP邻居的路由的下一跳是其自身的地址,IBGP邻居收到这样的路由后发现下一跳可达,路由即为活跃路由*。
next-hop-local
routing-table
routing-table
routing-table
routing-table

路由引入

在同一个网络拓扑结构中,如果存在多种不同的路由协议,由于不同路由协议的机理各有不同,对路由的处理也不相同,这就在网络中造成了路由信息的隔离,在路由协议的边界设备上,将某种路由协议的路由信息引入另一种路由协议中,这个操作被称为路由引入(Route Importation)或者路由重分发(Route Redistribution)。

import-route命令用来配置BGP引入其他路由协议和路由类型的路由信息。
Import方式是按协议类型,将RIP路由、OSPF路由、ISIS路由等协议的路由引入到BGP路由表中。为了保证引入的IGP路由的有效性,Import方式还可以引入静态路由和直连路由。

最后,我们再把OSPF中的路由引入到BGP的路由表中,完成全路通讯。
import

到此,通过基本的几个命令我们已经完成网络的搭建,让AS之间能够正常通讯
组建的BGP网络是实现了网络中不同AS之间的通信。
总得来说,配置BGP的基本功能是组建BGP网络最基本的配置过程,主要包括三部分:

  • 创建BGP进程:只有先创建BGP进程,才能开始配置BGP的所有特性。
  • 建立BGP对等体关系:只有成功建立了BGP对等体关系,设备之间才能交换BGP消息。
  • 引入路由:BGP协议本身不发现路由,只有引入其他协议的路由才能产生BGP路由。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

算法: 链表题目练习

文章目录 链表题目练习两数相加两两交换链表中的节点重排链表合并 K 个升序链表K 个一组翻转链表 总结 链表题目练习 两数相加 坑: 两个链表都遍历完后,可能需要进位. class Solution {public ListNode addTwoNumbers(ListNode l1, ListNode l2) {ListNode cur1 l1;ListNode…

HTML 基础标签——元数据标签 <meta>

文章目录 1. `<meta>` 标签概述2. 属性详解2.1 `charset` 属性2.2 `name` 属性2.3 `content` 属性2.4 `http-equiv` 属性3. 其他常见属性小结在 HTML 文档中,元数据标签 <meta> 是一种重要的标签,用于提供关于文档的信息,这些信息不直接显示在网页内容中,但对于…

新闻稿件管理系统:SpringBoot框架深度解析

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统&#xff0c;它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等&#xff0c;非常…

【网络】自定义协议——序列化和反序列化

> 作者&#xff1a;დ旧言~ > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;了解什么是序列化和分序列&#xff0c;并且自己能手撕网络版的计算器。 > 毒鸡汤&#xff1a;有些事情&#xff0c;总是不明白&#xff0c;所以我不…

CTFshow之信息收集第1关到10关。详细讲解

得而不惜就该死&#xff01; --章总 开始新的篇章&#xff01; 零、目录 一、实验准备 1、ctf网站&#xff1a;ctf.show 2、工具&#xff1a;chrome浏览器、hackbar插件 3、burpsuite抓包工具 二、实验技巧 &#xff08;一&#xff09;F12摸奖 源码泄露 &#xff08;二…

Redis ——发布订阅

问题引入&#xff1a; 服务器A、B、C、D&#xff0c;客户端&#xff1a;C1&#xff0c;C2&#xff0c;C3&#xff0c;C4&#xff1b; 客户端基于集群聊天服务器的负载均衡分配&#xff1b; C1 被分配到A&#xff0c;C2 被分配到B&#xff0c;C3 被分配到C&#xff0c;C4 被分…

【漏洞复现】某平台-QRcodeBuildAction-LoginSSO-delay-mssql-sql注入漏洞

《Java代码审计》http://mp.weixin.qq.com/s?__bizMzkwNjY1Mzc0Nw&mid2247484219&idx1&sn73564e316a4c9794019f15dd6b3ba9f6&chksmc0e47a67f793f371e9f6a4fbc06e7929cb1480b7320fae34c32563307df3a28aca49d1a4addd&scene21#wechat_redirect 《Web安全》h…

API网关 - JWT认证 ; 原理概述与具体实践样例

API网关主要提供的能力&#xff0c;就是协议转换&#xff0c;安全&#xff0c;限流等能力。 本文主要是分享 如何基于API网关实现 JWT 认证 。 包含了JWT认证的流程&#xff0c;原理&#xff0c;与具体的配置样例 API网关认证的重要性 在现代Web应用和微服务架构中&#x…

Excel:vba实现批量插入图片

实现的效果&#xff1a; 实现的代码&#xff1a; Sub InsertImageNamesAndPictures()Dim PicPath As StringDim PicName As StringDim PicFullPath As StringDim RowNum As IntegerDim Pic As ObjectDim Name As String 防止表格里面有脏数据Cells.Clear 遍历工作表中的每个图…

什么是 OpenTelemetry?

OpenTelemetry 定义 OpenTelemetry (OTel) 是一个开源可观测性框架&#xff0c;允许开发团队以单一、统一的格式生成、处理和传输遥测数据&#xff08;telemetry data&#xff09;。它由云原生计算基金会 (CNCF) 开发&#xff0c;旨在提供标准化协议和工具&#xff0c;用于收集…

电商美工必备神器:千鹿 AI 轻松解决场景图主图尺寸问题

前言 在电商领域&#xff0c;美工在做详情页设计时&#xff0c;常常会为图片尺寸问题而苦恼。而 AI 扩图在此刻就成为了美工们的得力助手。其中&#xff0c;场景图主图太小是一个让人颇为头疼的难题。千鹿 AI 作为一款强大的工具&#xff0c;能够一键将图片改成指定尺寸&#…

关于 PDF 抽取的吐槽

今天一下午写了8&#xff0c;9个 PDF 抽取的脚本。最后又回归最开始简单的模式了&#xff0c;要疯了&#xff0c;谁懂啊。 我是下午的工作是这样的(我是这么疯的) 最开始使用最简单的策略&#xff0c;先使用 PyPDF2.PdfReader(file) 读取文件&#xff0c;然后在每一页使用 pag…

无人机避障——(局部规划方法)DWA(动态窗口法)

传统的DWA算法更加倾向于车辆等差速无人车&#xff0c;旋翼无人机是全速的&#xff0c;全向的。 全局路径是通过A*算法生成的 局部路径规划效果&#xff1a; DWA算法效果&#xff1a; 过程图&#xff1a; 完整过程&#xff1a; PID算法效果&#xff1a; 过程图&#xff1a…

知识吾爱纯净版小程序系统 leibiao SQL注入漏洞复现(XVE-2024-30663)

0x01 产品简介 知识吾爱纯净版小程序系统是一款基于微信小程序平台开发的知识付费应用,旨在帮助用户快速建立自己的知识付费平台,实现支付变现和流量主收益。它提供了简洁明了的用户界面和良好的用户体验,同时注重用户隐私保护,确保用户信息的安全存储和传输。 0x02 漏洞…

基于web的便捷饭店点餐小程序的设计与实现(lw+演示+源码+运行)

摘 要 互联网发展至今&#xff0c;无论是其理论还是技术都已经成熟&#xff0c;而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播&#xff0c;搭配信息管理工具可以很好地为人们提供服务。针对高校教师成果信息管理混乱&#xff0c;出错率高&#xff0c;信息安全…

全面解析:深度学习技术及其应用

&#x1f493; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4dd; Gitee主页&#xff1a;瑕疵的gitee主页 ⏩ 文章专栏&#xff1a;《热点资讯》 全面解析&#xff1a;深度学习技术及其应用 全面解析&#xff1a;深度学习技术及其应用 全面解析&#xff1a;深度学习技术及其应…

项目实战使用gitee

1.创建本地仓库 2.进行提交到本地仓库 创建仓库后在idea中会显示图标&#xff0c;点击绿色的√进行快速提交 3.绑定远程仓库 4.番外篇-创建gitee仓库 注意不要勾选其他

【鸿蒙新闻】10月29日警用鸿蒙开发者大会在北京胜利召开,开启智慧应用新时代!

10月29日&#xff0c;在公安部科技信息化局、公安部装备财务局指导下&#xff0c;由公安部第一研究所主办&#xff0c;鼎桥通信技术有限公司、OpenHarmony生态委员会及公共安全专委会协办的警用鸿蒙开发者大会在北京胜利召开。会议以“拥抱警鸿创新生态 开启智慧应用新时代”为…

Spring Boot 3.3 【九】Redis 的五种数据结构深入浅出(String List Set Hash Zset)

如果觉得本文能够帮到您&#xff0c;请关注&#x1f31f;、点赞&#x1f44d;、收藏&#x1f4da;&#xff0c;让这份美好延续下去&#xff01; 一、Redis 数据结构简介 在现代应用开发中&#xff0c;高效的数据存储和管理是构建强大系统的关键。Redis 作为一种高性能的内存数…

命令行参数、环境变量、地址空间

命令行参数&#xff1a; int main(int argc, char *argv[ ])&#xff0c;main的参数可带可不带。argc参数通常代表后面的char *argv的元素个数有多少。 在linux中会把输入的字符串存到char *argv[ ]中&#xff0c;在数组的结尾为NULL。 命令行参数可以让同一个程序可以通过不同…