CCNP第九天 ----BGPⅢ


选路原则


BGP 的选路规则:

选路的前提是路由必须是优的;
bgp表的不优情况:

  • bgp路由表中路由的下一跳不可达(递归失败)
  • 如果开启离了bgp同步,在没有同步的情况下bgp的路由不优(默认关闭的)r标记的路由,标识在路由表中不优。

同步问题——早先为了解决BGP非直连建邻下的路由黑洞问题(将IGP重发布进BGP);检查BGP的路由有没有在IGP中,方法是调用路由表查看IGP中是否有BGP的路由条目;该限制可以关闭,IOS版本12.2以上默认关闭;

标示可用,当被r取代时,表示在路由表中不优,不加表,管理距离有劣势;
在这里插入图片描述
1、首先比较 weight 大优–不传递,Cisco 私有,默认 32768 EBGP/IBGP
2、local-pre 比较本地优先级,默认 100;仅 IBGP 邻居传递,大优 IBGP 优选
3、next-hop 本地下一跳
4、AS-path 比较 as-pash,经过的 AS 数量少优,EBGP 邻居可增添 EBGP/IBGP
5、Origin 起源码最小 i-igp=0 e-egp=1?=2 EBGP/IBGP
6、 MED值最小,影响对方选路,作用于两个 AS 之间 EBGP/IBGP
7、普通的 EBGP邻居优于联邦内 EBGP 邻居优于 IBGP 邻居 20>200
8、 优选最近的 IGP 邻居(IGP 度量小)
9、最先建邻的EBGP——判断最老的EBGP邻居
10、最小 BGP 邻居的 RID
11、最小建邻地址的邻居;-----优选最小的 RRlist 列表(cluster-list 簇 ID) 最小的 IP 地址

若开启了 maximun-path[ibgp]n ,若存在多条等价路径,会进行负载均衡 优选最先建立 EBGP邻居— bgp默认负载均衡条目数是1,也就意味着它没有负载均衡;我们可以修改max-path参数来改变负载均衡条目数,一旦修改的值大于1,那么选路原则只会工作到第8条。

注:一个路由器选路weight,多个路由器多个出口路径用local-pre;影响对方选路用med。影响多个AS选路用AS-path。

例题:
在这里插入图片描述判断每个路由器自然选路,每一个选路原则只能使用一次;所有路由器环回按照数字排列:
1、AS1——2 ,走路由器2;
自然选路:7,
选路原则:修改2优先级变大,——local-pre
2、AS2——1;走路由器3;
自然选路:7
选路原则:先修改3的weight,再修改4的,——weight
3、AS1——3,走路由器6;
自然选路:最先建邻的EBGP;
选路原则:给5的路由添加AS——aspath(不能将原本劣路径改优,否则会破坏原本自然选路)
4、AS2——3,走路由器5;
自然选路:最先建邻的EBGP;
选路原则:修改从6学习到的路由的origin——起源(使用时慎重)
5、AS3——2,走路由器6;
自然选路:7/9
选路原则:在4上修改邻居路由器5的MED加大——MED
6、AS3——1,走路由器5
自然选路:7/9
选路原则:在路由器6上修改下一跳;——next-hop


联盟(联邦)


  • 把一个大的AS拆分为若干个小的AS,小AS使用私有AS号(64512-65535),不对外公开;使小AS之间出现类EBGP邻居关系,从而打破了IBGP的水平分割,使邻居间路由条目可以实现中转。
    本质:是减少建立邻居个数的一种措施,和反射器一样,同时方便管理,思路和OSPF一样;

  • 联盟之间的邻居传递路由需要携带AS-path,用于防止大AS内联盟之间的环路,该AS-path用【】括起来,在传出大AS时,去掉该值。

  • 联盟内路由器只要有EBGP邻居关系(内外部均需要,对内还要声明小as),都需要声明大as号。

     注:所有没有声明的属性,在联盟内均可传递,除团体属性中的local-as;
    
  • 配置:
    R1(config)#router bgp 65100
    R1(config-router)#router-id 1.1.1.1
    R1(config-router)#neighbor 2.2.2.2 remote-as 65101 //声明邻居的建邻IP地址及所在的小AS号
    R1(config-router)#neighbor 2.2.2.2 update-source lo 0 //修改更新源的IP地址
    R1(config-router)#bgp confederation identifier 1 //对外声明自己所在的大AS号,联盟内所有路由器均要配置
    R1(config-router)#bgp confederation peers 65101 //联盟之间互指对方小AS号,仅存在EBGP邻居的路由器配置

注:正常情况下,路由条目在穿越AS之间传递时,自身属性会发生变化,但在小AS之间传递时,没有声明的属性,均可传递,除团体属性中的loacl_as;

**

过滤

**
bgp路由传递的流程 bgp路由表—发送策略–发送路由表—接收策略–接收路由表—bgp路由表

1、针对邻居的过滤—前缀列表
r1(config)#ip prefix-list a permit 1.1.1.0/24 抓流量
r1(config-router)#neighbor 2.2.2.2 prefix-list a ?
in Filter incoming updates
out Filter outgoing updates
2、针对BGP路由表—分发列表
r1(config)#ip prefix-list a permit 1.1.1.0/24 抓流量
r1(config-router)#distribute-list prefix a ?
gateway Filtering incoming updates based on gateway
in Filter incoming routing updates
out Filter outgoing routing updates

3、重发布–route-map


默认路由


1、针对单个邻居的默认路由

2、针对所有邻居的默认路由(全局)–全局路由表必须有默认路由

• 起源属性为i
R1(config)#router bgp 1
R1(config-router)#default-information originate
R1(config-router)#network 0.0.0.0
• 起源属性为?
R2(config)#router bgp 1
R2(config-router)#default-information originate
R2(config-router)#redistribute static

BGP后门路由:
启用: 将该EBGP邻居学习到的路由AD值修改为200.
在这里插入图片描述R1(config)#router bgp 1
R1(config-router)#network 2.2.2.0 mask 255.255.255.0 backdoor //使用该命令可以将该条路由的管理距离提高
As-path ACL——基于正则表达式
r1(config)#ip as-path access-list 1 permit 2 //抓as-path列表,其中2表示AS号
r1(config)#route-map as deny 10
r1(config-route-map)#match as-path 1
r1(config)#route-map as permit 20
r1(config)#router bgp 64512
r1(config-router)#neighbor 2.2.2.2 route-map as in


浮动惩罚


BGP的路由惩罚:
目的:抑制路由摆动,被惩罚的路由不能参与选路,不能传递, 惩罚是针对该路由的某条路径,而不是针对路由条目。
惩罚值: 路由每翻滚一次,惩罚值增加1000,路由属性每改变 一次,惩罚值增加500
惩罚门限:开始进行惩罚的惩罚值,默认2000
重用门限:当惩罚值降低到该值恢复路由,默认750
半衰期:经过一个半衰期,惩罚值减半,默认15分钟
最大惩罚时间:最大惩罚路由时间,默认60分钟
最大惩罚值:重用门限*2^(最大惩罚时间/半衰期),默认 12000.
在这里插入图片描述
启用BGP 的路由惩罚:
在这里插入图片描述

查看惩罚的路由:
在这里插入图片描述
查看惩罚路由的翻滚次数:
在这里插入图片描述
查看路由惩罚参数的默认值:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值