BGP 路由协议详解-3

BGP 选路原则

  1. 如果此路由的下一跳不可达,忽略此路有(13条选路规则的前提)


  2. Preferred-Value 值越大越优先
    等于思科的 Weight 值


  3. Local-Preference 值最高的路由优先


  4. 聚合路由优于非聚合路由,本地手动聚合的路由优于本地自动聚合的路由


  5. 本地通过 Network 命令引入的路由优先级高于 Import-Route 命令引入的路由


  6. AS路径的长度最短的优先


  7. 比较 Origin 属性,IGP优于EGP,EGP优于Incomlete
    i>e>? //EGP基本见不到了,除非使用策略进行修改 apple origin xx


  8. 选择MED值小的路由


  9. EBGP优于IBGP路由


  10. BGP优先选择到BGP下一跳的IGP度量值最低的路径
    当以上全部相同,则为等价路由,可以负载分担(注:AS_Path必须一致,当负载分担时,以下路由原则无效)


  11. 比较 Cluster-List 长度,短者优先**(路由反射器)**


  12. 比较 Originator ID(如果没有 Originator ID,则用Router ID 比较)选择数值较小的路径**(路由反射器)**


  13. 比较对等体的 IP 地址,选择 IP 地址数值最小的路径




BGP 配置


基础命令


IBGP

bgp 100 //启动BGP进程
router-id x.x.x.x //指定BGP设备的 RID
peer x.x.x.x as-number 100 //手动指定邻居,并标识对端 AS 号,一般指定的是对端的RID
peer x.x.x.x next-hop-local //指定下一跳为自己,手动更新IBGP邻居下一跳,不然就会出现有路由不可达的状况
peer x.x.x.x connect-interface loop 0 //指定更新源,默认是直连接口
network x.x.x.x x //发布创建BGP路由,前提是必须在路由表中存在且和路由表一致

IBGP 默认跳数为 1

思科叫 next-hop-self


EBGP----逻辑端口

bgp 100 //启动BGP进程
router-id x.x.x.x //指定BGP设备的 RID
peer x.x.x.x as-number 200 //手动指定邻居,并标识对端 AS 号
peer x.x.x.x connect-interface loop 0 //指定更新源,默认是接口
peer x.x.x.x ebgp-max-hop //配置 EBGP 指定跳数,只有 EBGP 配置

EBGP----物理端口

bgp 100 //启动BGP进程
router-id x.x.x.x //指定BGP设备的 RID
peer x.x.x.x as-number 200 //手动指定邻居,并标识对端 AS 号

使用直连接口建立 EBGP 邻居,一条就够用


手动断开 BGP 邻居

bgp 100
peer x.x.x.x ignore //手动断 BGP 邻居

邻居组的配置

bgp 300
group xxx external ----//创建EBGP group组
peer 10.1.1.1 group xxx
peer 10.1.1.2 group xxx ----//对应邻居加入 group 组
peer xxx as-number 100 ----//针对组指定EBGP AS号


查询命令


dis bgp peer //查询 BGP 的邻居

dis bgp routing-table //查询 BGP 路由表

dis bgp routing-table x.x.x.x //里面可以看到路由的来源,也可以看到因为啥没有被优选

dis ip routing-table //查询 IP 路由表

dis ip routing-table protocol bgp //查询 IP 路由表中的 BGP 路由

dis cu con bgp //查询全局下 BGP 的配置


刷新命令

refresh bgp all import/export //刷新BGP邻居



BGP 下一跳问题

情况一

在这里插入图片描述

ICMP重定向、OSPF有FA地址

情况二

在这里插入图片描述

IGP使用OSPF建立,之后R1、R2为AS100,R3为AS300,R1与R2 R3建立邻居,R3与R1建立邻居

R3把100网段发给R1的时候,对于R1来讲下一跳是3.3.3.3,R2对于100网段下一跳是R1,此时R1需要指定R2 Next-hop-local

BGP 在给邻居传递路由时的下一跳 = 更新源

在 EBGP 间传递时会修改下一跳为自己的更新源

从 EBGP 学习到的路由在 IBGP 间传递时不会修改下一跳为自己的更新源,于是在 IBGP 邻居传递路由的时候会加上以下命令

peer x.x.x.x  next-hop-local  // 对邻居说下一跳走我

作者:DC
  • 15
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值