一、什么是OSPF?
OSPF(Open Shortest Path First)是基于开放标准的链路状态路由协议。
 
二、为什么要引用OSPF?
1、OSPF是一种状态型的路由协议,不会产生环路。
2、OSPF将自制系统分割成多个小的区域,OSPF的路由器只在区域内部学习完整的链路状态信息,而不必了解整个自治系统内部所有的链路状态。
 
三、OSPF拓扑图形成过程。
OSPF是通过与直连的路由器建立邻接关系,互相传递链路状态信息,来了解整个网络的拓扑结构。如下图:
最初RA只知道直连的3个网段10、20、30,RB、DC、RD也一样。
为了标识链路信息是由谁发出的,用Router ID标识路由器。是在OSPF区域内唯一标识一台路由器的IP地址)
 
 
OSPF路由器通过相互传递,相互建立邻接关系,并保持在邻接关系表中,路由器学到的链路信息,保存在链路状态数据库中。
 
四、OSPF单域的基本配置命令
配置loopback接口地址
Router(config)# interface loopback 0
Router(config-if)# ip address IP地址 掩码
启动OSPF路由进程
Router(config)# router ospf 进程号
指定OSPF协议运行的接口和所在的区域
Router(config-router)# network 网络号 反向掩码  area  区域号(今天讲的是单域所以区域号是0)
修改接口的Cost值(接口指定代价)
  Router(config-if)#ip ospf cost number
例如:
    Router(config)#interface s0
    Router(config-if)#ip ospf cost 1000
配置OSPF计时器(一般不改)
 Router(config-if)#ip ospf hello-interval 时间(s)
 Router(config-if)#ip ospf dead-interval 时间(s)
例如:
    Router(config)#interface e0
    Router(config-if)#ip ospf hello-interval 5
    Router(config-if)#ip ospf dead-interval 20
查看邻居列表
Router#show ip ospf neighbor
查看链路状态数据库
Router#show ip ospf database
查看路由表
Router#show ip route
 查看OSPF的配置
Router#show ip ospf
查看OSPF接口数据结构
Router#show ip ospf interface 接口
 
五、OSPF单区域配置实例
 
RA(config)#interface loopback 0
RA(config-if)#ip address 20.1.1.1 255.0.0.0
RA(config-if)#exit
RA(config)#interface f0/0
RA(config-if)#ip address 192.168.20.1 255.255.255.0
RA(config-if)#no shut
RA(config)#interface s0/1
RA(config-if)#clock rate 128000
RA(config-if)#ip address 192.168.10.1 255.255.255.0
RA(config-if)#no shut
RA(config)#router ospf 20
RA(config-router)#network 192.168.10.0 0.0.0.255 area 0
RA(config-router)#network 192.168.20.0 0.0.0.255 area 0
 
RB(config)#interface loopback 0
RB(config-if)#ip address 10.1.1.1 255.0.0.0
RB(config-if)#exit
RB(config)#interface s0/1
RB(config-if)#ip address 192.168.10.2 255.255.255.0
RB(config-if)#no shut
RB(config)#router ospf 10
RB(config-router)#network 192.168.10.0 0.0.0.255 area 0
 
RC(config)#interface loopback 0
RC(config-if)#ip address 30.1.1.1 255.0.0.0
RC(config-if)#exit
RC(config)#interface f0/0
RC(config-if)#ip address 192.168.20.2 255.255.255.0
RC(config-if)#no shut
RC(config)#router ospf 10
RC(config-router)#network 192.168.20.0 0.0.0.255 area 0