【HCIP]——OSPF综合实验
题目
实验需求
根据上图可得,实验需求为:
1.R5作为ISP:其上只能配置IP地址;R4作为企业边界路由器,出口公网地址需要通过PPP协议获取,并进行CHAP认证。(PS:因PPP协议尚未学习,在此次实验中不使用)
2.每个OSPF邻居ID 基于IP地址172.16.0.0/16划分;
3.所有设备均可访问R5的环回;
4.减少LSA的数量,加快收敛,保障更新安全;
5.全网可达。
实验思路
1.首先确定网络拓扑结构,根据实验需求搭建网络拓扑图,确定每台路由器的接口以及互联关系。
2.子网划分与OSPF配置
基于IP地址划分OSPF邻居ID:
根据IP地址172.16.0.8/16划分OSPF区域,确保每个邻居ID唯一。
配置OSPF路由协议,并在每个路由器上配置相应的网络命令。
3.配置R5作为ISP
4.网络优化
减少LSA数量:
通过合理规划OSPF区域,使用区域划分来减少LSA的数量。
使用路由汇总来减少LSA的数量。
加快收敛:
配置OSPF的快速收敛特性,如调整Hello和Dead间隔。
确保网络中无环路,避免不必要的路由更新。
保障更新安全:
使用OSPF的认证功能,如明文认证或MD5认证,来保障路由更新安全。
5.配置NAT保证私网能正常访问公网
6.确保全网可达
测试连通性:
使用Ping命令测试网络中每个设备之间的连通性。
确认所有设备均能访问R5的环回接口。
实验步骤
子网划分与OSPF配置
子网划分
——对五个区域基于IP地址172.16.0.0进行划分,再对各个区域内进行详细的IP地址划分。
如图:

具体划分如下所示:
172.16.0.0/16
172.16.0.0/19 ----area0
172.16.0.0/24----骨干
172.16.0.0/30----R3-R4
172.16.0.4/30----R4-R6
172.16.0.8/30----R4-R7
45.0.0.0/30----R4-R5
100.1.1.0/24----R5环回
172.16.32.0/19----area1
172.16.32.0/24----R1
172.16.33.0/24----R2
172.16.34.0/24----R3
172.16.35.0/24----骨干
172.16.35.0/29
172.16.64.0/19----area2
172.16.64.0/24----R6环回
172.16.66.0/30----R6-R11
172.16.65.0/24----R11环回
172.16.66.4/30----R11-R12
172.16.96.0/19----area3
172.16.96.0/24----R7环回
172.16.98.0/30----R7-R8
172.16.97.0/24----R8环回
172.16.98.4/30----R8-R9
172.16.128.0/19----area4
172.16.128.0/24----R9环回
172.16.130.0/30----R9-R10
172.16.129.0/24----R10环回
rip
10.1.1.0/24
10.1.2.0/24
配置IP地址同时进行OSPF宣告
PS:R4的S接口是连接公网的,不可宣告!
R1

R2

R3

R4

ISP

R6

R7

R8

R9

R10

R11

R12

OSPF配置
在各个路由器上进行OSPF配置,由于area 4 是远离骨干的特殊区域所以不能直接进行宣告,且由于area 3需要进行优化,所以让R9成为ASBR设备进行双向重发布(不使用Vink是因为使用Vink可能会产生换路问题,且area 3需要优化),在配置R12时顺便将RIP同时进行配置与宣告。
R1
[r1]ospf 1 router-id 1.1.1.1
[r1-ospf-1]a 1
[r1-ospf-1-area-0.0.0.1]network 172.16.32.1 0.0.0.0[r1-ospf-1-area-0.0.0.1]network 172.16.35.1 0.0.0.0
R2
[r2]ospf 1 rou
[r2]ospf 1 router-id 2.2.2.2
[r2-ospf-1]a 1
[r2-ospf-1-area-0.0.0.1]network 172.16.33.1 0.0.0.0
[r2-ospf-1-area-0.0.0.1]network 172.16.35.2 0.0.0.0

R3
[r3]ospf 1 rou
[r3]ospf 1 router-id 3.3.3.3
[r3-ospf-1]a 1
[r3-ospf-1-area-0.0.0.1]network 172.16.35.3 0.0.0.0
[r3-ospf-1-area-0.0.0.1]network 172.16.34.1 0.0.0.0[r3-ospf-1-area-0.0.0.0]network 172.16.0.1 0.0.0.0

R4
[r4]ospf 1 router-id 4.4.4.4
[r4-ospf-1]a 0
[r4-ospf-1-area-0.0.0.0]network 172.16.0.2 0.0.0.0
[r4-ospf-1-area-0.0.0.0]network 172.16.0.5 0.0.0.0[r4-ospf-1-area-0.0.0.0]network 172.16.0.9 0.0.0.0

R6
[r6]ospf 1 router-id 6.6.6.6
[r6-ospf-1]a 0
[r6-ospf-1-area-0.0.0.0]network 172.16.0.6 0.0.0.0
[r6-ospf-1-area-0.0.0.2]network 172.16.66.1 0.0.0.0[r6-ospf-1-area-0.0.0.2]network 172.16.64.1 0.0.0.0

R7
[r7]ospf 1 router-id 7.7.7.7
[r7-ospf-1]a 0
[r7-ospf-1-area-0.0.0.0]network 172.16.0.10 0.0.0.0
[r7-ospf-1]a 3[r7-ospf-1-area-0.0.0.3]network 172.16.96.1 0.0.0.0
[r7-ospf-1-area-0.0.0.3]network 172.16.98.1 0.0.0.0

R8
[r8]ospf 1 router-id 8.8.8.8
[r8-ospf-1]a 3[r8-ospf-1-area-0.0.0.3]network 172.16.98.2 0.0.0.0
[r8-ospf-1-area-0.0.0.3]network 172.16.97.1 0.0.0.0
[r8-ospf-1-area-0.0.0.3]network 172.16.98.5 0.0.0.0

R9
[r9]ospf 2 router-id 9.9.9.9
[r9-ospf-2]area 4
[r9-ospf-2-area-0.0.0.4]network 172.16.128.1 0.0.0.0
[r9-ospf-2-area-0.0.0.4]network 172.16.130.1 0.0.0.0

R10
[r10]ospf 1 router-id 10.10.10.10
[r10-ospf-1]a 4
[r10-ospf-1-area-0.0.0.4]network 172.16.129.1 0.0.0.0
[r10-ospf-1-area-0.0.0.4]network 172.16.130.2 0.0.0.0
R11
[r11]ospf 1 router-id 11.11.11.11
[r11-ospf-1]a 2
[r11-ospf-1-area-0.0.0.2]network 172.16.65.1 0.0.0.0
[r11-ospf-1-area-0.0.0.2]network 172.16.66.5 0.0.0.0
R12
[r12]ospf 1 router-id 12.12.12.12
[r12-ospf-1]a 2
[r12-ospf-1-area-0.0.0.2]network 172.16.66.6 0.0.0.0
[r12-rip-1]ver 2
[r12-rip-1]network 10.0.0.0

检查OSPF邻居
R1

R2

R3
R4

R6

R7

R8

R9

R10

R11

R12

连通性测试
由于该实验设备太多,故我们举例测试,不展示所有设备的测试
R1pingR3的环回

R3pingR6的环回

配置缺省路由
R4
在R4上配置一条0.0.0.0的缺省路由指向R5的 4/0/0方向
[R4]ip route-static 0.0.0.0 0 45.0.0.2
通过pingR5的环回检测是否可通,可通则没问题

PS:当前不用急着去下放R4的缺省路由,因为下放路由操作是在私网全部做完(优化后)时再去下放
OSPF优化部分
路由汇总
域间路由汇总
因为域间路由汇总是针对骨干区域(area 0)的优化,所以配置域间路由汇总的应该是与area 0直连(直接相连的)的区域,即区域1、2、3;那么则在这三个区域的ABR上进行配置:
Area 1的ABR
[r3]ospf 1
[r3-ospf-1]a 1 ---配置路由汇总在区域1做的原因是因为R3上的明细路由是通过区域1的1/2类LSA学到的
[r3-ospf-1-area-0.0.0.1]abr-summary 172.16.64.0 255.255.224.0
Area 2的ABR
[r6]ospf 1
[r6-ospf-1]a 2
[r6-ospf-1-area-0.0.0.2]abr-summary 172.16.64.0 255.255.224.0
Area 3的ABR
[r7]ospf 1
[r7-ospf-1]a 3
[r7-ospf-1-area-0.0.0.3]abr-summary 172.16.96.0 255.255.224.0
查表
在R4上查OSPF表,发现三个区域已经汇总

域外路由汇总
非直连的远离骨干区域则为域外路由汇总
RIP区域的ASBR
[r12]ospf 1
[r12-ospf-1]asbr-summary 10.1.0.0 255.255.252.0
OSPF 2区域的ASBR
[r9]ospf 1
[r9-ospf-1]asbr-summary 172.16.128.0 255.255.224.0
查表
在R4上查OSPF表,发现RIP区域和OSPF 2区域都已汇总


做特殊区域
区域1可以做成完全末梢区域、区域2可以做成完全NSSA区域、区域3也可以做成完全NSSA区域、区域4则不能做特殊区域(因为区域4上ospf 2的骨干区域!骨干区域不能做成特殊区域!!!)
Area 1
----- R1 -----
[r1]ospf 1
[r1-ospf-1]a 1
[r1-ospf-1-area-0.0.0.1]stub
----- R2 -----
[r2]ospf 1
[r2-ospf-1]a 1
[r2-ospf-1-area-0.0.0.1]stub
----- R3 -----
[r3]ospf 1
[r3-ospf-1]a 1
[r3-ospf-1-area-0.0.0.1]stub no-summary
Area 2
----- R6 -----
[r6]ospf 1
[r6-ospf-1]a 2
[r6-ospf-1-area-0.0.0.2]nssa no-summary
----- R11 -----
[r11]ospf 1
[r11-ospf-1]a 2
[r11-ospf-1-area-0.0.0.2]nssa
----- R12 -----
[r12]ospf 1
[r12-ospf-1]a 2
[r12-ospf-1-area-0.0.0.2]nssa
Area 3
----- R7 -----
[r7]ospf 1
[r7-ospf-1]a 3
[r7-ospf-1-area-0.0.0.3]nssa no-summary
----- R8 -----
[r8]ospf 1
[r8-ospf-1]a 3
[r8-ospf-1-area-0.0.0.3]nssa
----- R9 -----
[r9]ospf 1
[r9-ospf-1]a 3
[r9-ospf-1-area-0.0.0.3]nssa
查表
在R2/12/9上



做完特殊区域后的缺省下放
在R9上下放缺省(OSPF 2)
----- R9 -----
[r9]ospf 2
[r9-ospf-2]default-route-advertise
下放完毕,我们在R10上查看是否有缺省路由

有,则下方成功
但因为有了缺省,R10能通过缺省获取R9的所有路由,所以R9上的一个重发布就不用执行了,故我们undo一下
[r9-ospf-2]undo import-route ospf 1
在R4上下放缺省
目前我们做完了私网的所有包括优化,所以我们可以正式下放缺省路由了
[r4]ospf 1
[r4-ospf-1]default-route-advertise
那么这样对于与R4直连的区域而言,就有了缺省,下面举例R3的查表:

加快收敛配置
修改network-type类型
加快收敛操作即把此图的多个两个端点链路修改成P2P类型,如遇一点对多点,则修改为P2MP类型即可,因为P2P不需要选举DR和BDR,这样即可加快收敛
----- R3-R1/2 -----
[r3]int g0/0/0
[r3-GigabitEthernet0/0/0]ospf network-type p2mp
[r1]int g0/0/0
[r1-GigabitEthernet0/0/0]ospf network-type p2mp
[r2]int g0/0/0
[r2-GigabitEthernet0/0/0]ospf network-type p2mp
----- R3-R4 -----
[r3]int g0/0/1
[r3-GigabitEthernet0/0/1]ospf network-type p2p
[r4]int g0/0/1
[r4-GigabitEthernet0/0/1]ospf network-type p2p
----- R4-R6 -----
[r4]int g0/0/2
[r4-GigabitEthernet0/0/2]ospf network-type p2p
[r6]int g0/0/1
[r6-GigabitEthernet0/0/1]ospf network-type p2p
----- R4-R7 -----
[r4]int g0/0/0
[r4-GigabitEthernet0/0/0]ospf network-type p2p
[r7]int g0/0/0
[r7-GigabitEthernet0/0/0]ospf network-type p2p
----- R6-R11 -----
[r6]int g0/0/0
[r6-GigabitEthernet0/0/0]ospf network-type p2p
[r11]int g0/0/0
[r11-GigabitEthernet0/0/0]ospf network-type p2p
----- R11-R12 -----
[r11-GigabitEthernet0/0/0]int g0/0/1
[r11-GigabitEthernet0/0/1]ospf network-type p2p
[r12]int g0/0/0
[r12-GigabitEthernet0/0/0]ospf network-type p2p
----- R7-R8 -----
[r7]int g0/0/1
[r7-GigabitEthernet0/0/1]ospf network-type p2p
[r8]int g0/0/0
[r8-GigabitEthernet0/0/0]ospf network-type p2p
----- R8-R9 -----
[r8-GigabitEthernet0/0/0]int g0/0/1
[r8-GigabitEthernet0/0/1]ospf network-type p2p
[r9]int g0/0/0
[r9-GigabitEthernet0/0/0]ospf network-type p2p
----- R9-R10 -----
[r9]int g0/0/1
[r9-GigabitEthernet0/0/1]ospf network-type p2p
[r10]int g0/0/0
[r10-GigabitEthernet0/0/0]ospf network-type p2p
修改hello时间
改完network-type后确实加快了收敛,但是P2P和P2MP类型的hello时间和dead时间是比ospf原本的要长的,所以为了完成加快收敛的要求,我们还要修改其hello与dead时间(但修改只用改hello时间,因为dead时间随hello时间变化,无需修改)
由于修改hello时间的配置思路与上面的“修改network-type类型”思路类似,所以这里就只展示R3-R1/2区域的修改配置指令,其余路由器配置同理,不做赘述
----- R3-R1/2 -----
[r1]int g0/0/0
[r1-GigabitEthernet0/0/0]ospf timer hello 10 -- hello时间统一修改成10s,如还想再快,缩短时间即可
[r2]int g0/0/0
[r2-GigabitEthernet0/0/0]ospf timer hello 10
[r3]int g0/0/0
[r3-GigabitEthernet0/0/0]ospf timer hello 10
配置OSPF认证
一般情况下,ospf的认证只在骨干区域0配置即可,故我们在此只配置区域0的
----- Area 0 -----
[r4]ospf 1
[r4-ospf-1]a 0
[r4-ospf-1-area-0.0.0.0]authentication-mode md5 1 cipher 123456
[r3]ospf 1
[r3-ospf-1]a 0
[r3-ospf-1-area-0.0.0.0]authentication-mode md5 1 cipher 123456
[r6]ospf 1
[r6-ospf-1]a 0
[r6-ospf-1-area-0.0.0.0]authentication-mode md5 1 cipher 123456
[r7]ospf 1
[r7-ospf-1]a 0
[r7-ospf-1-area-0.0.0.0]authentication-mode md5 1 cipher 123456
保障更新安全
通过设置密码来保障更新安全

配置NAT
配置NAT来访问外网环境
[r4]acl 2000
[r4-acl-basic-2000]rule permit source 172.16.0.0 0.0.255.255
[r4]int s4/0/1
[r4-Serial4/0/1]nat outbound 2000
R1pingISP

R10的环回上进行ping测试

都可通,则配置无误
至此,整个OSPF综合实验配置完毕。
如有错误,请多指正。
相关文章:
【HCIP]——OSPF综合实验
题目 实验需求 根据上图可得,实验需求为: 1.R5作为ISP:其上只能配置IP地址;R4作为企业边界路由器,出口公网地址需要通过PPP协议获取,并进行CHAP认证。(PS:因PPP协议尚未学习&#…...
PW系列工控电脑复制机:效率与精度双重提升
工控电脑复制应用:效率与精度的双重提升 随着现代企业对大数据、数据备份、和跨平台兼容性需求的快速增长,工控电脑已成为数据密集型产业的核心设备。针对工控环境中大量数据复制的特殊需求,PW系列NVMe/SATA PCIe SSD复制机(如PW…...
学习QT第二天
QT6示例运行 运行一个Widgets程序运行一个QT Quick示例 工作太忙了,难得抽空学点东西。-_-||| 博客中有错误的地方,请各位道友及时指正,感谢! 运行一个Widgets程序 在QT Creator的欢迎界面中,点击左侧的示例…...
11.20作业
题目一: 题目: // 数组的行列转置 代码: // 数组的行列转置 #include <stdio.h> int main() {int a[2][3], i, j, b[3][2];printf("输入一个两行三列的数组a:\n");for (i 0; i < 2; i)for (j 0; j < 3; j){scanf…...
Ubuntu Linux使用前准备动作_使用root登录图形化界面
Ubuntu默认是不允许使用 root 登录图形化界面的。这是出于安全考虑的设置。但如果有需要,可以通过以下步骤来实现使用 root 登录: 1、设置 root 密码 打开终端,使用当前的管理员账户登录系统。在终端中输入命令sudo passwd root,…...
DICOM核心概念:显式 VR(Explicit VR)与隐式 VR(Implicit VR)在DICOM中的定义与区别
在DICOM(Digital Imaging and Communications in Medicine)标准中,VR(Value Representation) 表示数据元素的值的类型和格式。理解显式 VR(Explicit VR)与隐式 VR(Implicit VR&#…...
源码分析Spring Boot (v3.3.0)
. ____ _ __ _ _/\\ / ____ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | _ | _| | _ \/ _ | \ \ \ \\\/ ___)| |_)| | | | | || (_| | ) ) ) ) |____| .__|_| |_|_| |_\__, | / / / /|_||___//_/_/_/:: Spring Boot :: (v3.3.0)//笔记背…...
IPv6 NDP 记录
NDP(Neighbor Discovery Protocol,邻居发现协议) 是 IPv6 的一个关键协议,它组合了 IPv4 中的 ARP、ICMP 路由器发现和 ICMP 重定向等协议,并对它们作出了改进。该协议使用 ICMPv6 协议实现,作为 IPv6 的基…...
linux常用命令(文件操作)
目录 1. ls - 列出目录内容 2. cd - 更改目录 3. pwd - 打印当前工作目录 4. mkdir - 创建目录 5. rm - 删除文件或目录 6. cp - 复制文件或目录 7. mv - 移动或重命名文件 8. touch - 更新文件访问和修改时间 9. cat - 显示文件内容 10. grep - 搜索文本 11. chmod…...
内存管理 I(内存管理的基本原理和要求、连续分配管理方式)
一、内存管理的基本原理和要求 内存管理(Memory Management)是操作系统设计中最重要和最复杂的内容之一。虽然计算机硬件技术一直在飞速发展,内存容量也在不断增大,但仍然不可能将所有用户进程和系统所需要的全部程序与数据放入主…...
【Redis】基于Redis实现秒杀功能
业务的流程大概就是,先判断优惠卷是否过期,然后判断是否有库存,最好进行扣减库存,加入全局唯一id,然后生成订单。 一、超卖问题 真是的场景下可能会有超卖问题,比如开200个线程进行抢购,抢100个…...
Hadoop 使用过程中 15 个常见问题的详细描述、解决方案
目录 问题 1:配置文件路径错误问题描述解决方案Python 实现 问题 2:YARN 资源配置不足问题描述解决方案Python 实现 问题 3:DataNode 无法启动问题描述解决方案Python 实现 问题 4:NameNode 格式化失败问题描述解决方案Python 实现…...
【Flutter 问题系列第 84 篇】如何清除指定网络图片的缓存
这是【Flutter 问题系列第 84 篇】,如果觉得有用的话,欢迎关注专栏。 博文当前所用 Flutter SDK:3.24.3、Dart SDK:3.5.3,网络图片缓存用的插件 cached_network_image: 3.4.1,缓存的网络图像的存储和检索用…...
【UE5】使用基元数据对材质传参,从而避免新建材质实例
在项目中,经常会遇到这样的需求:多个模型(例如 100 个)使用相同的材质,但每个模型需要不同的参数设置,比如不同的颜色或随机种子等。 在这种情况下,创建 100 个实例材质不是最佳选择。正确的做…...
鸿蒙动画开发07——粒子动画
1、概 述 粒子动画是在一定范围内随机生成的大量粒子产生运动而组成的动画。 动画元素是一个个粒子,这些粒子可以是圆点、图片。我们可以通过对粒子在颜色、透明度、大小、速度、加速度、自旋角度等维度变化做动画,来营造一种氛围感,比如下…...
IDEA2023 创建SpringBoot项目(一)
一、Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。 二、快速开发 1.打开IDEA选择 File->New->Project 2、…...
VSCode:终端打开一片空白,无cmd
第一步:找到右下角设置图标 第二步:找到 Terminal - Integrated - Default Profile: Windows: 选择一个本地存在的命令方式,重启即可 也可以直接在右下角直接选择...
Zea maize GO
1.涉及到新旧基因组的转化 B73v4_to_B73v5 (davidbioinformatics只支持新版基因组) MaizeGDB Map文件下载https://download.maizegdb.org/Pan-genes/B73_gene_xref/小处理脚本(制作map文件) import pandas as pd# 读取CSV文件 …...
Android开发实战班 - 数据持久化 - 数据加密与安全
在 Android 应用开发中,数据安全至关重要,尤其是在处理敏感信息(如用户密码、支付信息、个人隐私数据等)时。数据加密是保护数据安全的重要手段,可以有效防止数据泄露、篡改和未经授权的访问。本章节将介绍 Android 开…...
EDA实验设计-led灯管动态显示;VHDL;Quartus编程
EDA实验设计-led灯管动态显示;VHDL;Quartus编程 引脚配置实现代码RTL引脚展示现象记录效果展示 引脚配置 #------------------GLOBAL--------------------# set_global_assignment -name RESERVE_ALL_UNUSED_PINS "AS INPUT TRI-STATED" set_…...
【Axure高保真原型】引导弹窗
今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...
MPNet:旋转机械轻量化故障诊断模型详解python代码复现
目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
云计算——弹性云计算器(ECS)
弹性云服务器:ECS 概述 云计算重构了ICT系统,云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台,包含如下主要概念。 ECS(Elastic Cloud Server):即弹性云服务器,是云计算…...
8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂
蛋白质结合剂(如抗体、抑制肽)在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上,高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术,但这类方法普遍面临资源消耗巨大、研发周期冗长…...
解锁数据库简洁之道:FastAPI与SQLModel实战指南
在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...
2025盘古石杯决赛【手机取证】
前言 第三届盘古石杯国际电子数据取证大赛决赛 最后一题没有解出来,实在找不到,希望有大佬教一下我。 还有就会议时间,我感觉不是图片时间,因为在电脑看到是其他时间用老会议系统开的会。 手机取证 1、分析鸿蒙手机检材&#x…...
【决胜公务员考试】求职OMG——见面课测验1
2025最新版!!!6.8截至答题,大家注意呀! 博主码字不易点个关注吧,祝期末顺利~~ 1.单选题(2分) 下列说法错误的是:( B ) A.选调生属于公务员系统 B.公务员属于事业编 C.选调生有基层锻炼的要求 D…...
Typeerror: cannot read properties of undefined (reading ‘XXX‘)
最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...
如何在网页里填写 PDF 表格?
有时候,你可能希望用户能在你的网站上填写 PDF 表单。然而,这件事并不简单,因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件,但原生并不支持编辑或填写它们。更糟的是,如果你想收集表单数据ÿ…...
