BGP笔记实验

news2024/10/6 10:28:44

IGP(Interior Gateway Protocol)——内部网关协议

OSPF RIP IS-IS IGRP EIGRP

EGP(External Gateway Protocol)——外部网关协议

EGP BGP——边界网关协议

AS——自治系统

由单一组织or机构独立维护的网络设备&网络资源的集合

网络范围太大

自治

AS号

为了区分不同的AS,网络世界提出了AS号:0~65535(0&65535一般作为保留AS号)

IANA组织:分配IPv4&IPv6地址、AS号

        1~65534

                1~64511——公有AS号——IANA分配给运营商

                64512~65534——私有AS号

拓展AS号

将原本十六位AS号拓展到三十二位

IANA组织公布IP地址&AS号:CIDR Report

BGP

现版本:BGPV4、BGPV4+

BGP的一些特性

高可控性——路径属性

BGP设计了很多路径属性,可以通过路由策略关联这些属性到达路由控制的效果

IGP:选路、收敛、资源占用

BGP:

BGP传递一定是路由条目信息

BGP没有使用周期更新传递路由信息

BGP存在触发更新

高可靠性——TCP

BGP在传递层使用TCP进行传递:179

UDP:520

BGP建邻时,必须指定建邻的对象;BGP支持非直连建邻

RIP——无类别的距离矢量路由协议

BGP——无类别的路径矢量协议

BGP在传递路由条目信息时携带子网掩码

AS-BY-AS——BGP把一个AS看作一个整体

BGP默认情况下不支持负载均衡;BGP会根据传递过来的路由信息中携带的路径属性

选择最优的路由信息加载到路由表中

BGP把一个AS看作一个整体

RIP(IGP)实际上是一个算法的概念,BGP不是一个算法的概念,BGP也不需要计算路由信息,只负责转发路由信息

EBGP对等体——一般建议采用直连建立对等体关系

IBGP对等体——一般建议采用非直连建邻

BGP为了实现这两个规则,规定BGP规定EBGP对等体之间发送的数据包中携带的TTL值为1,而IBGP对等体之间传递的数据包TTL值为255

BGP的数据包

BGP的公共头部

Open数据包

用来建立BGP对等体关系的数据报文

AS号——自身的AS号,对比逻辑对等体发过来的OPEN报文中携带的AS号,必须&指定建邻的AS必须一致,否则会导致建邻失败

RID——建邻双方的RID不能一致,if相同会导致建立对等体失败

保活时间:类似OSPF的死亡时间默认180S,if对等体双方保活时间不一致,会按照时间更小的执行

Keepalive

1.用于周期保活BGP对等体关系,默认是1/3的保活时间,60S

2.用来做OPEN报文的临时确认包

Update

传递BGP路由信息的数据包

Notification

告警报文,在BGP工作过程中,if出现故障导致出现问题,会发送Notification报文告知对等体问题的原因。

Route-refresh

BGP的状态机

建立对等体之间TCP会话:指定建立对等体的对象

BGP在建立对等体过程中会建立两次TCP会话,会保留RID大的设备发起的TCP会话

六种状态机

BGP一共存在6种状态机

Idle

在Idle状态下,启动BGP协议后,必须指定建立对等体的目标之后,进入下一个状态。必须路由可达(依靠IGP协议or静态,直连)

Connect

在Connect状态下,BGP对等体之间,开始建立TCP会话连接。ifTCP会话建立成功,则进入OpenSent状态;ifTCP会话建立失败,则进入Active状态

Active

OpenSent

ifTCP会话(三次握手)建立成功,则会进入OpenSent状态,在OpenSent状态下,开始发送OpenSent报文以建立BGP对等体关系。

if认可对等体发过来的Open报文中的参数,首先会回复一个Keepalive报文用来确认Open报文中的参数我已认可,并且进入OpenConfirm状态

OpenConfirm

在OpenConfirm状态下,if收到对等体发送的Keepalive报文,则进入最终状态Established

Established

BGP的工作过程

1.基于IGP(静态、直连、RIP、OSPF ... )实现路由可达,原因:BGP需要建立TCP会话(单播)

2.指定建立邻居/对等体关系之后,邻居之间单播传输,通过三次握手,建立TCP会话通道,之后所有的BGP通信都将基于TCP会话通道来传输,并且依靠TCP提供传输的可靠性

3.使用Open报文&Keepalive报文进行邻居关系的建立。Open报文用来携带建邻使用的参数,Keepalive报文用于Open报文参数的确认,最终完成对等体关系的建立,生成邻居表,存储BGP对等体关系信息。

4.建立邻居关系后,使用Update报文来共享路由条目信息。信息中将携带目标网络号、掩码以及路径属性,之后,将发送&收到的路由信息记录在一张表中——BGP表

5.之后,会将BGP表中最优的路由信息(通过路径属性选择的结果)加载到路由表中。

6.收到收敛后,将使用Keepalive报文进行对等体之间周期保活,默认保活时间为180S(hold time),发送周期为60S。

7.if这个过程中出现任何问题,都将使用Notification报文进行告警。

8.if出现结构突变(网段消失or新增网段),则将使用Update报文进行触发更新,并通告给其他的对等体。

BGP的路由黑洞

控制层面的可达

数据层面实际不可达

IGP内部存在没有运行BGP的设备,当访问BGP网段的流量来到这些设备之后,由于控制层面可达,数据层面不可达(这些设备没有运行BGP,没有BGP网段的路由信息),那么将丢弃这些流量。

解决办法:

1.所有设备均运行BGP

2.重发布

3.MPLS——最早专门用来解决BGP路由黑洞,MPLS VPN

同步机制——当设备学习到一条BGP路由,if本地IGP路由表认为下一跳不可达,将视该BGP路由无效。默认关闭

BGP的防环

水平分割

EBGP水平分割

BGP为了解决EBGP路由环路问题,设计了一个AS-PATH属性,设备在发出AS时,会携带本AS的AS号,当路由信息携带该AS号,那么对于该AS的设备不会接收该路由,后转发的AS号在前面。同时AS-PATH属性也是BGP的一个选路依据,当其他属性一致时,会选择AS-PATH属性更短的路径

IBGP水平分割

当运行BGP的设备从IBGP对等体处学习到一条IBGP路由,那么将不在转发给其他IBGP对等体

解决方案:在IBGP对等体之间构建全连的IBGP对等体关系,1.增加拓扑的复杂性导致网络可拓展性变差,2.增加了占用资源

联邦 反射器

BGP的基础配置

配置IP地址&环回地址

以R1为例,R2~R5同理

interface GigabitEthernet 0/0/0
ip address 12.0.0.1 24
interface LoopBack 0
ip address 1.1.1.1 24
interface LoopBack 1
ip address 172.16.1.1 24
interface LoopBack 2
ip address 172.16.2.1 24
interface LoopBack 3
ip address 172.16.3.1 24
interface LoopBack 4
ip address 172.16.4.1 24
display ip interface brief    //查看IP表

配置BGP

R1:

bgp 100                        //启动BGP协议,并指定自身AS号
router-id 1.1.1.1              //手工配置BGPRID
peer 12.0.0.2 as-number 200    //直连建邻,指定建邻的IP地址&对应的AS号
display bgp peer               //查看BGP邻居关系(BGP的邻居表)

R2:

bgp 200
route-id 2.2.2.2
peer 3.3.3.3 as-number 200                  //IBGP之间使用环回建邻
peer 3.3.3.3 connect-interface LookBack 0   //注意环回建邻改变跟新源

更新源地址不一致将导致建邻失败

EBGP对等体之间使用环回建邻

R5:

ip route-static 4.4.4.0 24 45.0.0.1         //必须实现路由可达(建议使用静态)
bgp 300
peer 4.4.4.4 as-number 200
peer 4.4.4.4 connect-interface LookBack 0   //使用环回建邻注意:必须修改更新源

R4:

bgp 200
peer 5.5.5.5 ebgp-max-hop 2    //修改EBGP数据包TTL值

R5:

bgp 300
peer 4.4.4.4 ebgp-max-hop   //默认直接回车将修改TTL值255

BGP的路由发布

R1:

bgp 100
network 1.1.1.0 24          //宣告含义仅发布路由信息,并且注意:只能发布路由表中存在的路由信息
display bgp routing-table   //查看BGP表——记录发布的&接收到的所有BGP路由信息
 

Network——接收到的路由信息

NextHop——下一跳,if是本地始发的BGP路由信息,则该字段为0.0.0.0

*>——状态码

*vaild——有效,first当BGP设备接收到一条BGP路由信息,首先将验算下一跳是否可达,if可达,则代表该路由可用;if not,则认为该路由无效。注意:只有可用的路由信息才会参与BGP路由的选举,并加载到路由表中

>best——最优的路由信息最终根据路径属性选择的结果,只有最优的路由信息才会最终加载到路由表中,并且只有最终的路由才会被BGP传递

i——internal,内部通过IBGP对等体学到的

R2:

bgp 200
peer 3.3.3.3 next-hop-local    /当IBGP对等体学到一条EBGP路由,由于AS-BY-AS属性导致下一跳不可达,协议在传递这条IBGP路由的IBGP设备上修改下一跳为本地

BGP不能发布建邻网段

宣告BGP网段的方法——重发布

R2:

bgp 200
import-route ospf 1          //开启重发布
display bgp routing-table    //查看BGP表

重发布的路由信息本地下一跳也是0.0.0.0,相当于本地始发

Ogn——起源码:象征该路由通过何种方式学习到

I——表示该路由是通过IBGP对等体学到的路由信息,包括Network宣告的路由

E——表示该路由是通过EGP协议学到的路由信息,保留仅为了兼容性

?——除了前两种都是?

BGP的路由聚合——自动聚合、手动聚合

R1:

ip ip-prefix aaa permit 172.16.0.0 16 greater-equal 24 less-equal 24    //创建前缀列表抓取想要发布的路由网段
route-policy aaa permit node 10                                         //创建路由策略,匹配前缀列表抓取的流量——大的方向一定选择运行,否则视为拒绝发布这些匹配到的网段
if-match ip-prefix aaa    //匹配列表
display this

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

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

相关文章

基于V100下Llama2-Atom大模型微调

文章目录 大规模的中文数据预训练模型部署模型微调Step1: 环境准备Step2: 数据准备Step3: 微调脚本Step4: 加载微调模型 一些BUG 大规模的中文数据预训练 原子大模型Atom在Llama2的基础上,采用大规模的中文数据进行持续预训练,包含百科、书籍、博客、新…

算法(圆的定义和相关术语)

无向图的度 图中每一个顶点的度定义为以该项点为一个端点的边的数目 #include <cstdio>const int MAXN 100;int degree[MAXN] { 0 };int main() {int n, m, u, v;scanf("%d%d", &n, &m);//在输出边度的时候就已经表示度的数目了&#xff0c;所以用一…

什么是高防CDN?有什么优势?

德迅高防CDN技术概述 随着互联网的快速发展&#xff0c;网络安全问题越来越受到人们的关注。高防CDN(Content Delivery Network)作为一种有效的网络安全防御手段&#xff0c;在企业和个人网站中得到了广泛应用。本文将详细介绍高防CDN的技术原理、防御原理、优点和应用场景&am…

探伤仪的曲线

超声波检验DAC曲线、AVG曲线的区别、使用及制作方法 一、 概念 1.1 DAC曲线 DAC距离波幅曲线是描述某一确定反射体回波高度随距离变化的关系曲线。因此&#xff0c;AVG曲线和DAC曲线都有纵波、横波制作的曲线&#xff0c;并不是简单地由纵波、横波来划分何为AVG曲线&#xf…

怎么实现在微信公众号秒杀商品的功能呢

实现微信公众号秒杀商品的功能&#xff0c;需要结合微信公众平台和后端开发技术。下面将介绍整个实现过程&#xff0c;包括前期准备、开发流程和后期运营等方面。 一、前期准备 确定秒杀商品&#xff1a;选择适合秒杀的商品&#xff0c;要求数量充足、质量良好&#xff0c;同时…

Python下使用requests库遇到的问题及解决方案

每一盏灯都有一个故事……当凌晨2点我的房间灯还亮着时&#xff0c;那就是我与BUG的一场生死博弈。一个人静静地坐在电脑前不断地写代码&#xff0c;感觉快要麻木了&#xff0c;好比闭关修炼一样枯燥无味。最终当我打通任督二脉后&#xff0c;bug修复迎来的一片曙光。 一、问题…

广东网络广播电视台《明星小主播》栏目开拍 小主持神采奕奕

近日&#xff0c;由广东网络广播电视台的《明星小主播》栏目&#xff0c;在广东广播电视台&#xff08;人民北路&#xff09;广州越秀区人民北路686号主楼五楼火热开拍&#xff0c;幕后花絮曝光。《明星小主播》栏目是一档专业少儿主持类节目&#xff0c;节目旨在培养小朋友的主…

模方4.1.0新版本正式上线啦!

新增单体化自动建模&#xff0c;直角搭桥、复制三角形两种方式补洞等功能&#xff0c;还有更多功能优化&#xff0c;让你的三维模型更好看&#xff01; 欢迎前往官网下载试用→武汉大势智慧-实景三维-云端建模-新型基础设施

适合学校或高校老师、学生学习用的网盘推荐

现代教育中&#xff0c;数字化的教学资源和家长的参与度越来越重要。然而文件传输的问题一直是学校和家长面临的一个挑战&#xff0c;网络限制、U盘病毒和文件管理不便等问题&#xff0c;都对教学质量和家校沟通造成了影响。Zoho WorkDrive企业网盘为学校还有教辅机构提供了一个…

MAX/MSP SDK学习03:Atoms and Messages的使用

今天终于把Message消息选择器看得有点头绪了&#xff0c;主要是这个官方英文文档理解起来有点抽象。 编写IsMatchABC自定义Object&#xff0c;要求&#xff1a; ①若左入口&#xff08;入口0&#xff09;收到 "int" 型消息&#xff0c;则从出口发送数值 "888&q…

做外贸要学会分析客户情况

最近在某产品的专业群里询问一款产品&#xff0c;看谁可以做&#xff0c;然后很快就有一个自称是工厂的人加上了我。因为自己本身并不懂这个产品&#xff0c;很多他们发的问题自己都答不上来。我就如实告诉他自己是个新手&#xff0c;可以把你们现在能做的&#xff0c;或者已经…

数据结构之栈的讲解

&#x1f495;" 春宵一刻值千金&#xff0c;花有清香月有阴。 "&#x1f495; 作者&#xff1a;Mylvzi 文章主要内容&#xff1a;leetcode刷题之哈希表的应用(1) 1.栈的概念 栈是一种只允许在一端&#xff08;栈顶&#xff09;进行数据操作的数据结构&#xff0c;具…

一篇文章让你彻底了解Java算法「十大经典排序算法」

✍️作者简介&#xff1a;码农小北&#xff08;专注于Android、Web、TCP/IP等技术方向&#xff09; &#x1f433;博客主页&#xff1a; 开源中国、稀土掘金、51cto博客、博客园、知乎、简书、慕课网、CSDN &#x1f514;如果文章对您有一定的帮助请&#x1f449;关注✨、点赞&…

Delayed 延时任务

延时任务与定时任务的区别 延时任务&#xff0c;可以理解为定时任务的一种&#xff0c;但是他们是有区别的。 延时任务&#xff1a;将程序代码延时执行&#xff0c;执行完毕&#xff0c;即为结束。 定时任务&#xff1a;周期性执行任务。代码执行完毕后&#xff0c;并不意味着…

2023年中国AI基础设施行业发展趋势分析:AI基础设施将保持高速增长[图]

从产品形态来看&#xff0c;AI基础设施可划分为AI基础硬件和基础软件两大类。而在AI生态系统中&#xff0c;通用型和定制型AI基础设施的相互依赖性促进了广泛的AI技术应用&#xff0c;也为各行业的持续发展提供了关键支持。 AI基础设施分类 资料来源&#xff1a;共研产业咨询&…

windows11系统如何设置锁屏壁纸

1. 在开始页面里面找到设置 2. 在设置里面找到个性化 3. 按照红色圈出部分操作 个性化锁屏界面 选择 图片 浏览照片 选择一张你觉得好看的图片作为锁屏壁纸 注&#xff1a;如果需要在锁屏后的登录页面显示壁纸 请勾选第三个红圈部分

Java基本数据类型与引用类型的区别

基本数据类型存放在栈中&#xff0c;引用数据类型其具体内容存放在堆中栈中存放的是其具体内容所在内存的地址。通过变量地址可以找到变量的具体内容&#xff0c;就像通过房间号可以找到房间一样。 public class Main{public static void main(String[] args){//基本数据类型in…

Active Directory 和域名系统(DNS)的相互关系

什么是域名系统&#xff08;DNS&#xff09; 域名系统&#xff08;DNS&#xff09;&#xff0c;从一般意义上讲是一种将主机名或域名解析为相应IP地址的手段。 在 AD 的中&#xff0c;DNS 服务维护 DNS 域和子域的工作命名空间&#xff0c;这些域和子域主要有助于查找过程&am…

最新绿豆APP源码苹果CMS影视插件版本/原生JAVA源码+反编译开源+免授权

源码简介&#xff1a; 最新绿豆APP源码苹果CMS影视插件版本&#xff0c;它是原生JAVA源码反编译开源免授权&#xff0c;绿豆影视对接苹果CMS&#xff0c;它可以支持多功能自定义DIY页面布局。 1、新版绿豆视频APP视频6.1插件版反编译指南及教程 2、后端插件开源&#xff0c;可…

archery修改为不能自提自审核上线SQL

目录 背景修改代码效果参考 背景 我和同事都可以提交上线SQL&#xff0c;但是不能自己提交的SQL自己去审核通过。目前的情况是可以自提自审。 修改代码 找到/opt/archery/sql/utils/workflow_audit.py文件 ...省略...# 判断用户当前是否是可审核staticmethoddef can_revie…