一、ospf基础知识
特点
区域概念,有效减少路由条目对CPU和内存占用,将拓扑变化局限在本区域内,相信的LSA泛洪控制。(0-4294967295)非骨干区域全部连接到区域0上
区域划分属于接口划分(同一个交换机属于不同区域叫ABR)
邻接关系,OSPF协议定义了一些路由器类型和网络类型,邻接关系的建立是交换Hello信息的路由器类型和交换Hello信息的网络类型决定的。
每台收到从邻居路由器发出的LSA的路由器都会把这些LSA记录在它的LSDB中,并且发送一份LSA拷贝给这台路由器其他所有邻居。
当这些路由器LSDB完全相同时,各自路由器就以自身为根,使用SPF算法算一条无环的最短路径拓扑图,从而构建自己的路由表。
本质特性:链路状态型的路由协议
hello 包的作用
邻居关系:hello 数据包建立
1、作用:发现邻居,keepalive,协商参数,确保2-way,选择DR。
2、如果在4倍的Hello间隔时间中没有收到邻居的hello包,这个邻居就是会被宣告无效,这个时间就是dead-interval
二、训练题
配置ospf及其验证
(一)如图下所示已经给相应接口配置好相应IP
(二)、分别为 R1 R2 R3 配置OSPF动态路由
R1
route-id:每一个路由器都有的id,可以手动,可以自动。
手动:route-id IP地址
自动:如果有最大的环回口,就选择最大的。如果没有最大的环回口就选择最大的物理口(地址最大的)
R1(config)# router ospf 1 //选择进程(1-65535)本地有效 R1(config-router)# router-id 1.1.1.1 //配置route-id (可以不用配置) R1(config-router)# network 10.1.1.0 0.0.0.255 area 0 //宣告IP地址 : network 路由器接口网段 反掩码 area 区域 R1(config-router)# network 33.1.1.0 0.0.0.255 area 0 R1(config-router)# network 11.1.1.0 0.0.0.255 area 0
R2(没有配置route-id)
R2(config)#router ospf 1 R2(config-router)#network 20.1.1.0 0.0.0.255 area 0 R2(config-router)#network 22.1.1.0 0.0.0.255 area 0 R2(config-router)#network 11.1.1.0 0.0.0.255 area 0
R3
R3(config)#router ospf 1 R3(config-router)#network 30.1.1.0 0.0.0.255 area 0 R3(config-router)#network 33.1.1.0 0.0.0.255 area 0 R3(config-router)#network 22.1.1.0 0.0.0.255 area 0
(三)查看路由表
R1(其中o代表是通过ospf动态路由学过来的IP网段)
(四)OSPF验证(MD5验证)
R1
R1(config)#router ospf 1 //选择进程 R1(config-router)# area 0 authentication message-digest // 区域0起用MD5验证 R1(config-if)#exit R1(config)#interface fastEthernet 1/0 //选择接口 R1(config-if)#ip ospf message-digest-key 1 md5 123 //设置密码验证
查看R1的路由表,我们可以发现先前通过ospf学到的路由没有了
R2路由表也没有去往R1的路由了
R2
R2(config)#router ospf 1 //选择进程 R2(config-router)# area 0 authentication message-digest // 区域0起用MD5验证 R2(config-if)#exit R2(config)#interface fastEthernet 1/0 //选择接口 R2(config-if)#ip ospf message-digest-key 1 md5 123 //设置密码验证
我们发现当做完R2的MD5验证后路由重新学到了R1的路由
R3
R3(config)#router ospf 1 //选择进程 R3(config-router)# area 0 authentication message-digest // 区域0起用MD5验证 R3(config-if)#exit R3(config)#interface fastEthernet 1/0 //选择接口 R3(config-if)#ip ospf message-digest-key 1 md5 123 //设置密码验证
我们可以发现R3把R1、R2的路由都学过来了
(五)总结
1、当路由器做了验证后,想要学到这台路由器的路由必须和它做同样的验证
2、当做了验证没学到路由时可以刷新一下路由表或者改一下发送hello包的时间
R1#clear ip route * //刷新路由表
R2(config)# R2(config)#interface fastEthernet 0/0 //选择接口 R2(config-if)#ip ospf hello-interval 1 //把发送hello包的时间设置为1秒(默认:10s) R2(config-if)#ip ospf dead-interval 4 //在路由器没有从虚链路的远端接收到Hello报文的期满时间(默认:hello包的4倍)