BGP第二日

上图为今日所用拓扑 ,其中R1和R4,R3和R5为EBGP邻居,R1和R3为IBGP邻居,AS200区域做OSPF动态路由

一.BGP建立邻居的六种状态

1.idle          

空闲状态:建立邻居最初的状态

2.Connect      

 连接状态:在这个状态下会尝试建立TCP连接

3.Active 

  活跃状态:TCP建立连接失败会进入这个状态,一直失败则一直在这个状态,若建立成功则由Active->OpenSent状态

4.OpenSent

Open报文发送状态:在TCP建立连接成功后会进入这个状态,这个状态下双方会发送Open报文以尝试建立邻居关系

5.OpenConfirm 

 Open报文确认状态:收到对方的Open报文后就进入这个状态了,这个状态下会向对方发送KeepAlive保活报文以维持邻居关系

6.Established 

 建立状态:收到对方的KeepAlive保活报文后进入的状态,在这个状态下邻居关系达到完满

二.流量黑洞

出现原因:

当路由下一跳地址非直连的网段ip地址就有可能出现流量黑洞,其原因是路由表是按照目的地址寻址的,当路由下一跳非直连网段ip时,下一跳所在路由器不一定有目的ip的路由条目,这时就会将路由数据传到Null口,形成流量黑洞。

在IBGP中,若两台建立IBGP路由器之间有没有配置IBGP的路由设备时,就会出现流量黑洞问题,虽然两台IBGP路由器学习了对方所搬运的路由,但是由于中间路由器没有所搬运路由的路由信息,所以外部AS设备无法相互连接。

解决方案:

1.配置静态路由:

在中间路由器R2中配置两条静态路由:

[R2]ip route-s 10.10.4.4 32 192.168.12.1
[R2]ip route-s 10.10.5.5 32 192.168.23.3

有了这两条静态路由,中间设备就有了目的IP地址为外部AS区域的路由信息,就可以继续路由转发了。这种方法看似完美,实际工作中外部AS区域路由何其之多,BGP搬运多少条路由中间设备均要配置多少条静态路由,何其繁琐,实不可取。

2.在ospf中引入外部BGP路由:

[R1]ospf 1
[R1-ospf-1]import-route bgp
[R3]ospf 1
[R3-ospf-1]import-route bgp

这样ASBR就会生成五类LSA通告全区域外部AS某一IP的路由信息了,这样做也是看似合理,因为BGP搬运的路由条数庞大,OSPF所引入BGP路由条数也很庞大,会产生大量的五类LSA,对ASBR设备压力非常大,虽然可以用第五类路由聚合技术缓解压力,但治标不治本,且BGP所引出的问题最终还是想在BGP中解决。(将五层问题转换成三层问题这种解决方法会伤了五层高傲的心的)

3.IGBP全互联

既然问题是由两台IBGP路由器之间有非IBGP路由器导致的,那我们直接让非IBGP路由器成为IBGP路由器不就成了?

[R1]bgp 200
[R1-bgp]peer 192.168.12.2 as 200
[R1-bgp]peer 192.168.12.2 next-hop-local    #IBGP邻居间传路由时不会修改下一跳
[R2]bgp 200
[R2-bgp]peer 192.168.12.1 as 200
[R2-bgp]peer 192.168.23.3 as 200
[R3]bgp 200
[R3-bgp]peer 192.168.23.2 as 200
[R3-bgp]peer 192.168.23.2 next-hop-local 

这样R2就有从IBGP邻居那边学来的外部AS区域路由了,看似又是很完美但是图示仅仅一台中间设备就要建立3次IBGP邻居,若总共有N台路由器则要建立N*(N-1)/2次IBGP邻居了,工程量不可谓不大,因此,也不可取。

先卖个关子,先不“引玉”,讲讲别的先。

 三.BGP通告原则

1.BGP路由器会将自己状态码为“*>”的路由给状态为“Established”的邻居

2.从EBGP那边搬运的路由会传递给所有邻居

3.从IBGP那边搬运的路由不会传递给别的IBGP邻居

由于第三条规则,引出了下面我们要讲的内容。

四.IBGP水平分割    ps:也叫内内不相传

出现原因:

在同一个AS中,若有三台及以上的IBGP邻居存在,则有可能产生路由环路(互相来回传递从EBGP邻居那边搬运来的路由),为了防止这种现象的出现,出现了IBGP水平分割的规则

打开一扇门,就关闭一扇窗

IBGP水平分割解决了IBGP路由环路问题,可却导致AS内部BGP无法传递

解决方案:

1)IBGP全互联       

2)Route Reflector   路由反射器

3)BGP联盟    (已基本淘汰)

4)OSPF 引入BGP

5)静态路由

五.路由反射器

1.Role:

1)RR  :Router Reflector

2)Client

3)Non-Client

2.路由反射器反射规则

1)从Non-Client设备上搬运的路由,会传递给EBGP邻居,会反射给Client设备,但是不会反射给其它Non-Client设备        (非非不反射规则)

2)从Client设备上搬运的路由,会传递给EBGP邻居,会反射给Non-Client设备和Client设备

3)从EBGP邻居设备上搬运的路由,会反射给Client设备、Non-Client设备

3.隐患

路由反射器突破了IBGP的水平分割,但也面临着路由环路的风险

4.解决方案:

在BGP报文内加入两个字段:

Origin-id:始发id,集群内部Client与RR间防环

Cluster_id:簇列表,集群间防环

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

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

相关文章

Linux 基础常用基础命令(CentOS7)-CSDN

常用查找端口命令 ps -ef | grep 端口号杀死对应端口 命令 kill -9 端口号Tomcat 执行 命令 并 打印日志 ./startup.sh && tail -f ../logs/catalina.out解压 对应文件命令 tar xf 相应文件重命名相应文件 重命名单个文件:将原文件名称作为源路径 mv ol…

第一关:Linux基础知识

Linux基础知识目录 前言LinuxInternStudio 关卡1. InternStudio开发机介绍2. SSH及端口映射2.1 什么是SSH?2.2 如何使用SSH远程连接开发机?2.2.1 使用密码进行SSH远程连接2.2.2 配置SSH密钥进行SSH远程连接2.2.3 使用VScode进行SSH远程连接 2.3. 端口映射…

Linux C embed development (personal rveiew)

1. 如何快速去bring up bcm 的wifi chipset a. 首先的确认 编译的BSP profile b. 其次要先用 default 的kernel config 去编译 c. 现在我们的一些 PCIE/GPIO/driver 总线的设置 都在dts 中,有错就去改dts 2. BCM 的板子bring up 注意事项 a. fw: bcm…

攻防世界 Web_python_template_injection(flask模版注入)

学习文章:https://www.freebuf.com/column/187845.html https://blog.csdn.net/weixin_54515836/article/details/113778233 flask的渲染方法有render_template和render_template_string两种。 render_template()是用来渲染一个指定的文件的。使用如下 return re…

自学第十五天----深入理解函数上

1. 函数是什么? 维基百科中对函数的定义: 子程序 在计算机科学中,子程序(英语:Subroutine, procedure, function, routine, method, subprogram, callable unit),是一个大型程序中的某部分代码…

python怎么求因数

要想做到python语言求因数方法,首先要明白其中的原理: 1、对由123456789这九个数字组成的9位数进行分解质因数。 2、1234576982x3x3x7x13x23x29x113,所以他的值因数是113。 3、总共有362880种可能,从中找出值因数中最小的数字和…

一节课说明一类奥数题系列——约数与倍数

小学奥数-约数与倍数 约数和倍数:若整数 a 能够被 b 整除,a 叫做 b 的倍数,b 就叫做 a 的约数。 公约数:几个数公有的约数,叫做这几个数的公约数;其中最大的一个叫做这几 个数的最大公约数。a,b两数的最…

学生宿舍反限电插座控制功能

石家庄光大远通电气有限公司反限电插座功能的技术防止学生通过半波整流进行防止学生改变负载特性(阻性变为非阻性)的防止学生通过可控硅调压技术(进行功率调整达到使用目的)恶性负载限制次数设置:管理部门可以根据实际要求设定每个宿舍违规次数。达到本次数。系统自动锁定&…

【LeetCode】快乐数

目录 一、题目二、解法完整代码 一、题目 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。 然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变…

Linux:Ubuntu18.04下开机自启动QT图形化界面

Linux:Ubuntu18.04下开机自启动QT图形化界面 Chapter1 Linux:Ubuntu18.04下开机自启动QT图形化界面一、创建rc.local文件二、建立rc-local.service文件三、启动服务查看启动状态四、重启 Chapter2 将QT应用作为开机自启动(Linux系统&#xff…

代码能力弱,编程思维几乎没有,有些勉强能看懂,让自己敲,一脸懵逼?

最近有几个人问我,说自己代码能力弱,编程思维几乎也没有,简单的代码,勉强能看懂,让自己敲,就一脸懵逼,下一步该怎么学习? 10几年前,这些问题,就像是一道道难以…

Redis数据结构和持久化

数据类型 String&#xff1a;Map<String,String> 命令格式 set key value(相同的key会覆盖&#xff09; get key incr key decr key setex key seconds value seconds秒后失效 ttl key del key setnx ke value(if not exist) 应用场景 计数器 比如&#xff1a;访问次…

1招搞定maven打包空间不足问题

目录 一、工具应用问题 二 、使用效果 三、使用方法 四、练习手段 一、工具应用问题 使用maven的package功能打包失败&#xff0c;报错“Java heap space”错误。 二 、使用效果 修改IDEA中maven内存使用大小后&#xff0c;打包成功。 三、使用方法 点击菜单“File->Set…

C++ 例外处理 try throw catch

例外处理 程式中可能会发生的错误有三种&#xff0c;分别是语法错误(syntax error) 、执行期间错误(runtime error) 及语意错误(semantic error) &#xff0c;其中编译器会直接检查出语法错误&#xff0c;如果含有语法错误的程式无法过编译&#xff0c;例如 $ g u06.cpp u06.c…

【PythonRS】基于Python分块处理大型遥感影像的方法

RSer工作时不可避免会用到大型的遥感影像,由于分辨率过高、区域过大、波段信息过多等原因,都会导致数据非常的大。这个时候我们在进行一些简单的操作,如计算NDVI、二值化、分类等时,计算机的内存都会溢出。因此今天跟大家分享一下我平时分块的方法,中间如何计算就按照自己…

Docker 使用基础(3)—容器

&#x1f3ac;慕斯主页&#xff1a;修仙—别有洞天 ♈️今日夜电波&#xff1a;秒針を噛む—ずっと真夜中でいいのに。 0:34━━━━━━️&#x1f49f;──────── 4:20 &#x1f504; ◀️ ⏸ …

let/const/var的区别及理解

在JavaScript中&#xff0c;let、const 和 var 是用来声明变量的关键字&#xff0c;但它们之间在作用域、变量提升、重复声明等方面存在区别&#xff0c;详细情况如下: 1. let、const、var 的区别 (1) 块级作用域 let 和 const&#xff1a;具有块级作用域&#xff0c;由 {} 包…

百数教学秘籍:三步走,轻松规划你的自动化计划任务

通过设定任务计划&#xff0c;用户可以轻松安排指定的功能插件或数据助手在特定时间自动执行&#xff0c;有效提高工作效率&#xff0c;还确保了数据的及时更新和处理。任务计划在应用启动时自动启动并在后台运行&#xff0c;无需用户持续监控&#xff0c;为用户带来极大的便利…

oracle哪些后台进程不能杀?

oracle 有很多的后台进程&#xff0c;在遇到特殊情况的时候如锁表&#xff0c;如果等待的是一个后台进程&#xff0c;那这时就需要考量是不是能杀掉这个后台进程&#xff1f;杀掉这个后台进程会不会引起实例崩溃&#xff1f;本着实践出真知&#xff0c;本文针对oracle 11g&…

游戏开黑语音-使用云服务器部署teamspeak服务(系统Ubuntu 20.04 LTS)

目录 前置物品服务器调整及部署1.重装系统2.换源3.下载teamspeak服务端并部署 连接服务器参考 前置物品 一台云服务器&#xff08;系统&#xff1a;Ubuntu 20.04 LTS) 服务器调整及部署 1.重装系统 在腾讯云官网的主机控制台内&#xff0c;选择重装系统 (由于之前为了快点和…