前言
OSPF的知识较为繁杂,篇幅比较冗长,已经尽量写的简洁明了,可以根据目录进行使用
一、内部网关协议和外部网关协议
1、自制系统
- 自治系统(Autonomous System,AS)指的是在同一组织管理下、使用相同策略的设备的集合。
- 不同的AS通过AS号区分,AS号取值范围1-655535,其中64512-65535是私有AS号。IANA负责AS号的分发。
- 中国电信163 AS号:4134
- 中国电信CN2 AS号:4809
- 中国网通AS号:9929
2、分类
按自治系统分为
内部网关路由协议(IGP)
-
运行在as内部的路由协议称为内部网关路由协议IGP,主要解决as内部的选路问题,发现、计算路由。
-
例如 RIP OSPF
外部网关路由协议(EGP)
-
as和as之间相互通信用的是外部网关路由协议EGP,他解决as之间的选路问题
-
例如 BGP
按协议分类
距离矢量路由协议 rip1/2、bgp、eigrp
- 路由器对全网拓扑并不完全了解,是“传说的路由”,a发路由信息给b,b加上自己的度量值又发给c,路由表里的条目是听来的。
链路状态路由协议 ospf is-is
- 路由器对全网拓扑完全了解。是“传信的路由”。A将一封信发给B,B对其不做任何改变,拷贝下来,并将自己的信息放在另一封信里,两封信一起给C这样信息没有任何改变和丢失,最后所有路由器都收到相同的一堆信,这一堆信就是LSDB。然后,每个路由运用相同的SPF算法,以自己为根,计算出SPF Tree(即到达目的地的各个方案),选出最佳路径,放入路由表中。
二、OSPF的工作过程
1、三张表
-
邻居列表
-
链路状态数据库
-
路由表
2、工作过程
建立邻接关系---学习链路状态信息----链路状态数据库(LSDB)----- Dijkstra算法(最短路径算法)----最短路径树----路由表
两个相邻的路由器通过发报文的形式成为邻居关系,邻居再相互发送链路状态信息形成邻接关系,之后各自根据最短路径算法算出路由,放在OSPF路由表,OSPF路由与其他路由比较后优的加入全局路由表 |
---|
三、OSPF区域
1、简述
为了适应大型的网络,OSPF在AS内划分多个区域
每个OSPF路由器只维护所在区域的完整链路状态信息
2、区域ID
区域ID可以表示成一个十进制的数字
也可以表示成一个IP
3、区域分类
- 骨干区域Area 0
- 非骨干区域
- 标准区域
- 末梢区域(stub)
- 完全末梢区域(Totally,stubby)
- 非纯末梢区域(NSSA)
四、Router ID
1、简述
OSPF区域内唯一标识路由器的IP地址
2、Router ID的选取规则
- 选取路由器looback接口上数值最高的IP地址
- 如果没有loopback接口,在物理接口种选取IP地址最高的
- 也可以使用Router-id命令指定Router id(手动设置的这条优先级最高)
五、DR和BDR
1、简述
为减小多路访问网络中OSPF流量,OSPF会选择一个指定路由器(DR)和一个备份指定路由器(BDR)。当多路访问网络发生变化时,DR负责更新其他所有OSPF路由器。BDR会监控DR 的状态,并在当前DR发生故障时接替其角色。DR和BDR是由同一网段中所有的路由器根据路由器优先级、Router ID通过HELLO报文选举出来的,只有优先级大于0的路由器才具有选取资格。
2、DR和BDR的选举
-
自动选取 网段上Router ID最大的为DR,第二大的为BDR
-
手动选取 优先级0-255 值越大,优先级越高,默认为1 优先级相同则比较Router ID 优先级被设置为0,则不参加DR和BDR的选举
路由器的优先级可以影响一个选举过程,但是它不能强制跟换已经存在的DR或BDR路由 |
---|
3、OSPF的组播地址
-
224.0.0.5---------DR和BDR及选举过程用
-
224.0.06---------其他路由器(Drothers)
六、OSPF度量值
-
OSPF的度量值是cost
-
cost(成本)=10的8次方/BW(接口带宽)
七、OSPF的数据包
1、简述
承载在IP数据包内,使用协议号89
2、类型
八、OSPF状态
- Down状态 ------初始化
- Init状态 ------收到第一个Hello包 发送信息回去
- 2-Way状态 ------双向建立连接
- Exstart状态 ------建立主从关系 选举DR、BDR
- Exchange状态 ------交换摘要信息(DBD)
- Loading状态 ------加载详细信息(LSR、LSU)
- Full状态 ------收敛后 完全连接
九、网络划分类型
- 点到点网络 自动发现邻居,不需要DR/BDR,组播224.0.0.5
- 广播多路访问网络 自动发现邻居,选举DR/BDR,组播224.0.0.5、224.0.0.6
- 非广播多路访问网络 手工指定邻居,选举DR/BDR,单播
- 点到多点网络 自动发现邻居,不需要DR/BDR,组播224.0.0.5
十、从以下几方面考虑OFPS的应用
- 网络规模
- 网络拓补
- 其他特殊要求
- 路由器自身要求
十一、OSPF的特点
- 可适应大规模网络
- 路由变化收敛速度快
- 无路由环
- 支持变长子掩网码VLSM
- 支持区域划分
- 支持以组播地址发送协议报文
十二、实例和基础命令
R1
<Huawei>sys
Enter system view, return user view with Ctrl+Z.
[Huawei]un in en
Info: Information center is disabled.
[Huawei]sys R1
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip add 192.168.10.1 24
[R1-GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip add 12.0.0.1 24
[R1-GigabitEthernet0/0/1]q
[R1]int loo 0
[R1-LoopBack0]ip add 1.1.1.1 32
[R1-LoopBack0]q
[R1]ospf
[R1-ospf-1]area 0
[R1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[R1-ospf-1-area-0.0.0.0]network 192.168.10.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]network 12.0.0.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]q
[R1-ospf-1]
每个路由器配置大致相同,以R1为例 |
---|
dis ip routing-table PING
十三、OSPF多区域的生成
1、原因
-
改善网络的可拓展性
-
快速收敛
2、三种通信量
- 区域内通信量
- 区域间通信量
- 区域外部通信量
3、路由器类型
- 内部路由器
- 区域边界路由器(ABR):区域间路由器
- 自治系统边界路由器(ASBR):与外部连接的路由器
十四、链路数据库的组成
1、链路状态通告类型
类型代码 | 描述 | 类型 |
---|---|---|
Type 1 | 路由器LSA | 由区域内的路由器发出的,描述了路由器的的链路状态和花费,传递到整个区域内 |
Type 2 | 网络LSA | 由区域内的DR发出的,描述了区域内变更信息,传递到整个区域内 |
Type 3 | 网络汇总LSA | ABR发出的,其他区域的汇总链路通告,描述了其他区域内某一-网段的路由, 区域间传递 |
Type4 | ASBR汇总LSA | ABR发出的,用于通告ASBR信息,确定ASBR的位置,不会出现在ASBR所属区域之内 |
Type 5 | AS外部LSA | ASBR发出的,用于通告外部路由,告诉相同AS的路由器通往外部AS的路径,在整个AS中进行泛洪 |
Type 7 | NSSA外部LSA | NSSA区域内的ASBR发出的,用于通告本区域连接的外部路由,与Type 5类似,仅在非纯末梢区域内进行泛洪,传递时会被ABR转换为LSA5 |
2、类型
- 路由LSA
- 网络LSA
- 网络汇总LSA
- ASBR汇总LSA
- AS外部LSA
十五、末梢区域和完全末梢区域
1、满足条件的区域
- 只有一个默认路由作为其区域的出口
- 区域不能作为虚链路的穿越区域
- stub区域里无自制系统边界路由ASBR
- 非骨干Area 0
2、通告
- 末梢区域 没有LSA4、5、7通告
- 完全末梢区域 除了一条LSA3的默认路由通告外,没有LSA3、4、5、7通告
3、作用
-
减少区域内LS条目及路由条目,减少对设备CPU和内存的占用。
-
末梢区域和完全末梢区域中,ABR会自动生成一条默认路由发布到末梢区域或完全末梢区域中
4、基础命令
末梢区域
ARB
[R1]ospf 1
[R1-ospf-1]area 2
[R1-ospf-1-area-0.0.0.2]network x.x.x.x x.x.x.x #先宣告直连网段,再配
[R1-ospf-1-area-0.0.0.2]stub
区域内路由
[R2]ospf 1
[R2-ospf-1]area 2
[R2-ospf-1-area-0.0.0.2]network x.x.x.x x.x.x.x #先宣告直连网段,再配
[R2-ospf-1-area-0.0.0.2]stub
[R2]dis ip routing-table #此时会显示一条默认路由到外部区域
完全末梢区域配置
ARB
[R3]ospf 1
[R3-ospf-1]area 2
[R3-ospf-1-area-0.0.0.2]network x.x.x.x x.x.x.x #先宣告直连网段,再配
[R3-ospf-1-area-0.0.0.2]stub no-summary
区域内路由
[R4]ospf 1
[R4-ospf-1]area 2
[R4-ospf-1-area-0.0.0.2]network x.x.x.x x.x.x.x #先宣告直连网段,再配
[R4-ospf-1-area-0.0.0.2]stub
[R4]dis ip routing-table #此时会显示一条默认路由到外部区域
十六、多区域的好处
- 减少lsdb的大小,节约带宽;
- 提高路由的效率:缩减部分路由器的OSPF路由条目,降低路由收敛的复杂度,对某些特定的lsa,可以在区域边界上,实现汇总/过滤/控制,而实现全网互通;
- 提高网络的稳定性:当某个区域的某条路由出现抖动时,可以减少受影响的波及面。