边界网关协议BGP_可信边界安全网关

边界网关协议BGP_可信边界安全网关文章目录边界网关协议BGP协议详解最全BGP路由协议技术详解

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定


一、BGP概述

1、自治系统(AS,autonomous system)

自治系统是由一个技术管理机构管理,使用统一选路策略的一组路由器集合。
自治系统编号范围:1-65535,其中1-64511是互联网上注册公有AS号,类似公网IP地址。64512-65535是私有AS号,类似私网IP地址。

2、动态路由的分类

(1)自治系统分类

①IGP:自治系统内部路由协议,主要有:RIP 1/2、OSPF、IS-IS、EIGRP(思科私有协议)。
IGP是运行在AS内部的路由协议,主要解决AS内部的选路问题,发现、计算路由。
②EGP:自治系统外部路由协议,通常为BGP。
EGP是运行在AS与AS之间的路由协议,他解决AS之间选路问题。

(2)协议类型分类

①距离矢量路由协议:RIP 1/2、BGP、EIGRP
②链路状态路由协议:OSPF、IS-IS

3、BGP的概念

BGP是一种运行在AS和AS之间的动态路由系诶,主要作用在AS之间自动交换无环路由信息以此来构建AS的拓扑图,从而消除路由环路并实施用户配置的路由策略。目前公网网络条目众多,IGP协议无法承载,而BGP可以轻松应对,通常BGP协议用于ISP和ISP之间或跨越地域总、分公司之间的路由信息交换。

4、BGP的特征

●传输协议:TCP,端口号为179
●BGP是外部路由协议,用来在AS之间传递路由信息
●是一种增强的路径矢量路由协议
●拥有可靠的路由更新机制
●具备丰富的Metric度量方法
●无环路协议设计
●为路由条目附带多种属性信息
●支持CIDR(无类别域间选路)
●丰富的路由过滤和路由策略
●无需周期性更新
●路由更新时只发送增量路由
●周期性发送Keep Alive报文以保持TCP连通性

二、BGP工作原理

1、BGP邻居关系

(1)BGP报文

①open报文

open报文是TCP建立后发送那个的第一个报文,用于建立BGPP对等体之间的连接关系。
主要包括BGP版本号、本地AS编号、Holdtime等信息。

②update报文

update报文使用在BGP之间更新路由信息,update报文可以通告多条属性相同的可达路由信息,也可以撤销多条路由不可达的路由信息。

③notification报文

报文的作用是当BGP检测到错误状态时,立即向对等体发送notification报文,之后BGP就会中断,只要收到notification报文就会返回idle状态。

④route-refresh报文

用来告知对等体所支持路由的刷新能力,BGP的入口策略路由发生变化,本地的BGP路由会向对等体发送route-refresh报文,收到信息后,对等体将其路由信息重新发送给本地BGP路由器。

⑤keep alive报文

该报文在对等体之间周期的发送报文,用以保持连接的有效性并维护其连接,keep alive报文发送周期为60s,保持时间180s,这个类似于ospf中的hello报文。

(2)BGP状态机

img
idle状态-空闲
connece状态-连接
active状态-活动
opensent状态-开启发送
openconfirm状态-开启确认
established状态-建立

(3)BGP数据库

①IP路由表(IP-RIB)

全局路由信息库,包括最优的路由信息

②BGP路由表(Loc-RIB)

BGP路由信息库,包括本地BGPspeak通告的路由信息,将其最优的添加到路由表中

③邻居表

对等体邻居清单表,包括对等体两端的邻居信息及邻居列表

④Adi-RIB-In

对等体宣告给本地的speak的未处理的路由信息库

⑤Adj-RIB-Out

本地speak宣告给指定的对等体路由信息库

(4)BGP的邻居关系类型

①IBGP

同一个AS内部BGP邻居关系,IBGP邻居是指运行BGP协议的对等体两端在同一个AS域内,属于BGP AS内部。

②EBGP

AS之间的BGP邻居关系,EBGP通常指运行BGP协议的对等体两端在不同AS内部

2、通告BGP路由的方法

(1)netwrok方式

[R1-bgp] network 1.1.1.1 32
[R1-bgp] network 2.2.2.2 32

(2)import方式

[R1-bgp] import-route ospf 110 ###注入ospf中的路由
[R1-bgp] import-route static ###注入静态路由
[R1-bgp] import-route direct ###注入直连路由

三、BGP的配置

1、BGP配置思路

(1)启用BGP,后面跟AS系统号
(2)宣告route-id,建立邻居关系用
(3)宣告和谁建立邻居关系
(4)通告BGP路由(network、import)

2、BGP对等体配置

如R1与R2建立邻居对等,as系统号为100,R1 router-id为1.1.1.1,R2 router-id为2.2.2.2
R1:
[R1] router id 1.1.1.1
[R1] bgp 100
[R1-bgp] peer 2.2.2.2 as-number 100
[R1-bgp] peer 2.2.2.2 connect-interface LoopBack 0
R2:
[R2] router-id 2.2.2.2
[R2] bgp 100
[R2-bgp] peer 1.1.1.1 as-number 100
[R2-bgp] peer 1.1.1.1 connect-interface LoopBack 0

3、保证IBGP下一跳可达

在EBGP之间建立对等邻居时,由于它们之间数据传输需经2跳,因此需做如下设置
[R2-bgp] peer 3.3.3.3 ebgp-max-hop 2

4、BGP属性

路由器发送关于目标网络的BGP更新消息,更新的度量值被称为路径属性。属性可以是公认的或可选的、强制的或自由决定的、传递的或非传递的。属性也可以是部分的。并非组织的和有组合的都是合法的,路径属性分为4类:公认必遵、公认自决、可选过渡、可选非过渡。
公认属性:
是公认所有BGP实现都必须识别的属性,这些属性被传递给BGP邻居。
公认强制属性必须出现在路由描述中,公认自由决定属性可以不出现在路由描述中。
可选属性:
非公认属性被称为可选的,可选属性可以是传递的或非传递的。
可选属性不要求所有的BGP实现都支持。
对于不支持的可选传递属性,路由器将其原封不动的传递给其他BGP路由器,在这种情况下,属性被标记为部分的。
对于可选非传递属性,路由器必须将其删除,而不将其传递给其他BGP路由器。

5、BGP选路原则

1、优选具有最大Weight值的路由
2、优选具有最大Local_Preference值的路由
3、优选起源于本地的路由(如本地network、aggregate或redistribute的)即下一跳是0.0.0.0(在BGP表中,本路由器通告的路由的下一跳为0.0.0.0)
4、优选AS-Path最短的路由
5、Origin(IGP>EGP>incomplete)
6、优选MED最小的路由,默认情况下仅有当所有备选路由来自同一AS才会比较MED
7、优选EBGP邻居发来的路由(相对于IBGP邻居学过来的),在联邦EBGP和IBGP中首选联邦EBGP路由
8、优选到BGP next_hop 最近的邻居
9、执行等价负载均衡(如果有多条来自相同相邻AS的路由并通过Maximum-paths 使多条路径可用,则将所有开销相同的路由放入本地路由表)
10、优选最老的EBGP路由,EBGP路由接收的顺序(此条主要对EBGP路由起效,基本不用,不好确定)
11、BGP邻居的RID越小越优先
12、优选cluster_list最短的路由
13、选择邻居IP地址(BGP的neighbor配置中的那个地址)最小的路由


参考

边界网关协议

BGP协议详解

最全BGP路由协议技术详解


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/216245.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 如何启用计算机双通道内存的方法,内存条怎么插 组建内存双通道正确插法教程…

    如何启用计算机双通道内存的方法,内存条怎么插 组建内存双通道正确插法教程…当我们安装或升级内存时,发现主板上有四个内存插槽,所以不知道该插入哪个内存插槽。事实上,理论上,任何一个内存插槽都可以正常使用。但是如果随意插上,未必能搭建双通道,搭建双通道也是有讲究的。那么双通道内存是什么意思呢?怎么安装?下面,安装者之家将为大家普及双通道内存的知识,并附上正确插入双通道内存的教程。希望这篇文章能对大家有所帮助。设置内存双通道插入教程一、双通道内存是什么意思?有什么好处?我们知…

    2022年6月23日
    90
  • Android ConstraintLayout百分比布局使用详解

    Android ConstraintLayout百分比布局使用详解AndroidConstraintLayout是谷歌推出替代PrecentLayout的组件。支持相对布局、线性布局、帧布局,笔者看来更像是FrameLayout、LinearLayout、RelativeLayout三者的结合体,并且比这三者更强大的是实现了百分比布局,大家都知道安卓碎片严重,使用百分比适配,那么将彻底解决适配问题。本文将教会你如何使用此控件。一、当作Relative…

    2022年5月18日
    41
  • foc无刷电机位置控制(直流无刷电机接线图解)

    序:矢量控制的核心思想是为了简化无刷电机的控制模型,将一个需要换相的无刷电机通过各种算法变换,抽象为一个直流电机的控制模型,只需要控制简单的两个直流分量来控制无刷电机,其中Vq抽象为直流电机的两端电压,Vd可调节电机力矩,但这个模型需要一个实时的电机轴角度θ参与计算。为了实现这个直流电机的控制模型,需要用到两个数学变换,即clarke变换和park变换。需要用到最原始的PID控制器等内容。…

    2022年4月11日
    385
  • Vue上传文件遇到的问题[通俗易懂]

    Vue上传文件遇到的问题[通俗易懂]问题之前项目中前端使用了vue-cli,引入了上传组件,所以在上传文件时很容易,没有考虑太多问题。image-cropper组件中有url属性,直接使用:url=”文件服务器地址”绑定上传的地址即可。<el-form-itemlabel=”讲师头像”><!–头衔缩略图–><pan-thumb:image=”teacher.avatar”/><!–文件上传按钮–><el-buttontype=

    2022年10月9日
    4
  • STM32的IWDG(独立看门狗)详细用法

    STM32的IWDG(独立看门狗)详细用法文章出处:https://www.cnblogs.com/Liu-Jing/p/7243029.html章参考资料:《STM32F4XX中文参考手册》IWDG章节。1、IWDG简介:  STM32有两个看门狗,一个是独立看门狗另外一个是窗口看门狗,独立看门狗号称宠物狗,窗口看门狗号称警犬,本章我们主要分析独立看门狗的功能框图和它的应用。独立看门狗用通俗一点的话来解释就是一个12位的递减计…

    2022年6月14日
    56
  • android生成coredump,详解coredump–全面

    From:http://blog.csdn.net/tenfyguo/article/details/8159176一,什么是coredump我们经常听到大家说到程序core掉了,需要定位解决,这里说的大部分是指对应程序由于各种异常或者bug导致在运行过程中异常退出或者中止,并且在满足一定条件下(这里为什么说需要满足一定的条件呢?下面会分析)会产生一个叫做core的文件。通常情况下,core文件…

    2022年4月12日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号