BGP
BGP邻居路由传递
文章目录
1 .BGP的路由不优不会传递----避免无效路由浪费系统资源
-
IBGP路由器不能中转路由(存在水平分割)----因为BGP重点不在AS内,没有为AS内路由传递设置
防环原则只能使用最保守的做法来防环。 -
IBGP邻居之间传递路由不会改变下一跳 -----防环同上,当初设计的时候考虑的是借助IGP重发布来
解决。
其中2,3条原则会带来问题
第二条带来的问题:bgp邻居要做全互联,全互联会导致BGP的邻居数量暴增,占用过多CPU、内存与
带宽资源
解决方案:反射器(反射器本身需要设置防环措施)
第三条带来的问题:会造成EBGP传递过来的路由因为下一跳不可达不优,通过设置next-hop-local在AS
边界设备 路由器上来解决。
BGP属性
1.orgin 起源属性
-------------表示bgp路由的来源
-
“ i ” 在bgp中宣告的路由,network (可把路由表中任何路由宣告进bgp)
-
“ ?” 表示从外部重发步进来的路由,import
-
“ E” 从EBGP重发步进来的,但EGP淘汰了
选路优先级 **i > E > ?**
2.as-path 路径属性
-----表示路由经过的as路径
-
查看路由经过的as路径的顺序(左边是最近经过的AS号)
-
防环 bgp不接收携带有自己AS号的路由 即用来防止AS之间路由环路
-
选路,bgp会选择 as-path 短的路由为优
命令: as-override可以把路由中对方邻居的as号改成自己的as号,从而使得对方接受含有自己AS号的路由 allowas-in 可以把对方路由中含有对方自己的AS号路由过滤掉,从而接受对方含有自己AS号的路由 fake-as 可以修改自己通告出去的AS号
3.next-hop 下一条属性
-------------表示路由的下一跳
1.ebgp邻居在传递路由时会修改该属性为自己的更新源地址
2.ibgp邻居在传递时不会修改该属性,但可使用next-hop-local来修改该属性为自己的更新源地址
3.本地路由吓一下是127.0.0.1
4 . local-preference 本地优先级
--------该属性用于选路,优选本地优先级大的路由
用法:用于本地AS去往其他AS的出口路由器上,强调的是该属性是本AS的路由器去影响本AS内的IBGP路由器,该属性侧重影响内部AS的选路
案例1:
AS100去往AS200选择RTC
做法:调整RTC的默认本地优先级为100(默认值)以上,那么从RTC
通告出去给本地AS的路由优先级都会设置为100以上这个值。
修改本地优先级:
[RTC-bgp]default local-preference 200
案例2:
AS100 去4.4.4.4选RTC,去5.5.5.5走RTB
注:该属性在EBGP之间不能传递,所以不能在RTD上使用上述route-policy调用在EBGP邻居的export方向。
但是在RTC上可以用于IBGP的import方向(RTC – > RTA )
RTC:使用router-polic在c上抓取4.4.4.4 和5.5.5.5 的流量,修改本地优先级
ip ip-prefix 4 permit 4.4.4.4 32
ip ip-prefix 5 permit 5.5.5.5 32
route-policy loc permit node 10 ----创建名为loc的路由策略,大动作为允许,序号为10
if-match ip-prefix 4 ----匹配ip-prefix 4
apply local-preference 200 ---- 修改本地优先级为200
#
route-policy loc permit node 20 ----创建名为loc的路由策略,大动作为允许,序号为20
if-match ip-prefix 5 ----匹配ip-prefix 5
apply local-preference 99 ---- 修改本地优先级为99
#
route-policy loc permit node 30 ----其他允许所有
bgp 100
peer 10.1.34.2 route-policy loc import ---在对RTA是使用route-policy 的import方向
5.MED 用于选路的属性
-----------但是和local-preference不一样的是该属性更像是开销值,用于影响对方AS到本地AS的选路。该属性适合对EBGP邻居施加选路影响(local-preference做不到)。
注意,该属性默认只能用于俩个AS之间的选路,也就是说如下图默认MED不适用