B模块 安全通信网络 第二门课 核心网路由技术-1-OSPF邻居表建立

第1天 0SPF邻居表建立------

动态路由的优势、OSPF概述、OSPF工作过程、OSPF单区域配置、

邻居建立影响因素、OSPF多区域配置

第2-3天 OSPF数据库同步、路由表计算------

OSPF网络类型、DR和BDR、OSPF数据库、4、Router LSA详解、

Network LSA详解5、区域间路由、Network Summary LSA、

外部路由、AS-external LSA、ASBR-Summary LSA

第4天 OSPF性能调------

Stub区域、Totally Stub区域、NSSA区域、Totally NSSA区域、

区域间路由汇总、外部路由汇总

第5-7天 BGP------

BGP基本概念、邻居表和路由表、IBGP全互联、IBGP通告原则、

BGP之水平分割、路由反射器、更新源检测机制

BGP路径属性、路由优选之Next_Hop、路由优选之Local_pref6、

路由优选之AS_Path、路由优选之Origin、.路由优选之MED


今日目标

01 动态路由的优势

02 OSPF概述

03 OSPF工作过程

04 OSPF单区域配置

05 邻居建立影响因素

06 OSPF多区域配置


01 动态路由的优势

企业现状

  • 随着企业的发展,网络规模也不断在扩大
    √ 网络设备、网段数量越来越多
    √ 需要配置的路由条目越来越多

存在问题

√ 在大型网络中存在的问题

√ 静态路由,配置工作量大,效率低,出错率高

√ 静态路由不能动态感知网络变化,不会自动更新

√ 设备新增或删减,网络地址变更时,静态路由需要重新配置

√ 当网络拓扑发生变更时,维护工作量大,网络中断时间过长

解决方案

  • 动态路由
    √ 动态路由协议可以自动更新,快速适应网络拓扑的变化
  • 动态路由协议的特点
    √ 自动计算路由,无需手动配置
    √ 网络拓扑变更时,自动更新路由,无需手动配置
    √ 支持负载均衡,提高网络的可靠性
    √ 能够选择出最优的路由

02 OSPF概述

OSPF协议概述

  • OSPF协议概述
    √ OSPF(Open Shortest Path First):开放式最短路径优先
    √ 开放式:公有协议,所有厂商的设备都支持
    √ 最短路径优先:已最短的路径,最快的方式转发数据包
    √ 作用:动态感知全网状态,自动计算最优路由
    √ 应用:通常应用于企业内部和数据中心内部
    √ 工作在OSI模型第三层,数据封装在IP头部后面,协议号为89
    √ OSPF是基于链路状态的内部网关协议

OSPF协议优势

  • OSPF协议优势
    √ 利用"累计COST值"计算最优路由
    √ 采用组播形式收发部分协议报文,提高效率
    √ 引入区域概念,支持区域划分,降低设备压力
    √ 支持对等价路由进行负载分担,提高可靠性
    √ 支持报文认证,提高安全性

OSPF应用场景

  • OSPF应用场景:大型企业网络
  • OSPF基础概念:
    √ RouterID
    √ Area ID
    √ Cost

OSPF基础之Router Id

  • OSPF使用Router ID唯一的标识一台运行OSPF的路由器
    √ OSPF协议为路由设备设置的标识符
    √ Router ID确定方式:可以手动指定,也可以自动选举

OSPF基础之Area Id

  • Area用于标识一个OSPF的区域
    √ 将路由设备划分为不同的组,每个组用区域号(ArealD)来标识

    √ 网络规模大,路由表庞大,路由设备负担高,OSPF协议通过划分不同的区域来缩减路由表规模,降低路由设备负担。

OSPF区域

  • OSPF骨干区域
    √ 区域号为0,表示的就是"骨干区域"
  • OSPF非骨干区域
    √ 区域号不为0,表示的就是"非骨干区域"
    √非骨干区域必须和骨干区域"直接"相连,能实现"区域之间的互通"
  • OSPF区域的表示
    √ 通过十进制表示,例如区域0、1、2、3等
    √ 通过点分十进制表示,例如区域0.0.0.0、0.0.0.1、0.0.0.2等

OSPF基础之COST

  • Cost:开销
    √ OSPF使用Cost作为路由的度量值
    √ 每一个开启OSPF功能的物理接口都有一个Cost值,默认值是1

OSPF基础之累计COST值

  • OSPF路径累计开销值
    √ 流量从源网络到目的网络所经过所有路由器的出接口的cost总和
    √ R3的路由表中到达10.1.1.0/24的0SPF路由的C0ST是1+1+1=3

03 OSPF工作过程

OSPF工作原理

  • OSPF工作原理
    √ 建立OSPF邻居表
    √ 同步OSPF数据库
    √ 计算OSPF路由表

OSPF报文类型

建立邻居关系

  • OSPF使用Hello报文发现和建立邻居关系。
  • 在以太网链路上,缺省时,OSPF采用组播的形式发送Helo报文(目的地址224.0.0.5)。
  • OSPF Hello报文中包含了路由器的RouterID、邻居列表等信息。

04 OSPF单区域配置

OSPF单区域实验案例

案例需求

  • 需求:不同部门之间的PC互联互通
  • 如果只有1个区域,则必须为骨干区域:Area0

配置思路

  • 配置网络设备的接口IP地址和掩码
  • 配置OSPF进程号
  • 配置OSPF Router-id
  • 配置OSPF 区域号
  • 宣告接口的网段到OSPF

配置命令

  • 配置OSPF-R1
bash 复制代码
ospf 1             								    //指定OSPF 的"进程号:如果不指定默认是1
	area 0 									      	//进入OSPF的区域号
		network 192.168.1.0 0.0.0.255               //将 192.168.1.0/24宣告进入到区域0
  		network 192.168.12.0 0.0.0.255              //network后面跟的必须是直连路由
  • 配置OSPF-R2
bash 复制代码
ospf 1
	area 0
	network 192.168.12.0 0.0.0.255
	network 192.168.23.0 0.0.0.255
  • 配置OSPF-R3
bash 复制代码
ospf 1
	area 0
		network 192.168.23.0 0.0.0.255
		network 192.168.2.0 0.0.0.255

OSPF进程号

  • OSPF进程号:Process
    √ 0SPF进程号可以手动指定,如果未指定,则默认值为1
    √ 作用:在同一个设备上,区分不同的OSPF路由协议
    √ 在同一台设备上,进程号不同的OSPF协议相互隔离
    √ OSPF进程号只在本设备起作用,不在网络中传递
    √ 进程号范围<1-65535>

OSPF Router lD

  • RouterlD
    √ OSPF协议为路由设备取的名字,用于唯一的标识一台路由设备
    √ 特点:稳定,即一旦确定,就不会改变,除非重启OSPF进程
    √ RouterlD 可以手动指定的,也可以自动选举,建议手动指定
    √ 如果没有手动配置RouterID,则路由器使用Loopback接口中最大的IP地址作为RouterlD
    √ 如果没有配置Loopback接口,则路由器使用物理接口中最大的IP地址作为RouterID

OSPF邻居表解析

  • 查看 OSPF邻居表简要信息
bash 复制代码
[R1]displayospf peer brief
			OSPF Process 1 with RouterlD 192.168.1.254
			Peer Statistic Information
ArealD		   Interface      NeighborlD       State    
0.0.0.0	       G0/0/0		  192.168.12.2	   Full
# RouterID-表示OSPF协议为 R1 起的名字
# AreaID-表示R1当前建立的邻居关系所在的区域
# NeighborID-表示邻居路由器的OSPF RouterlD
# State-表示邻居路由器的状态,最终的完美状态是Full(完全邻接)

验证与测试

  • 验证与测试 OSPF
    √ display ospf peer brief ,查看OSPF 邻居表
    √ display ip routing-table protocol ospf ,查看OSPF 路由条目
    √ PC1>ping 192.168.2.1,通
    √ PC2>ping 192.168.1.1,通

05 邻居建立影响因素

实验拓扑

  • R1和R2配置OSPF,建立邻居

基础配置命令

  • 配置OSPF-R1
bash 复制代码
ospf l router-id 1.1.1.1
	area 0
		network 192.168.12.0 0.0.0.255
  • 配置OSPF-R2
bash 复制代码
ospf 1 router-id 2.2.2.2
	area 0
		network 192.168.12.0 0.0.0.255

邻居建立失败原因

  • 两台路由器的Router-id相同,不能建立邻居
bash 复制代码
[Rl]ospf l router-id 2.2.2.2<R1>reset ospf process				# 修改R1的router-id 和R2相同//重启ospf进程
<R1>displayospf peer brief										# 验证结果
#结论:两台路由器的router-id 不能相同
# 备注:验证完成,恢复配置,将R1的router-id 改回1.1.1.1
  • 两台路由器的Areaid 不同,不能建立邻居
bash 复制代码
[Rl]ospf 1[R1-ospf-1]area0
[R1-ospf-1-area0]undo network 192.168.12.0 0.0.0.255
[R1-ospf-1-area0]area 2														# 修改R1的区域号,和R2不同
[R1-ospf-1-area0]network 192.168.12.0 0.0.0.255
<R1>displayospf peer brief  												# 验证结果
# 结论:两台路由器的Areaid 必须相同
# 备注:验证完成,恢复R1的区域号
  • 两台路由器的互联接口的掩码不同,不能建立邻居
bash 复制代码
[R1]interface g0/0/0[R1-G0/0/0]undo ip address								# 删除原有IP地址
[R1-G0/0/0]ip address 192.168.12.125    									# 修改接口IP地址的掩码
<R1>displayospf peer brief													# 验证结果
# 结论:两台路由器互联的接口掩码不同,不能建立邻居
# 备注:验证完成,恢复R1的接口IP地址的掩码
  • 两台路由器的三层不通,不能建立邻居
bash 复制代码
[R1]interface g0/0/0//删除原有IP地址
[R1-G0/0/0]undo ip address
[R1-G0/0/0]ip address 192.168.13.1 24 					# 修改接口IP地址,导致三层无法互通
<R1>displayospf peer brief								# 验证结果
# 结论:两台路由器互联的接口三层不通,不能建立邻居
# 备注:验证完成,恢复R1的接口IP地址

06 OSPF多区域配置

大型网络中,单区域OSPF存在的问题

  • 为什么要划分多区域
  • 数据库庞大
  • 路由表庞大
  • 设备压力大,资源消耗高
  • 无法进行路由汇总

OSPF路由器类型

案例需求

  • 企业核心机房,连接不同的办公楼宇,实现不同楼宇互通

配置思路

  • 如图连接并配置设备接口IP地址
  • 将R1和R2属于设置为区域12,R5和R6设置为区域56
  • 将R2/R3/R4/R5设置为区域0,最终实现PC1和PC2的互通

配置命令

  • 配置OSPF-R1
bash 复制代码
ospf l router-id 1.1.1.1
	area 12
		network 192.168.12.0 0.0.0.255
		network 192.168.1.0 0.0.0.255
		quit
  • 配置OSPF-R2
bash 复制代码
ospf 1 router-id 2.2.2.2
	area 12
		network 192.168.12.0 0.0.0.255
	area 0
		network 192.168.23.0 0.0.0.255quit
  • 配置OSPF-R3
bash 复制代码
ospfl router-id 3.3.3.3
	area 0
		network 192.168.23.0 0.0.0.255
		network 192.168.34.0 0.0.0.255
		quit
  • 配置OSPF-R4
bash 复制代码
ospf 1 router-id 4.4.4.4
	area 0
		network 192.168.45.0 0.0.0.255
		network 192.168.34.0 0.0.0.255
		quit
  • 配置OSPF-R5
bash 复制代码
ospfl router-id 5.5.5.5
	area 0
		network 192.168.45.0 0.0.0.255
	area 56
		network 192.168.56.0 0.0.0.255
		quit
  • 配置OSPF-R6
bash 复制代码
ospf 1 router-id 6.6.6.6
	area 56
		network 192.168.56.0 0.0.0.255
		network 192.168.2.0 0.0.0.255
		quit

验证与测试

  • 验证与测试
bash 复制代码
display ospf peer brief 					   #查看 OSPF 邻居表
display ip routing-table protocol ospf 		   #查看OSPF 路由表
pc1>ping 192.168.2.1						   #通
display ospf brief					           #查看OSPF路由器的身份,如ABR

小结

  • 多区域的OSPF,最关键的是ABR的配置,实现区域之间互通
  • 在ABR上配置的时候,必须出现"区域0"的相关配置
  • 多区域的OSPF网络,非骨干区域必须与骨干区域直接相连
  • 路由器之间的直连网段,必须通过network命令宣告进OSPF

配置实例

1 OSPF单区域配置

2 邻居关系建立影响因素
3 OSPF多区域配置

1 OSPF单区域配置

1.1 问题

1)企业内网存在多个部门,分别属于不同的网段

2)使用最佳的技术方案,实现灵活的网络设计,支持网络规模的扩展

3)如图,配置设备 IP 地址

4)确保 PC-1 和 PC-2 可以互通

1.2 方案

搭建实验环境,如图所示。

1.3 步骤

实现此案例需要按照如下步骤进行。

1)配置终端设备 - PC1

地址:192.168.1.1

掩码:255.255.255.0

网关:192.168.1.254

2)配置终端设备 - PC2

地址:192.168.2.1

掩码:255.255.255.0

网关:192.168.2.254

3)配置网络设备 - R1

bash 复制代码
[R1]interface GigabitEthernet 0/0/1
[R1-GigabitEthernet 0/0/1] ip address 192.168.1.254 255.255.255.0
[R1-GigabitEthernet 0/0/1] quit
[R1]interface GigabitEthernet 0/0/0
[R1-GigabitEthernet 0/0/0] ip address 192.168.12.1 255.255.255.0
[R1-GigabitEthernet 0/0/0] quit

4)配置网络设备 - R2

bash 复制代码
[R2]interface gi0/0/0
[R2-GigabitEthernet 0/0/0] ip address 192.168.12.2 255.255.255.0
[R2-GigabitEthernet 0/0/0] quit
[R2]interface gi0/0/1
[R2-GigabitEthernet 0/0/1] ip address 192.168.23.2 255.255.255.0
[R2-GigabitEthernet 0/0/1] quit

5)配置网络设备 - R3

bash 复制代码
[R3]interface GigabitEthernet 0/0/0
[R3-GigabitEthernet 0/0/0] ip address 192.168.23.3 255.255.255.0
[R3-GigabitEthernet 0/0/0] quit
[R3]interface GigabitEthernet 0/0/1
[R3-GigabitEthernet 0/0/1] ip address 192.168.2.254 255.255.255.0
[R3-GigabitEthernet 0/0/1] quit

6)配置 OSPF 区域 0

bash 复制代码
[R1]ospf 1  router-id 1.1.1.1
[R1-ospf-1]area  0 
[R1-ospf-1-area-0.0.0.0]network  192.168.12.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]network  192.168.1.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]quit
[R2]ospf 2  router-id 2.2.2.2
[R2-ospf-2]area  0 
[R2-ospf-2-area-0.0.0.0]network  192.168.12.0 0.0.0.255
[R2-ospf-2-area-0.0.0.0]network  192.168.23.0 0.0.0.255
[R2-ospf-2-area-0.0.0.0]quit
[R3]ospf 3  router-id 3.3.3.3
[R3-ospf-3]area  0 
[R3-ospf-3-area-0.0.0.0]network  192.168.23.0 0.0.0.255
[R3-ospf-3-area-0.0.0.0]network  192.168.2.0 0.0.0.255
[R3-ospf-3-area-0.0.0.0]quit

2 邻居关系建立影响因素

2.1 问题

1)两台路由器的router-id 相同,不能建立邻居

2)两台路由器互连接口所属的Area id 不同,不能建立邻居

3)两台路由器互联接口的IP地址的掩码不同, 不能建立邻居

4)两台路由器三层不通,不能建立邻居

2.2 方案

搭建实验环境,如图所示。

2.3 步骤

实现此案例需要按照如下步骤进行。

1)配置OSPF - R1

bash 复制代码
[R1]interface GigabitEthernet 0/0/0
[R1-GigabitEthernet0/0/0]ip add 192.168.12.1 24
[R1-GigabitEthernet0/0/0]quit 
[R1]ospf 1 router-id 1.1.1.1
[R1-ospf-1]area 0    
[R1-ospf-1-area-0.0.0.0]network  192.168.12.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]quit

2)配置OSPF -- R2

bash 复制代码
[R2]interface GigabitEthernet 0/0/0
[R2-GigabitEthernet0/0/0]ip add 192.168.12.2 24
[R2-GigabitEthernet0/0/0]quit 
[R2]ospf 1 router-id 2.2.2.2
[R2-ospf-1]area 0    
[R2-ospf-1-area-0.0.0.0]network  192.168.12.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]quit

3)两台路由器的router-id 相同,不能建立邻居

bash 复制代码
[R1]ospf   1   router-id   2.2.2.2     //修改R1的router-id 和R2相同  
<R1>reset  ospf    process             //重启ospf 进程
<R1>display ospf  peer brief        //验证结果
<R1>display ospf  error             //验证结果

恢复默认:还原,恢复默认
[R1]ospf  1  router-id   1.1.1.1    //恢复默认 
<R1>reset  ospf   process             //重启ospf 进程
<R1>display ospf  peer brief        //验证结果

4)两台路由器互连接口所属的Area id 不同,不能建立邻居

bash 复制代码
[R1]ospf 1  router-id 1.1.1.1
[R1-ospf-1]area 0
[R1-ospf-1-area 0]undo  network 192.168.12.0  0.0.0.255
[R1-ospf-1-area 0]area  2       //修改R1的区域号,和R2不同
[R1-ospf-1-area 0]network  192.168.12.0  0.0.0.255
<R1>display ospf peer brief        //验证结果
<R1>display ospf  error             //验证结果

恢复默认:还原,恢复默认
[R1]ospf 1  router-id 1.1.1.1
[R1-ospf-1]area 2
[R1-ospf-1-area 0]undo  network 192.168.12.0  0.0.0.255
[R1-ospf-1-area 0]quit
[R1-ospf-1]undo area 2
[R1-ospf-1] area  0  
[R1-ospf-1-area 0]network  192.168.12.0  0.0.0.255
<R1>display ospf peer brief        //验证结果

5)两台路由器互联接口的IP地址的掩码不同, 不能建立邻居

bash 复制代码
[R1]interface  g0/0/0
[R1-G0/0/0]undo  ip address             //删除原有IP地址
[R1-G0/0/0]ip  address  192.168.12.1  25     //修改接口IP地址的掩码
<R1>display ospf peer brief            //验证结果
<R1>display ospf  error             //验证结果

恢复默认:还原,恢复默认
[R1]interface  g0/0/0
[R1-G0/0/0]ip  address  192.168.12.1  24    
<R1>display ospf peer brief            //验证结果

6)两台路由器三层不通,不能建立邻居

bash 复制代码
[R1]interface  g0/0/0
[R1-G0/0/0]undo  ip address             //删除原有IP地址
[R1-G0/0/0]ip  address  192.168.13.1  24     //修改接口IP地址,导致三层无法互通
<R1>display ospf peer brief            //验证结果
<R1>display ospf  error             //验证结果

恢复默认:还原,恢复默认
[R1]interface  g0/0/0
[R1-G0/0/0]ip  address  192.168.12.1  24      
<R1>display ospf peer brief             

3 OSPF多区域配置

3.1 问题

1)企业核心机房,连接不同楼宇,实现不同楼宇互通

2)企业核心机房设置为 OSPF 骨干区域

3)其他办公楼宇为 非骨干区域,通过路由器与核心机房互联互通

3.2 方案

搭建实验环境,如图所示。

3# 3.3 步骤

实现此案例需要按照如下步骤进行。

1)配置OSPF - R1

bash 复制代码
[R1]interface GigabitEthernet 0/0/0
[R1-GigabitEthernet0/0/0]ip add 192.168.12.1 24
[R1-GigabitEthernet0/0/0]quit 
[R1]interface GigabitEthernet 0/0/2
[R1-GigabitEthernet0/0/2]ip add 192.168.1.254 24
[R1-GigabitEthernet0/0/2]quit 
[R1]ospf 1 router-id 1.1.1.1
[R1-ospf-1]area 12    
[R1-ospf-1-area-0.0.0.12]network  192.168.12.0 0.0.0.255
[R1-ospf-1-area-0.0.0.12]network  192.168.1.0 0.0.0.255
[R1-ospf-1-area-0.0.0.12]quit

2)配置OSPF -- R2

bash 复制代码
[R2]interface GigabitEthernet 0/0/1
[R2-GigabitEthernet0/0/1]ip add 192.168.12.2 24
[R2-GigabitEthernet0/0/1]quit 
[R2]interface GigabitEthernet 0/0/0
[R2-GigabitEthernet0/0/0]ip add 192.168.23.2 24
[R2-GigabitEthernet0/0/0]quit 
[R2]ospf 1 router-id 2.2.2.2
[R2-ospf-1]area 12    
[R2-ospf-1-area-0.0.0.12]network  192.168.12.0 0.0.0.255
[R2-ospf-1-area-0.0.0.12]quit
[R2-ospf-1]area 0    
[R2-ospf-1-area-0.0.0.0]network  192.168.23.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]quit

3)配置OSPF -- R3

bash 复制代码
[R3]interface GigabitEthernet 0/0/1
[R3-GigabitEthernet0/0/1]ip add 192.168.23.3 24
[R3-GigabitEthernet0/0/1]quit 
[R3]interface GigabitEthernet 0/0/0
[R3-GigabitEthernet0/0/0]ip add 192.168.34.3 24
[R3-GigabitEthernet0/0/0]quit 
[R3]ospf 1 router-id 3.3.3.3
[R3-ospf-1]area 0    
[R3-ospf-1-area-0.0.0.0]network  192.168.23.0 0.0.0.255
[R3-ospf-1-area-0.0.0.0]network  192.168.34.0 0.0.0.255
[R3-ospf-1-area-0.0.0.0]quit

4)配置OSPF -- R4

bash 复制代码
[R4]interface GigabitEthernet 0/0/1
[R4-GigabitEthernet0/0/1]ip add 192.168.34.4 24
[R4-GigabitEthernet0/0/1]quit 
[R4]interface GigabitEthernet 0/0/0
[R4-GigabitEthernet0/0/0]ip add 192.168.45.4 24
[R4-GigabitEthernet0/0/0]quit 
[R4]ospf 1 router-id 4.4.4.4
[R4-ospf-1]area 0    
[R4-ospf-1-area-0.0.0.0]network  192.168.45.0 0.0.0.255
[R4-ospf-1-area-0.0.0.0]network  192.168.34.0 0.0.0.255
[R4-ospf-1-area-0.0.0.0]quit

5)配置OSPF -- R5

bash 复制代码
[R5]interface GigabitEthernet 0/0/1
[R5-GigabitEthernet0/0/1]ip add 192.168.45.5 24
[R5-GigabitEthernet0/0/1]quit 
[R5]interface GigabitEthernet 0/0/0
[R5-GigabitEthernet0/0/0]ip add 192.168.56.5 24
[R5-GigabitEthernet0/0/0]quit 
[R5]ospf 1 router-id 5.5.5.5
[R5-ospf-1]area 56    
[R5-ospf-1-area-0.0.0.56]network  192.168.56.0 0.0.0.255
[R5-ospf-1-area-0.0.0.56]quit
[R5-ospf-1]area 0    
[R5-ospf-1-area-0.0.0.0]network  192.168.45.0 0.0.0.255
[R5-ospf-1-area-0.0.0.0]quit

6)配置OSPF -- R6

bash 复制代码
[R6]interface GigabitEthernet 0/0/1
[R6-GigabitEthernet0/0/1]ip add 192.168.56.6 24
[R6-GigabitEthernet0/0/1]quit 
[R6]interface GigabitEthernet 0/0/2
[R6-GigabitEthernet0/0/2]ip add 192.168.2.254 24
[R6-GigabitEthernet0/0/2]quit
[R6]ospf 1 router-id 6.6.6.6
[R6-ospf-1]area 56    
[R6-ospf-1-area-0.0.0.56]network  192.168.56.0 0.0.0.255
[R6-ospf-1-area-0.0.0.56]network  192.168.2.0 0.0.0.255
[R6-ospf-1-area-0.0.0.56]quit

7)确保PC-1和 PC-2互通

bash 复制代码
PC-1>ping 192.168.2.1
PC-2>ping 192.168.1.1

课堂笔记

路由分类

  • 直连路由: 路由器到达接口所在网段的路由(自动计算)
  • 非直连路由
    静态路由: 由管理员手工配置的路由
    动态路由
  • IGP:内部网关路由协议-在同一个AS内部使用(在企业内部或者数据中心内部使用)
  • DV:距离矢量路由协议(逐渐弃用)
    • RIP(v1/v2)
    • IGRP-思科私有协议
    • EIGRP-思科私有协议
  • LS:链路状态路由协议
    • OSPF:开放式最短路径优先(企业用:功能多,可以精细化控制)
    • ISIS:中间系统到中间系统(数据中心用,转发能力强,大流量转发)
  • EGP:外部网关路由协议:在不同的AS之间使用(AS:自治系统)
  • BGP:边界网关协议

静态路由的不足

1)当企业网络规模过大,设备过多,网段过多,配置静态路由工作量大,效率低,容易出错

2)当企业网络拓扑发生变更时, 设备增加或减少时,IP地址发生变化时,有可能会需要删除原有的静态路由

重新配置静态路由,导致后期运维成本高,公司断网时间长

一、为什么会有OSPF

1、OSPF可以管理大型复杂政企网络,数据中心网络

2、OSPF快速检查网络变化,迅速更新路由,保证公司网络不中断,提高网络的可靠性

3、OSPF引入区域,可以支持网络扩展,降低设备压力,提高数据转发效率

4、OSPF 支持认证,能够增强网络的安全性

二、OSPF应用场景

主要应用在中大型政企园区网络或云数据中心

三、OSPF概述

  • OSPF是什么
    • 开放式最短路径优先协议,一种最受欢迎的动态路由协议
    • 版本:OSPFv2(IPv4) 和OSPFv3(IPv6)
    • OSPF位于OSI参考模型的第三层,数据封装在IP报头的后面
    • 协议号是89
  • 应用场景:主要应用在中大型政企园区网络或云数据中心
  • 作用:自动计算最优路由,实现网络互联互通

四、报文类型

-Hello :用于发现、建立、维护和断开邻居关系(交朋友)

-DBD :数据库描述报文: 用于描述数据库摘要信息(LSA头部信息)(发菜单)

-LSR :链路状态请求报文: 请求自己数据库中没有的LSA信息(我要)

-LSU :链路状态更新报文: 根据对方的请求信息,更新LSA给对方 (给你)

-LSACK :链路状态确认报文:收到对方的更新LSA信息后,进行确认(说谢谢)

五、OSPF区域

1、区域划分:

OSPF适用于大型网络,采用分层设计,分为骨干区域和非骨干区域。

2、OSPF 骨干区域

区域号为0,表示的就是"骨干区域"

3、OSPF 非骨干区域

区域号不为0,表示的就是"非骨干区域"

4、非骨干区域必须和骨干区域"直接"相连,能实现"区域之间的互通"

5、OSPF 区域的表示

通过十进制表示,例如区域 0、1、2、3等

通过点分十进制表示,例如区域 0.0.0.0 、0.0.0.1、0.0.0.2等

6、为什么要引入区域

对网络进行分区管理,降低设备负载压力,提高数据转发效率

六、OSPF工作过程

1) 建立邻居:邻居表

2) 同步数据库 :数据库

3) 计算路由 :路由表

七、OSPF的配置

bash 复制代码
[R1]ospf 1 router-id 1.1.1.1   :创建ospf 进程号,配置router-id
[R1-ospf-1]area 0                   : 配置ospf区域
[R1-ospf-1-area-0]network 192.168.1.0 255.255.255.0   :在区域中宣告接口的直连网段
[R1-ospf-1-area-0]network 192.168.12.0 0.0.0.255      :在区域中宣告接口的直连网段

八、OSPF邻居表解析

bash 复制代码
<R1>display ospf peer brief    //查看邻居表简要信息
   OSPF Process 1 with Router ID 1.1.1.1
      Peer Statistic Information
 ----------------------------------------------------------------------------
 Area Id          Interface                          Neighbor id       State    
 0.0.0.0          GigabitEthernet0/0/0             2.2.2.2          Full        
 ----------------------------------------------------------------------------

1、Process : 进程号

ospf 1 :指定ospf进程号1

1)作用:在同一个设备上,区分不同的ospf路由协议

2)通过不同的进程号所学习到的路由信息是不会自动相互传递的,

从而实现各个ospf 协议之间的隔离

3)ospf 进程号只在本地路由器起作用,不随报文在网络中传递,所以不同的路由器的进程号,可以相同,也可以不同

4)进程号范围 <1-65535>

2、Router ID

router-id 1.1.1.1 //指定router-id 为1.1.1.1

1)ospf协议给路由器起的一个名字,格式类似于IP地址(点分十进制)但是不是IP地址

2)在ospf 网络中,router-id 是唯一的标识一台路由器

3)router-id 的生产方式

选举规则:-手动指定:最优

-如果没有手动指定router-id ,会进行自动选举

&:自动选举

-首先选举本设备上的loopback接口的IP地址,选择IP地址最大的

--如果没有配置loopback 接口选举物理接口IP地址最大的

备注:自动选举的前提是,所有的接口同时运行ospf ,如果没有同时运行,那个接口先启用ospf,

就选择那个接口的地址号,做router-id

&:手动配置

huawei\] ospf 1 router-id 1.1.1.1 //手动指定的命令 备注:当路由器已选router-id 后,手修改router-id 并不会生效 为什么? ospf需要稳定,ospf稳定,网络才会稳定,一旦选举router-id,就不会被替代 -如果已经有了router-id ,后来又手动指定的router-id 想让新的router-id生效,怎么办? 重启ospf 进程: reset ospf process //在用户视图下执行命令 ### 3、Area Id :区域号 area 0.0.0.0 1)OSPF为了更好的管理一个庞大的网络,对网络进行了分层的设计,引入了区域的概念 :骨干层和非骨干层,骨干层用骨干区域表示, 非骨干层用非骨干区域表示 :所有的非骨干区域必须和骨干区域直接相连 2)OSPF 引入区域的作用是: 降低网络设备的负载压力,提高数据转发的效率 3)区域号的表示方式有两种 \&: 十进制数: 0-4294967295 \&:点分十进制: 0.0.0.0 - 255.255.255.255 4)区域分为两类: \&: 骨干区域: 0 \&: 非骨干区域 : 不为 0 ### 4、Interface :使用那个接口与对端建立的邻居 ### 5、Neighbor id :邻居的Router-id ### 6、State :邻居之间的状态 full :完美的邻居--也叫邻接 备注: two-way : 双向通信: 邻居状态 full : 数据库同步完成 : 完全邻接状态(最好的邻居的状态) ## 九、Hello报文解析 ### 1、hello报文解析 1) 谁来发这个报文: 所有运行ospf的路由器都会发hello报文 2) 这个报文发给谁: 发给组播IP:224.0.0.5 报文源IP:路由器接口的IP地址,   报文目的IP:224.0.0.5 3) hello报文的作用: -第一个hello报文: 发现邻居:hello报文中只有本机的router-id ,没有邻居的router-id -第二个hello报文: 建立邻居:hello报文中有本机的router-id,也有邻居的router-id -后续的hello报文: 维护邻居: 周期性发送,在广播型网络中,默认10秒发1次 -如果40秒内没有收到邻居发来的hello报文,则断开邻居 4) hello报文为什么使用组播方式发送: -减少报文数量 -减少带宽占用 -降低设备压力 -加快邻居建立速度 ### 2、hello报文抓包 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/f8cb33feaa2b40b7a4cb67c9e0982109.png) #### 报文字段解析: ##### OSPF Header 头部报文解析: ###### 【 OSPF Version 】 这个字段,指的是OSPF的版本 版本2------针对的是IPv4的网络 版本3------针对的是IPv6的网络 ###### 【 Message Type 】 消息类型 OSPF中,一共有五种报文:Hello、DD、LSR、LSU、LSAck 分别对应了1、2、3、4、5 ###### 【 Packet Length 】 报文的长度,不可修改 ###### 【 Source OSPF Router 】 发送这个Hello报文的路由器的Router ID 而在一个OSPF网络中,Router ID就是用来唯一标识一台路由器的 所以,不同路由器的Router ID不能相同 ###### 【 Area ID 】 发送这个Hello报文的接口,所在的区域 两台路由器,想要建立邻居,它们的互联接口,必须在同一个区域中 ###### 【 Packet Checksum 】 报文的校验和,用来校验报文是否完整 ###### 【 Auth Type/Data 】 这里指的是OSPF的认证 认证的类型 认证的数据 ##### OSPF Hello Packet 报文解析: ###### 【 Network Mask 】 子网掩码 默认情况下:两个建立OSPF邻居的路由器,互联接口的掩码必须相同 ###### 【 Hello Interval 】 Hello时间间隔/Hello计时器/Hello时间 就是发送这个Hello报文的路由器,多长时间发一个Hello包 默认情况下:Hello时间为10秒 两台路由器,想要建立OSPF邻居,它们的Hello时间必须相同 ###### 【 Option 】 特殊标记位 不同的区域类型的标记位也不同 想要建立OSPF邻居,Option位必须相同 ###### 【 Router Priority 】 DR优先级,用于DR选举 如果两台想要建立OSPF邻居的路由器,在互联接口上都配置了自己的DR优先级为0,那么,两台路由器都不会参加DR选举 而在需要DR的网络中,选举不出DR,邻居就无法继续建立 所以,两台设备DR优先级为0,在需要DR的网络中,邻居状态会卡在2-way ###### 【 Router Dead Interval 】 Dead时间/死亡时间 默认情况下:是Hello时间的4倍=40秒 Dead时间会随着Hello时间的改变而改变,但还是4倍关系 所以,我们如果更改Dead时间,一定要注意是否受Hello时间影响, 即:我们需要单独更改Dead时间(手动配置的Dead时间优先于默认情况------4倍Hello时间) ###### 【Designated router 】 : DR :指定路由器 ###### 【Backup Designated router】 :BDR :备份指定路由器 ###### 【Active Neighbor 】: 活跃的邻居,我认可的邻居 ## 十、邻居建立失败的原因(一同两不三不通) 1、两台设备三层不通,OSPF邻居无法建立 2、两台设备互联接口IP地址的掩码不同,(广播型网络)OSPF邻居无法建立 【特殊情况:P2P(点到点网络)两端设备掩码不同,OSPF邻居可以建立】 3、两台设备router-id 相同,OSPF邻居无法建立 4、两台设备互联的接口所在的区域不同,OSPF邻居无法建立 ## 十一、OSPF路由器类型 区域内路由器:路由器所有的接口都在同一个区域内 骨干路由器: 路由器只要有一个接口属于骨干区域 区域边界路由器(ABR):连接骨干区域和非骨干区域的路由器 自治系统边界路由器(ASBR):引入外部路由的路由器

相关推荐
用户962377954484 天前
VulnHub DC-3 靶机渗透测试笔记
安全
叶落阁主5 天前
Tailscale 完全指南:从入门到私有 DERP 部署
运维·安全·远程工作
用户962377954487 天前
DVWA 靶场实验报告 (High Level)
安全
数据智能老司机7 天前
用于进攻性网络安全的智能体 AI——在 n8n 中构建你的第一个 AI 工作流
人工智能·安全·agent
数据智能老司机7 天前
用于进攻性网络安全的智能体 AI——智能体 AI 入门
人工智能·安全·agent
用户962377954487 天前
DVWA 靶场实验报告 (Medium Level)
安全
red1giant_star7 天前
S2-067 漏洞复现:Struts2 S2-067 文件上传路径穿越漏洞
安全
用户962377954487 天前
DVWA Weak Session IDs High 的 Cookie dvwaSession 为什么刷新不出来?
安全
cipher9 天前
ERC-4626 通胀攻击:DeFi 金库的"捐款陷阱"
前端·后端·安全
一次旅行12 天前
网络安全总结
安全·web安全