BGP的四类属性详解
BGP的四类属性
公认必遵(Well-known mandatory)
- 要求所有运行BGP协议的设备都必须能识别,且在更新消息中必须包含。
- Origin(起源) 属性
- 用来标识路由信息的来源。
- 如果路由是从IGP学习到的,则Origin属性为IGP(i),使用display bgp routing-table命令查看BGP路由时,IGP简写为i。
- 如果路由是从EGP学习到的,则Origin属性为EGP(e)。
- 如果路由的来源无法确定,则Origin属性为incomplete(?)。
- 路由优先级:IGP > EGP > incomplete
- AS_PATH(AS路径) 属性
- 用来记录某条路由从本地到目的地址所要经过的所有AS编号。
- AS_PATH可以作为一种度量值,经过更少AS的路由更优先。
- AS_PATH被用来避免AS之间的环路。如果BGP Speaker从EBGP对等体收到一条路由,它的AS_PATH包含BGP Speaker自己的AS号,就说明这条路由曾经被BGP Speaker发送过,所以会被直接丢弃。
- NEXT_HOP(下一跳) 属性
- 定义到达目的地下一跳的设备的IP地址。
公认任意(Well-known discretionary)
- 要求所有运行BGP协议的设备必须能识别,但是在更新消息内可以自由选择是否携带此类属性的报文。
- LOCAL-PREF(本地优先级) 属性
- LOCAL-PREF属性用来通告路由的优先程度。
- LOCAL-PREF属性仅在IBGP对等体之间交换,不通告给其他AS。
- ATOMIC_AGGREGATE(原子聚合) 属性
- 用来通告路由接受者该路由是经过聚合的。
可选过渡(Optional transtive)
- AGGREGATOR(聚合) 属性
- 是ATOMIC_AGGREGATE属性的补充,包含了发起路由聚合的AS号码和形成聚合路由的BGP发布者的IP地址。
- COMMUNITY(团体) 属性
- 是共享相同属性的目的地集合,目的就是将路由信息编组,通过组的标识决定路由策略的传递。
- 公认的团体属性有:
1.INTERNET:缺省情况下,所有的路由都属于INTERNET团体。具有此属性的路由可以被通告给所有的BGP对等体。
2.NO_EXPORT:不能被发布到本地AS之外。如果使用了联盟,则不能被发布到联盟之外,但可以发布给联盟中的其他子AS。
3.NO_ADVERTISE:不能被通告给其他的BGP对等体,即不通告该路由。
4.NO_EXPORT_SUBCONFED:不传递给下一个小AS,若网络中没有小AS,仅存在大AS时作用与NO_EXPORT一致。
可选非过渡(Optional non-transtive)
MED(多出口鉴别器) 属性
用来区分同一个邻接AS的多个接口。
MED只在EBGP发布的路由中产生,接收者可以向它的IBGP邻居转发,但不允许向它的EBGP对等体转发。假设一个AS和邻接AS有多个接口相连,通过发布不同的MED给对端,就可以控制进入网络的流量从MED值最小的那个接口进来。通常情况下,BGP 只比较来自同一个AS的路由的MED属性值。
BGP协议默认不存在cost;MED就是人为的利用路由器优选路径的规则—先比较管理距离(华为为优先级),若一直再比较度量值(华为为cost)
BGP协议在特定条件下携带本地到达目标的cost值;本地宣告(重发布)自己路由表中的路由后,将其传递给本地的ebgp邻居,将携带cost值;对于其他AS的设备学习到从同一个as传递过来的路由,优选MED最小的路径;管理员可以在控制层面传递路由的过程中,手工修改MDE;最常用于干涉ebgp选路;常常用于AS1干涉AS2对AS1的选路;
ORIGINATOR_ ID(发起人ID) 属性
- ORIGINATOR_ ID用于标识路由反射器,是可选非过渡属性。
- 为了防止引入路由反射器之后出现环路,增加ORIGINATOR_ ID这个属性来标识,反射器在发布路由时加入ORIGINATOR_ID,当反射器收到的路由信息中的ORIGINATOR_ ID就是自己的ROUTER_ ID时,就可以发现路由环路的出现,将该路由丢弃,不再转发。
CLUSTER_ ID(组ID) 属性
- CLUSTER_ ID用于标识路由反射器组,是可选非过渡属性。
- CLUSTER_ ID属性也是用来防止环路,在路由经过路由反射器时路由反射器会将自己的CLUSTER_ID添加到路由携带的CLUSTER_LIST中,当路由反射器发现接收的路由的CLUSTER_ LIST中包含有自己的CLUSTER_ ID,则将该路由丢弃,不再转发。
WEIGHT(权重值) 属性
- Weight属性是Cisco私有属性,只有Cisco的路由器才能识别weight。
- 路由的weight属性只在本地路由器起作用,BGP将路由传递给邻居时,并不保留weight。Weight值的范围0~65535,默认为0,如果是BGP本地发起路由,weight值32768。
- 当到达同一目的地存在多条路径时,优选weight值大的。在Cisco路由器中,比较最优路径的第一条规则就是比较weight值,所以只要改动weight值,就能控制Cisco路由器的BGP选路。
BGP的四类属性详解的更多相关文章
- Python类属性详解
在python开发中,我们常常用到python的类,今天就通过实例和大家扒一扒类的属性,一起来看看吧. 类属性 1.类定义后就存在,而且不需要实例化 2.类属性使得相同类的不同实例共同持有相同变量 类 ...
- OutputCache属性详解(四)— SqlDependency
目录 OutputCache概念学习 OutputCache属性详解(一) OutputCache属性详解(二) OutputCache属性详解(三) OutputCache属性详解(四)— SqlD ...
- C#类、对象、方法和属性详解
C#类.对象.方法和属性详解 一.相关概念: 1.对象:现实世界中的实体(世间万物皆对象) 2.类:具有相似属性和方法的对象的集合 3.面向对象程序设计的特点:封装 继承 多态 4.对象的三要素:属性 ...
- 第15.10节 PyQt(Python+Qt)入门学习:Qt Designer可视化设计界面组件与QWidget类相关的组件属性详解
PyQt学习有阵子了,对章节的骨架基本考虑好了,准备本节就写组件的属性的,结果一是日常工作繁忙,经常晚上还要加班,二是Qt的组件属性很多,只能逐一学习.研究和整理,花的时间有点长,不过终于将可视化设计 ...
- Android组件---四大布局的属性详解
[声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4372222.html Android常见布局有下面几种: LinearL ...
- J2EE进阶(四)Spring配置文件详解
J2EE进阶(四)Spring配置文件详解 前言 Spring配置文件是用于指导Spring工厂进行Bean生产.依赖关系注入(装配)及Bean实例分发的"图纸".Java EE程 ...
- tomcat 三种部署方式以及server.xml文件的几个属性详解
一.直接将web项目文件件拷贝到webapps目录中 这是最常用的方式,Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用.如果你想要修改这个默认 ...
- Delphi中的线程类 - TThread详解
Delphi中的线程类 - TThread详解 2011年06月27日 星期一 20:28 Delphi中有一个线程类TThread是用来实现多线程编程的,这个绝大多数Delphi书藉都有说到,但基本 ...
- UML简单介绍—类图详解
类图详解 阅读本文前请先阅读:UML简单介绍—类图这么看就懂了 1.泛化关系 一个动物类: /** * 动物类 */ public class Animal { public String name; ...
随机推荐
- MyBatis封装JDBC具体实现
关于xml等解析的工具基本均包含在org.apache.ibatis.builder包中,有包名可知基本使用建造者模式.这个包的主要功能两个: 1.解析XML配置文件和映射文件,xml子包中: 2.解 ...
- Spring Boot部署之jar包运行
上篇阐述了Spring Boot war部署项目,本篇阐述另一种运行方式:jar包运行. 一.打jar包 1.修改pom.xml配置 2.执行package(对于module执行package之前需要 ...
- nginx拒绝国外IP访问
nginx拒绝国外IP访问方法很多,比如iptables,geoip模块,域名解析等等.这些方法不会相互冲突,可以结合起来一起使用. 今天来教大家利用两个小方法解决 域名解析禁止掉海外IP访问网站. ...
- SpringBoot实现QQ邮件发送
建项目 创建一个SpringBoot项目 改pom,导入相关依赖 org.springframework.boot spring-boot-starter-parent 2.2.2.RELEASE & ...
- VUE项目二级菜单刷新时404 nginx
原因:vue项目的路径时虚拟路径,并不存在,所以用nginx去请求请求不到,所以vue项目做了两部调整: 1.所有的请求后端接口地址前端写死 2.nginx里把所有的接口转发后端删掉,并添加以下内容 ...
- python-基础编程练习题
题目1:九九乘法表 知识点:双层循环,print打印格式,默认换行打印 """ 1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 1*4=4 2*4 ...
- CVE-2017-0213漏洞复现
CVE-2017-0213漏洞形成的原因 类型混淆的漏洞通常可以通过内存损坏的方式来进行利用.然而漏洞发现者在利用时,并未采用内存损坏的方式来进行漏洞利用.按照漏洞发现者的说法,内存损坏的利用方式需要 ...
- stegsolve.jar压缩包打开和使用方法
1.stegsolve.jar下载 下载地址:http://www.caesum.com/handbook/Stegsolve.jar 2.stegsolve.jar打开方法 (1)需要下载java并 ...
- weblogic补丁安装失败
转至:https://www.cnblogs.com/lsdb/p/7234989.html weblogic补丁安装失败(Patch B25A is mutually exclusive and c ...
- linux 平台实现 web 服务器的自动化发布 (纯shell 版本,存在ssh 不能自动退出问题,待解决)
转至:https://www.cnblogs.com/vmsky/p/13824172.html 背景说明 1.集团OA系统上线,web App 部署在6台服务器中,因项目初期,每次更新都需要进行大量 ...