网站主机免备案吗,建设一个类似于京东的网站,南京江宁 网站建设,wordpress 文章显示数量选路前提条件
多条BGP路由目标相同#xff0c;且均可优(下一跳可达、同步关闭)#xff0c;具有相同的优先级#xff08;管理距离#xff09;。
1、优选Preference_Value值最高的路由#xff08;私有属性#xff0c;仅本地有效#xff09;。 不传递 权限最高属性 可…选路前提条件
多条BGP路由目标相同且均可优(下一跳可达、同步关闭)具有相同的优先级管理距离。
1、优选Preference_Value值最高的路由私有属性仅本地有效。 不传递 权限最高属性 可以干涉EBGP/IBGP选路
2、优选本地优先级Local_Preference最高的路由。 IBGP邻居关系间传递 只能最常干涉IBGP关系的选路
3、优选手动聚合自动聚合networkimport从对等体学到的。
4、优选AS_Path短的路由。 EBGP/IBGP关系均可被干涉但只能在EBGP邻居间修改
5、起源类型IGPEGPIncomplete。 起源属性 i优于e优于 可在控制层面任意接口修改
6、对于来自同一AS的路由优选MED值小的。 默认为0宣告或重发布关闭自动汇总路由时携带本地到达目标的cost 最常用于干涉EBGP选路的属性
7、优选从EBGP学来的路由EBGPIBGP。
8、优选AS内部IGP的Metric最小的路由。
9、优选Cluster_List最短的路由。
10、优选Orginator_ID最小的路由。
11、优选Router_ID最小的路由器发布的路由。
12、优选具有较小IP地址的邻居学来的路由。
属性
华为和cisco均存在6种基本属性 第一种均为私有属性 传播范围 默认值 大优或小优
1、Preference_Value 不传播 0 大优
华为设备的私有属性
修改命令
[r3-bgp]pe 2.2.2.2 preferred-value 1
本地从邻居2.2.2.2处学习到的所有路由优先值修改为1 传播范围 默认值 大或小优
2、本地优先级 IBGP邻居关系间 100 大优
第一个公有属性也是最常用于干涉IBGP选路最常使用的属性
修改命令
[r4-bgp]default local-preference 101
本地所有传输到IBGP的路由条目其中本地优先级修改为101
3、as-path
优选经过AS数量较少路径该属性的自动添加是在EBGP邻居关系间进行
修改命令需要要用到路由策略
如下图演示 在bgp宣告了1.1.1.0/24网段
在R3上面查看1.1.1.1经过的AS并且优先选的192.168.2.1为下一跳 现在修改路径给加几个AS让选路优先走192.168.4.1为下一跳就在R2上面去做一个路由策略修改它的AS- PATH。
[R2]ip ip-prefix 1 permit 1.1.1.0 24
[R2]route-policy 1 permit node 10
Info: New Sequence of this List.
[R2-route-policy]if-match ip-prefix 1
[R2-route-policy]apply as-path 100 100 100 additive #增加几个已有的AS
[R2-route-policy]q
[R2]route-policy 1 permit node 20
Info: New Sequence of this List.
[R2-route-policy]q
[R2]bgp 100
[R2-bgp]peer 192.168.1.1 route-policy 1 import
再去R3上查看达到要求优选的是192.168.4.1为下一跳。备选路192.168.1.1的AS-PATH经过了几个刚才添加的AS号。 注as-path 属性又用于EBGP的水平分割若人为添加的as号在网络后端实际存在将导致这些路由无法进入这些AS解决方案反复添加已经经过的AS编号
4、起源属性
条目的产生方式
network 宣告本地路由表中的任意路由 i
import 将本地通过其他协议学习的路由重发布到BGP协议中
egp 早期的ebg协议学习的路由重发布到BGP协议中 e
该属性的修改可以在整个控制层面流量经过的任意接口修改
也是需要使用路由策略来进行。
5、MED
多出口的鉴别属性 BGP协议默认不存在costMED就是人为的利用路由器优选路径的规则—先比较管理距离华为为优先级若一直再比较度量值华为为cost
BGP协议在特定条件下携带本地到达目标的cost值本地宣告重发布自己路由表中的路由后将其传递给本地的ebgp邻居将携带cost值对于其他AS的设备学习到从同一个as传递过来的路由优选MED最小的路径
管理员可以在控制层面传递路由的过程中手工修改MED最常用于干涉ebgp选路
常常用于AS1干涉AS2对AS1的选路 同样先去R3上面看1.1.1.0/24网段此时看MED是没有人任何值优选的也是192.168.2.1为下一跳。 现在修改MED值让选路优先走192.168.4.1为下一跳则需要把192.168.2.1这一跳的MED值改大同样在R2上面去做策略我这里是改的10。
[R2]route-policy 2 permit node 10
Info: New Sequence of this List.
[R2-route-policy]if-match ip-prefix 1
[R2-route-policy]apply cost 10
[R2-route-policy]q
[R2]route-policy 2 permit node 20
Info: New Sequence of this List.
[R2-route-policy]q
[R2]bgp 100
[R2-bgp]peer 192.168.1.1 route-policy 2 export 查看修改后的BGP路由表把192.168.2.1下一跳的MED值改大了后就优选192.168.4.1为下一跳。
由于实际工程中管理员只能在一个AS中配置故无法通过查看BGP表来判断选路结果可以通过扩展ping来解决
BGP扩展选路规则
BGP的社团属性
BGP的扩展属性 默认大多数厂商的产品在BGP协议中不携带社团属性
例控制传播范围的社团属性
[r1]route-policy com permit node 10
[r1-route-policy]apply community no-advertise 针对所有的流量修改属性
[r1]bgp 1
[r1-bgp]peer 12.1.1.2 route-policy com export
默认华为设备也不传递社团属性故使用社团属性时必须定义传递性
[r1-bgp]peer 12.1.1.2 advertise-community 逐跳行为每台设备均需开启传递性
no-advertise 接收到的条目中若存在该社团属性将不再传递该路由
no-export 接收到的条目若存在该社团属性将不传递给下一个AS
no-export-subconfed 接收到的条目若存在该社团属性将不传递给下一个小AS
若网络没有小AS仅存在大AS时no-export和no-export-subconfed作用一致
附件 选路规则 华为BGP选路规则 思科BGP选路规则 第0条 下一跳是否可达如果不可达则不参与选路 BGP 向IBGP对等体发布import引入的IGP路由时 将下一跳属性改为自身的接口地址而非IGP中的下一跳地址。 peer next-hop-invariable命令有以下作用 BGP Speaker在向EBGP对等体发布路由时不改变下一跳该命令配置在EBGP对等体间时只对×××v4和×××v6路由生效对于其他类型的路由都不生效。 BGP Speaker在向IBGP对等体发布引入的IGP路由时使用IGP路由的下一跳地址。 下一跳是否可达如果不可达则不参与选路 BGP 向IBGP对等体发布引入的IGP路由时 下一跳仍然保持IGP的下一跳不变 第1条 比较协议首选值Pref_Val数值高优选本地始发和邻居传递过来的都为0。该属性本路由器有效是华为私有属性 比较Weight值数值高者优选本地始发为32768。该属性本路由器有效是思科私有属性 第2条 local-pref本地首选项(越大越优先)该参数在本AS内传递。 始发路由器的local-pref值为空传递给AS内IBGP邻居后变为100本地优先级Local_Pref属性仅在IBGP对等体之间交换不通告给其他AS。 如果路由没有local-pref值BGP选路时将该路由按缺省的local-pref值100来处理 使用命令为default local-preference本机向所有IBGP邻居发布的所有路由设置一个缺省的Local_Pref 使用命令为apply local-preference为本机向任意IBGP邻居发布的任意路由设置Local_Pref并且可以为不同的路由设置不同的Local_Pref 当路由同时应用default local-preference和apply local-preference命令时apply local-preference命令的配置优先生效。 local-pref本地首选项(越大越优先)这个参数在本AS内传递。 始发路由器的local-pref值为100 本地优先级Local_Pref属性仅在IBGP对等体之间交换不通告给其他AS。 第3条 本地始发路由优先优先顺序如下手动聚合路由自动聚合路由network宣告路由从import-route命令引入的路由 本地始发路由优先优先顺序如下network宣告路由从IGP引入的路由手动聚合路由自动聚合路由 / AIGP AIGPAccumulated Interior Gateway Protocol Metric属性是一个比较新的BGP属性用于传递并累加IGP Metric值该属性是可选非过渡属性IANAInternet Assigned Numbers Authority为AIGP分配的属性类型码是26。 在VRP5的实现中AIGP属性只能通过路由策略添加若不设置则路由缺省不携带AIGP属性。在路由传递中AIGP属性会根据建立邻居所依赖IGP路由的Metric增加其AIGP值。 在路由选路过程中携带AIGP属性的路由优于未携带AIGP属性的路由而如果都存在AIGP属性则比较AIGP属性与其下一跳的IGP Metric之和优选该值较小的。 在BGP引入、接收或发送路由时可以人为通过路由策略里的apply aigp { cost | inherit-cost }命令设置AIGP属性值的大小。 思科资料详见链接 第4条 比较as-path长度短者优先AS_Path属性有四种形式分别是AS_Sequence、AS_Set、AS_Confed_Sequence和AS_Confed_Set。 一个as-set被计数为1而不管“set”中包含多少个as 忽略该条bestroute as-path-ignore 比较as-path长度短者优先AS_Path属性有四种形式分别是AS_Sequence、AS_Set、AS_Confed_Sequence和AS_Confed_Set。 一个as-set被计数为1而不管“set”中包含多少个as 忽略该条bgp bestpath as-path ignore 第5条 比较路由起源属性IGP(0)EGP(1)Incomplete(3) 不完全的Incomplete路由信息是从其他渠道学习到的。不完全路由并不是说该路由有何缺陷只是确定该路由来源的信息不完全而已。比如BGP通过重分发机制学习到的路由将携带不完全路由来源属性这是因为没有办法确定该路由的来源。 比较路由起源属性IGP(0)EGP(1)Incomplete(3) 第6条 比较MED值越小越优先 一、MED值产生过程如下 1.通过network和import命令注入到BGP中的路由是直连路由则MED值为传递给IBGP和EBGP邻居也为 2.通过network和import命令注入到BGP中的路由为非直连IGP路由那么MED值为IGP的cost值传递给IBGP和EBGP邻居也为IGP的cost值只有在边界路由器上network和import的路由在传递给EBGP邻居时才会携带MED值 3.通过aggregate命令注入到BGP中的路由的MED值为空传递给IBGP和EBGP邻居也为空 二、MED值传播范围 1. 在本AS的边办路由器上宣告路由时传递给其他AS的EBGP邻居后在下一AS范围内继续传递但不会再传递给第三个AS。 2. 在AS内BGP Speaker上通告的路由的MED值会在本AS内传递当边界路由器再通告给EBGP邻居时会清除MED值如果要强制边界BGP路由器将从IBGP学来的路由通告给EBGP邻居时携带MED值需要在边界路由器上配置route-policy并apply cost-type internal然后边界路由器会把本路由器上的BGP路由到下一跳的cost值作为MED值传递给EBGP邻居而非当前边界路由器上看到的的MED值 三、其他 1.默认情况下BGP路由器只比较来自相同AS的MED值使用compare-different-as-med命令BGP将强制比较来自不同AS的路由的MED值。 使用deterministic-med将消除路由接收顺序对选路结果的影响。 2.在接收到的BGP路由没有MED值时按0来处理执行bestroute med-none-as-maximum命令后没有MED值时按最大值4294967295来处理这主要是为了对旧标准的兼容 3.命令default med命令只对本设备上用import-route命令引入的路由和BGP的聚合路由生效 比较MED值越小越优先 一、MED值产生过程如下 1.通过network和import命令注入到BGP中的路由是直连路由那么MED值为传递给IBGP和EBGP邻居也为 2.通过network和import命令注入到BGP中的路由为非直连IGP路由那么MED值为IGP的cost值传递给IBGP和EBGP邻居也为IGP的cost值只有在边界路由器上network和import的路由在传递给EBGP邻居时才会携带MED值 3.通过aggregate命令注入到BGP中的路由的MED值为空传递给IBGP和EBGP邻居也为空 二、MED值传播范围 1. 在本AS的EBGP路由器上宣告路由时传递给其他AS的EBGP邻居后在下一AS范围内继续传递但不会再传递给第三个AS。 2. 在AS内BGP Speaker上通告时在本AS内传递当从IBGP邻居学到的路由通告给EBGP邻居时会清除MED值如如果要强制边界BGP路由器将从IBGP学来的路由通告给EBGP邻居时携带MED值需要在边界路由器上配置route-map并set metric-type internal然后边界路由器会把本路由器上的BGP路由到下一跳的cost值作为MED值传递给EBGP邻居而非当前边界路由器上看到的的MED值 三、其他 1.默认情况下BGP路由器只比较来自相同AS的MED值使用bgp always-compare-med命令BGP将强制比较来自不同AS的路由的MED值。 使用bgp deterministic-med将消除路由接收顺序对选路结果的影响。 2.在接收到的BGP路由没有MED值时按0来处理执行bgp bestpath missing-as-worst命令后MED值按最大值4294967294来处理这主要是为了对旧标准的兼容 3.使用命令default med命令只对本设备上用import-route命令引入的路由和BGP的聚合路由生效。 第7条 邻居类型EBGP优于IBGP PE上某个×××实例的×××v4路由的ERT匹配其他×××实例的IRT后复制到该×××实例称为LocalCross从远端PE学习到的×××v4路由的ERT匹配某个×××实例的IRT后复制到该×××实例称为RemoteCross EBGP优于联邦EBGP联邦eBGP和联邦iBGP不具有可比性不比较。因为联邦ebgp和联邦ibgp都被看做内部路径没有差别。如果都是EBGP对等体收到的路由条目或者都是从IBGP对等体收到的路由条目或者分别从联邦EBGP和联邦IBGP对等体收到的条目则继续向下一步进行。 邻居类型 EBGP优于IBGP EBGP优于联邦EBGP联邦eBGP和联邦iBGP不具有可比性不比较。因为联邦ebgp和联邦ibgp都被看做内部路径没有差别。如果都是EBGP对等体收到的条目或者都是从IBGP对等体收到的条目或者分别从联邦EBGP和联邦IBGP对等体收到的条目则继续向下一步进行。 第8条 比较到下一跳的IGP Cost值数值小者优选 使用命令bestroute igp-metric-ignore可忽略该选路规则 比较IGP Cost值数值小者优选 第9条 前面的选路规则都一致时可以手工等价负载均衡手工负载均衡时as-path要完全相同不仅是长度相等。 携带标签的BGP路由与不携带标签的BGP路由不能形成负载分担。 1.配置maximum load-balancing ebgp number命令后仅EBGP路由参与负载分担配置maximum load-balancing ibgp number命令后仅IBGP路由参与负载分担。不配置[ ebgp | ibgp ]时EBGP和IBGP路由都参与负载分担且参与负载分担的路由条数相同。 2.配置maximum load-balancing number命令后无论是否形成负载分担在发布路由时会将下一跳修改为本端地址。但是在路由反射器和BGP联盟场景下对于非本地路由不修改下一跳为本端地址。 3.配置maximum load-balancing [ ebgp | ibgp ] number命令后无论是否形成负载分担在发布路由时都不会强制将下一跳修改为本端地址。 4.配置maximum load-balancing [ ebgp | ibgp ] number ecmp-nexthop-changed命令后只有形成负载分担时才会将发布路由的下一跳修改为本端地址。 5.携带标签的BGP路由与不携带标签的BGP路由即使满足上述条件也不能形成负载分担。 6.load-balancing as-path-ignore命令用来设置路由在形成负载分担时不比较路由的AS-Path属性 7.在 BGP-×××实例IPv4地址族视图、BGP-×××实例IPv6地址族视图下执行命令maximum load-balancing eibgp 在BGP-×××实例视图下配置maximum load-balancing eibgp命令后在判断BGP私网路由是否等价时路由的EBGP/IBGP类型不作为判断条件EBGP和IBGP路由都可以形成负载分担。 前面的选路规则都一致时可以手工等价负载均衡手工负载均衡时as-path要完全相同不仅是长度相同。 1.使用命令maximum-paths [ibgp] number如果没有使用ibgp参数那么只对ebgp路由负载分担 第10条 无 当多条都是从EBGP收到的路由时(仅ebgp路由联邦EBGP对等体不算因为是内部路径)BGP优先使用最先收到的路由条目(最老的路径)该选路规则一般不使用。 如果以下任一条件为真该条选中规则将会被忽略 1.启用了bgp bestpath compare-routerid 2.多条路径具有相同的路由器ID因为这些路由都是从同一台路由器发过来的 3.当前没有最佳路径。 第11条 比较Cluster_list长度越短越优先该选路规则仅仅出来在BGP RR环境中 缺省情况下BGP在选择最优路由时Cluster-List优先于Originator-ID使用命令bestroute routerid-prior-clusterlist后BGP在选择最优路由时Originator-ID将优先于Cluster-List。 比较Router-id的大小越小越优先 如果路径包含RR属性那么在路径选择过程中就用originator-id来代替router-id进行比较 第12条 比较Router-id的大小越小越优先 如果路径包含RR属性就用originator-id来代替router-id进行比较 缺省情况下BGP在选择最优路由时Cluster-List优先于Originator-ID使用命令bestroute routerid-prior-clusterlist后BGP在选择最优路由时Originator-ID将优先于Cluster-List。 reflect change-path-attribute命令使能路由反射器通过出口策略修改路由路径属性 比较Cluster_list长度越短越优先该选路规则仅仅出来在BGP RR环境中 第13条 比较下一跳对等体的连接地址这是BGP配置中的peer IP地址越小越优先 比较下一跳对等体的连接地址这是BGP配置中的neighbor IP地址越小越优先 第14条 无 BGP自定义路径选择过程:BGP Cost Community(BGP成本团体)的扩展团体属性提供了自定义最佳路径选择过程的方式。这个自动路径选择过程插入在BGP选路规则的第8条之后(优先到下一跳IGP-cost最低的路径)或第3条后首选成本值最低的路径该条一般不使用使用时需要再查询详细资料