OSPF:现实情况中99%的网络运行的是这种路由协议

OSPF有三张表:邻居表,链路状态数据库(LSDB),路由表 SPF算法

OSPF架构为花瓣形(不同area组成花瓣)就是为了防环,因为骨干区域运行的是贝尔曼福特算法,容易产生环路,设计成星型就不怕形成环路了(物理上打破的环路)。

单个区域内运行的是SPF算法(形成一个树状结构)来打破环路。

OSPF和RIP同时支持触发更新和周期更新,RIP30s发送一次,OSPF30min发送一次。EIGRP只支持触发更新。

OSPF的5种数据包
1.hello
2.Database Description DBD
3.Link-State Request LSR
4.Link-State Update LSU
5.Link-State Acknowledgment LSAck

OSPF接口状态:
1:down 初始状态,接口被宣告进OSPF,没有发送任何报文
2:init 通过接口发送一份Hello
3:two-way 通过接口收到了一份Neighbor字段包含自身RID的Hello
4:exstart 交互3个不带LSA报头的DBD选择Master/Slave
5:exchange 由Master发起的带有LSA报头的DBD信息交互
6:loading 交互LSR LSU以及LSAck实现LSDB的同步
7:full 一旦LSDB同步,邻接关系到达Full

在MA网段建立OSPF邻接关系时DR和BDR的选举原则
1:参与该MA网段的路由器接口的OSPF优先级,越高越好(0-255)
2:该MA网段所连接的路由器的RID,越高越好

OSPF MA网段接口的OSPF优先级如果值为0,代表的不是优先级的最小值,而是该接口没有资格在这个网段参选DR和BDR,只能成为DRother.

1:DR和BDR都无法被抢占
2:DR挂了BDR会立即抢占成为新的DR,而新的BDR通过在DRother中重新选举得出
3: DR和BDR都是路由器的接口接口的概念,每个网段的DR和BDR都是通过相同的机制单独选举的.
4:在以太网环境建议拥有DR和BDR实现备份,而在FR环境中,只能是HUB节点成为DR,任何Spoke节点都不能成为DR或BDR.
5:如果一个MA网段没有DR和BDR,没有任何邻接关系存在也不会有任何LSA的传递

一台运行OSPF的路由器,只要在一个接口开启了OSPF进程,则该接口会立即监听发往224.0.0.5的组播组流量,而仅当一个节点成为DR或BDR时,该接口才会同时监听发往224.0.0.5和224.0.0.6的组播组流量

在一个MA网段内,所有路由器发送给DR和BDR的报文的目的地址都是.6而DR将LSA整合之后以.5的地址发送给网段内所有其他的路由器。

OSPF常见的几种LSA:
1.Router LSA
传播范围:只能在一个Area内传递,不能穿越ABR
通告者:每台属于一个区域的路由器都会基于该区域通告一条1类LSA
包含内容:拓扑信息,其中描述该路由器所有宣告进该区域的链路的前缀,掩码,网络类型以及度量值
link-ID(该路由器所通告的LSA的唯一标示符):通告该路由器的RID
ADV Router(通告者路由器):通告该LSA的路由器的RID

2.Network LSA
传播范围:同一类
通告者:MA网段中的DR
包含内容:纯拓扑信息,包含了该MA网段直连的所有路由器的RID信息,该MA网段的掩码
Link-ID:该MA网段DR接口的IP地址
ADV Router:该DR的RID

3.Summary Network LSA
传播范围:除了该区域外的整个OSPF路由选择域
通告者:ABR
包含内容:一条3类LSA包含一条OSPF域间路由,O IA
Link-ID:3类LSA路由的前缀
ADV Router:ABR的RID。3类LSA在OSPF路由选择域内传递的时候为了保证可达性,每跨越一个ABR都会自动改写为该ABR的RID。

4.Summary ASB LSA
传递范围:除了ASBR所在区域之外的整个路由选择域
通告者:和ASBR在同一个区域的ABR路由器
包含内容:纯拓扑信息,描述了ASBR所在位置
link-ID:ASBR的RID
ADV Router:通告者ABR的RID,并且该值每跨越一个ABR都会自动改变,同3类LSA

5.External LSA
传递范围:整个OSPF路由选择域
通告者:ASBR
包含内容:纯路由信息,一条OSPF域外路由对应一条5类LSA
link-ID:域外路由的路由前缀
ADV Router:ASBR的RID.该LSA在OSPF域内传递的时候,ADV Router不会发生任何改变

Seed Metric:种子度量值,对于OSPF而言如果将BGP路由重分发进入,则Seed Metric默认为1,所有其他外部路由缺省Seed Metric是20

域间汇总:需要在ABR上部署,实现对3类LSA的汇总传递

域外汇总:需要在ASBR上部署,实现对5类LSA的汇总传递

RIP和EIGRP的汇总都是链路级别(在接口模式下),OSPF汇总是在进程级别(在router ospf 下)。

OSPF手工域间汇总(在ABR上做)命令(OSPF没有自动汇总):area X rang X.X.X.X X.X.X.X.
OSPF手工AS之间汇总(在ASBR上做):summary-address 路由前缀

Stub区域:如果将一个OSPF区域部署为Stub,该区域的ABR会将入区域方向的4、5类LSA同时过滤,同时该ABR会主动向区域内部发送一个O IA的0.0.0.0/0的3类缺省路由,Seed Metric为1

Totally Stub区域:在Stub区域的基础之上ABR路由会同时将3、4、5类入向传递的LSA过滤掉,同时会主动向该区域注入一条0.0.0.0/0 O IA的缺省路由,Seed Metric缺省也为1

NSSA区域:在NSSA区域内可以拥有ASBR,并且重分发进入OSPF的路由是以7类LSA形式存在,该类型的LSA只能存在于NSSA区域内,并且该区域所有ABR会通过比较RID选举出一个转换器(最大的RID者),该转换器会将内部传递给外部的NSSA LSA转换成5类LSA并且通告给其他区域,所有该区域内的ABR都会过滤从外部进入该区域的4、5类LSA。但是该区域的任何ABR都不会主动向内部下放缺省路由。为
了实现内部路由器的外网可达性,需要在该区域ABR上手工放下缺省路由,O*N2 0.0.0.0/0 Seed Metric=1

Totally NSSA区域:基于NSSA区域的概念基础,ABR会主动阻止3、4、5类LSA进入该区域,并且ABR会主动向区域内下放O*IA 0.0.0.0/0 Seed Metric = 1的缺省路由

一台路由器只要可以产生5类LSA,则该路由器就是ASBR。

加表优先级:O> O IA >O E1/E2 = O N1/N2

没有连接到骨干区域的区域(1.远离骨干区域的非骨干区域。2.被分割的Area0.)补救办法:
1:在出现问题的ABR上(没有和Area 0直连的ABR上),使用双OSPF进程,并且执行单点双向重分发。
2:在出现问题的ABR上建立一个Tunnel链路连接到离其最近的Area 0中的ABR路由器上。在这两台ABR上对Tunnel配置IP地址为同一个IP子网段,并且将其宣告进OSPF的区域0.
R1(config)#interface tunnel X(本地意义)
R1(config-if)#tunnel source X.X.X.X(环回地址)
R1(config-if)#tunnel destination X.X.X.X(环回地址)
到目前为止tunnel为2层逻辑链路,要想成为3层逻辑直连还得起一个同一网段的IP地址
R1(config-if)#ip address 1.1.1.1 255.255.255.0
R3(config-if)#ip address 1.1.1.3 255.255.255.0
然后再把1.1.1.0网段宣告进OSPF的0区域
3:使用Virtual-Link在出问题的ABR以及离他最近的Area 0中的ABR上部署(两台路由器之间必须要能彼此收到对方的1类LSA)
R1(config-router)#area X virtual-link 对方的RID
R3(config-router)#area X virtual-link 对方的RID

OSPF的认证:
R4(config-if)#ip ospf authentication-key cisco
R4 (config-if)#ip ospf authentication
这组命令启用了链路级明文认证。

R3(config-if)#ip ospf message-digest-key 13 md5 cisco
R3(config-if)#ip ospf authentication message-digest
这组命令启用了链路级密文认证。

R2(config-if)#ip ospf authentication-key cisco
R2(config-router)#area 0 authentication
这组命令启用了区域级明文认证。

R2(config-if)#ip ospf message-digest-key 12 md5 cisco
R2(config-router)#area 0 authentication message-digest
这组命令启用了区域级密文认证。

R3(config-router)#area 2 virtual-link 91.1.1.1 authentication-key cisco
R3(config-router)#area 2 virtual-link 91.1.1.1 authentication
这组命令启用了VL的明文认证(只有在VL初始化建立连接关系的时候生效)

R3(config-router)#area 2 virtual-link 91.3.3.3 message-digest-key 1 md5 cisco
R3(config-router)#area 2 virtual-link 91.3.3.3 authentication message-digest
这组命令启用了VL的密文认证(同明文认证用途)

OSPF网络类型:
1:Loopback Loopback 无论接口掩码多少,都以/32主机路由通告
2:Point-To-Point Serial/ISDN BRI/FR point2point SubIf 支持组播,没有DR
3:Broadcast Ethernet 支持组播,有DR
4:NBMA FR主接口/FR多点子接口 不支持组播,有DR
5:Point-To-Multipoint 支持组播,无DR,自动生成关于直连邻居接口的/32的主机路由
6:Point-To-Multipoint Non-Broadcast 不支持组播,无DR,自动生成关于直连邻居接口的/32的主机路由

在FR环境中部署OSPF
1:网络类型使用NBMA。
为了建立邻居需要在Hub节点手工指Neighbor
为了保证路由哦传递没问题,需要手工修改接口的OSPF优先级,保证Hub成为DR,Spoke什么都不是
为了保证Spoke节点所连接的下游网段内的PC可以互访,需要在Spoke节点彼此指手工FR映射。

2:网络类型使用Broadcast
由于支持组播发送,因此不需要手工指Neighbor(FR Map开启伪广播功能)
需要修改接口OSPF优先级改变DR的位置。
需要手工配置FR的映射实现Spoke节点的彼此访问。

3:网络类型使用P2MP Non-Broadcast
需要手工指Neighbor建邻居
不需要手工修改接口OSPF优先级,因为没有DR/BDR
不需要手工帧中继映射,因为/32的主机路由。

4:网络类型使用P2MP
不需要手工Neighbor
不需要修改优先级
不需要手工映射

最新文章

  1. 重写ValidateEntity虚方法实现可控的上下文验证和自定义验证
  2. chorme浏览器调试Android设备
  3. python 新旧类的问题
  4. The source attachment does not contain the source for the file  ActionSupport.class 错误
  5. git和svn
  6. 自定义评分器Similarity,提高搜索体验(转)
  7. SQL: See the TSQL underneath the sp_execute calls
  8. 【BZOJ】2002: [Hnoi2010]Bounce 弹飞绵羊(lct)
  9. 终端I/O之stty命令
  10. js格式化日期,获取当月的第一天,与最后一天.
  11. 自定义控件:抽屉SlidingDrawer——wrap_content非全屏
  12. java.lang.NoClassDefFoundError的原因及解决
  13. ural1519插头DP
  14. UVA Graph Coloring
  15. CSS的常用属性
  16. MySQL中的查询子句
  17. ldap配置系列一:ldap的安装
  18. 第一章:OEL6.8之虚拟机安装
  19. git 工作区管理
  20. MySQL 错误集-汇总

热门文章

  1. CentOS7:ifconfig command not found解决
  2. openstack之cinder_backup对接ceph存储
  3. Unity3D中播放视频的方法
  4. uasrt配置
  5. 深入理解SpringCloud与微服务构建学习总结
  6. visual2017专业版MFC编程环境搭建及第一个MFC程序的创建
  7. Apollo配置管理系统使用
  8. 找出数组中求和等于y的所有子数组
  9. Linux和Windows下tomcat开机自启动设置
  10. jquery中$().each() 和$.each()