OSPF——基于链路状态的协议,具有收敛快、路由无环、扩展性好
原理:通过相互通告自己的路由信息,泛洪给所有的交换机,结合整个网络进行SPF算法,得出所有网段的最短路径
OSPF支持区域划分,区域是从逻辑将路由器划分为不同的组,每个组用区域号(Area ID)来标识。每个运行OSPF的接口必须指明属于哪一个区域。
骨干区域——区域ID为0,负责在非骨干区域之间发布区域间的路由信息。在一个OSPF区域中有且只有一个骨干区域。
8.1 OSPF单区域配置
案例:该公司有三个办公区,每个办公区放置一台路由器,3台路由器都互联互通,所有路由器都需要部署路由协议,考虑到未来的扩展性,使用OSPF协议。
1.基础配置与测试
测试各直连链路的连通性(如:pc1的ping172.16.20.3)
2.部署单区域OSPF
ospf 1 //创建编号为1的ospf协议
area 0 //创建区域0
使用network命令来指定运行OSPF协议的接口和接口所属的区域
Display ospf interface //查看配置OSPF接口通告是否正确
可以观察到本地OSPF进程使用的Router-ID是172.16.1.254。在此进程下,有3个接口加入了OSPF进程。
"Type”——为以太网默认的广播网络类型;
"State”——为该接口当前的状态,显示为DR状态,即表示为这3个接口在它们所在的网段中都被选举为DR。
接下来在R2和R3上做相应配置,配置方法和R1相同,不再赘述。
Display ospf peer //查看OSPF邻居状态
通过Router-ID可以查看邻居的路由器标识;
通过Address可以查看邻居的OSPF接口IP地址:
通过State可以查看目前与该路由器的OSPF邻居状态;
通过Priority可以查看当前该邻居OSPF接口的DR优先级等。
Display ip routing-table protocol ospf //查看R1上的OSPF路由表
“Destination/Mask”标识了目的网段的前缀及掩码,
“Proto”标识了此路由信息是通过OSPF协议获取的,
“Pre”标识了路由优先级,
“Cost”标识了开销值,
“NextHop”标识了下一跳地址,
“Interface”标识了此前缀
8.2 OSPF多区域配置
实例:R1、R2、R3、R4为总部核心区域设备(区域为0),R5与PC1属于分支机构A(区域1),R6与PC2属于新增分支机构B(区域2),pc3与pc4属于总部管理员管理网络设备
1.设置好基本配置检查连通性(pc1的ping 10.0.15.5)
2.配置骨干区域路由器
在R1、R2、R3、R4创建OSPF,并在区域0视图下
3.配置非骨干区域路由器
8.3 配置OSPF的认证
OSPF的两种认证方式——区域认证和链路认证
区域认证——区域中所有路由器认证模式和口令必须一致。
链路认证——可专门针对某个邻居设置单独的认证模式和密码
链路认证与区域认证同时配置了,优先使用链路认证
认证方式:
简单验证模式(认证密钥和密钥ID都是明文传输)、
MD5验证模式(密钥经过MD5加密)、
Key chain验证模式(可以同时配置多个密钥,并可设置单独的生效周期)
OSPF区域明文认证:
在ospf-区域模式下
authentication-mode simple plain 密码 //简单验证模式 (没有plain参数,查看密码会加密)
display this //显示验证配置
//R1配置了验证,R2没配置,连接就会断开连接
OSPF区域密文认证:
在ospf区域模式下
authentication-mode md5 1 密码 //MD5验证模式,验证字标识符为1
配置OSPF链路认证:
如果采用链路认证的方式,就需要在同一OSPF的链路接口下都配置链路认证的命令,设置验证模式和口令等参数;
在端口模式下
ospf authentication-mode md5 1 密码 //配置链路认证,配置使用MD5验证模式,验证字标识符为1
OSPF被动接口配置
OSPF被动接口也称抑制接口,成为被动接口后,将不会接收和发送OSPF报文。
在OSPF模式下:
silent-interface 端口号 //配置单个OSPF被动接口
silent-interface all // //配置所有OSPF被动接口
理解OSPF Router-ID
如果存在配置了IP地址的Loopback接口,则选择Loopback接口地址中最大的地址作为Router-ID;如果没有己配置IP地址的Loopback接口,则从其他接口的IP地址中选择最大的地址作为Router-ID(不考虑接口的Up/Down状态)。
interface lookback 0
ip addres 1.1.1.1 32 //
display Router-ID //查看当前设备的Router-ID
Router-ID 1.1.1.1 //设置Router-ID
ospf 1 router-id 1.1.1.1//配置OSPF协议的私有Router-ID,如果不配置,则默认使用全局下的Router-ID。
reset ospf process //重启ospf进程
OSPF开销值、协议优先级及计时器的修改
在ospf模式下 preference 优先级 //设置OSPF协议优先级
在端口模式下 ospf cost 开销值 //设置OSPF开销值
在端口模式下 ospf timer hello 时间值
ospf timer dead 时间值