OSPF:开放式最短路径优先协议{IGP中}
无类别链路状态路由协议 版本:v1/v2/v3; [v3是IPV6使用] 基于拓扑进行收敛–>更新量特别大–>无法适应中,大型网络环境; 所以:OSPF需结构化部署: 1.区域划分 2.地址规划 触发更新:30min周期更新;组播更新地址224.0.0.5/6;
一.OSPF的数据包类型
1>Hello包:发现,建立,周期保活; 2>DBD包(数据库描述):把整个拓扑生成数据库生成目录发送对方 ,查看是否有重复; 3>LSR(链路状态请求):询问没有自己路由表中不存在的路由; 4>LSU(链路状态更新):携带各种LSA; 5>LSack(链路状态确认) [LSA]:-----链路状态通告:具体一条拓扑/路由信息; [LSDB]:-----链路状态数据库:本地所有LSA集合;
## 二.OSPF状态机
1.Down:一旦本地发出Hello 包,进入下一个状态; 2.Init(初始化): R1收到R2的Hello 包中存在R1的Route-ID进入下一个状态; 3.2-way(双向通信):邻居关系建立的标志; 4.Exstart(预启动):使用没有数据库信息的DBD包进行主从关系选举,RID数值大为主,优先进入下一状态; 5.Exchange(准交换):使用携带数据库目录信息的DBD包后,进行共享,需ack确认; 6.Loading(加载)查看完对端邻居的DBD包后,使用 LSR/LSU/LSack来获取未知的LSA信息; 7.Full(转发):邻接关系建立标志;
三.OSPF工作过程
路由器上OSPF启动配置完成后,本地收发Hello包; 在接收到Hello包中存在本地的RID,建立邻居关系;生成邻居表;邻居关系建立后;基于条件进行抉择; 1.条件匹配失败,维持邻居关系,仅Hello周期保活即可; 2.条件匹配成功,可建立邻接关系;
- 使用DBD包共享本地LSDB目录,本地基于其他邻接共享过来DBD,判断本地未知的LSA信息;
- 再使用LSR向邻接进行信息查询,邻接返回LSU包传递具体的LSA信息,同时本地需ACK确认接收;
- 当本地收到所有LSA后,本地LSDB数据库建立完成;{数据库表}
- 本地基于LSDB生成有向图—>树形结构图—>路由表
- 收敛完成,Hello继续周期保活
[每30min周期进行一次DBD的对比]
结构突变 1.无法沟通:dead time (默认40s) 到时间,断开邻居关系,删除该邻接学习到的信息; 2.新增网段:直连新增网段设备,直接使用LSU将更新,新增网段的LSU信息发送给本地所有邻接关系;对端需确认[ack]; 3.断开网段:直连断开网段设备,直接使用LSU将更新,断开网段的LSU信息发送给本地所有邻接关系;对端需确认[ack];
四.OSPF的基础配置
[r1]ospf 1 router-id 1.1.1.1
//启动时需要定义进程号,仅具有本地意义;同时建议定制router-id;
RID必须全网唯一,手工配置;
若没有手工配置RID,将自选,
1.环回接口IP最大数值;
2.物理接口IP最大值;
[r1-ospf-1]area 0 进入某个区域
宣告:1.激活 2.接口信息可以传递 3.区域划分
[r1-ospf-1-area-0.0.0.0]network 1.1.1.0 0.0.0.255
OSPF宣告时,必须携带反掩码;
OSPF划分区域规则: 1.星型结构;区域0为骨干区域,大于0为非骨干区域,非骨干区域必须连接到骨干区域; 2.ABR区域边界路由器;
五.工作过程
1.启动配置完成后,邻居间收发hello包,生成邻居表; 2.邻居关系建立后,进条件匹配;若成功可建立邻接关系; 邻接关系间将进LSA的洪泛,LSDB同步——学习未知的LSA信息; 生成数据库表 3.LSDB同步完成后---->有向图----->树形结构------>路由表;
在华为设备中,OSPF协议优先级为10; OSPF度量=cost值=开销值=参考带宽(默认100M)/接口带宽
OSPF选路规则: 整段路径cost值之和最小
当接口带宽大于参考带宽是,cost值为1;可能导致选路不佳; 建议修改参考带宽;切记全网设备参考带宽必须一致
[Huawei]ospf 1 router-id 1.1.1.1
[Huawei-ospf-1]bandwidth-reference 1000
//单位M
六.OSPF成为邻居的条件
网络类型 点到点:一个网段内只能存在两个节点; MA(多路访问):在一个网段内,节点数量不限;
- 点到点网络中,邻居关系必然直接建立为邻接关系;
- MA网络中,为了避免大量重复更新,将进行DR/BDR选举;
所有非DR/BDR间为邻居关系; - 选举规则比较优先级,0-255默认为1;数值大优;若为0,表示不参加选举;优先级相同比较参选设备RID,数值大优;
[r1]int g0/0/0
[r1-GigabitEthernet0/0/0]ospf dr-priority 2
切记:选举为非抢占行为;若原先已经定下了DR,后期再修改非DR的优先级,DR仍为原先的选举出来的; 因此修改参数后,必须重启该网段所有设备的OSPF进程;
<r1>reset ospf process
七.OSPF扩展配置
1.认证—在直连邻居的接口上配置
[r1]int g0/0/0
[r1-GigabitEthernet0/0/0]ospf authentication-mode md5 1 (编号)cipher 123(密码)
邻居间认证模式,编号和秘钥必须完全一致;
2.汇总——域间汇总 由于OSPF协议传递拓扑信息,故不能直接进行接口汇总; 只能在区域间传递路由时,进行汇总配置;
[r1]ospf 1
[r1-ospf-1]area 0
[r1-ospf-1-area-0.0.0.0]abr-summary 1.1.0.0 255.255.252.0
//汇总来自那个区域就在哪进行汇总
3.加快收敛 hello time 10s; dead time 40s; 修改本端接口的hello time,本端口的dead time自动4倍关系匹配; 直连邻居间hello和dead time必须完全一致,否则无法建立邻居关系;
[r1]int g0/0/0
[r1-GigabitEthernet0/0/0]ospf timer hello 5
4.缺省路由 边界路由器上配置后,内部其他OSPF路由生成缺省路由指向边界;
[r1]ospf 1
[r1-ospf-1]default-route-advertise always
|