OSPF基本概念及单区域配置
 
-内部网关路由协议
       OSPF内部网关路由协议:用于在单一自治系统(Autonomous System-AS)内决策路由
       自治系统(AS):执行统一路由策略的一组网络设备的组合
 
-区域
       为了适应大型的网络,OSPFAS内划分多个区域
       每个OSPF路由器只维护所有区域的完整的链路状态信息
 
-链路状态路由协议
       OSPF是链路状态路由协议,链路状态路由协议中的路由器了解OSPF网络内的链路状态信息
       链路状态路由协议中,直连的路由器之间建立邻接关系,互相“交流”链路信息,来“画”出完整的网络结构
l         为了标识链路信息是由谁发出的,用Router ID标识路由器
l         相邻路由器之间建立邻接关系,保存在邻居列表中
l         路由器学习到的链路信息,表存在链路状态数据库中
 
-Router ID
       Router ID:是在OSPF区域内唯一标识一台路由器的IP地址
       Router ID选取规则:
l         首先,路由器选取它所有loopback接口上数值最高的IP地址
l         如果没有loopback接口,就在所有物理端口中选取一个数值最高的IP地址
 
-链路状态路由协议中的数据库类型
       邻居列表:列出每台路由器全部已经建立邻接关系的邻居路由器
       链路状态数据库(LSDB):列出网络中其他路由器的信息,由此显示全网的网络拓扑
       路由表:列出通过SPF算法计算出的到达每个相连网络的最佳路径
 
-链路状态生成过程
       建立邻接关系 -(学习链路状态信息)- 链路状态数据库 - Djkstra算法)- 最短路径树 路由表
 
-建立邻接关系的过程
       Init:接收到对方的HELLO报文,转换为初始状态
       2-way:在对方发来的HELLO报文中看到自己的Router ID,转换为双向状态
       ExStart:确定数据库描述报文的序列号,转换为信息交换初始状态 - DBDSeq
       ExChange:发送数据库描述报文,转换为信息交换状态 - DBD
       ExChange:发送链路状态信息请求报文,获取未知的链路状态信息 – LSR
       Loading:发送链路状态信息更新报文,同步链路状态数据库 – LSU
       Full:知道两台路由器的链路状态数据库完全一致,形成邻接关系
 
-OSPF的邻接关系需满足的条件
       邻居:两个路由器之间如果不能满足下列条件,则它们就不能成为邻居:
l         Area-id:两个路由器必须在共同的网段上,它们的端口必须属于该网段上的同一个区,且属于同一个子网
l         验证(Authentication OSPF):同一区域路由器必须交换相同的验证密码,才能成为邻居
l         Hello IntervalDead IntervalOSPF协议需要两个邻居路由器的这些时间间隔相同,否则就不能成为邻居路由器
l         Stub区域标记:两个路由器可以在Hello报文中通过协商Stub区域的标记来成为邻居
 
-OSPF的网络类型
       路由器接口类型不同,在建立邻接关系的时候,OSPF路由器执行的操作也略有不同
网络类型
举例
广播
以太网
非广播多路访问NBMA
帧中继、X.25
点到点
PPPHDLC
点到多点
多个点到点链路的集合
 
-OSPFDRBDR
       指定路由器(DR):一个网段上的其他路由器都和指定路由器(DR)构成邻接关系,而不是它们互相之间构成邻接关系
       通过Hello报文选择DRBDR来代表OSPF网段
       其他的路由器(DRothers)只和DRBDR路由器之间形成邻接关系
       通过组播发送Hello报文
       具有最高OSPF优先级的路由器会被选为DR
       如果OSPF优先级相同,则具有最高Router ID的路由器会被选为DR
 
-OSPF包类型总结
包类型
描述
Hello
用于邻居路由器之间建立和维护邻接关系
数据库描述包DBD
描述每台OSPF路由器的链路状态数据库的内容
链路状态请求包LSR
请求链路状态数据库的部分内容
链路状态更新包LSU
传送链路状态数据通告LSA给邻居路由器
链路状态确认包LSAck
确认邻居发过来的LSA已经收到
 
-OSPFHello协议
       当路由器上启动OSPF进程时,每台路由器都回间隔一定的时间发送Hello
       Hello包通过组播地址224.0.0.5发送
       OSPF路由器使用Hello包发起建立邻接关系并监视这种关系的存在和消失
       在广播网或者点对点网上,Hello的发送间隔是10秒;在NBMA网络上,Hello的发送间隔是30
 
-OSPF的度量方法
       COST=108/BW
       OSPF协议决定最短路径是基于路由器每一个接口指定的代价(cost)来的
       一条路由的代价:是指沿着到达目的网络的路由路径上所有出战接口的代价之和
 
-何时需要OSPF路由协议
       网络的规模:网络中路由器在10台以上;中等或大规模的网络
       网络的拓扑结构:网络的拓扑结构为网状,并且任意两台路由器之间都有胡同的需求
       其他特殊的需求:要求路由变化时快速收敛,要求路由协议自身的网络开销尽量降低
       对路由器自身的要求:运行OSPF协议时,对路由器的CPU的处理能力及内存的大小都有一定的要求,性能很低的路由器不推荐使用OSPF协议
 
-OSPF路由协议的特点
l         可适应大规模网络
l         路由变化收敛速度快
l         无路由环
l         支持变长子网掩码VLSM
l         支持区域划分
l         支持以组播地址发送协议报
 
-OSPFRIP的比较
       OSPF:链路状态路由协议;没有跳数的限制;支持可变长子网掩码(VLSM);收敛速度快;使用组播发送链路状态更新,在链路状态变化时使用触发更新,提高了带宽的利用率
       RIP:距离矢量路由协议;RIP15跳限制,超过15跳的路由被认为不可达;V1不支持可变长之网掩码(VLSM),V2支持;收敛速度慢;周期性广播整个路由表,在低速链路及广域网中应用将产生很大问题
 
-OSPF单区域的配置命令
       配置loopback接口地址: 用于产生路由器的Router ID
Router(config)#interface loopback looback-number
Router(config-if)#ip address ip-address mask
       启动OSPF路由进程:
Router(config)#router ospf 进程号     - 本路由器的进程号,用于标识同一路由器上多个OSPF进程
       指定OSPF协议运行的接口和所在的区域:
Router(config-router)#network 网络号 反向掩码 area 区域号
*网络号:可以是网络地址、子网地址、接口地址
*区域号:指明网络所述区域
 
       修改接口的Cost值:
Router(config-if)#ip ospf cost number
       配置OSPF计时器:
Router(config-if)#ip ospf hello-interval 时间(s
Router(config-if)#ip ospf dead-interval 时间(s
       *为了交换信息,相邻路由器必须有相同的hellodead间隔,通常dead时间是hello时间的4
 
       查看邻居列表:
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 接口