标签:路由器 数据库 路由表 hello neighbour
ospf的五种协议报文
hello报文:周期发送,建立邻居,维护neighbour、选举DR/BDR
DD报文:描述本地LSA的摘要、查看有没有LSA 节省链路的带宽
LSR报文:向对端请求本端没有或对端的更新的LSA
LSU报文:向对方发送其需要的LSA
LSack报文:收到LSU之后、进行确认
hello——>neighbour (通过发送hello包建立邻居表)
neighbour lsa——>lsdb(通过邻居相互通告LSA建立链路状态数据库)
lsdb spf——>route table(通过SPF计算LSDB得出路由表)
ospf建立邻居匹配的参数:
1.hello时间和dead时间一定要一致
2.area id 要一致
3.认证密钥要一致
4.区域stub类型
LSA几种方式
router-lsa 由每个路由器生成,描述了路由器的链路状态和花费,传递到整个区域
network-lsa 由DR生成,描述了本网段的链路状态,传递到整个区域
net-summary-lsa 由ABR生成,描述了到区域内某一网段的路由,传递到相关区域
asbr-summary-lsa 由ABR生成,描述了到ASBR的路由,传递到相关区域
as-external-lsa 由ASBR生成,描述了到AS外部的路由,传递到整个AS(Stub区域除外)
LSA1 提供网络号和metric值 LSA2提供掩码的结合起来传输
LSA2不能穿过ABR(MA网络中)
LSA3穿越ABR就会标识为这个ABR的router-id
LSA4的作用:告诉其它区域ASBR所在的位置
LSA4和LSA5结合起来的、有LSA5产生才叫ASBR
LSA5不属于任何区域 通告者是不会发生改变
七个状态
down 没建立邻居
init 发送hello包、进入init (hello包含自己的IP地址确定neighbour关系 收不到hello包进入attempt状态)
2-way 收到hello包含自己的router-id,进入2-way、DR/BDR选举、建立邻接关系 邻居已经建立
exstart:first交互DD包,进入exstart(选出master/slave router-id高就是master)隐式
Exchange:相互交互DD完成交互
loading:发送LSR LSU 、加载LSR、LSU
full
SPF算法:
1.在同一区域的每台路由lsa都是一致
2.每台路由器都以自己为根计算最短路径
触发更新
周期泛洪:30分钟泛洪一次 60分钟老化时间60分钟收不到更新LSA就数据库中删除该LSA
本台路由器收到LSU查看数据库中没有LSA添加到本地的数据库中,向源端发送LSACK,然后再向邻端泛洪、若本地发现有这条LSA条目了,判断lsa是否是最新,比序列号大的是最新的LSA
OSPF为什么是无环的?内部可以保证无自环、外部引入进来不能保证
1、每一条LSA都标记了生成者、其它路由器只负责传输、不对其修改
2、路由计算的算法是SPF:计算的结果是一个棵树
IGP引入到OSPF中是E1、cost是不发生改变的,BGP引入到OSPF中是E2、cost是发生改变的
DR的选举方式:(DR针对的是接口不是路由器)
1.优先选较大的priority(default=1) 在接口下修改优先级 ip ospf priority
2.较大的router-id
router-id选举方式:
1.手工指定(任意 唯一性)
2.loopback口最大的ip地址
3.物理接口最大的ip地址(必须活跃的物理接口)
DR和BDR
1.DR不抢占 BDR不抢占 (防止篡改路由表不稳定)
2.当DR down BDR直接选举为DR,不需要重新选举DR
3.DR/BDR/DROTHER是接口概念
4.不同网段分别选DR,BDR
网络类型:
loopback:收到32位的主机位
point-to-point:组播更新 不选DR
broadcast:组播更新 选DR
NBMA:单播更新 选DR
P2MP:组播更新 不选DR 会产生到达对方直连接口32位的路由
P2MP NBMA:单播更新 不选DR 会产生到达对方直连接口32位的路由
邻居与邻接区别:邻居关系仅仅交互hello 邻接关系是交互LSA
point to point 邻居就是邻接关系
MA网络有一些只能到邻居 有一些是邻接
在MA网络中先选举DR BDR full
DROTHER 到达two-way状态
组播地址:224.0.0.5、224.0.0.6只用于BDR监听DR
链路状态协议要分层 :传输区 常规区
划分区域的好处
1.减小路由表的条目(域间汇总)
2.将topology变化本地化
3.减少LSA泛洪范围
如果边界出现多个ABR,控制cost值处于选路
汇总:
1.基于接口还是进程
2.本地产生汇总路由吓一跳指向null0
3.所有明细路由都消失汇总路由才消失
4.cost值取明细中最小的cost值
ospf cost跟带宽有关系
cost=10*8/bw (bandwidth单位:bps比eigrp少1000)
E2不累加cost值 seed cost 种子值 所有协议重分布进来cost的值都为16
cost的值1-65535
10M=cost的值10
100M=cost的值1
1000M=cost的值1
10000M=cost的值1
域内汇总:不能做,因为每台路由器在同一区域都有相同的数据库,都有明细
域间汇总:area x range 建议在本区域的所有ABR上做 (进程里做)
域外汇总:summary (进程里做)
ospf的特殊区域:(NSSA、STUB)
设计特殊区域是为了减少LSA条目 泛洪
stub区域规则:
1.过滤LSA4/5,stub主动下放LSA3的默认路由,cost的值是1
2.建立邻居区域要匹配(这个区域所有路由器都要配置stub)
3.配置stub区域不能出现ASBR
4.不能把area 0 配置stub区域
stub 过滤LSA4/5、下放默认路由(LSA3)seed cost=1
totally stub 过滤LSA3/4/5、下放默认路由(LSA3)seed cost=1
NSSA 过滤LSA4/5将LSA7转换为LSA5、不下放默认路由(default LSA7)seed cost=1
totally NSSA过滤LSA3/4/5、下放默认路由(no-summary LSA3)cost=1
totally stub 减少路由表条目 cisco私用 在ABR上配置area 1 stub no-summary 区域里面只
解决不规则区域:
1.多进程的双向重分布 (配置复杂)
2.打tunnel 把tunne口宣告到area 0 (配置复杂 其实性质跟虚链路差不多)
3.虚链路(配置简单)
认证:明文 md5
1.链路认证
2.区域认证
3.虚链路认证
4.NSSA下放默认路由
距离矢量选路依据是邻居、链路状态选路依据自己的LSDB
标签:路由器 数据库 路由表 hello neighbour
原文地址:http://maguangjie.blog.51cto.com/11214671/1791875