目录
路由器转发数据包依靠 路由表
一、OSPF(同步,相同)
1.动态路由协议的分类
距离矢量协议RIP:发送路由更新发送的是路由表(路由信息,路线)不安全性,资源消耗少
链路状态协议:发送路由更新发送的是拓扑表(链路状态信息,地图)
2.OSPF基础
开放式最短路径优先协议(open shortest path first),是一个公有协议,属于链路状态协议,免费开源
链路:加入了OSPF的接口以及接口的相关信息
状态:指的是有哪些OSPF邻居
使用组播进行更新,组播地址:224.0.0.5(所有设备)和224.0.0.6(DR和BDR)
DR和BDR --- 30min泛洪保证同步 (班长和副班长)
管理距离:AD=110 ,选协议(不同协议不同),度量值:选路径
广泛适用于大型网络,详细,收敛快,资源消耗多
分区域:分成骨干区域(内部路由链路状态信息)和非骨干区域 ---必须相连
使用的是SPF算法,实现100%无环
二、五个报文(协议报文)
hello,DBD,LSR,LSU,LSAck
hello:用来发现、建立和维护邻居关系
【hello包中夹带hello时间,死亡时间,区域号,身份验证等信息】
DBD:链路状态数据库(拓扑表)摘要
LSR:请求完整的信息
LSU:更新完整的信息
LSAck:确认
三、路由器ID/RID
在OSPF中,RID是独一无二的,不能冲突,用来标识唯一一台路由器,建议使用本台设备的地址作为RID
RID的选举规则:
1.手动指定
2.选择最大的回环口IP地址
3.双UP(status+protocol 物理+逻辑--接口打开有线连接可以互通)的物理接口中最大的IP地址
四、基本配置
1.进程下的通告:
R1(config)#router ospf 1 //启用OSPF,进程号为1,进程号只在本地有效
R1(config-router)#router-id 1.1.1.1 //手动指定RID
R1(config-router)#network 172.16.1.0 0.0.0.255 area 0
//在172.16.1.0 0.0.0.255这个范围内的所有接口,会被通告进OSPF进程号1的区域0
R1(config-router)#network 192.168.12.0 0.0.0.255 area 0
//在192.168.12.0 0.0.0.255这个范围内的所有接口,会被通告进OSPF进程号1的区域0
2.接口下的通告:(精准,优先生效)
R3(config-if)#router ospf 1 //启用OSPF,进程号为1,进程号只在本地有效
R3(config-router)#router-id 3.3.3.3 //手动指定RID
R3(config)#int s1/0 //进入接口
R3(config-if)#ip ospf 1 area 0 //将该接口通告进OSPF进程号1的区域0
R3(config)#int e0/1 //进入接口
R3(config-if)#ip ospf 1 area 0 //将该接口通告进OSPF进程号1的区域0
3.修改ospf的RID:
R3(config)#router ospf 1
R3(config-router)#router-id 3.3.3.3 //修改RID
R3(config-router)#end
R3#clear ip ospf process //重置OSPF进程
Reset ALL OSPF processes? [no]: y //确认重置
R2#show ip ospf interface brief
//查看哪些接口通告进OSPF(通告1、启动接口,允许收发报文2、我有什么网段)
R2#show ip ospf process // 显示ospf进程
五、三张表
1.邻居表:启用了OSPF之后,所有设备会加入组播组224.0.0.5,并且会向该组播地址发送hello包,处于这个组播的其他OSPF路由器会收到该hello包,会将该hello包的信息添加进路由表,也会将相应信息写入自己的hello包然后发给对方
R2#show ip ospf neighbor
2.拓扑表【链路状态数据库/LSDB】:包含了自身已知的所有链路状态信息,OSPF发送路由更新,发送的就是拓扑表。同一区域的所有设备拓扑表必须保持一致(同步)
R1#show ip ospf database
3.路由表:每台设备会从自己的拓扑表中,计算出最优路径(使用的是SPF算法,实现100%无环),然后加入路由表
R1#show ip route ospf
六、度量值计算
OSPF度量值是开销(cost)=10^8/出接口带宽【数据包】,计算单位是bit/sec
R1#show int e0/1 //查看e0/1的接口信息
R1(config)#int e0/1 //进入数据包的出接口
R1(config-if)#ip ospf cost 20 //修改OSPF的开销为20
七、DR和BDR
(先选BDR,如果DR不存在,BDR会马上成为DR,并且选举是非抢占【选定即固定】的,所以经常需要重置OSPF进程来重新选举)
为了节省网络资源,在一个网段中,如果是广播多路环境(以太网链路),会依次选出DR、BDR和DRother,所有更新由DR统一更新,由DR进行30分钟的泛洪,
而点对点环境(串行链路)不会选择DR
DR可以减少广播型网络中的邻接关系的数量
选举规则:
1.比较优先级(以太网链路默认为1,大的优先,串行链路的优先级为0,不参与选举)优先级一样的话比较RID
R1(config)#int e0/1 //进入需要进行DR选举的接口
R1(config-if)#ip ospf priority 10 //修改该接口的OSPF优先级
2.比较RID(大的优先)
DR要进行更新:DR向224.0.0.5发包
BDR要进行更新:BDR向224.0.0.5发包
DROTHER要进行更新:DROTHER向224.0.0.6发包,DR向224.0.0.5发包