当前位置: 首页 > news >正文

OSPF ROUTER-ID-新版(15)

 

目录

整体拓扑

操作步骤

1.INT 验证Router-ID选举规则

1.1 查看路由器Router-ID

1.2 配置R1地址

1.3 查看R1接口信息

1.4 查看R1Router-ID

1.5 删除接口IP并查看Router-ID

1.6 手工配置Router-ID

2.基本配置

2.1 配置R1的IP

2.2 配置R2的IP

2.3 配置R3的IP

2.4 配置R4的IP

2.5 配置PC-1的IP地址

2.6 配置PC-2的IP地址

2.7 配置PC-3的IP地址

2.8 检测R1与PC1连通性

2.9 检测R3与PC2连通性

2.10 检测R4与PC3连通性

3.理解OSPF的Router-ID

3.1 配置R1的OSPF

3.2 配置R2的OSPF

3.3 配置R3的OPSF

3.4 配置R4的OSPF

3.5 测试PC-1和PC-2的连通性

3.6 测试PC-1和PC-3的连通性

3.7 修改R2的Router-ID

3.8 再次查看R2 的OSPF邻居信息

3.9 测试PC-1与PC-2的连通性

3.10 还原R2之前配置

3.11 修改R4的Router-ID

3.12 查看R2的OSPF邻居状态

3.13 查看R2的路由表

3.14 测试PC-1与PC-3的连通性

4.保存数据

4.1保存R1数据

4.2保存R2数据

4.3保存R3数据

4.4保存R4数据


  本实验模拟企业网络环境,R1为部门A的网关设备,R3为部门B的网关设备,R4为部门C的网关设备,R2为企业核心路由器。现网络中运行OSPF协议实现全网互通,所有路由器运行在区域0内。网络管理员需要正确配置Router-ID以避免产生不必要的问题。

整体拓扑

操作步骤

1.INT 验证Router-ID选举规则

1.1 查看路由器Router-ID

在进行基本配置之前,在R1上使用命令display route id来查看当前设备上的Router-ID
<Huawei>system-view
[Huawei]sysname R1
[R1]display router id
Router-ID:0.0.0.0

可以观察到,在设备没有配置任何接口时,Router-ID0.0.0.0。

​​​​​​​system-view
sysname R1
display router id

1.2 配置R1地址

根据实验编址表,在R1GE 0/0/1接口上配置IP地址10.0.12.1GE 0/0/0接口配置IP地址10.0.1.254,配置环回接口0的地址1.1.1.1
[R1]interface gigabitethernet 0/0/1
[R1-GigabitEthernet0/0/1]ip addres 10.0.12.1 24
[R1-GigabitEthernet0/0/1]interface gigabitethernet 0/0/0
[R1-GigabitEthernet0/0/0]ip addres 10.0.1.254 24
[R1-GigabitEthernet0/0/0]interface loopback 0
[R1-LoopBack0]ip addres 1.1.1.1 32
[R1-LoopBack0]quit

​​​​​​​interface gigabitethernet 0/0/1
ip addres 10.0.12.1 24
interface gigabitethernet 0/0/0
ip addres 10.0.1.254 24
interface loopback 0
ip addres 1.1.1.1 32
quit

1.3 查看R1接口信息

配置完成后,在R1上查看所有接口信息。
<R1>display ip interface brief
可以观察到,目前所配置的接口及IP地址信息。

display ip interface brief

1.4 查看R1Router-ID

查看当前设备上的Router-ID
[R1]display router id
可以观察到当前设备上的全局Router-ID10.0.12.1,而不是环回接口地址1.1.1.1,这是为什么?
原因是接口配置顺序会影响Router-ID的选举,因为设备上第一次配置的是物理接口的地址,该动作便会触发Router-ID的选举。而此刻,设备上也有且仅有该物理地址,所以该地址便会被Router-ID所使用,后续即使再配置了环回接口地址也不会使用。同理,如果第一次配置的是其他物理接口的地址,或者是环回接口的地址,都会被Router-ID所使用。

display router id

1.5 删除接口IP并查看Router-ID

在R1上删除接口GE 0/0/1IP地址,并再次查看此时设备的Router-ID
[R1]interface gigabitethernet 0/0/1
[R1-GigabitEthernet0/0/1]undo ip address
UNDO
[R1]display router id
Router-ID:1.1.1.1


可以观察到,当删除当前Router-ID所使用的IP地址时,便会触发重新选举,按照环回接口优先的规则选择使用1.1.1.1作为Router-ID。

​​​​​​​interface gigabitethernet 0/0/1
undo ip address
display router id

1.6 手工配置Router-ID

可以采用手动配置的方式强制指定R1Router-ID1.1.1.1。这样配置的优点是,即使该地址现在已经不是R1的任何接口的地址,也可以修改成为Router-ID(删除该环回接口也不会触发重新选举)。
<R1>system-view
[R1]router id 1.1.1.1


配置完成后,马上弹出以下信息。
Info: Router-ID has been modified, please reset the relative protocols manually to update the Router-ID.

该信息表示Router-ID已经被修改,请重启相应的路由协议进行更新。即当前全局配置的Router-ID已经被更新,如果目前设备上已经运行了OSPF协议,需要重置OSPF协议进程或者重启整台路由器才可以使得OSPF协议中的Router-ID也同步更新使用该新的全局Router-ID。需要使用命令reset ospf process来重置OSPF协议进程

​​​​​​​return
system-view
router id 1.1.1.1

2.基本配置

根据实验编址表进行完成剩余基本配置。

2.1 配置R1的IP

再次在R1GE 0/0/1接口上配置IP地址10.0.12.1
[R1]interface gigabitethernet 0/0/1
[R1-GigabitEthernet0/0/1]ip addres 10.0.12.1 24

​​​​​​​interface gigabitethernet 0/0/1
ip addres 10.0.12.1 24

2.2 配置R2的IP

根据实验编址表配置路由器R2的接口IP地址。
<Huawei>system-view
[Huawei]sysname R2
[R2]interface Loopback 0
[R2-loopback0]ip address 2.2.2.2 32
[R2-loopback0]quit
[R2]interface GigabitEthernet0/0/0
[R2-GigabitEthernet0/0/0]ip address 10.0.12.2 24
[R2-GigabitEthernet0/0/0]quit
[R2]interface GigabitEthernet0/0/1
[R2-GigabitEthernet0/0/1]ip address 10.0.23.2 24
[R2-GigabitEthernet0/0/1]quit
[R2]interface GigabitEthernet0/0/2
[R2-GigabitEthernet0/0/2]ip address 10.0.24.2 24
[R2-GigabitEthernet0/0/2]quit

​​​​​​​system-view
sysname R2
interface Loopback 0
ip address 2.2.2.2 32
quit
interface GigabitEthernet0/0/0
ip address 10.0.12.2 24
quit
interface GigabitEthernet0/0/1
ip address 10.0.23.2 24
quit
interface GigabitEthernet0/0/2
ip address 10.0.24.2 24
quit

2.3 配置R3的IP

根据实验编址表配置路由器R3的接口IP地址。
<Huawei>system-view
[Huawei]sysname R3
[R3]interface Loopback 0
[R3-loopback0]ip address 3.3.3.3 32
[R3-loopback0]quit
[R3]interface GigabitEthernet0/0/0
[R3-GigabitEthernet0/0/0]ip address 10.0.23.3 24
[R3-GigabitEthernet0/0/0]quit
[R3]interface GigabitEthernet0/0/1
[R3-GigabitEthernet0/0/1]ip address 10.0.2.254 24
[R3-GigabitEthernet0/0/1]quit

​​​​​​​system-view
sysname R3
interface Loopback 0
ip address 3.3.3.3 32
quit
interface GigabitEthernet0/0/0
ip address 10.0.23.3 24
quit
interface GigabitEthernet0/0/1
ip address 10.0.2.254 24
quit

2.4 配置R4的IP

根据实验编址表配置路由器R4的接口IP地址,掩码长度为24
<Huawei>system-view
[Huawei]sysname R4
[R4]interface Loopback 0
[R4-loopback0]ip address 4.4.4.4 32
[R4-loopback0]quit
[R4]interface GigabitEthernet0/0/0
[R4-GigabitEthernet0/0/0]ip address 10.0.24.4 24
[R4-GigabitEthernet0/0/0]quit
[R4]interface GigabitEthernet0/0/1
[R4-GigabitEthernet0/0/1]ip address 10.0.3.254 24
[R4-GigabitEthernet0/0/1]quit

system-view
sysname R4
interface Loopback 0
ip address 4.4.4.4 32
quit
interface GigabitEthernet0/0/0
ip address 10.0.24.4 24
quit
interface GigabitEthernet0/0/1
ip address 10.0.3.254 24
quit

2.5 配置PC-1IP地址

双点击PC图标,即可出现配置界面,配置完成后点击应用。
根据实验编制表配置PC-1IP地址为:10.0.1.1,对应的子网掩码为255.255.255.0,默认网关为10.0.1.254。

2.6 配置PC-2IP地址

双点击PC图标,即可出现配置界面,配置完成后点击应用。
根据实验编制表配置PC-2IP地址为:10.0.2.1,对应的子网掩码为255.255.255.0,默认网关为10.0.2.254。

2.7 配置PC-3IP地址

双点击PC图标,即可出现配置界面,配置完成后点击应用。
根据实验编制表配置PC-3IP地址为:10.0.3.1,对应的子网掩码为255.255.255.0,默认网关为10.0.3.254。

2.8 检测R1PC1连通性

并使用ping命令检测R1PC1直连链路的连通性。
<R1>ping 10.0.1.1
测试完成,通信正常。

ping 10.0.1.1

2.9 检测R3PC2连通性

并使用ping命令检测R3PC2直连链路的连通性。
<R3>ping 10.0.2.1
测试完成,通信正常。

ping 10.0.2.1

2.10 检测R4PC3连通性

并使用ping命令检测R4PC3直连链路的连通性。
<R4>ping 10.0.3.1
测试完成,通信正常。

ping 10.0.3.1

3.理解OSPF的Router-ID

在所有路由器上配置OSPF协议,并都运行在区域0内。使用ospf router-id命令来配置OSPF协议的私有Router-ID,如果不配置,则默认使用全局下的Router-ID
注意区分设备全局下的Router-ID和路由协议的Router-ID的概念。如果在路由协议中没有配置Router-ID,就会默认使用路由器的全局Router-ID。如果配置,则可以和全局Router-ID不一致。
一般建议采用环回接口地址作为路由协议的Router-ID,优点为环回接口是逻辑接口,比物理接口更加稳定。在对网络操作时,网络管理员有可能误操作导致物理接口地址删除,或者改动,而环回接口则一般不会去改动。

3.1 配置R1的OSPF

在R1上做OSPF基础配置。
[R1]ospf 1 router-id 1.1.1.1
[R1-ospf-1]area 0
[R1-ospf-1-area-0.0.0.0]network 10.0.12.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]network 10.0.1.0 0.0.0.255

​​​​​​​return
system-view
ospf 1 router-id 1.1.1.1
area 0
network 10.0.12.0 0.0.0.255
network 10.0.1.0 0.0.0.255

3.2 配置R2的OSPF

在R2上做OSPF基础配置。
[R2]ospf 1 router-id 2.2.2.2
[R2-ospf-1]area 0
[R2-ospf-1-area-0.0.0.0]network 10.0.12.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]network 10.0.23.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]network 10.0.24.0 0.0.0.255

ospf 1 router-id 2.2.2.2
area 0
network 10.0.12.0 0.0.0.255
network 10.0.23.0 0.0.0.255
network 10.0.24.0 0.0.0.255

3.3 配置R3的OPSF

在R3上做OSPF基础配置。
[R3]ospf 1 router-id 3.3.3.3
[R3-ospf-1]area 0
[R3-ospf-1-area-0.0.0.0]network 10.0.23.0 0.0.0.255
[R3-ospf-1-area-0.0.0.0]network 10.0.2.0 0.0.0.255

拷贝代码

​​​​​​​ospf 1 router-id 3.3.3.3
area 0
network 10.0.23.0 0.0.0.255
network 10.0.2.0 0.0.0.255

3.4 配置R4的OSPF

在R4上做OSPF基础配置。
[R4]ospf 1 router-id 4.4.4.4
[R4-ospf-1]area 0
[R4-ospf-1-area-0.0.0.0]network 10.0.24.0 0.0.0.255
[R4-ospf-1-area-0.0.0.0]network 10.0.3.0 0.0.0.255

​​​​​​​ospf 1 router-id 4.4.4.4
area 0
network 10.0.24.0 0.0.0.255
network 10.0.3.0 0.0.0.255

3.5 测试PC-1PC-2的连通性

配置完成后测试PC-1PC-2间的连通性。
PC1>ping 10.0.2.1

ping 10.0.2.1

3.6 测试PC-1PC-3的连通性

配置完成后测试PC-1PC-3间的连通性。
PC1>ping 10.0.3.1

ping 10.0.3.1

3.7 修改R2的Router-ID

现在修改R2Router-ID3.3.3.3,即R3Router-ID,使R3R2Router-ID重叠,并重置协议进程使该配置生效。(重置进程时,输入‘y’进行确认)
[R2]ospf 1 router-id 3.3.3.3
<R2>reset ospf process

​​​​​​​return
system-view
ospf 1 router-id 3.3.3.3
return
reset ospf process

3.8 再次查看R2 OSPF邻居信息

待协议收敛后,再次查看R2 OSPF邻居信息。
<R2>display ospf peer
可以观察到到R2R3的邻居关系消失。

display ospf peer

3.9 测试PC-1PC-2的连通性

测试PC-1PC-2的连通性。
PC>ping 10.0.2.1
网络已经发生故障,无法正常通信。验证了OSPF建立直连邻居关系时,Router-ID一定不能重叠。那么如果OSPF非直连邻居的Router-ID重叠会产生什么现象?

ping 10.0.2.1

3.10 还原R2之前配置

还原R2之前的配置。
[R2]ospf 1 router-id 2.2.2.2
<R2>reset ospf process

system-view
ospf 1 router-id 2.2.2.2
return
reset ospf process

3.11 修改R4的Router-ID

调整R4Router-ID3.3.3.3,与R3重叠。
[R4]ospf 1 router-id 3.3.3.3
<R4>reset ospf process

​​​​​​​return
system-view
ospf 1 router-id 3.3.3.3
return
reset ospf process

3.12 查看R2OSPF邻居状态

调整R4Router-ID配置完成后,查看R2OSPF邻居状态。
<R2>display ospf peer brief
发现R2有两个3.3.3.3的邻居。

display ospf peer brief

3.13 查看R2的路由表

查看R2的路由表。
<R2>display ip routing-table protocol ospf
可以观察到,此时R2没有接收到R410.0.3.0/24网段的路由条目,即使路由器邻居关系建立正常,但也无法正常获取路由条目。

display ip routing-table protocol ospf

3.14 测试PC-1PC-3的连通性

测试PC-1PC-3的连通性。
PC1>ping 10.0.3.1
可以观察到,通信无法正常进行。这是因为R2认为是同一个OSPF邻居,但是LSA又不一致,造成链路状态数据库发送错误,无法计算出正确的路由信息。
综上所述,OSPF协议的Router-ID务必要在整个路由选择域内保持唯一。

ping 10.0.3.1

4.保存数据

4.1保存R1数据

在R1上保存数据。
<R1>save

save

4.2保存R2数据

在R2上保存数据。
<R2>save

save

4.3保存R3数据

在R3上保存数据。
<R3>save

save

4.4保存R4数据

在R4上保存数据。
<R4>save

save

相关文章:

OSPF ROUTER-ID-新版(15)

目录 整体拓扑 操作步骤 1.INT 验证Router-ID选举规则 1.1 查看路由器Router-ID 1.2 配置R1地址 1.3 查看R1接口信息 1.4 查看R1Router-ID 1.5 删除接口IP并查看Router-ID 1.6 手工配置Router-ID 2.基本配置 2.1 配置R1的IP 2.2 配置R2的IP 2.3 配置R3的IP 2.4 配…...

阿里开源大模型 Qwen-72B 私有化部署

近期大家都知道阿里推出了自己的开源的大模型千问72B&#xff0c;据说对于中文非常友好&#xff0c;在开源模型里面&#xff0c;可谓是名列前茅。 千问拥有有强大的基础语言模型&#xff0c;已经针对多达 3 万亿个 token 的多语言数据进行了稳定的预训练&#xff0c;覆盖领域、…...

ubuntu下编译obs-studio遇到的问题记录

参考的是这篇文档&#xff1a;Build Instructions For Linux obsproject/obs-studio Wiki GitHub 在安装OBS dependencies时&#xff0c; sudo apt install libavcodec-dev libavdevice-dev libavfilter-dev libavformat-dev libavutil-dev libswresample-dev libswscale-d…...

C++的一些知识

一. 语法 move怎么用 https://blog.csdn.net/zhangmiaoping23/article/details/126051520 这个文章讲的很好&#xff0c;其中有一些疑惑的点 (1) 左值引用不能接右值 class T1{int a; }; int main(){T1 t1 T1();T1 && t1_temp T1(); //T1()是一个临时对象&#xf…...

大数据 - 大数据入门第一篇 | 关于大数据你了解多少?

&#x1f436;1.1 概述 大数据&#xff08;BigData):指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合&#xff0c;是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。 大数据主要解决、海量数据的采…...

C语言——扫雷

扫雷是一款经典的小游戏&#xff0c;那如何使用C语言实现一个扫雷游戏呢&#xff1f; 一、全部源码 直接把全部源码放在开头&#xff0c;如有需要&#xff0c;直接拿走。 源码分为三个文件&#xff1a; test.cpp/c 主函数的位置 #include "game.h"int main() {…...

计算机网络【DNS】

DNS 基本概述 与 HTTP、FTP 和 SMTP 一样&#xff0c;DNS 协议也是应用层的协议&#xff0c;DNS 使用客户-服务器模式运行在通信的端系统之间&#xff0c;在通信的端系统之间通过下面的端到端运输协议来传送 DNS 报文。但是 DNS 不是一个直接和用户打交道的应用。DNS 是为因特…...

Windows实现MySQL5.7主从复制(详细版)

使用免安装版本&#xff08;官网下载地址&#xff09; 在Windows上安装两种MySQL服务并同时开启服务 1.下载配置 打开解压文件所在位置&#xff0c;就新建一个配置文件my.ini。 2.主库安装 主库的my.ini配置文件如下&#xff1a; [mysqld] #设置主库端口&#xff0c;注意须是…...

AI 绘画 | Stable Diffusion 视频生成重绘

前言 本篇文章教会你如何使用Stable Diffusion WEB UI,实现视频的人物,或是动物重绘,可以更换人物或者动物,也可以有真实变为二次元。 视频展示 左边是原视频,右边是重绘视频原视频和Ai视频画面合并 教程 这里需要用到Stable Diffusion WEB UI的扩展插件ebsynth_utility…...

使用easyexcel对导出表格添加合计行

文章目录 一、背景二、实现1、写法一2、写法二 三、遇到的问题四、参考 一、背景 近期开发的一个新功能需要导出和前端展示样式一致的统计表格&#xff0c;而前端使用的elementui的table组件&#xff0c;show-summary属性选择后可以自动计算。后端导出时其他单元格与返回前端展…...

Springcloud Alibaba使用Canal将Mysql数据实时同步到Redis保证缓存的一致性

目录 1. 背景 2. Windows系统安装canal 3.Mysql准备工作 4. 公共依赖包 5. Redis缓存设计 6. mall-canal-service 1. 背景 canal [kənl] &#xff0c;译意为水道/管道/沟渠&#xff0c;主要用途是基于 MySQL 数据库增量日志解析&#xff0c;提供增量数据订阅和消费。其诞…...

Python入门学习篇(十四)——模块文件操作

1 模块 1.1 理解 包: python中带有__init__.py文件的文件夹 模块: 文件名(不包含.py后缀),如python官方的time.py中time就是模块1.2 示例代码 import datetime# 调用datetime模块中的datetime类的now()方法 t datetime.datetime.now() # 格式化输出日期和时间 strftime(&qu…...

【数据结构】排序之交换排序(冒泡 | 快排)

交换目录 1. 前言2. 交换排序3. 冒泡排序3.1 分析3.2 代码实现 4. 快速排序4.1 hoare版本4.1.1 分析4.1.2 hoare版本代码 4.2 挖坑法4.2.1 分析4.2.2 挖坑法代码实现 4.3 前后指针版本4.3.1 分析4.3.2 前后指针版本代码实现 1. 前言 在之前的博客中介绍了插入排序&#xff0c;…...

AI电商时代开始:阿里能否反杀拼多多

“AI电商时代刚刚开始&#xff0c;对谁都是机会&#xff0c;也是挑战。” 针对阿里员工对于拼多多财报和电商等的讨论&#xff0c;马云在阿里内网罕见地参与了谈论并发言。 阿里巴巴一向雷厉风行&#xff0c;已打响了AI电商的“第一炮”。 根据《晚点LatePost》报道&#xff…...

STC8H系列单片机入门教程之NVC系列语音播报模块(九)

一、模块简述 ● 模组支持3.3V和5V单片机供电系统 ● 标准2.54MM间距排针与外部连接 ● 支持喇叭0.5W/8欧 ● 适合用于超声波距离、电子秤重量、时钟时间、温度、球赛比分等语音播报 二、引脚说明 序号 名称 说明 1 VCC 电源正&#xff08;3.3V-5V&#…...

认识计算机网络——计算机网络的组成

计算机网络是由多个计算机和网络设备组成的系统&#xff0c;通过通信协议实现数据传输和信息交换。它是现代社会信息技术的重要支撑&#xff0c;广泛应用于各个领域。本文将介绍计算机网络的主要组成部分&#xff0c;包括硬件设备、软件协议和网络服务。 一、硬件设备 计算机网…...

数据的复制

基本概念 数据的复制指的是通过网络链接的多台机器保留相同的副本 为什么要进行数据的复制 使得用户和数据在地理上比较接近&#xff0c;因为大数据要求我们将计算安排在数据存放的位置和我们基本的内存模型不是很一样 &#xff0c;比如磁盘调入内存之类的。即使系统的一部分…...

【辐射场】3D Gaussian Splatting

三维高斯…喷喷 \, 3D Gaussian Splatting&#xff0c;下文简称3DGS&#xff0c;是好一段时间以来在三维内容创作和三维重建领域比较有热度的一项技术。 它属于基于图像的三维重建方法&#xff0c;意思就是你对现实物体或者场景拍照片&#xff0c;就能给你训练成一个场景模型&a…...

冒泡排序--------(C每日一题)

冒泡排序&#xff1a; 每次将相邻的两个数比较,将小的调到前头--升序 冒泡排序一个结论&#xff1a; n个数要进行n-1轮比较&#xff0c;第j轮要进行n-j次两两比较 循环体代码&#xff1a; int main() {int i, j,n,a[10],t;//n是几个数比较for(j1;j<n-1;j)//控制轮次for…...

每日一练:LeeCode-347. 前 K 个高频元素(中) - 【优先级队列】

本文是力扣LeeCode-347. 前 K 个高频元素 学习与理解过程&#xff0c;本文仅做学习之用&#xff0c;对本题感兴趣的小伙伴可以出门左拐LeeCode。 给你一个整数数组 nums 和一个整数 k &#xff0c;请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 示例 1: 输…...

<蓝桥杯软件赛>零基础备赛20周--第11周--贪心

报名明年4月蓝桥杯软件赛的同学们&#xff0c;如果你是大一零基础&#xff0c;目前懵懂中&#xff0c;不知该怎么办&#xff0c;可以看看本博客系列&#xff1a;备赛20周合集 20周的完整安排请点击&#xff1a;20周计划 每周发1个博客&#xff0c;共20周。 在QQ群上答疑&#x…...

PowerShell Instal 一键部署TeamCity

前言 TeamCity 是一个通用的 CI/CD 软件平台,可实现灵活的工作流程、协作和开发实践。允许在您的 DevOps 流程中成功实现持续集成、持续交付和持续部署。 系统支持 Centos7,8,9/Redhat7,8,9及复刻系列系统支持 Windows 10,11,2012,2016,2019,2022高版本建议使用9系列系统…...

将“渴望“乐谱写入AT24C02并读出播放

#include <reg51.h> // 包含51单片机寄存器定义的头文件 #include <intrins.h> //包含_nop_()函数定义的头文件 #define OP_READ 0xa1 // 器件地址以及读取操作,0xa1即为1010 0001B #define OP_WRITE 0xa0 // 器件地址以及写…...

Vue独立组件开发-动态组件

文章目录 一、前言二、实现三、优化四、总结五、最后 一、前言 在开发中&#xff0c;你经常会遇到这么一种情况&#xff1a;根据条件动态地切换某个组件&#xff0c;或动态地选择渲染某个组件。 Vue 提供了另外一个内置的组件 <component> 和 is 特性&#xff0c;可以更…...

前端八股文(HTML篇)

目录 1.什么是DOCTYPE,有何用呢&#xff1f; 2.说说对html语义化的理解 3.src和href的区别&#xff1f; 4.title与h1的区别&#xff0c;b与strong的区别&#xff0c;i与em的区别&#xff1f; 5.什么是严格模式与混杂模式&#xff1f; 6.前端页面有哪三层构成&#xff0c;分…...

RivaGAN 水印项目

git地址 https://github.com/DAI-Lab/RivaGAN Dockerfile (/tools下文件为git下的文件) ############################################### # 使用 NVIDIA CUDA 10.0 开发环境作为基础镜像 FROM kaldiasr/kaldi:gpu-ubuntu18.04-cuda10.0 # 设置非交互式安装模式以避免某些命…...

Games101作业5

1.实现Renderer.cpp 中的 Render()&#xff1a;为每个像素生成光线 这里你需要为每个像素生成一条对应的光 线&#xff0c;然后调用函数 castRay() 来得到颜色&#xff0c;最后将颜色存储在帧缓冲区的相 应像素中。 我们要做的就是将屏幕空间下的坐标最后转换到世界空间的坐标…...

Golang解决跨域问题【OPTIONS预处理请求】

Golang解决跨域问题 前置知识&#xff1a;跨域问题产生条件及原因 跨域是是因为浏览器的同源策略限制&#xff0c;是浏览器的一种安全机制&#xff0c;服务端之间是不存在跨域的。 所谓同源指的是两个页面具有相同的协议、主机和端口&#xff0c;三者有任一不相同即会产生跨域…...

复试 || 就业day05(2023.12.31)算法篇

文章目录 前言找不同最长回文串找到所有数组中消失的数字下一个更大元素 I键盘行 前言 &#x1f4ab;你好&#xff0c;我是辰chen&#xff0c;本文旨在准备考研复试或就业 &#x1f4ab;文章题目大多来自于 leetcode&#xff0c;当然也可能来自洛谷或其他刷题平台 &#x1f4ab…...

Spring-4-代理

前面提到过&#xff0c;在Spring中有两种类型的代理&#xff1a;使用JDK Proxy类创建的JDK代理以及使用CGLIB Enhancer类创建的基于CGLIB的代理。 你可能想知道这两种代理之间有什么区别&#xff0c;以及为什么 Spring需要两种代理类型。 在本节中&#xff0c;将详细研究代理…...

设计模式:抽象工厂模式(讲故事易懂)

抽象工厂模式 定义&#xff1a;将有关联关系的系列产品放到一个工厂里&#xff0c;通过该工厂生产一系列产品。 设计模式有三大分类&#xff1a;创建型模式、结构型模式、行为型模式 抽象工厂模式属于创建型模式 上篇 工厂方法模式 提到工厂方法模式中每个工厂只生产一种特定…...

C语言中的Strict Aliasing Rule

文章目录 前言没有警告不代表没有问题目前的应对方法 前言 很久没写了&#xff0c;水一篇。 最近有个代码在gcc 4.8.5上编译失败。编译失败的提示是&#xff1a; error: dereferencing type-punned pointer will break strict-aliasing rules [-Werrorstrict-aliasing]查了下…...

单字符检测模型charnet使用方法,极简

Git链接 安装按照上面的说明&#xff0c;说下使用。 把tools下面的test做了一点修改&#xff0c;可以读取一张图片&#xff0c;把里面的单个字符都检测和识别出来。 然后绘制到屏幕上。 import torch from charnet.modeling.model import CharNet import cv2, os import num…...

Erlang、RabbitMQ下载与安装教程(windows超详细)

目录 安装Erlang 1.首先安装RabbitMQ需要安装Erlang环境 2.点击下载好的.exe文件进行傻瓜式安装,一直next即可 3.配置Erlang环境变量 安装RabbitMQ 1.给出RabbitMQ官网下载址&#xff1a;Installing on Windows — RabbitMQ&#xff0c;找到 2.配置RabbitMQ环境变量&#xff0…...

2023年终总结丨很苦,很酷!

文章目录 个人简介丨了解博主写在前面丨博主介绍年终总结丨博主成就年终总结丨博主想说年终总结丨学习芝士年终总结丨未来展望写在后面丨新年快乐 个人简介丨了解博主 主页地址&#xff1a;https://blog.csdn.net/m0_68111267 荣誉身份 ⭐2022年度CSDN 社区之星 Top6 ⭐2023年…...

鸿蒙 DevEco Studio 3.1 入门指南

本文主要记录开发者入门&#xff0c;从软件安装到项目运行&#xff0c;以及后续的学习 1&#xff0c;配置开发环境 1.1 下载安装包 官网下载链接 点击立即下载找到对应版版本 下载完成&#xff0c;按照提示默认安装即可 1.2 下载SDK及工具链 运行已安装的DevEco Studio&…...

ubuntu多用户环境dockerbug,卸载重装docker流程

之前不小心误操作删除重装docker&#xff0c;结果删除没成功&#xff0c;更没法重装&#xff0c;每次apt install都会报一个docker错误&#xff0c;虽然不影响软件的常规安装&#xff5e;但是现在还是需要装一个完整docker&#xff0c;还是选择删除一下&#xff0c;重点是关闭服…...

微信小程序开发系列-09自定义组件样式特性

微信小程序开发系列目录 《微信小程序开发系列-01创建一个最小的小程序项目》《微信小程序开发系列-02注册小程序》《微信小程序开发系列-03全局配置中的“window”和“tabBar”》《微信小程序开发系列-04获取用户图像和昵称》《微信小程序开发系列-05登录小程序》《微信小程序…...

数据结构 模拟实现LinkedList单向不循环链表

目录 一、链表的简单介绍 二、链表的接口 三、链表的方法实现 &#xff08;1&#xff09;display方法 &#xff08;2&#xff09;size得到单链表的长度方法 &#xff08;3&#xff09;addFirst头插方法 &#xff08;4&#xff09;addLast尾插方法 &#xff08;5&#xf…...

2023-12-24 LeetCode每日一题(收集足够苹果的最小花园周长)

2023-12-24每日一题 一、题目编号 1954. 收集足够苹果的最小花园周长二、题目链接 点击跳转到题目位置 三、题目描述 给你一个用无限二维网格表示的花园&#xff0c;每一个 整数坐标处都有一棵苹果树。整数坐标 (i, j) 处的苹果树有 |i| |j| 个苹果。 你将会买下正中心坐…...

Oracle 19c OCP 1z0 082考场真题解析第17题

考试科目&#xff1a;1Z0-082 考试题量&#xff1a;90 通过分数&#xff1a;60% 考试时间&#xff1a;150min 本文为云贝教育郭一军guoyJoe原创&#xff0c;请尊重知识产权&#xff0c;转发请注明出处&#xff0c;不接受任何抄袭、演绎和未经注明出处的转载。 17. Which three …...

掌握这十几个Python库才是爬虫界的天花板,没有你搞不定的网站!实战案例:Python全网最强电影搜索工具,自动生成播放链接

掌握这十几个Python库才是爬虫界的天花板,没有你搞不定的网站!实战案例:Python全网最强电影搜索工具,自动生成播放链接。 用来爬虫的十几个Python库。只要正确选择适合自己的Python库才能真正提高爬虫效率,到达高效爬虫目的。 1.PyQuery from pyquery import PyQuery as …...

模型 KANO卡诺模型

本系列文章 主要是 分享 思维模型&#xff0c;涉及各个领域&#xff0c;重在提升认知。需求分析。 1 卡诺模型的应用 1.1 餐厅需求分析故事 假设你经营一家餐厅&#xff0c;你想了解客户对你的服务质量的满意度。你可以使用卡诺模型来收集客户的反馈&#xff0c;并分析客户的…...

启明智显开源项目分享|基于Model 3c芯片的86中控面板ZX3D95CM20S-V11项目软硬件全开源

前言&#xff1a; 本文为4寸 480*480 RGB接口IPS全面触屏的86中控面板&#xff08;RT-ThreadLVGL&#xff09;软硬件开源干货内容&#xff0c;该项目是综合性非常强的RTOS系列项目&#xff01;项目主控芯片使用 Model 3c&#xff0c;整体实现了简化版本的86中控面板的功能需求…...

Kind创建k8s - JAVA操作控制

kind 简介kind 架构安装 Kind (必备工具)docker官网kubectl官网kind官网校验安装结果 关于kind 命令 安装一个集群查看当前 Kubernetes 集群中的节点信息。查看当前命名空间下中的Pod&#xff08;容器实例&#xff09;的信息。使用 kind create cluster 安装&#xff0c;关于安…...

Qt sender()函数

sender函数原型&#xff1a; QObject *sender() const; 如果在由信号激活的插槽中调用该函数&#xff0c;返回指向发送信号的对象的指针&#xff0c;否则返回0&#xff0c;该指针仅在从该对象的线程上下文调用此函数的槽执行期间有效。 主要代码如下&#xff1a; 其中运用了Q…...

Java开发框架和中间件面试题(6)

目录 61.什么是Spring Batch&#xff1f; 62.请举例解释Required与Qualifier注解&#xff1f; 61.什么是Spring Batch&#xff1f; Spring batch是一个轻量级的&#xff0c;完善的批处理框架&#xff0c;他主要的目的在于帮助企业建立健壮&#xff0c;高效的批处理应用。Spri…...

附录E SQL入门之SQL保留字

本专栏目录 第1课 SQL入门之了解SQL 第2课 SQL入门之检索数据 第3课 SQL入门之排序检索数据 第4课 SQL入门之过滤数据 第5课 SQL入门之高级数据过滤 第6课 SQL入门之用通配符进行过滤 第7课 SQL入门之创建计算字段 第8课 SQL入门之使用数据处理函数 第9课 SQL入门之汇总数据 第…...

thinkphp6.0升级到8.0

目录 一&#xff1a;升级过程 二&#xff1a;报错处理 最近写的项目需要使用thinkphp8.0&#xff0c;之前的老项目需要从php6.0升级到8.0&#xff0c;特此记录下升级过程。 一&#xff1a;升级过程 查看版本&#xff1a; php think version,我目前的版本是6.1.4 生成thin…...

机器学习(一) -- 概述

系列文章目录 机器学习&#xff08;一&#xff09; -- 概述 机器学习&#xff08;二&#xff09; -- 数据预处理 未完待续…… 目录 系列文章目录 前言 一、机器学习定义&#xff08;是什么&#xff09; 二、机器学习的应用&#xff08;能做什么&#xff09; 三、***机器…...