ospf和bgp协议知识详解

Ospf和Bgp协议

OSPF 开放式最短路径优先

概述

OSPF     适用于大规模的网络  

  -公有标准   

  -分层设计 :   骨干区域  和非骨干区域  

                         进程号范围:1-65535

                         区域号范围:0-4294967295

  -网络层  ,  协议号  89     

  -内部路由优先级   10       外部路由优先级 150

  -224.0.0.5   组播地址  ,代表的是所有运行OSPF的路由器

  -224.0.0.6     代表的是 DR、BDR  路由器  

  -ospf  版本2  (IPV4 )   ;   OSPF 版本3  (IPv6)

动态路由协议的类型

内部网关协议:在同一公司内部运行的路由协议,如 RIP、ISIS、OSPF

外部网关协议:在不同公司之间运行的路由协议,如 BGP

OSPF工作原理

   建立OSPF邻居表、同步OSPF数据库、计算OSPF路由表     

-建立邻居表:  hello 报文    ;    

 状态机制:     down        init      2-way  

-同步数据库:   dd     lsr    LSU   LSACK    报文      

   状态机制:    exstart     exchange     loading     full

   DOWN:      邻居之间彼此不认识

    init:     收到 的邻居信息里 ,没有自己的信息   

2-way:     邻居之间彼此都知道对方的名字了 ,  可以通信了

    exstart:   确定 主从关系:通过对比第一个DD报文里的OSPF路由器的标识,标识大作为主动路由器  

    exchange: 通过  DD 报文  ,传递 数据库的摘要信息    

    loading:  加载 、更新状态    

    full:     完美状态 :   数据库完全同步状态  

-计算路由表:以自己为中心,通过SPF 算法 计算到达目标网段的最优路由-放到IP路由表

其他通过OSPF 学习的路由放在 OSPF 路由表

Ospf报文类型

OSPF 单区域配置  :  

  1、启动OSPF 进程  

  2、进入区域 0

  3、宣告参与OSPF 计算的接口网段   

配置命令

设备上配置OSPF协议:[R1]display  ospf brief  //查看OSPF信息     

查看邻居的信息:[R1]display  ospf peer //查看邻居的RID、状态full     

查看邻居的简要信息 :[R1]dis ospf peer  brief   

查看与对端邻居相连的接口信息:[R1]dis ospf interface g0/0/1

OSPF影响建立邻居关系的因素

1, IP地址不在一网段,不能互通

2, 使用策略进行访问控制

抓包分析:影响邻居关系建立的因素

1、从OSPF 头部分析 :     

1)  rid  路由器标识 :  两端RID 不相同

2)    区域 必须相同  

3) 认证类型、密码登 必须相同  

hello报文—影响邻居关系建立的因素(默认在以太网广播网络环境下)

4)  网络掩码  要相同

5)  hello  时间 要相同

6) dead 时间 要相同

7)  特殊标记位  要相同  

8)  路由优先级 不能同时为0  

2、两端网络类型不同也会影响

四种网络类型:   

广播型网络 :  BMA

点到点网络 :  P2P

非广播多路访问网络 :  NBMA

点到多点网络: P2MP

OSPF 多区域配置

本质和单区域配置差不多

骨干路由器

非骨干路由器

ABR  区域边界路由器

ASBR  自治系统边界路由器  

特殊区域

LSA链路状态通告信息

1类:所有ospf路由器,用来单区域用来通告路由器接口信息

2类:DR产生,用来选出DR和BDR

3类:ABR产生,用来跨区域传播网段ospf信息

4类:ABR(ASBR所在网段的ABR产生),用来让其他网段知道ASBR的位置

5.类:ASBR产生,用来引入外部路由

7类:由5类变成的,用来通过特殊区域

末梢区域STUB :

   从路由角度 ,存在其他区域的路由,但是不存在外部的路由 , 减少了外部路由的影响,但是ABR 上会产生一条默认路由,实现可以访问外网   

从数据库角度,不接受 5类LSA ,同时不接受4类LSA  ,只接受 1/2/3 LSA

完全STUB 区域:   

不接收外部路由 ,同时也不接收其他区域的路由 , 但是ABR 上会产生一条去往其他区域的默认路由

不接收 4/5类 LSA  , 同时也不接收其他区域的3类LSA  ,但是会接受 1/2 类 以及 ABR  产生的一条默认的3类LSA   

NSSA 区域

不接受 其他区域ASBR 产生的外部路由 ,接收自己区域ASBR产生的外部路由

不接收其他区域ASBR 产生的 5类LSA  和ABR 产生的4类LSA  ,接收 1/2/3 和 自己区域ASBR产生的7类LSA。 ASBR 产生一条去往外部的网段的7类LSA 同时 ABR 上会生成一条去往其他区域的默认7类LSA ,实现7转5 的 操作 .

完全NSSA 区域 

  不接受 其他区域ASBR 产生的外部路由 和 ABR 产生的其他区域的路由,接收自己区域ASBR产生的外部路由

  不接收其他区域ASBR 产生的 5类LSA  和ABR 产生的4类LSA 、ABR产生3类LSA ,接收 1/2和 自己区域ASBR产生的7类LSA。ASBR 产生一条去往外部的网段的7类LSA 同时 ABR 上会生成一条去往其他区域的默认7类LSA ,实现7转5 的 操作 . ABR 上会产生一条3类默认LSA  。

公司之间动态路由协议——BGP

BGP工作原理:

建立邻居关系

同步数据库

计算路由表  (不自己计算,负责传输)

BGP 邻居发现:先启动的BGP 的设备,向邻居发起TCP链接,本端使用随机端口向目标端口号 179 建立连接  

BGP 邻居关系类型:-使用 AS 区分

不同AS之间建立的 邻居关系  -外部的BGP 邻居关系 ,即 EBGP

相同AS 内部建立的邻居关系  -内部的 BGP 邻居关系  ,即 IBGP

BGP 状态机制 :

idle      active    connect    opensent      opencomfirm     established

BGP邻居关系建立涉及到的报文

open 报文                  建立邻居关系

keep alive  报文        保持邻居关系  (60秒)(三倍结束)

update 报文              更新报文   

notification               发送错误报告信息  

route-refresh            路由重更新报文

BGP 通告路由 原则 :

BGP通告原则之一 : 仅将自己最优的路由发布给邻居

BGP通告原则之二 : 通过EBGP获得的最优路由发布给所有BGP邻居

BGP通告原则之三 : 通过IBGP获得的最优路由不会发布给其他IBGP邻居(AS内部防环—水平分割)

因为BGP 路由通告要遵循通告原则三导致AS内部无法互通,所以全互联解决无法互通的限制—水平分割

BGP通告原则之四: BGP与IGP同步

按照 BGP 邻居关系 传递路由 到 目标邻居设备,当 传递BGP路由给邻居时 ,发现 IGP 和BGP 路由不同步,就不会继续向邻居传递路由,但是由于华为把同步功能关闭了 ,所以即使 IGP和BGP 路由不同步 ,也会传递BGP 路由 ,但是回程数据不能传递。

在同步功能关闭情况下

第一种解决数据传递方案:将IGP和BGP互相引入,但由于BGP路由量比较大 , AS 内部设备性能又低下,容易被BGP路由灌死, 即使能用策略控制,也不建议使用这种方法。

第二种解决方案 : 使BGP 路由完全由 BGP 协议传递 ,也就是AS 内部设备通过 IGP 协议建立TCP 连接, 每个设备都配置BGP ,并且建立BGP 邻居关系 但是 在AS 内部 部署BGP 要遵循通告原则 三 (水平分割 —IBGP )

全互联:邻居数量多,减少邻居关系数量—解决方案

1.联盟

联盟:将大的AS,变成多个小的子AS(私有AS号),这样子AS之间相连的邻居关系就变少了,减少了邻居关系   

   

具体配置

R1

[R1]bgp 100

[R1-bgp]router-id 1.1.1.1

[R1-bgp]peer 192.168.12.2 as-number 200

[R1-bgp]network 10.10.1.1 32

R2

[R2]bgp 64512  //进入子AS  —相当于部落

[R2-bgp]router-id 2.2.2.2  //  配置RID

[R2-bgp]confederation id 200   //声明子AS  所属的 联盟  即 公有AS

[R2-bgp]peer 192.168.12.1 as-number 100   //建立EBGP 邻居关系

[R2-bgp]peer 10.10.3.3 as-number 64512   //在子AS内部建立 IBGP邻居关系

[R2-bgp]peer 10.10.3.3 connect-interface LoopBack 0   //指定与对端建立邻居的本地更新源为逻辑接口

[R2-bgp]peer  10.10.3.3 next-hop-local  //  与对端建立邻居的下一跳更改为本地出接口地址

[R2-bgp]peer 10.10.4.4 as-number 64512

[R2-bgp]peer 10.10.4.4 connect-interface LoopBack 0

[R2-bgp]peer 10.10.4.4 next-hop-local

R3

[R3]bgp 64512

[R3-bgp]router-id 3.3.3.3

[R3-bgp]confederation id 200

[R3-bgp]peer 10.10.2.2 as-number 64512

[R3-bgp]peer 10.10.2.2 connect-interface LoopBack 0

[R3-bgp]peer 10.10.4.4 as-number 64512

[R3-bgp]peer 10.10.4.4 connect-interface LoopBack 0

R4

[R4]bgp 64512  //进入子AS  —相当于部落

[R4-bgp]router-id 4.4.4.4 //  配置RID

[R4-bgp]confederation id 200  //声明子AS  所属的 联盟  即 公有AS

[R4-bgp]confederation peer-as 64513  //  声明  子AS 之间的 邻居关系

[R4-bgp]peer 192.168.45.5 as-number 64513   // 子AS 之间 使用物理接口建立 内部 的 EBGP 邻居关

[R4-bgp]peer 10.10.2.2 as-number 64512   

[R4-bgp]peer  10.10.2.2 connect-interface LoopBack 0

[R4-bgp]peer 10.10.3.3 as-number 64512

[R4-bgp]peer 10.10.3.3 connect-interface LoopBack 0

R5

[R5]bgp  64513  //进入子AS  —相当于部落

[R5-bgp]router-id 5.5.5.5 //  配置RID

[R5-bgp]confederation id 200  //声明子AS  所属的 联盟  即 公有AS

[R5-bgp]confederation peer-as 64512  //  声明  子AS 之间的 邻居关系

[R5-bgp]peer 192.168.45.4 as-number 64512  // 子AS 之间 使用物理接口建立 内部 的 EBGP 邻居关

[R5-bgp]peer 10.10.6.6 as-number 64513

[R5-bgp]peer 10.10.6.6 connect-interface LoopBack 0

R6

[R6]bgp 64513

[R6-bgp]router-id 6.6.6.6

[R6-bgp]confederation id 200

[R6-bgp]peer 10.10.5.5 as-number 64513

[R6-bgp]peer 10.10.5.5 connect-interface LoopBack 0

[R6-bgp]peer 10.10.5.5 next-hop-local

[R6-bgp]peer  192.168.67.7 as-number 700

R7

[R7]bgp  700

[R7-bgp]router-id 7.7.7.7

[R7-bgp]peer 192.168.67.6 as-number 200

[R7-bgp]import-route direct    //  将 直连路由注入 BGP 路由表

  1. 路由反射器: 

RR路由反射器      客户端      非客户端

路由反射器通俗来说就是不需要配置全互联,选出一个RR在其bgp中指定出客户端就可以实现反射路由

只有非非不反射

具体配置举例

[R2-bgp]undo  peer 10.10.4.4   //删除全互联

[R4-bgp]undo  peer 10.10.2.2

[R3]bgp  64512

[R3-bgp]peer 10.10.2.2 reflect-client   //指定对端设备是自己的反射器的客户端

[R3-bgp]peer 10.10.4.4 reflect-client

BGP  丰富的 属性

BGP  选路规则   

BGP路由器将路由通告给邻居后,每个BGP邻居都会进行路由优选,路由选择有三种情况:

该路由是到达目的地的唯一路由,直接优选。

对到达同一目的地的多条路由,优选优先级最高的。

对到达同一目的地且具有相同优先级的多条路由,必须用更细的原则去选择一条最优的。

具体:

丢弃下一跳不可达的路由。

优选Preference_Value值最高的路由(私有属性,仅本地有效)。

优选本地优先级(Local_Preference)最高的路由。

优选手动聚合>自动聚合>network>import>从对等体学到的。

优选AS_Path短的路由。

起源类型IGP>EGP>Incomplete。

对于来自同一AS的路由,优选MED值小的。

优选从EBGP学来的路由(EBGP>IBGP)。

优选AS内部IGP的Metric最小的路由。

优选Cluster_List最短的路由。

优选Orginator_ID最小的路由。

优选Router_ID最小的路由器发布的路由。

优选具有较小IP地址的邻居学来的路由。

  • 20
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值