BGP选路问题
解决方案:BGP属性
属性
Origin
Network过来的话属性就是i
Import过来的时?
进行选路的时候i>? 有一种不长见的i>e>?
AS_Path
- AS传递的时候只会携带EBG的AS_Path属性,IBG中不会携带AS号传递给IBG的peer。
- AS传递的时候是从左向右传递。
- RTE传递给下一条时会携带自己的AS4到AS2,RTB收到以后给RTA传递就会携带AS4、AS2这样的属性,一下路由都是类似。当传递给AS5后,AS5在传递给AS4时,如果AS4发现AS5的路由列表里面有自己AS4.。那么他就拒收AS5传递过来的路由。
- AS选择的时候越长越不优,越短越优。
Next_hop
- EBGP建立邻居关系传递给IBGP默认下一条不变
- IBGP自己产生路由传递给IBGP的Peer,下一条就是自己环回口的地址。
Local_Preference
Local_pref控制出去路由优先级。如RTC上面的优先级是200,那么出去的流量就会从RTA到RTC走,而不是从RTB走。
- 缺省100
- 传递范围在本地的AS
MED属性
MED是控制流量进入到本地的AS里面的方式。
选择方式
:
RTA有一个100.1.1.1的路由他向外面传输的时候分别会从RTB以及RTC都会传输出去,我们在RTB和RTC上面设置MED值RTB设置为100,在RTC上面设置为50,那么RTD发送的路由就会选择下面的RTC,而不选择上面的RTB。
路由开销特点
:
- 路由的开销是多少,那么到MED里面就会是多少。
- 在本AS设置MED那就只能在本AS里面传递,如果是在相邻设置的就只能在相邻传递。
- 越小越优选
Comunity
NO-advertise
:在路由上面设置不会传递给任意一个路由
NO-export
:在路由上面设置不会传递给EBGP邻居,可以传递给IBGP
BGP 选路原则
Preference
- 缺省的Pre的值为1,可以基于本地来更改将RTC到RTA的PRE改成100,那RTA就会选择下面的RTC的路由
- PRE只能在入方向做。不可以在出方向做。
LoCal:
手动>自动>net>import: 自身的大于从邻居学习到的
AS_Path
AS_Path属性只可以增加,不可以减少。
AS_Path增加是通过路由策略来改变的
路由起源:IGP>EGP
MED值
当路由访问的时候从AR6走到AR7,因为AR6的MED小。
没有改开销
:
去往5的下一条的开销改为改大,就不会选择开销大的了
:
优选ip地址小的
当两个路由器之间有两条线路,路由过来的时候会选择接口ip地址小的。其他的都一样。
BGP路由聚合
路由的汇总方式
静态汇总
:
Null的功能是为了防止路由环路。
自动聚合
,只对import的路由进行聚合
手动聚合可以聚合network和import两种
:
聚合带来的风险
:环路
做AS_Set属性,他会继承不同AS的属性
Community自在本地有效,不会传递,需要传递时需要通告
可以通过community值来控制路由的传递范围。