HCIP学习 | 广域网、OSPF基础

devtools/2024/11/13 9:34:47/

Days03(24.8.4)广域网技术

概述

广域网技术在数据链路层面针对不同的物理链路定义了不同的封装方式。‌

对于局域网封装,‌主要有Ethernet 2(‌基于TCP/IP开发)‌和IEEE802.3(‌基于OSI协议开发)‌两种。‌

对于广域网封装,‌则包括PPP、‌HDLC、‌FR(‌帧中继)‌和ATM(‌异步传输模式)‌等多种协议。‌

HDLC(‌高级数据链路控制协议)‌是一种重要的广域网封装协议,‌默认思科的串行链路封装即为HDLC。‌HDLC分为工业标准的HDLC和思科私有的HDLC两种,‌它们之间并不通用。‌思科私有的HDLC中加入了一些控制字符,‌用于识别上层协议以及三层的传输方式。‌定义接口封装为HDLC,‌可以通过相应的命令在接口配置模式下进行设置。‌‌

LCP、PPP、NCP

PPP(‌Point-to-Point Protocol)‌,‌即点对点协议,‌是华为串行链路默认使用的封装协议。‌PPP链路需要建立一条端到端的会话链路

PPP会话建立过程主要分为三个阶段:‌

1. LCP(‌链路控制协议)‌阶段:‌通过发送LCP数据进行物理链路和封装的确认。‌
2. PPP认证阶段:‌此阶段用于增加PPP会话的安全性,‌认证方式主要包括PAP和CHAP。‌其中,‌PAP是一种一次性的简单的明文认证方式;‌而CHAP则是通过三次握手的方式进行更为安全的MD5认证。‌
3. NCP(‌网络控制协议)‌阶段:‌通过发送NCP针对上层协议进行封装,‌并进行IPCP协商。‌在NCP协商过程中,‌会自动将自己本端的IP地址以路由方式发送给对方。‌当PPP会话建立之后,‌会产生到达对方接口IP地址的32位主机路由

主认证方:

接口调用:

被认证方: 提供账号密码:

CHAP :挑战握手认证协议,通过三次握手的方式进行安全的MD5认证 ,在认证过程中需要发送挑战信息(类似 HMAC 密钥化哈希)

接口启用chap认证: 

被认证方:

在广域网技术中,‌**PPP、‌HDLC、‌FR、‌ATM、‌PPPOE、‌PPPOA是常见的数据链路层封装协议**。‌

- PPP(‌Point-to-Point Protocol,‌点对点协议)‌:‌主要用于拨号或专线方式在两个网络节点之间建立连接、‌发送数据,‌具备用户验证能力,‌可以解决IP分配等问题,‌广泛应用于互联网服务提供商(‌ISP)‌的拨号连接访问互联网‌12。‌
- **HDLC(‌High-Level Data Link Control,‌高级数据链路控制协议)‌**:‌是思科路由器串行接口的默认封装协议,‌主要用于封装IP协议,‌也可通过改进支持其他协议‌34。‌
- **FR(‌Frame Relay,‌帧中继)‌**、‌**ATM(‌Asynchronous Transfer Mode,‌异步传输模式)‌**:‌都是广域网中使用的数据链路层协议,‌用于高效的数据传输‌35。‌
- **PPPOE(‌PPP over Ethernet,‌以太网上的点对点协议)‌**、‌**PPPOA(‌PPP over ATM,‌ATM上的点对点协议)‌**:‌是PPP协议的扩展应用,‌分别用于以太网和ATM网络上的数据传输‌

GRE

GRE: 通用路由封装,标准的三层隧道技术 ,是一种点对点的隧道技术

查看:

MGRE、NHRP

MGRE: 多点通用路由封装协议 

NHRP :下一跳可达协议,所有的MGRE接口将自己的MGRE接口IP地址和对应 隧道物理接口地址信息发送给NHS进行注册,NHS 上存在所有接入MGRE的接 口映射关系。其他MGRE接口之间彼此通信时向NHS进行请求,形成隧道的目 标地址。

MGRE与NHRP配合使用时,‌所有MGRE接口会将自己的MGRE接口IP地址和对应的隧道物理接口地址信息发送给NHS(‌下一跳服务器)‌进行注册。‌NHS上存储了所有接入MGRE的接口映射关系。‌当其他MGRE接口之间需要彼此通信时,‌它们会向NHS发出请求,‌以形成隧道的目标地址。‌在运行路由协议的hub端配置时,‌需要考虑到这些协议的特性和交互方式,‌确保网络的正常通信。‌

运行路由协议 

hub端配置:

spoke端配置:

查看: 

Days04(24.8.5)

OSPF

OSPF(Open Shortest Path First)是一种开放式最短路径优先协议,主要用于内部网关协议(IGP)中,用于在自治系统内部(AS)进行路由选择。以下是关于OSPF的一些重要特点和信息:

  • 使用范围:OSPF主要用作内部网关协议(IGP),用于在单一自治系统(AS)内部进行路由选择。

  • 协议算法特点:OSPF是一种链路状态型路由协议,它使用SPF(Shortest Path First)算法来计算最短路径,即选择最佳路径到达目的地。

  • 协议是否传递网络掩码:OSPF可以传递网络掩码信息。这使得网络设备能够了解目标网络的具体子网信息,从而更精确地进行路由选择。

  • 协议封装:OSPF数据包被封装在IP数据包中,协议号为89(IPv4中),这样使得路由器能够识别和处理OSPF数据。

OSPF特点

1.OSPF 是一种典型的链路状态型路由协议

2.传递信息称作LSA,LSA 链路状态通告,包含路由信息和拓扑信 息。

路由LSA:描述本路由器上接口的路由信息

拓扑LSA:描述路由器之间的连接状态

3.更新方式: 触发更新+30分钟的链路状态刷新

4.更新地址: 组播和单播更新,组播地址: 224.0.0.5(ALL SPF router) 224.0.0.6 (ALL DR router)

5.支持路由认证

6.支持手工汇总

7.支持区域划分

8.OSPF 比较消耗设备资源

  • IP的数据传输是不可靠的(没有确认重传机制)

  • OSPF中常见的LSA有六种,分别是一类、二类、三类、四类、五类、七类

  • 触发更新是一种路由表更新方式,‌当网络拓扑结构发生改变时,‌为了加速收敛,‌路由器会立即向相邻路由器发送更新消息,‌以通知邻居拓扑结构发生了改变。‌这种更新方式不需要等待更新计时器超时,‌能够迅速响应网络变化。‌在RIP和OSPF等路由协议中,‌触发更新是确保网络稳定性和连通性的重要机制之一。‌

  • OSPF算法:SPF算法(最短路径优先算法)

  • OSPF更新方式:触发更新(路由学习)+30分钟的链路状态刷新(更改某些参数)

  • 224.0.0.x给各种协议使用的组播地址,TTL=1

  • OSPF更新地址:组播和单播更新,组播地址: 224.0.0.5(ALL SPF router) 224.0.0.6 (ALL DR router)

  • RIP组播地址:224.0.0.9 (在Cisco中TTL=2)

OSPF区域

区域划分意义:

1.减少LSA的数量 2.减少LSA的传播范

  • OSPF区域划分基于接口的也是基于链路的

  • 区域设计原则:向日葵型网络结构

    • OSPF网络中必须存在并且唯一的骨干区域(单区域除外)

    • 若存在非骨干区域,非骨干区域必须与骨干区域直接相连

  • 区域标记:使用了32个二进制 1.十进制 2.类似于IP地址 A.B.C.D

  • OSPF中路由器的角色:

    • 骨干路由器:区域标记为0或0.0.0.0

    • 非骨干路由器:区域标记不等于0或0.0.0.0

    • ABR:区域边界路由器,能够产生3类LSA的路由器

    • ASBR:自治系统边界路由器,能够产生5类或7类LSA的路由器

OSPF消息数据包

Hello DBD LSR LSU LSACK

hello: 周期性发送,周期时间10s或30s(根据不同的网络类型默认 10s或30s)

目的:建立并维持OSPF 邻居关系(邻居关系建立之后充当 保活包功能)

DBD:数据库描述数据包;

1.主从选举DBD: 比较双方的router-id ,router-id大的一方为主 (master ),小的一方为从 (slave);主用于控制LSA的交互

2.携带LSA头部信息的DBD

LSR: 链路状态请求,按照DBD中报文的未知LSA头部进行请求。

LSU:链路状态更新,携带LSA信息。

LSACK:链路状态确认

  • IP分类

    • A类IP以0开头(‌但第一个字节的实际范围是1~126)‌,范围从1.0.0.0到126.255.255.255

    • B类IP以10(128)开头,范围从128.0.0.0到191.255.255.255

    • C类IP以110(192)开头,范围从192.0.0.0到223.255.255.255

    • D类IP以1110(224)开头,范围从224.0.0.0到239.255.255.255,‌主要用于组播通信

    • E类IP以1111(240)开头,范围从240.0.0.0到255.255.255.255,‌目前保留为将来使用

  • 组播IP地址转化为组播MAC地址:以224~239开头

    • IP地址:224.0.0.5

    • 二进制表示:1110 0000.0 000 0000.0000 0000.0000 0101(后23位映射下去)

    • 01-00-5E-0000 0000.0000 0000.0000 0101

    • 01-00-5E- 00 - 00 - 05

    • IP地址:239.255.255.250

    • 二进制表示:1110 1111.1 111 1111.1111 1111.1111 1010

    • 01-00-5E-0111 1111.1111 1111.1111 1010

    • 01-00-5E- 7F - FF - FA

OSPF 邻居状态机制

Down、 init 、 attempt(尝试 过渡) 、 two-way 、 exstart 、 exchange 、loading 、full

Init ---初始化状态,一旦开始发送hello报文,进入初始化状态。

Two-way---双向通信状态(邻居状态),接收到包含自己router-id 的对方hello报 文。

Exstart---预启动状态,一旦开始发送主从DBD,则进入预启动状 态。

Exchange ---预交换,主从选举完成,则发送携带LSA头部信息的 DBD,进入预交换状态,会发送LSR数据包。(但是没有LSU)

Loading ---加载状态,一旦发送LSU数据包,进入了加载状态,进行 大量LSA的学习

Full ---邻接状态。双方LSA同步(双方LSA全部学习

DR(‌Designated Router)‌和BDR(‌Backup Designated Router)‌是OSPF(‌开放式最短路径优先)‌协议中的关键概念,‌用于优化大型网络中的路由器通信效率。‌

  • DR(‌指定路由器)‌:‌在OSPF网络中选出的拓扑结构中心路由器,‌负责处理相邻路由器之间的路由信息交换,‌并将汇总后的路由信息传递给其他路由器,‌以减少路由信息的传输量,‌提高网络通信效率。‌

  • BDR(‌备份指定路由器)‌:‌作为DR的备用,‌当DR出现故障或不可用时,‌BDR会立即接管DR的所有职责,‌保证网络的稳定性和可靠性。‌

邻居状态下(two-way): MA的网络中会选举DR(指定路由器) BDR(备份指定路由器)

DR选举:

  • 1.比较优先级 (范围:0-255,默认优先级为1 ,越大越 优)

  • 2.比较各自的router-id,越大越优

OSPF router-id 选举规则:1.手工指定最优先 2.选举所有逻辑中IP地 址最大的 3.选举所有物理接口IP地址最大的

华为中: 若以上三点都不满足,则可以创建router-id 为0.0.0.0 ;在 使用逻辑或物理接口IP地址时,接口可以是关闭状态;若一台路由器启用了多个 OSPF进程,不同进程可以使用相同的router-id(不推荐);

思科中:若以上三点都不满足,则无法启用OSPF;在使用逻辑或物 理接口时,接口必须双 up ,该接口可以不通告进入OSPF中;同一路由器上多个 OSPF进程必须router-id必须不同

  • 注意:1.DR抢占是关闭的 2.DR是一个接口概念 3.优先级范围 0-255,数字为0代表不参与选举 4.先选举BDR ,再升级为DR

邻居关系建立条件:

1.router-id 必须不同

2.area ID 相同

3.认证: 认证类型 (不认证=0 明文认证=1 MD5=2) 认证数据

4.hello时间,dead时间必须一致

5.特殊区域标识一致(E(外部路由位)=1 ; N(NSSA外部路由 位)=0 P=0)

6.MA网络中,网络掩码必须一致

7.必须同时使用单播或组播更新

8.更新源检测(双方的IP地址必须在同一网段)

主从选举:发生在exstart状态, 通过双方的router-id进行比较, router-id大的一方为主。 发送的 主从选举DBD,DBD中包含了MTU值(默认思科直接启用,华为中 默认不包含MTU,可以使用命令 激活传递MTU值的功能,若双方的MTU值不值则卡在exstart 状 态)

OSPF基本配置

  • LSA中存在3个参数用于LSA新旧比较:3600s的LSA都是最新的

    • 序列号

    • 校验和

    • LSA老化时间(若以上都相同,LSA age之差小于15分钟,越小越优,若大于15分钟,则无法比较,认为都是最新的)

  • 启用OSPF 并指定router-id

全局模式下可以选择针对所有的OSPF进程修改router-id ;(若同时 在接口部署时,接口优先生效)

查看:

Network通告:

必须先创建OSPF 进程并开启需用使用的区域ID,再进入接口启 用:

激活DBD中携带MTU值功能:

修改接口MTU值: (同时修改3层和2层的MTU值)

查看二层接口信息:

查看三层信息:

OSPF三张表:

1.OSPF 邻居表,查看OSPF邻居表

2.LSDB表(链路状态数据库),查看LSBD的摘要信息:

3.OSPF 路由表:


http://www.ppmy.cn/devtools/90906.html

相关文章

使用C#(winform)调用STK并展示其3D/2D控件

最近有个需求要求对STK做二次开发,要用自己写的界面但又要嵌入STK的3D/2D控件展示,后台调用STK引擎做计算。官方文档语焉不详,网上的资料要么太多重复(到处抄来抄去),要么有诸多错漏之处,找了很…

三、Spring-WebFlux实战案例-流式

目录 一、springboot之间通讯方式 1. 服务端 (Spring Boot) 1.1 添加依赖 1.2 控制器 2. 客户端 (WebClient) 2.1 添加依赖 2.2 客户端代码 3. 运行 二、web与服务之间通讯方式 1、服务端代码 2、客户端代码 3、注意事项 三、移动端与服务端之间通讯方式…

安卓将子模块打aar包,并将其远程依赖打包进去

生成 AAR 包 在Android Studio Terminal 窗口输入以下命令: ./gradlew :monitor:assembleRelease把 monitor 换成你子模块的名称,不出意外的话 就会在下面目录生成相应aar文件 注意:如果你的Java运行环境是Java 8 则在老一点的AS上 可以运…

【系统架构设计师】二十四、安全架构设计理论与实践②

目录 三、系统安全体系架构规划框架 3.1 信息系统安全体系规划 3.2 信息系统安全规划框架 3.2.1 信息系统安全规划依托企业信息化战略规划 3.2.2 信息系统安全规划需要围绕技术安全、管理安全、组织安全考虑 3.2.3 信息系统安全规划以信息系统与信息资源的安全保护为核心…

【区块链】控制台的配置、操作及常用命令②

常用命令-账户管理 常用命令-区块信息 在控制台中编译部署智能合约 启动节点 在fisco目录下 bash nodes/127.0.0.1/start_all.sh启动控制台 cd ~/fisco/console && bash start.sh部署合约 deploy HelloWorldtransaction hash: 交易的哈希值 contract address&#x…

Python面试题:结合Python技术,如何使用PyBrain进行神经网络和机器学习

PyBrain(Python-Based Reinforcement Learning, Artificial Intelligence, and Neural Network Library)是一个用于神经网络和机器学习的 Python 库。以下是一些使用 PyBrain 进行神经网络和机器学习的示例: 安装 PyBrain 首先,…

动态规划之——背包DP(进阶篇)

文章目录 概要说明多重背包(朴素算法)模板例题思路code 多重背包(二进制优化)模板例题思路code 多重背包(队列优化)模板例题思路 混合背包模板例题思路code1code2 二维费用背包模板例题思路code 概要说明 本文讲多重背包、混合背包以及二维费用背包&…

2024第五届华数杯数学建模竞赛C题思路+代码

目录 原题背景背景分析 问题一原题思路Step1:数据读取与处理Step2:计算最高评分(Best Score, BS)Step3:统计各城市的最高评分(BS)景点数量 程序读取数据数据预处理 问题二原题思路Step1: 定义评价指标Step2: 收集数据Step3: 标准化…