学习笔记——动态路由——OSPF(特殊区域)

news2024/12/28 5:20:33

十、OSPF特殊区域

1、技术背景

早期路由器靠CPU计算转发,由于硬件技术限制问题,因此资源不是特别充足,因此是要节省资源使用,规划是非常必要的。

OSPF路由器需要同时维护域内路由、域间路由、外部路由信息数据库。当网络规模不断扩大时,LSDB规模也会不断的增长。OSPF通过划分区域可以减小区域内路由器LSDB的规模,给OSPF划分区域:分为骨干区域和非骨干区域。

划分区域这样确实有效的减少了LSA的条目,但是一些非骨干区域的路由器还是会接收到较多的三类、四类、五类LSA。

OSPF的骨干区域的路由器一般性能会比较强大,能承载和维护更多的LSDB,但是一些非骨干区域的路由器可能并不能承载过大的LSDB,对于非骨干区域的低端路由器来说仍然无法承受。而且有一些非骨干区域的路由器不需要为其他区域提供流量的中转,那么该区域内的路由器就没有必要维护本区域外的LSDB。所以为了进一步减少路由器LSDB的规模以及LSA的数量,我们可以通过引入两个特殊区域,Stub和Nssa区域,进一步减少LSA的数量和路由表的规模。。

OSPF的三种通信量

① 域内通信量:单个区域内的路由器之间交换数据包构成的通信量

② 域间通信量:不同区域的路由器之间交换数据包构成的通信量

③ 外部通信量:OSPF域内的路由器与OSPF区域外或另一个自治系统内的路由器之间交换数据包构成的通信量

2、特殊区域概述

在OSPF网络中,Stub区域、Totally-stub区域、NSSA区域和Totally-NSSA区域是特殊的区域类型,用于在网络中实现特定的路由聚合和传输策略。它们可以帮助简化路由表、减小网络开销、提高网络稳定性并适应不同网络设计和需求

注意事项非骨干区域才能配置成特殊区域骨干区域不可以配置成特殊区域,就算配置了也不会生效,因为骨干区域链接多个区域,作为LSA的中转站,一定是需要去传输LSA的。

主要作用

① 减少特殊区域LSA的数量           ② 减少路由表的数量

特殊区域的局限性

① 特殊区域可能会产生次优路径

② 特殊区域不能配置虚拟链路

③ 骨干区域不能配置为特殊区域

OSPF特殊区域的功能和优势

区域类型

功能和优势

Stub区域

将末端区域的网络信息聚合为默认路由,简化路由表,降低网络开销,加快路由收敛速度。

Totally-stub区域

在Stub区域的基础上,将Area 0(主干区域)的外部路由信息也聚合为默认路由,进一步简化路由表,优化网络性能。

NSSA区域

允许传输末端区域的网络信息到外部区域,但仍然聚合外部区域的网络信息为默认路由,增加网络安全性和管理灵活性。

Totally-NSSA区域

在NSSA区域的基础上,允许Area 0(主干区域)的外部路由信息传输到NSSA区域,提供更大的灵活性和控制权。

3、特殊区域类型

OSPF的区域可分为两种类型:

1)传输区域(Transit Area):除了承载本区域发起的流量和访问本区域的流量外,还承载了源IP和目的IP都不属于本区域的流量,即“穿越型流量”Area0。(如下图)

2)末端区域(Stub Area):只承载本区域发起的流量和访问本区域的流量Area1和Area2(如下图)

主要有四种特殊区域:Stub末端区域、Totally Stub区域、NASS区域、Totally NASS区域

对于末端区域,需要考虑下几个问题:

保存到达其他区域明细路由的必要性:访问其他区域通过单一出口(这里为R2、R3),“汇总”路由相对明细路由更为简洁。

设备性能:网络建设与维护必须要考虑成本因素。末端区域中可选择部署性能相对较低的路由器。

OSPF路由器计算区域内、区域间、外部路由都需要依靠收集网络中的大量LSA,大量LSA会占用LSDB存储空间,所以解决问题的关键是在不影响正常路由的情况下,减少LSA的数量。

(1)末梢区域(Stub Area)

末端区域/末节区域(Stub Area):用于表示一个网络的最后节点,往后不会再有其它网络节点接入。用于将网络中的末端区域与主干区域(Area 0)相连

简略特点:拒绝4、5类,生成3类默认路由。

Stub区域通过汇总外部路由,并使用默认路由,减少区域内路由器的负担,并阻止来自其他区域的LSA信息。Stub区域的ABR,不向Stub区域内传播接收到的AS外部路由,Stub区域中路由器的LSDB、路由表规模都会大大减小。

Stub区域是一种可选的配置属性,但并不建议将每个区域都配置为Stub区域。通常来说,Stub区域位于自治系统的末梢,是那些只有一个ABR的非骨干区域。被设置为stub区域的区域不会学习其他区域的详细路由条目为保证Stub区域能够到达自治系统外部,Stub区域的ABR将生成一条3类LSA 0.0.0.0/0的默认路由(对应三类LSA),并发布给Stub区域中的其他路由器(以便访问OSPF中其他区域的网络)。

1)Stub区域的路由及3类LSA

R1作为ASBR引入多个外部网段,如果Area 2是普通区域,则R3将向该区域注入5类和4类LSA。

当把Area 2配置为Stub区域后,R3不会将5类LSA和4类LSA注入Area 2。

R3向Area 2发送用于描述缺省路由的3类LSA,Area 2内的路由器虽然不知道到达AS外部的具体路由,但是可以通过该默认路由到达AS外部。

       

可以看出R5的路由表上有一条默认路由,下一跳是R3,到达其他区域       

2)Stub区域的特点

为保证Stub区域能够到达AS外部,Stub区域的ABR将生成一条缺省路由(使用3类LSA描述)。

1、骨干区域不能被配置为Stub区域

2、如果要将一个区域配置成Stub区域,则该区域中的所有路由器必须都要配置成Stub路由器。

3、Stub区域内不能存在ASBR,自治系统外部路由不能在本区域内传播。区域内的路由器只需要维护默认路由,而不需要具体的外部路由信息

4、虚连接不能穿越Stub区域建立

5、当外部网络发生变化后,Stub区域内的路由器是不会直接受到影响。

6、处于STUB区域中的路由设备,其LSDB中不允许出现4、5类LSA,但会生成一条3类的默认路由指向该特殊区域的ABR设备。

在Stub区域中只有域内路由和域间路由

3)配置

配置说明:

ospf 1 area 0         //将接口GE 0/0添加到Area 0(主干区域)。

ospf 1 area 1 stub    //将接口GE 0/1添加到Area 1,并配置为Stub区域。

R1的配置                                           R2的配置

router  ospf  1                                    router  ospf  1

network  192.168.12.0  0.0.0.255  area 1           network  192.168.12.0  0.0.0.255  area 1

area  1 stub                                        network  192.168.23.0  0.0.0.255  area 0

area  1 stub

通过命令display ospf lsdb查看该路由器所有LSA发现只有一类、二类、三类LSA,还有一条缺省三类LSA

[rtd]display ospf lsdb

      OSPF Process 1 with Router ID 192.168.3.4

           Link State Database

                   Area: 0.0.0.1

 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric

 Router    192.168.3.4     192.168.3.4        305  36    80000006       1

 Router    192.168.1.2     192.168.1.2        308  36    80000004       1

 Network   192.168.3.4     192.168.3.4        305  32    80000002       0

 Sum-Net   0.0.0.0         192.168.1.2        315  28    80000001       1   缺省三类LSA

 Sum-Net   192.168.4.0     192.168.1.2        315  28    80000001       3

 Sum-Net   192.168.2.0     192.168.1.2        315  28    80000001       2

 Sum-Net   192.168.1.0     192.168.1.2        315  28    80000001       1

<rtd>dis ip routing-table

Route Flags: R - relay, D - download to fib

------------------------------------------------------------------------------

Routing Tables: Public

         Destinations : 11       Routes : 11      

Destination/Mask    Proto   Pre  Cost      Flags  NextHop         Interface

 0.0.0.0/0           OSPF    10   2        D     192.168.3.2     GigabitEthernet0/0/0

2、完全(绝对)末梢区域(Totally Stub)

Totally-stub区域是一种更加精简的Stub区域,除了将末端区域的具体网络信息聚合为默认路由外,还将Area 0(主干区域)的外部路由信息也聚合为默认路由。

Totally STUB区域类似于STUB区域,但还阻止来自骨干区域的LSA信息。这样可以进一步简化区域内的路由表,并减少资源消耗。

在Total Stub Area中只有本区域内的路由。LSA3/4/5均不允许进入本区域,只存在1类、2类LSA。配置Total Stub Area后会在区域内自动的生成一条默认路由(以便访问OSPF中其他区域的网络)。

由stub区域的ABR设备产生一条3类LSA 0.0.0.0/0的默认路由,发布给stub区域中的其他路由器

3)Totally STUB区域的特点包括:

在Totally STUB区域中,外部路由被汇总为默认路由。

区域内的路由器只需要维护默认路由,而不需要具体的外部路由信息。

Totally STUB区域不会接收来自骨干区域的LSA信息。

所有末端区域和外部区域的路由信息都被聚合为一个默认路由。

Totally-stub区域内的路由器只知道默认路由,不知道任何具体的网络信息。

3)配置:特殊区域的所有设备都要配置

ospf

area 0.0.0.2

stub no-summary //把区域2设置为stub区域,stub 区域的ABR上配置就可以

GE 0/0  ospf 1 area 0  //将接口GE 0/0添加到Area 0(主干区域)。

GE 0/1  ospf 1 area 1 stub   //将接口GE 0/1添加到Area 1,并配置为Stub区域。

GE 0/2  ospf 1 area 2 stub no-summary  //将接口GE 0/2添加到Area 2,并配置为Totally-stub区域。

查看RTD的LSDB:此时可以发现,三类LSA只剩下一条缺省三类LSA

[rtd]display ospf lsdb

      OSPF Process 1 with Router ID 192.168.3.4

           Link State Database

                   Area: 0.0.0.1

 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric

 Router    192.168.3.4     192.168.3.4         63  36    8000000B       1

 Router    192.168.1.2     192.168.1.2         68  36    80000005       1

 Network   192.168.3.4     192.168.3.4         63  32    80000002       0

 Sum-Net   0.0.0.0         192.168.1.2         74  28    80000001       1    缺省三类LSA

[rtd]dis ospf routing

      OSPF Process 1 with Router ID 192.168.3.4

            Routing Tables

 Routing for Network

 Destination        Cost  Type       NextHop         AdvRouter       Area

 192.168.3.0/24     1     Transit    192.168.3.4     192.168.3.4     0.0.0.1

 0.0.0.0/0          2     Inter-area 192.168.3.2     192.168.1.2     0.0.0.1

 Total Nets: 2 

 Intra Area: 1  Inter Area: 1  ASE: 0  NSSA: 0

4、非纯末梢区域(NSSA)

(1)背景

OSPF规定Stub区域是不能引入外部路由的,这样可以避免大量外部路由对Stub区域路由器带宽和存储资源的消耗。对于既需要引入外部路由又要避免外部路由带来的资源消耗的场景,Stub区域就不再满足需求了。因此产生了NSSA区域。

NSSA(Not-So-Stubby-Area)区域是一种允许传输外部路由信息的非纯末梢区域。在NSSA区域中,末端区域可以通过NSSA区域向外传递自己的网络信息,但仍然聚合外部区域的网络信息为默认路由。

NSSA(Not-So-Stubby Area)在NSSA区域中允许存在ASBR,区域允许将外部路由引入OSPF区域,但LSA类型被修改以兼容OSPF,并提供更大的灵活性。这个外部路由在NSSA区域内以LSA 7存在。

当此LSA 7路由离开NSSA区域进入别的区域时,NSSA的ABR会进行LSA 7向LSA 5的转换(如图Area 6所示)。

本区域只允许LSA 3进入,禁止LSA4/5的进入。所以此区域有域内、域间和外部路由。

配置NSSA区域需要在区域内手工的创建一条默认路由(以便访问OSPF中其他区域的网络)。

# router ospf x

# area 6 nssa default-information-originate

两者的差别在于,NSSA区域能够将自治域外部路由引入并传播到整个OSPF自治域中,同时又不会学习来自OSPF网络其它区域的外部路由。

7类LSA是为了支持NSSA区域而新增的一种LSA类型,用于描述NSSA区域引入的外部路由信息

7类LSA的扩散范围仅限于始发NSSA区域,7类LSA不会被注入到普通区域。

NSSA区域的ASBR将外部路由引入该区域后,使用7类LSA描述这些路由。

NSSA区域的ABR会将7类LSA转化为5类LSA,并将该LSA注入到骨干区域,从而在整个OSPF域内泛洪。

NSSA区域的ABR会阻挡其他区域引入的外部路由引入本区域,即NSSA区域内不会存在4类及5类LSA,为了让NSSA区域内的路由器能够通过骨干区域到达AS外部,NSSA区域的ABR会自动向该区域注入一条7类LSA O N2 0.0.0.0/0缺省路由,该路由采用7类LSA描述。

本NSSA区域的路由器可以拥有ASBR,可以引入外部路由,该外部路由以7类LSA的形式在NSSA区域中存在。

由NSSA区域的ABR路由器将7类LSA转换成5类LSA,如果有多个ABR,router-id大的ABR成为转发者路由器。

(2)、NSSA区域的特点包括:

允许在NSSA区域中引入外部路由。

NSSA区域的ASBR(自治系统边界路由器)将外部路由转换为NSSA LSA类型。

NSSA区域内的其他路由器可以接收和转发NSSA LSA。

末端区域可以传递自己的网络信息到外部区域。

外部区域的网络信息被聚合为一个默认路由。

Nssa区域的LSDB

当R5将外部路由192.168.3.0/24引入NSSA区域时R5作为ASBR生成7类LSA在Area 2内泛洪; R3生成使用7类LSA描述的缺省路由注入Area 2,Area 2内的路由器依然会收到R3注入的3类LSA

LSA的处理原则

当OSPF设备收到一条LSA进行新旧比较的原则

1.比较新收到的LSA和LSDB库中的LSA的 SEQ 序列号 大的优先

2.校验和大的更优

3.收到的LSA是否为3600s 如果是 那么收到的这条LSA 更优

4.新旧的LSA age时间相差15min 小的更优

5.如果没有相差15min 那么就会保留先收到的

(3)配置:属于nssa区域的所有设备都需要配置

ospf 1 router-id 55.1.1.1

area 0.0.0.2

nssa                                  //把区域2设置为nssa区域

ospf 1 router-id 11.1.1.1

nssa translator-always               //强制指定R1作为转发者

参数:no-import-route            //NSSA区域中的路由器,不允许引入外部路由

GE 0/0  ospf 1 area 0           //将接口GE 0/0添加到Area 0(主干区域)。

GE 0/1  ospf 1 area 1 nssa  //将接口GE 0/1添加到Area 1,并配置为NSSA区域。

5、完全纯末梢区域(Totally NSSA)

Totally-NSSA区域是一种更加灵活的NSSA区域,除了允许传输外部路由信息,还将Area 0(主干区域)的外部路由信息也传输到NSSA区域中。

Totally NSSA区域类似于NSSA区域,但还阻止来自骨干区域的LSA信息。这样可以进一步控制区域内的资源消耗,并提供更高的灵活性。

    在NSSA区域中允许存在ASBR,所以也就可以引入外部路由。这个外部路由在NSSA区域内以LSA 7存在。当此LSA 7路由离开NSSA区域进入别的区域时,NSSA的ABR会进行LSA 7向LSA 5的转换(如图Area 7所示)。

    本区域禁止LSA3/4/5进入,只有本区域内路由和外部路由。配置Total NSSA Area后的ABR设备会在区域内自动的生成一条一条3类LSA 0.0.0.0/0的默认路由(以便访问OSPF中其他区域的网络)。

Totally NSSA区域的特点包括:

允许在Totally NSSA区域中引入外部路由。

Totally NSSA区域的ASBR将外部路由转换为Totally NSSA LSA类型。

Totally NSSA区域内的其他路由器可以接收和转发Totally NSSA LSA。

允许传输末端区域和外部区域的网络信息。

Area 0(主干区域)的外部路由信息也传输到Totally-NSSA区域中。

配置:属于nssa区域的ABR设备需要配

ospf 1 router-id 11.1.1.1

area 0.0.0.2

nssa no-summary                    //把区域2设置为totally nssa区域

GE 0/0  ospf 1 area 0                //将接口GE 0/0添加到Area 0(主干区域)。

GE 0/1  ospf 1 area 1 nssa           //将接口GE 0/1添加到Area 1,并配置为NSSA区域。

GE 0/2  ospf 1 area 2 nssa no-summary //将接口GE 0/2添加到Area 2,并配置为Totally-NSSA区域。

6、四者的比较

Stub与NSSA

都是过滤4、5类LSA

Stub生成3类默认路由、NSSA生成7类默认路由

NSSA可引入外部路由作为7类LSA

TotallyStub与TotallyNSSA

都是过滤3、4、5类LSA

Totally Stub生成3类默认路由、Totally NSSA生成3类默认路由与7类默认路由

Totally NSSA仍然可以引入外部路由作为7类LSA传递


整个华为数通学习笔记系列中,本人是以网络视频与网络文章的方式自学的,并按自己理解的方式总结了学习笔记,某些笔记段落中可能有部分文字或图片与网络中有雷同,并非抄袭。完处于学习态度,觉得这段文字更通俗易懂,融入了自己的学习笔记中。如有相关文字涉及到某个人的版权利益,可以直接联系我,我会把相关文字删除。【VX:czlingyun    暗号:CSDN】

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

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

相关文章

Vue3中为Ant Design Vue中Modal.confirm自定义内容

在一次业务开发时代码时&#xff0c;碰到了一种既想要Modal.confirm样式&#xff0c;又想要定制其content内容的情况。 大部分情况下&#xff0c;使用Modal.method()这种方式时&#xff0c;可能content内容固定都是字符串&#xff0c;那如果想要做更高级的交互怎么办&#xff…

RTK_ROS_导航(1): GNSS里程计

目录 1. RTK 配置2. ROS驱动3. RTK融合IMU实现里程计4. 纯RTK的定位信息5. 即将实现导航&#xff0c;正在更新中&#xff0c;如果遇到问题&#xff0c;欢迎CSDN讨论... 1. RTK 配置 4G CORS 4G 网络 户外有信号&#xff0c;不能实现RTK&#xff0c;就恢复出厂设置输出报文信…

kafka底层原理性能优化详解:大案例解析(第29天)

系列文章目录 一、Kafka简介 二、Kafka架构设计 三、消息传递机制 四、实例说明&#xff08;案例解析&#xff09; 五、kafka性能优化(案例解析) 文章目录 系列文章目录前言一、Kafka简介二、Kafka架构设计1. Producer&#xff08;生产者&#xff09;&#xff1a;2. Broker&am…

Check if a fine-tuned OpenAI model was successfully deleted

题意&#xff1a;检查微调后的OpenAI模型是否已成功删除 问题背景&#xff1a; I am doing some work with the OpenAI API with Python. Im working with fine-tuning and I am working on deleting an existing model and starting over again. I want to be able to check …

Hive 高可用分布式部署详细步骤

目录 系统版本说明 hive安装包下载及解压 上传mysql-connector-java的jar包 配置环境变量 进入conf配置文件中&#xff0c;将文件重命名 在hadoop集群上创建文件夹 创建本地目录 修改hive-site.xml文件 同步到其他的节点服务器 修改node02中的配置 hive-site.xml 修改…

上海-LM科技(面经)

上海-LM科技 hr电话面 个人简介 个人信息的询问 是否知道芋道框架 技术面 算法题 14. 最长公共前缀&#xff08;写出来即可&#xff09; 聊一下Docker Docker核心概念总结Docker实战 聊一下AOP Spring AOP详解 聊一下JWT JWT 基础概念详解JWT 身份认证优缺点分析 Spring…

【C++】类和对象(中)--下篇

个人主页~ 类和对象上 类和对象中-上篇 类和对象 五、赋值运算符重载1、运算符重载2、赋值运算符重载3、前置和后置重载 六、const成员七、日期类的实现Date.hDate.cpptest.cpptest1测试结果test2测试结果test3测试结果test4测试结果test5测试结果test6测试结果test7测试结果 八…

【Dison夏令营 Day 12】如何用 Python 构建数独游戏

通过本综合教程&#xff0c;学习如何使用 Pygame 在 Python 中创建自己的数独游戏。本指南涵盖安装、游戏逻辑、用户界面和计时器功能&#xff0c;是希望创建功能性和可扩展性数独益智游戏的爱好者的理想之选。 数独是一种经典的数字谜题&#xff0c;多年来一直吸引着谜题爱好…

【Elasticsearch】Elasticsearch倒排索引详解

文章目录 &#x1f4d1;引言一、倒排索引简介二、倒排索引的基本结构三、Elasticsearch中的倒排索引3.1 索引和文档3.2 创建倒排索引3.3 倒排索引的存储结构3.4 词典和倒排列表的优化 四、倒排索引的查询过程4.1 过程4.2 示例 五、倒排索引的优缺点5.1 优点5.2 缺点 六、倒排索…

阶段三:项目开发---搭建项目前后端系统基础架构:任务9:导入空管基础数据

任务描述 本阶段任务是导入项目的基础数据&#xff0c;包括空管基础数据和离线的实时飞行数据&#xff08;已经脱敏&#xff09;。 任务指导 本阶段任务需要导入两种数据&#xff1a; 1、在MySQL中导入空管基础数据 kongguan.sql空管基础数据表说明&#xff1a; 1告警信息…

什么牌子的头戴式蓝牙耳机好性价比高?

说起性价比高的头戴式蓝牙耳机,就不得不提倍思H1s,作为倍思最新推出的新款,在各项功能上都实现了不错的升级,二字开头的价格,配置却毫不含糊, 倍思H1s的音质表现堪称一流。它采用了40mm天然生物纤维振膜,这种振膜柔韧而有弹性,能够显著提升低音的量感。无论是深沉的低音还是清…

C语言 | Leetcode C语言题解之第221题最大正方形

题目&#xff1a; 题解&#xff1a; int maximalSquare(char** matrix, int matrixSize, int* matrixColSize){int dp[301][301]{0};int wid0;if(matrixSize0&&matrixColSize[0]0){return 0;}for(int i0;i<matrixSize;i){for(int j0;j<matrixColSize[0];j){if(m…

linux docker部署(离线.deb)非桌面版

目录 一.查看本机系统 二.下载deb包 三.安装 一.查看本机系统 uname -m二.下载deb包 下载官网&#xff1a;Index of linux/ubuntu/dists/focal/pool/stable/amd64/ (docker.com) 目录说明&#xff1a; 我是ubuntu20.04&#xff0c;选择focal&#xff1a; edge/&#xff…

R语言实战—圆形树状图

话不多说&#xff0c;先看最终效果&#xff1a; 圆形树状图是树状图的一个变型&#xff0c;其实都是层次聚类。 接下来看代码步骤&#xff1a; 首先要先安装两个包&#xff1a; install.packages("ggtree") install.packages("readxl") 咱就别问问什么…

群体优化算法----化学反应优化算法介绍,解决蛋白质-配体对接问题示例

介绍 化学反应优化算法&#xff08;Chemical Reaction Optimization, CRO&#xff09;是一种新兴的基于自然现象的元启发式算法&#xff0c;受化学反应过程中分子碰撞和反应机制的启发而设计。CRO算法模拟了分子在化学反应过程中通过能量转换和分子间相互作用来寻找稳定结构的…

C++ unique_ptr智能指针学习

unique_ptr是一种定义在<memory>中的智能指针(smart pointer)。它持有对对象的独有权——两个unique_ptr不能指向一个对象&#xff0c;不能进行复制操作只能进行移动操作。 如下图&#xff0c;定义p1为unique_ptr类型指针&#xff0c;如果把p1赋给p2&#xff0c;则编译出…

【题解】—— LeetCode一周小结27

&#x1f31f;欢迎来到 我的博客 —— 探索技术的无限可能&#xff01; &#x1f31f;博客的简介&#xff08;文章目录&#xff09; 【题解】—— 每日一道题目栏 上接&#xff1a;【题解】—— LeetCode一周小结26 2024.7 1.最大化一张图中的路径价值 题目链接&#xff1a;…

墨烯的C语言技术栈-C语言基础-008

八.转义字符(转变原来字符的意思) 假如我们要在屏幕上打印一个目录:C:\code\test.c 我们应该如何写代码 int main() { printf("abc\n") // \让n转变 换行作用 return 0; } imt main() { printf("abc\0def") // \0后就是结束了后面打不印了 return 0; }…

C语言指针,的声明、取地址、*解引用、设置值、偏移、自增 的问题举例

C语言指针,的声明、&取地址、※解引用、设置值、偏移、自增 的问题举例代码&#xff1a;int※a,d[]{1,2,4,8};char*f,e[]“Hellow…”;a&b; P1※a; ※a4; P1※(a);f&e[7]; &#xff08;备注&#xff1a;※代表*&#xff0c;转义问题&#xff0c;没显示&#xff09…

Spring Cloud: Nacos配置中心与注册中心的使用

一、配置中心(配置管理) 配置中心是一种集中化管理配置的服务。它的主要作用包括集中管理配置信息&#xff0c;将不同服务的配置信息集中存储和管理&#xff1b;支持动态更新配置&#xff0c;通过操作界面或 API 无需重启服务即可应用最新配置信息&#xff1b;实现配置信息共享…