OSPF配置学习笔记

news2025/1/13 15:36:51

1.OSPF基础配置命令

1.1(系统视图)创建并运行OSPF进程

[Huawei] ospf [ process-id | router-id router-id ]

porcess-id用于标识OSPF进程,默认进程号为1。OSPF支持多进程,在同一台设备上可以运行多个不同的OSPF进程,它们之间互不影响,彼此独立。

router-id用于手工指定设备的ID号。如果没有通过命令指定ID号,系统会从当前接口的IP地址中自动选取一个作为设备的ID号。

1.2(OSPF视图)创建并进入OSPF区域

[Huawei-ospf-1] area area-id

area命令用来创建OSPF区域,并进入OSPF区域视图。

area-id可以是十进制整数或点分十进制格式。

采取整数形式时,取值范围是0~4294967295。

1.3(OSPF区域视图)指定运行OSPF的接口

[Huawei-ospf-1-area-0.0.0.0] network network-address wildcard-mask

network命令用来指定运行OSPF协议的接口和接口所属的区域。

network-address为接口所在的网段地址。

wildcard-mask为IP地址的反码,相当于将IP地址的掩码反转(0变1,1变0),例如0.0.0.255表示掩码长度24 bit。

1.4(接口视图)配置OSPF接口开销

[Huawei-GigabitEthernet0/0/0] ospf cost cost

ospf cost命令用来配置接口上运行OSPF协议所需的开销。缺省情况下,OSPF会根据该接口的带宽自动计算其开销值cost取值范围是1~65535。

1.5(OSPF视图)设置OSPF带宽参考值

[Huawei-ospf-1] bandwidth-reference value

bandwidth-reference命令用来设置通过公式计算接口开销所依据的带宽参考值。value取值范围是1~2147483648,单位是Mbit/s,缺省值是100Mbit/s。

1.6(接口视图)设置接口在选举DR时的优先级

[Huawei-GigabitEthernet0/0/0] ospf dr-priority priority

ospf dr-priority命令用来设置接口在选举DR时的优先级。

priority值越大,优先级越高,取值范围是0~255。

2.OSPF配置案例一

2.1案例描述:

有三台路由器R1、R2和R3,其中R1和R3分别连接网络1.1.1.1/32和3.3.3.3/32(LoopBack0模拟),现需要使用OSPF实现这两个网络的互通。

OSPF参数规划:OSPF进程号为1。R1、R2和R3的Router ID分别为1.1.1.1、2.2.2.2和3.3.3.3。

具体拓扑如下:

配置过程分为三个步骤:配置设备接口、配置OSPF和验证结果。

2.2根据规划配置R1、R2和R3接口IP地址。

2.2.1配置R1的接口

sys

undo info-center enable

sysname R1

interface LoopBack0

 ip address 1.1.1.1 255.255.255.255

 quit

interface GigabitEthernet0/0/0

 ip address 10.1.12.1 255.255.255.252

 quit

2.2.2配置R2的接口

sys

undo info-center enable

sysname R2

interface GigabitEthernet0/0/0

 ip address 10.1.12.2 255.255.255.255

 quit

interface GigabitEthernet0/0/1

 ip address 10.1.23.1 255.255.255.252

 quit

2.2.3配置R3的接口

sys

undo info-center enable

sysname R3

interface LoopBack0

 ip address 3.3.3.3 255.255.255.255

 quit

interface GigabitEthernet0/0/0

 ip address 10.1.23.2 255.255.255.252

 quit

2.3配置OSPF

配置步骤:

创建并运行OSPF进程;

创建并进入OSPF区域;

指定运行OSPF的接口。

2.3.1配置R1 OSPF协议

ospf 1 router-id 1.1.1.1

area 0

network 1.1.1.1 0.0.0.0

network 10.1.12.0 0.0.0.3    #注意反掩码

quit

quit

2.3.2配置R2 OSPF协议

OSPF多区域的配置请注意在指定区域下通知相应的网段。

ospf 1 router-id 2.2.2.2

area 0

network 10.1.12.0 0.0.0.3

area 1

network 10.1.23.0 0.0.0.3

quit

quit

2.3.3配置R3 OSPF协议

ospf 1 router-id 3.3.3.3

area 1

network 3.3.3.3 0.0.0.0

network 10.1.23.0 0.0.0.3

quit

quit

2.4结果验证

2.4.1在路由器R2上查看OSPF邻居表:

display ospf peer brief

2.4.2在路由器R1上查看路由表,并执行从源1.1.1.1 ping 3.3.3.3。

display ip routing-table

<R1>ping -a 1.1.1.1 3.3.3.3

3.OSPF配置案例二

单区域OSPF配置

3.1需求:配置单区域OSPF确保全网互通;针对R1-R2之间的链路,确保R1选举为DR;假设R1-R2之间带宽较低,确保1.1互访2.2的数据优先经R3转发。

OSPF参数规划:OSPF进程号为1。R1、R2和R3的Router ID分别为1.1.1.1、2.2.2.2和3.3.3.3。

具体拓扑如下:

3.2根据规划配置R1、R2和R3接口IP地址。

3.2.1配置R1的接口

sys

un in en

sysn R1

int loop 0

ip add 1.1.1.1 32

int e0/0/0

ip add 12.1.1.1 30

int e0/0/1

ip add 13.1.1.1 30

quit

3.2.2配置R2的接口

sys

un in en

sysn R2

int loop 0

ip add 2.2.2.2 32

int e0/0/0

ip add 12.1.1.2 30

int e0/0/1

ip add 23.1.1.1 30

quit

3.2.3配置R3的接口

sys

un in en

sysn R3

int loop 0

ip add 3.3.3.3 32

int e0/0/0

ip add 13.1.1.2 30

int e0/0/1

ip add 23.1.1.2 30

quit

3.3配置OSPF

对网络通告做精确的配置

3.3.1配置R1 OSPF协议

ospf 1 router-id 1.1.1.1

area 0

network 1.1.1.1 0.0.0.0

network 12.1.1.1 0.0.0.0

network 13.1.1.1 0.0.0.0

quit

quit

3.3.2配置R2 OSPF协议

ospf 1 router-id 2.2.2.2

area 0

network 2.2.2.2 0.0.0.0

network 12.1.1.2 0.0.0.0

network 23.1.1.1 0.0.0.0

quit

quit

3.3.3配置R3 OSPF协议

ospf 1 router-id 3.3.3.3

area 0

network 3.3.3.3 0.0.0.0

network 13.1.1.2 0.0.0.0

network 23.1.1.2 0.0.0.0

quit

quit

3.4配置R1接口优先级

因为R1的OSPF先配置,所以现在的R1是DR,当R1重启,那么就不一定是R1了。

查看OSPF邻居,可以看出R1为DR,而R2是BDR。

display ospf peer

当我们把R1和R2 重启,那么根据DR和BDR的选举规则,R2的router-id大,因此R2作为DR,R1作为BDR。

想要R1、R2之间选举R1作为DR,那么需要修改R1的DR优先级,优先级值越小越优。在R1的e0/0/0接口下配置,接着再把R1接口关闭重启,等待选举完成,通过查看邻居命令即可看到R1成功选举为DR。

int e0/0/0

ospf dr-priority 5

shutdown

undo shutdown

quit

display ospf peer

3.5修改OSPF Cost实现选路

通过在R1上查看路由表可看到,R1访问R2其下一跳是走12.1.1.2的,而不是经过R3。

要实现经过R3,需要把R1去往R2的开销修改大一点;去往R2的开销值配置是在R1的e0/0/0接口下配置:

int e0/0/0

ospf cost 3

配置完成,查看路由表可以看到去往2.2的下一条走13.1.1.2了,这只是去包的路由,还需要配置R2访问R1的开销修改,不然的话R2达到R1的回包路由下一跳是12.1.1.1。

在R2上查看路由表:

在R2的e0/0/0接口修改OSPF开销值:

int e0/0/0

ospf cost 3

配置完之后,R2发送回复报文就经过R3到达R1了。

3.6结果验证

3.6.1在路由器R1上查看OSPF邻居表

display ospf peer brief

3.6.2执行从源1.1.1.1 ping 2.2.2.2 & 3.3.3.3

3.7思考:

3.7.1将R2 OSPF进程号改为2是否影响ospf邻居建立?

即使把进程号1改为进程号2,进程号只是在本地(路由器本身)有效,不影响ospf邻居建立。因为OSPF支持多进程,在同一台设备上可以运行多个不同的OSPF进程,它们之间互不影响,彼此独立。

可以实际操作看看,我们把ospf 1删除掉,重新配置ospf 2,配置完成在通过查看ospf邻居摘要信息,可以看到与邻居的状态是Full。

[R2]undo ospf 1

Warning: The OSPF process will be deleted. Continue? [Y/N]:y

[R2]ospf 2

[R2-ospf-2]area 0

[R2-ospf-2-area-0.0.0.0]network 2.2.2.2 0.0.0.0

[R2-ospf-2-area-0.0.0.0]network 12.1.1.2 0.0.0.0

[R2-ospf-2-area-0.0.0.0]network 23.1.1.1 0.0.0.0

[R2-ospf-2-area-0.0.0.0]quit

[R2-ospf-2]quit

[R2]display ospf peer brief

3.7.2不修改OSPF Cost和参考带宽的前提下如何实现选路控制?(提示:可以增加静态路由)

首先删除掉R1和R2的e0/0/0接口下的ospf cost:

R1:

int e0/0/0

undo ospf cost

R2:

int e0/0/0

undo ospf cost

接着通过配置静态路由,调整静态路由的优先级比ospf的小,优先级值越小越优,假设静态路由的优先级配置为8,我们要记住既要配置去的静态路由,也要记得配置回来的路由,不要配置漏了。

(1)在R1上配置一条静态路由去往R2的,下一跳为13.1.1.2,优先级为8:

ip route-static 2.2.2.2 32 13.1.1.2 preference 8

(2)在R3上配置一条静态路由去往R2的,下一跳为23.1.1.1,优先级为8:

ip route-static 2.2.2.2 32 23.1.1.1 preference 8

(3)上述两步配置完,在R1上查看路由表,可以看到1.1到2.2已经变更路由方向,而不是直接下一跳为12.1.1.2。

(4)但是2.2去往1.1的路由下一跳还是12.1.1.1,因此我们下一步要配置回包路由

(5)在R2上配置一条静态路由去往R1的,下一跳为23.1.1.2,优先级为8:

ip route-static 1.1.1.1 32 23.1.1.2 preference 8

(6)在R3上配置一条静态路由去往R1的,下一跳为13.1.1.1,优先级为8:

ip route-static 1.1.1.1 32 13.1.1.1 preference 8

(7)配置完第(5)和第(6)的操作之后,在R2上查看路由表,可以看到2.2到1.1已经变更路由方向,而不是直接下一跳为12.1.1.1。

3.7.3一台路由器不同的接口是否可以担任不同的角色?

例如:R1 e0/0/0 DR,R1 e0/0/1 BDR。

可以的。只要在同一个广播域中都会去选举DR和BDR的,比如R1-R2之间,R1-R3之间和R2-R3之间都是要去选举DR和BDR的。

在R1查看邻居信息可以看到R1的e0/0/0接口是作为R1与R2之间的DR;

在R3上查看邻居信息可以看到R1的e0/0/1接口是作为R1与R3之间的BDR。

4.OSPF配置案例三

多区域OSPF配置

4.1需求:配置多区域OSPF确保全网互通

具体拓扑如下:

4.2配置接口的IP地址

4.2.1配置R1的接口

sys

un in en

sysn R1

int loop 0

ip add 1.1.1.1 32

int e0/0/0

ip add 12.1.1.1 30

quit

4.2.2配置R2的接口

sys

un in en

sysn R2

int loop 0

ip add 2.2.2.2 32

int e0/0/0

ip add 12.1.1.2 30

int e0/0/1

ip add 23.1.1.1 30

quit

4.2.3配置R3的接口

sys

un in en

sysn R3

int loop 0

ip add 3.3.3.3 32

int e0/0/0

ip add 23.1.1.2 30

int e0/0/1

ip add 34.1.1.1 30

quit

4.2.4配置R4的接口

sys

un in en

sysn R4

int loop 0

ip add 4.4.4.4 32

int e0/0/0

ip add 34.1.1.2 30

int e0/0/1

ip add 45.1.1.1 30

quit

4.2.5配置R5的接口

sys

un in en

sysn R5

int loop 0

ip add 5.5.5.5 32

int e0/0/0

ip add 45.1.1.2 30

quit

4.3配置OSPF

4.3.1配置R1 OSPF协议

ospf 1 router-id 1.1.1.1

 area 0.0.0.1

  network 1.1.1.1 0.0.0.0

  network 12.1.1.1 0.0.0.0

quit

quit

4.3.2配置R2 OSPF协议

ospf 1 router-id 2.2.2.2

 area 0.0.0.0

  network 2.2.2.2 0.0.0.0

  network 23.1.1.1 0.0.0.0

 area 0.0.0.1

  network 12.1.1.2 0.0.0.0

quit

quit

4.3.3配置R3 OSPF协议

ospf 1 router-id 3.3.3.3

 area 0.0.0.0

  network 3.3.3.3 0.0.0.0

  network 23.1.1.2 0.0.0.0

  network 34.1.1.1 0.0.0.0

quit

quit

4.3.4配置R4 OSPF协议

ospf 1 router-id 4.4.4.4

 area 0.0.0.0

  network 4.4.4.4 0.0.0.0

  network 34.1.1.2 0.0.0.0

 area 0.0.0.2

  network 45.1.1.1 0.0.0.0

quit

quit

4.3.5配置R5 OSPF协议

ospf 1 router-id 5.5.5.5

 area 0.0.0.2

  network 5.5.5.5 0.0.0.0

  network 45.1.1.2 0.0.0.0

quit

quit

4.3.6查看路由表,并执行从源1.1.1.1 ping 5.5.5.5看是否实现全网互通

display ip routing-table

ping -a 1.1.1.1 5.5.5.5

4.3.7查看R2的LSDB

dis ospf lsdb

4.4思考:

4.4.1 R1和R5 LSDB是否相同?

不相同,因为R1和R5处于不同的区域中,所以R1和R5的LSDB是不同的。

R1的LSDB:

dis ospf lsdb

R5的LSDB:

dis ospf lsdb

4.4.2 R2和R4在Area 0 中的LSA是否相同

因为R2和R4都在区域0中,那么其在区域0的LSA是相同的。

R2:

dis ospf lsdb

R4:

dis ospf lsdb

4.4.3 R1路由表中去往5.5.5.5/32的cost是多少?

R1路由表中去往5.5.5.5/32的cost是4。

可以在R1上查看路由表到达5.5.5.5/32的开销值。

查看当前接口的开销:环回接口的开销值默认是0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2064455.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[000-01-022].第09节:RabbitMQ中的消息分发策略

我的后端学习大纲 RabbitMQ学习大纲 1.不公平分发&#xff1a; 1.1.什么是不公平分发&#xff1a; 1.在最开始的时候我们学习到 RabbitMQ 分发消息采用的轮训分发&#xff0c;但在某种场景下这种策略并不是很好&#xff0c;比方说有两个消费者在处理任务&#xff0c;其中有个…

【机器学习】联邦学习技术

欢迎来到 破晓的历程的 博客 ⛺️不负时光&#xff0c;不负己✈️ 文章目录 引言联邦学习的定义与原理联邦学习的用例联邦学习示例与代码 引言 在大数据时代&#xff0c;数据隐私和安全成为了一个日益重要的议题。传统的机器学习模型训练通常需要集中大量数据到一个中心服务器…

【自然语言处理】 构建文本对话系统

构建文本对话系统的框架如下&#xff1a; 根据聊天系统目的功用的不同&#xff0c;可分成三大类型&#xff1a; 闲聊式机器人&#xff1a;较有代表性的有微软小冰、微软小娜、苹果的 Siri、小 i 机器人等&#xff0c;主要以娱乐为目的。 **知识问答型机器人&#xff1a;**知识…

Linux别名与用户管理体系

一、别名 1、概述 别名&#xff0c;给命令进行设置 一般用于给命令设置一个昵称/爱称 主要应用场景: 给常用命令设置个快捷方式&#xff0c;使用简单方便给危险命令加上的防护措施 查看系统已有的别名 [rootyunwei ~]# alias alias cpcp -i alias egrepegrep --coloraut…

[alien Invasion]python小游戏阶段总结

以后可能还会进行代码重构&#xff0c;以最终版本为准 本篇文章旨在理清程序脉络&#xff0c;方便以后写类似的程序时提供一个习惯的思路 未经允许&#xff0c;禁止转载 实体区 ship.py import pygame class Ship():def __init__(self,screen,ai_settings):#储存以便后续使…

RocketMQ广播模式消费失败是否会重试?

文章目录 前言继续广播和集群模式的消费流程集群模式&#xff08;默认的&#xff09;广播模式小结 push和pull介绍源码展示 偏移量保存失败情况1. 网络问题2. Consumer本地问题3. 消费进度记录器问题4. 程序设计问题5. 异常终止6. 持久化策略问题7. 同步问题 源码解析OffsetSto…

亚马逊测评号生存法则:如何抵御亚马逊封号风波?

距离黑五购物狂欢节还剩99天&#xff0c;相信各位商家都在紧锣密鼓的筹备相关事宜&#xff0c;然而&#xff0c;亚马逊的封号风波再次席卷而来。那如何在这场风暴中让亚马逊矩阵测评号安全航行亦或是脱颖而出呢&#xff1f;本文将给你一个答案&#xff0c;并帮助你的亚马逊店铺…

【PyTorch快速入门教程】03 PyTorch基础知识

在PyTorch中&#xff0c;最小的计算单元是张量&#xff08;tensor&#xff09;。因此关于张量的学习还是至关重要的。通过本章节学习&#xff0c;希望你对张量有一个更清晰的了解。 文章目录 1 什么是Tensor2 PyTorch中Tensor使用2.1 创建Tensor2.1.1 直接创建Tensor2.1.2 间接…

anaconda上安装pytorch

1、选择anaconda prompt 2、创建虚拟环境 3、激活进入虚拟环境 4、安装pytorch 怎么得到上面的这串命令&#xff1f; 输入nvidia-smi&#xff0c;查看cuda的版本号为11.7 我这里选择安装cuda的版本号为11.3&#xff0c;满足向下兼容即可。 在安装深度学习环境时&#xff0c;要…

探索《黑神话·悟空》背后的AI技术支持:英伟达全景光线追踪技术、DLSS 3.5 与帧生成

引言 2023 年&#xff0c;游戏《黑神话悟空》以其震撼的视觉效果和深度沉浸的游戏体验&#xff0c;成为全球玩家热议的焦点。这款游戏在发布初期就取得了惊人的销量&#xff1a;预售阶段便突破 120 万套&#xff0c;而发售首日更是达到 450 万份的惊人成绩。这个现象级作品背后…

走进 “星星的孩子” 的世界:理解与关爱儿童自闭症

在这个充满生机与活力的世界里&#xff0c;有一群特殊的孩子&#xff0c;他们仿佛来自遥远的星球&#xff0c;沉浸在自己的独特世界中&#xff0c;难以与外界进行有效的沟通和互动。他们是自闭症儿童&#xff0c;也被称为 “星星的孩子”。 自闭症&#xff0c;又称孤独症谱系障…

Linux 软件编程 数据库

1. 大批量数据存储和管理时使用数据库 2.创建表 create table 表名称(列1 数据类型, 列2 数据类型, ...); 3.插入表 insert into 表名称 values(值1, 值2, ...); 4.查看表 select 列1,列2,... from 表名称 where 匹配条件 order by 列名称 asc/desc; 5.删除表 delete from …

种田RPG游戏(五)

一、重新设置物品栏 1、打开Scripts-Inventory文件新建 ItemSlotData.cs using System.Collections; using System.Collections.Generic; using UnityEngine;[System.Serializable] //单独的类 public class ItemSlotData {public ItemData itemData;//ItemData对象&#xff…

Java 入门指南:Queue 接口

Collection 接口 Collection 接口提供了一系列用于操作和管理集合的方法&#xff0c;包括添加、删除、查询、遍历等。它是所有集合类的根接口&#xff0c;包括 List、Set、Queue 等。 Collection 接口常见方法 add(E element)&#xff1a;向集合中添加元素。 addAll(Collecti…

大模型笔记之-XTuner微调个人小助手认知

前言 使用XTuner 微调个人小助手认知 一、下载模型 #安装魔搭依赖包 pip install modelscope新建download.py内容如下 其中Shanghai_AI_Laboratory/internlm2-chat-1_8b是魔搭对应的模型ID cache_dir/home/aistudio/data/model’为指定下载到本地的目录 from modelscope im…

Stable Diffusion的微调方法原理总结

目录 1、Textural Inversion&#xff08;简易&#xff09; 2、DreamBooth&#xff08;完整&#xff09; 3、LoRA&#xff08;灵巧&#xff09; 4、ControlNet&#xff08;彻底&#xff09; 5、其他 1、Textural Inversion&#xff08;简易&#xff09; 不改变网络结构&…

Ciallo~(∠・ω・ )⌒☆第二十五篇 Redis

Redis 是一个高性能的键值存储数据库&#xff0c;它能够在内存中快速读写数据&#xff0c;并且支持持久化到磁盘。它被广泛应用于缓存、队列、实时分析等场景。 一、启动redis服务器 要打开redis服务器&#xff0c;需要在终端中输入redis-server命令。确保已经安装了redis&…

【Java】/* 链式队列 和 循环队列 - 底层实现 */

一、链式队列 1. 使用双向链表实现队列&#xff0c;可以采用尾入&#xff0c;头出 也可以采用 头入、尾出 (LinkedList采用尾入、头出) 2. 下面代码实现的是尾入、头出&#xff1a; package bageight;/*** Created with IntelliJ IDEA.* Description:* User: tangyuxiu* Date: …

mOTA v2.0

mOTA v2.0 一、简介 本开源工程是一款专为 32 位 MCU 开发的 OTA 组件&#xff0c;组件包含了 bootloader 、固件打包器 (Firmware_Packager) 、固件发送器 三部分&#xff0c;并提供了基于多款 MCU (STM32F1 / STM32F407 / STM32F411 / STM32L4) 和 YModem-1K 协议的案例。基…

【文献及模型、制图分享】2000—2020年中国青饲料播种面积及供需驱动因素的时空格局

文献介绍 高产、优质的青饲料对于国家畜牧业发展和食物供给至关重要。然而&#xff0c;当前对于青饲料播种面积时空变化格局及其阶段性特征、区域差异以及影响因素等尚未清楚。 本文基于省级面板数据分析了2000—2020年青饲料种植的时空格局变化&#xff0c;结合MODIS-NPP产品…