OSPF协议

网络 专栏收录该内容
26 篇文章 0 订阅

基本介绍

OSPF:Open Shortest Path First(最短路径优先)协议类型89

Cisco官方rfc文档:https://tools.ietf.org/html/rfc2328

SPF:根据LSDB生出树形算法区域内(无环)完全自己算路由(原料,灵活性强)

rip:完全别人告诉
eigrp:一部分别人告诉,一部分自己算
ospf:完全自己算,维护3张表,保证所有路由器的lsdb一样

OSPF度量值:10^8/最小带宽(单位bps,100M带宽的cost=1)
手动修改cost:config-if#ip ospf cost X (1-65535)
查看接口cost命令:#show ip ospf interface brief
查看带宽等参数信息:#show int br

OSPF维护3张表:邻居表,拓扑表(lsa信息),路由表

OSPF没有传输层,ip的上一层即ospf

passive接口不处理hello包,直接邻居关系down,pc不会发ospf报文,与pc连接的路由器passive,不影响另一接口路由转发

hello包发给:224.0.0.5
DR发给 The Other224.0.0.5
The Othe发给DR/BDR224.0.0.6

邻居间7种状态:

在这里插入图片描述
在这里插入图片描述

路由更新

当网络稳定后,路由器A会每1800s周期性更新左侧连接网段C的存活时间并增大校验和,且只有路由器A有资格更新

ospf无环保证

区域内:所有路由器LSDB内LSA的数量相同(LSACK确认机制)、路由存活时间最新(周期性更新路由age)
区域间:所有区域穿越骨干,相当于星形拓扑

OSPF会根据二层的协议来判断网络类型是什么(针对接口)
如果二层是PPP或者HDLC协议,OSPF就会认为该接口网络类型是P2P;
如果二层是EthernetⅡ协议,OSPF就会认为该接口网络类型是BMA;
如果二层是Frame relay协议,OSPF就会认为该接口网络类型是NBMA。

Loopback在OSPF中,环回接口的路由掩码会变为32位,可用命令修改为24位;
Config#int Loopback0
Config-if#ip ospf network point-to-point

常用命令

查看OSPF的哪些接口被宣告进:#show ip ospf interface brief
查看OSPF的数据库:#show ip ospf database //列出所有直连区域的LSA
查看OSPF的路由进程,以及哪些接口启用了被动接口:#show ip protocols
查看OSPF的邻居:#show ip ospf neighbor
清理进程重新选DR:# clear ip ospf process
删除进程:#no ip ospf 1
修改AD值(本地有效,不要轻易修改)distance 80
查看详细信息:#show ip ospf neighbor detail
从邻居收到的ospf计算出路由:show ip ospf route
查看进程号:show ip ospf
查看某个接口具体配置:show run int e0/0
看各类LSA:Show ip ospf database self(看自己)/network(2类)

DR/BDR选举原则

每个hello包在hello包中将自己标记为DR,在BMA网络当第一台路由器接口配置完ospf协议,发送hello包的同时启动计时器40s,所有属于BMA网络的路由器共享40s时间选BDR

①比较接口优先级,越大越优(默认为1 , 如设置为0,表示不参与选举)
②比较Router-ID,越大越优; Router-id:①手工配置>②逻辑最大的映射>③物理接口最大的IP地址映射

DR与Other直接是邻接关系(可以交换路由)
BDR与Other直接是邻接关系(可以交换路由)
Other与Other直接是邻居关系(无法交换路由条目)

DR/BDR是路由器接口的特性,而非路由器的特性,也就是说一个路由器可以是DR也可以是BDR

邻居建立不起来原因分析
  1. Router id相同,邻居起不来
  2. hello时间:10s,hello时间不同,邻居起不来
  3. dead时间不同邻居起不来,40s还收不到hello报文,认为邻居不可达
  4. Area id不同,起不来邻居
  5. 认证类型不同,邻居起不来
  6. 认证数据密码不同,邻居起不来
  7. 不在一个网段,能ping但是不能建邻居
  8. 两端的接口所在不同区域,不能建邻居
  9. router-id冲突
  10. passive-interface接口不能建邻居
  11. 两端接口优先级都为0,没有DR,最远可以到达2-way状态,无法选主从,无法到达exstart
  12. 接口MTU不一致,无法建立邻接关系
  13. 网络类型不一致,改成点到多点,hello时间变30s,邻居down,BMA+P2P可以建邻居

#修改hello时间,同时dead time,wait time也跟着改
int e0/0
ip ospf hello-interval 11
Show ip ospf int e0/0

两个邻居之间的5种报文:
  1. hello报文:路由器A第一次发hello报文给路由器B,不携带邻居信息,当B收到A的hello时,带着A的IP返回给B,A收到带有自己IP的hello报文,进入2-way状态
  2. DBD报文:第一个DBD在exstart状态下发,不携带LSA头部,仅比较router-id选DR/BDR,之后的DBD开始携带LSA头部,交换信息,有I /M /MS三位
  3. LSR报文:请求自己没有的LSA,若5s没收到LSU,会一直发
  4. LSU报文:回复某条LSA
  5. ACK报文:收到LSU后回复

ABR:至少有一个接口属于area0,其他接口不属于area0,维护两张表

ASBR:至少有一个接口属于ospf区域

LSA头部:Advertise ID+LinkState ID+LS Type唯一标识一个LSA实例

FA:默认0.0.0.0代表下一跳是ASBR

OSPF报头:
version,type,包长度,router-id,area-id,校验和,认证类型
hello内容:hello时间,hold时间,路由器优先级,DR,BDR
认证类型:
1. 空认证:0
2. 明文认证:1密码放在头部
3. 密文认证:2密码放在data里
在这里插入图片描述

网络类型: BMA+P2P可以建邻居,能传路由,The other之间最终状态2-WAY,不可能是邻居

3600s(1h)过期从LSDB删除,每1800s更新age,为防止频发LSA,在其基础上240s一起发

第一条LSA的sequence number:0x8000 0001–0x7FFFFFFFF

一类LSA router产生

Link type不同,Link-id和Link-data表示的内容不同
transit就是伪节点(方框表示)
在这里插入图片描述

虚链路
ID:对端router-id
Data:自己到对端最优路径的物理IP地址

注意:2类LSA 会产生2条链路状态,p-to-p和stub标识链路网段
在这里插入图片描述

二类LSA (DR产生) network

在这里插入图片描述
根据LSA可以计算出路由,一二类LSA 根据SPF算法算出最短路径,防环

三类LSA (ABR产生)传递路由,一个路由产生一个3类LSA

在这里插入图片描述

四类LSA asbr-summary 告诉非ASBR所在区域内所有路由器如何到达ASBR(其实是ABR告诉的故是ABR产生)
在这里插入图片描述

ABR产生告诉区域内路由器,想访问外部要经过我。4类LSA不一定存在,如果直接本区域内引入5类LSA则不需要
Link state id为ASBR的router-id

五类LSA (ASBR产生) 将引入的外部路由传递到所有area的路由

在这里插入图片描述

总结:

在这里插入图片描述

I = 1:第一个DBD报文,没有LSA header字段
M = 1:还有更多DBD报文
MS = 1:主从(我是主)刚开始都认为自己是主,比较
只有主有权利发sequence号,从对主发的每一个报文进行确认

age小为优
sequence大为新(先看)
checksum大为优

注意点

  1. 小于40s已经选出DR,来个再大的router id不会把DR挤掉
  2. Ipv6环境下必须配routerid,否则起不来
  3. 所有非骨干区必须和骨干区直连
  4. lsa发出后每30分钟(1800s)更新,60分钟不更新会被从路由表删除
  5. *>可以进路由表
  6. Hello 10s/40(修改hello会影响dead,修改dead不影响hello)
  7. DR,BDR只支持MA,不支持点对点和loopback,因为点对点不能选DR
  8. 修改参考带宽100……10000

OSPF 汇总(ABR,ASBR)分区域
同一个area共享数据库,所以在区域内路由器做汇总毫无意义

ABR
router ospf 1
area 1 range 3.1.0.0 255.255.248.0(汇总路由来自哪个区域)

ASBR
router ospf 1
summary-address 1.1.0.0 255.255.248.0
#就算之前R1已经收到明细路由,汇总后ABR告诉R1将明细老化,并生成汇总路由
redistribute rip subnets

OSPF下发默认路由:在ASBR上
无法像EIGRP那样重分布静态路由,因为静态路由无法在链路状态下传递,也不会有metric
(ospf进程下)default-information originate (always)
always不管是否有静态,都能下发
不加always前提:本身上有一条静态路由
修改缺省路由metric值:default-information originate metric 10

• 如果有多个边界路由器,建议不要使用always,因为并不会做备份,而是只选择一个
• 如果只有一个边界路由器,推荐使用always

虚链路配置
R1不会学到23网段路由,因为不是ABR,不会传递Area2间路由
在这里插入图片描述

ABR会接收非骨干区域传过来的LSA,但次LSA不会参与路由计算,不防环,虚链路可以解决,但是两端都要配
虚链路不会周期性泛红,不会更新age,也不会老化
R1会收到23网段路由,不会收到34和4.4.4.4网段

ABR区域
stub区:设备便宜,不会接受5类LSA,更不会去到外部网络,所以由ABR发送一条默认5类LSA,骨干区域不能配置成stub
(进程下) area1 stub
对区域而言,此时如果一条链路一个接口是stub,另一个不是stub,邻居关系就会建立不起来,正常配置后,会看到默认下发的3类LSA

totally stub
(进程下) area1 stub no-summary 正常3类不收,ABR下放默认3类,只收缺省3类

#修改stub 区ABR的默认metric,备份
(ABR的ospf下)area1 default-cost 2 (默认为1),结果路由器到ABR的0.0.0.0的metric是10+2

缺点:选路时stub只能以ABR作为目标设备选路,导致整体选路不精确

ASBR区域
nssa区:不收5类LSA,收正常3类,但能引进除ABR的7类LSA,到ABR时将7类转为5类进入到骨干区域
ABR需要手动在nssa区下放7类缺省路由,这样她若想访问外网就可以通过ABR

totally nssa:不收5类LSA,正常3类也不收,但能产生7类LSA,nssa区域的ABR将7类转为5类,但ABR会产生默认7类和3类LSA

#修改stub 区ABR的默认metric

#ospf v2针对ipv4使用
#ospf v3针对ipv4和ipv6

在这里插入图片描述
R2若想访问3.3.3.3网段,只能通过找ASBR也就是R1才能到达,这样会绕远,若R1的e0/0满足上述3个需求,就会产生FA是R3的e0/0接口,R2想访问
可以通过直连访问,并且R2到R3的e0/0的路由必须是O或OA1才可以访问,若R2到R3的e0/0是直连也无法访问,解决方法是将R3变成ABR

命名OSPF

Router ospf lab
Address-faminly ipv4 unicast automous-system 1
Af-interface e0/0
Address-faminly ipv6 unicast automous-system 1

OSPFv3

Config#Router ospfv3 1
Config-router#Address-family ipv6 unicast
Config-router-af#router-id 1.1.1.1

#Show ospfv3 neighbour
#Show ospfv3 database
#Show ip route ospfv3

在这里插入图片描述

老版ospf认证ipv6

在这里插入图片描述

明文认证

接口下:1:启明文认证,2:为明文认证配密码
在这里插入图片描述
区域下:1:区域下启认证,2:在接口下配置密码

空认证

(接口)Ip ospf authentication null

密文认证

在这里插入图片描述

OSPF优化

① 路由器读取目的地址,并查找路由表,选择和目的地址最精确匹配(最长匹配)的路由进行转发;
② 如果存在2条相同的路由,查看管理距离;
③ 根据O > O IA >O E1 > O E2 的优先级顺序转发;
④ 如果此时还存在等cost路径,则作负载均衡转发(OSPF默认4条路径负载均衡)。

  • 11
    点赞
  • 0
    评论
  • 41
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值