HCIE考试进入面试环节之后,需要对整个网络工程所涉及的知识进行系统性的复习整理。
笔者是一个已经从事了多年网络工程的老王工,在系统性整理阶段,笔者会对自身认为需要特别记忆的知识点进行整理,为了避免长篇累牍,本文仅对重点需要记忆的知识点进行整理,简单和基础的内容忽略
。
建议读者已经具备其他厂商IE认证,或者具备良好网络基础知识。希望对后续考生有所帮助。
以下目录,可以参照目录快速查阅关注的内容,哪里不会点哪里
目录
- 一、STP与RSTP的区别相关及引申
- 二、MSTP相关知识点
- 三、总结二层和三层的各种防环机制
- 四、PPP相关知识点
- 五、各路由协议整体对比
- 六、OSPF相关知识点
- 七、ISIS相关知识点
- 八、BGP、MPLS相关知识点
- 九、MPLS及LSP相关知识点
- 十、组播
- 十一、IPV6相关知识点
- 十二、Feature功能特性
- 十三、QoS
- 十四、安全
- 十五、SDN
- 十六、面试常考题目
一、STP与RSTP的区别相关及引申
生成树,先说STP和RSTP。整理的时候我们以对比为主,在STP与RSTP的各种对比中,回忆二者相关的知识点。
1、简述STP与RSTP的区别
- 端口角色
- 端口状态
- RSTP增加了保护机制
- RSTP增加了EP 边缘端口
- RSTP增加了P/A机制
- 二者TC 处理机制的不同
- RSTP具备更短的超时计时器
2、STP与RSTP的端口角色和端口状态的区别
敲黑板!!!背过!
2.1、STP端口角色:
1、DP
(DESI PORT)指定端口
2、RP
(ROOT PORT)根端口
3、BP
(BLOCK PORT)阻塞端口
2.2、STP端口状态
1、disable
2、blocking
3、listening
4、learing
5、forwarding
PS: HUAWEI STP模式与RSTP模式端口状态一样。
disable、blocking、listening三个状态简化为discarding状态
2.3、RSTP端口角色
1、DP
(DESI PORT)指定端口
2、RP
(ROOT PORT)根端口
3、BP
(BLOCK PORT)阻塞端口
3、AP
(Alter Port)端口,在根端口失效后快速转换为ROOT端口,无需等待learning。
4、BP
(Backup Port)端口,在DP端口失效后快速切换成DP端口,无需等待learning。
2.4、RSTP端口状态
1、discarding
2、learing
3、forwarding
3、RSTP增加的保护机制
- (1) BPDU 保护
- (2) 根保护
- (3)环路保护
- (4) 防 TC-BPDU 攻击
至于各种保护机制都是干啥的,稍微回忆一下就好。
4、RSTP增加的P/A机制
P/A机制用于在新增链路时,通过确认的方式,使端口快速进入转发状态,同时避免临时环路。
基本思路:上行线路进行P/A确认后,下行链路除了Edge端口全都阻塞,上行端口不等待直接进入转发状态。
新链路连接成功后,P/A 机制协商过程如下:
- p0 和 p1 两个端口马上都先成为指定端口,发送 RST BPDU。
- S2 的 p1 口收到更优的 RST BPDU,马上意识到自己将成为根端口,而不是指定端口,
停止发送 RST BPDU。 - S1 的 p0 进入 Discarding 状态,于是发送的 RST BPDU 中把 Proposal 和 Agreement 置
1。 - S2 收到根桥发送来的携带 Proposal 的 RST BPDU,开始将自己的所有端口进入 sync
变量置位。 - p2 已经阻塞,状态不变;p4 是边缘端口,不参与运算;所以只需要阻塞非边缘指
定端口 p3。 - 各端口的 synced 变量置位后,p2、p3 进入 Discarding 状态,p1 进入 Forwarding 状
态并向 S1 返回 Agreement 位置位的回应 RST BPDU。 - 当 S1 判断出这是对刚刚发出的 Proposal 的回应,于是端口 p0 马上进入 Forwarding
状态。
5、STP与RSTP二者TC 处理机制的不同
STP TC 处理机制:
RSTP TC 处理机制:
6、RSTP具备更短的超时计时器
STP的计时器
Rstp 更短的 BPDU 超时计时器
如果一个端口连续 3
个 Hello Time 时间内没有收到上游设备发送过来的配置 BPDU,那么该设备认为与此邻居之间的协商失败。而不像 STP 那样需要先等待一个Max Age。默认情况下华为有一个时间因子,数值为 3.所以超时时间为 18S,2s x 3 x 3=18s
二、MSTP相关知识点
现在开始切入MSTP的相关知识
1、三种生成树协议的比较
2、MSTP 基本概念
MSTP 网络中包含 1 个或多个 MST 域(MST Region),每个 MST Region 中包含一个或多 个 MSTI。组成 MSTI 的是运行 STP/RSTP/MSTP 的交换设备,MSTI 是所有运行 STP/RSTP/MSTP 的交换设备经 MSTP 协议计算后形成的树状网络。
2.1、MSTP域的三要素
- 域名
- vlan 和实例的映射关系
- 配置修订级别
2.2、CST IST CIST MSTI的概念
- CST: common spanning tree
公共生成树。将每个 MST 域看成一个节点,CST 就是 连接这些节点的一颗生成树。 - IST: internal spanning tree
内部生成树,mst 域内的一颗生成树。IST 是一个特殊的 MSTI,即 MSTI 0(运行 MSTP 后一直存在,无法删除)。 - CIST: common and internal spanning tree
公共和内部生成树,即 IST+CST 构成的整棵,实例 0 的大树
。 - MSTI: Multiple spanning tree instance
MSTP 域内的单颗生成树实例即 instance 。
2.3、域根 、总根、主桥的概念
- 域根: 域内根桥(只在域内有效)(regional root)包括两个 IST 域根 和 MSTI 域根
- IST 域根: 在 MST 域中,距离总根最近的交换机。或者说 IST 中距离总根最近的交换机。在 CIST 中才会显示:RegRoot。
- MSTI 域根: 每个 MSTI 实例各自的根桥(选举时只管域内即可),域中不同的 MSTI 实例有各自的域根。
- 总根: CIST 的根桥,整个交换网络里面桥 ID 最小的交换机。
- 主桥: (master bridge) 域内距离总根最近的交换机,在普通的 MSTI 实例中才会显示 主桥。
3、MSTP新增的端口角色
3.1、Master端口
Master 端口,去往其他域的出口。
去往总根最近的一个出口。负责域间流量的转发。
在其它各实例(普通 MSTI)上看到的角色是 Master 端口。因为其它实例已经有自己的根端口,而根端口只能有一个。
注意1:Master 端口在 CIST 上的角色是 Root Port
注意2:一个 MST 域中,Master 端口一定是主桥上的端口,且 Master 端口只有一个
。
3.2、域边缘端口
三、总结二层和三层的各种防环机制
1、二层防环
STP,SMART-LINK 等技术,或使用 LACP 链路捆绑和设备堆叠等技术,使得逻
辑拓扑上没有环路。
2、三层防环
主要依靠路由协议自身的防环机制。
- 静态路由
依靠人工预防 - RIP
16 跳,水平分割。 - OSPF
区域内依靠 SPF 算法,区域间依靠区域结构设计和 ABR 的水平分割原则。 - ISIS
区域内依靠 SPF 算法,区域间依靠路由泄漏的 DOWN 位。 - BGP
AS内水平分割,内部只传一跳,如使用路由反射器依靠簇 LIST (Cluster_list) 和起源 ID(Originator_id),使用联盟依靠联盟的私有 AS 号。
AS 之间依靠 AS-Path 属性, - 组播
依靠 RPF 检查。
四、PPP相关知识点
1、建立连接的过程
2、LCP协商字段
- 工作方式SP(Single-link PPP)或MP(Multilink PPP)
- 最大接收单元 MRU(Maximum Receive Unit)
- 认证方式 Authentication
- 魔术字 Magic Number
- 压缩 (tcp/ip 报头压缩 相同 tcp 头和 ip 头内容进行压缩,并非数据压缩)
3、PAP和CHAP
老生常谈的问题了,具体是啥不详细说了。
说一个PAP和CHAP在实际使用中的区别。
对于设备调用RADIUS做AAA认证时,由于最终密码存储在RADIUS认证服务器上,因此CHAP的挑战因子不是由认证设备发起的,而是由RADIUS发起的。
此时需要关注RADIUS服务器支持的认证类型,除了PAP和CHAP以外,常见的还有扩展的MSCHAPv1和MSCHAPv2,普遍存在于集成AD预控认证的RADIUS服务器上。此时,RADIUS也无法获知最终密码,最终的挑战因子是有AD目录服务器发出的。
4、LCP的功能
建立:建立连接时协商链路两边多个参数
拆除:拆除链路
监控 PPP 链路:
链路正常时,每 10s 发送 LCP echo-request (有魔术字)、LCP echo-replay(有魔术字)。 链路检测也是双向的。
其中每 10s 发送的 LCP ech-request 和 echo-replay 可以看做心跳报文。 专业术语:监控链路状态
!!
5、PPP多链路
感觉这个问题被问到的概率很低
为了增加带宽,可以将多个 PPP 链路捆绑使用,形成一个 MP(MultiLink PPP)。要实 现 MP,相应的接口必须工作在 MP 方式。MP 的实现方式有如下两种:
使用 VT 绑定
分为
1、通过多个接口和一个虚拟接口模板的直接绑定实现 MP。
- 这种方法配置简单,但是安全性不高。
2、根据验证通过的对端用户名查找对应的虚拟接口模板,相同用户名绑定到一个虚拟接口模板实现 MP。
- 这种方法实现灵活,配置复杂。一般用于灵活性要 求较高的场合。
使用 MP-Group 绑定
MP-Group 接口是 MP 的专用接口,不能支持其他应用,通过多个接口和 MP-Group 接口的直接绑定实现 MP。
这种方法快速高效、配置简单、容易理解,实际应用中多采用这种方法进行 PPP 绑定。
注意:在 Authenticate 阶段,无论是 VT 接口还是 MP-Group 接口都不支持验证,只能在物理接口下进行验证配置。即多链路的认证是配置在物理接口下面的。
6、PPPOE
- Discovery 阶段
- PPPoE Client 广播发送一个
PADI(PPPoE Active Discovery Initial)
报文,在此报文中包含PPPoE Client 想要得到的服务类型信息。 - 所有的 PPPoE Server 收到 PADI 报文之后,将其中请求的服务与自己能够提供的服务进 行比较,如果可以提供,则单播回复一个
PADO(PPPoE Active Discovery Offer)
报文。 - 根据网络的拓扑结构,PPPoE Client 可能收到多个 PPPoE Server 发送的 PADO 报文,PPPoE Client 选择最先收到的 PADO 报文对应的 PPPoE Server 做为自己的 PPPoE Server,并单播发送 一个
PADR(PPPoE Active Discovery Request)
报文。 - PPPoE Server 产生一个唯一的会话 ID(Session ID),标识和 PPPoE Client 的这个会话, 通过发送一个
PADS(PPPoE Active Discovery Session-confirmation)
报文把会话ID发送给PPPoE Client,会话建立成功后便进入 PPPoE Session 阶段。 - 完成之后通信双方都会知道 PPPoE 的 Session_ID 以及对方的以太网地址,它们共同确定 了唯一的 PPPoE Session。
- PPPoE Client 广播发送一个
- Session 阶段
- PPPoE Session 阶段可划分为两部分,
- PPP 协商阶段
- PPP 数据传输阶段
- PPPoE Session 上的 PPP 协商和普通的 PPP 协商方式一致,主要分为以下三个阶段。
- LCP
- 认证
- NCP
- LCP 阶段主要完成建立、配置和检测数据链路连接。
- LCP 协商成功后,开始进行认证,认证协议类型由 LCP 协商结果(CHAP 或者 PAP)决定。 认证成功后,PPP 进入 NCP 阶段。NCP 是一个协议族,用于配置不同的网络层协议,常用的是 IP 控制协议(IPCP),它主要负责协商用户的 IP 地址和 DNS 服务器地址。
- PPPoE Session 的 PPP 协商成功后,就可以承载 PPP 数据报文。
- 在 PPPoE Session 阶段所有的以太网数据包都是单播发送的。
- PPPoE Session 阶段可划分为两部分,
- Terminate 阶段
- PPP 通信双方可以使用 PPP 协议自身来结束 PPPoE 会话,当无法使用 PPP 协议结束会话 时可以使用 PADT(PPPoE Active Discovery Terminate)报文。
- 进入 PPPoE Session 阶段后,PPPoE Client 和 PPPoE Server 都可以通过发送 PADT 报文的 方式来结束 PPPoE 连接。PADT 数据包可以在会话建立以后的任意时刻单播发送。在发送或 接收到 PADT 后,就不允许再使用该会话发送 PPP 流量了。
五、各路由协议整体对比
1、各路由协议外部、内部优先级
2、各路由协议的底层协议
开始之前,我们先回顾一下前面说到的各种路由协议的封装方式
协议 | 封装方式 | 端口/协议号 | 可靠性保证机制 |
---|---|---|---|
RIP | UDP | ipv4 UDP 520 ipv6 UDP 521 RIP的端口很浪漫哈哈呦 | 只能周期性泛洪 |
OSPF | IP | IP协议号89 | Sequence Number确认 LSR和LSACK确认 |
ISIS | 数据链路层 | 目的MAC地址 L1:0180-c200-0014 L2:0180-c200-0015 | PSNP确认报文 |
BGP | TCP | TCP 179 | TCP自带确认机制 |
3、各种路由协议的更新机制
协议 | 更新计时器 |
---|---|
OSPF | 1800s更新,3600s失效 |
ISIS | 900s更新,1200s失效 |
BGP | 触发更新,没有变化不会周期更新 |
六、OSPF相关知识点
关于OSPF详细知识,可以移步以下博文
【HCIE备考笔记】【04-OSPF】OSPF知识回顾
【HCIE备考笔记】【04-OSPF】LSA知识回顾
【HCIE备考笔记】【04-OSPF】特殊区域知识回顾
【HCIE备考笔记】【04-OSPF】OSPFv3重点难点整理
1、影响OSPF邻居建立的因素
- RouterID不能重复
- 区域ID需一致
- 认证匹配
- MA网络里面,Netowrk的掩码长度需要一致
- 区域类型需要一致
- Hello,Dead计时器时间需要一致
- MTU检查如果开启的话,接口MTU需要一致
- 未配置静默端口
- 链路两端网络类型需一致(P2P MA等)
- MA网络中,路由器接口优先级不能全是0
2、OSPF建立连接过程
神图镇楼
2.1、邻居关系建立过程(DOWN->Init->2-Way阶段)
Hello报文组播地址 224.0.0.5,Hello包交互完就可以完成邻居关系建立了。
2.1.1、过程图
2.1.2、报文截图
Hello报文内主要携带以下信息
2.1.3、系统debug日志
OSPF 1: Nbr 10.0.0.1 Rcv HelloReceived State Down -> Init.
OSPF 1: Nbr 10.0.0.1 Rcv 2WayReceived State Init -> 2Way.
2.2、邻接关系建立过程(2-way->Full阶段)
2.2.1、过程图
2.2.2、过程详细说明
整个过程的全部状态是2Way -> ExStart -> Exchange -> Loading -> Full
ExStart:开始选举DBD交互时的master。
注意,在这个macter与DR/BDR概念无关,及时P2P链路在进行DBD摘要交互时,仍然存在主从关系。ExStart是选举完DR/BDR之后的状态
Exchange:开始交换DBD摘要。
注意,DBD交互时候的隐示确认机制,交互DBD摘要的时候,DD Seq只由主设备产生。
Loading:完成DBD交互同步,开始通过LSR和LSU交互详细信息。
Full:完成所有LSU的交互
,构建完整的LSDB,进入Full状态。之后,根据本地的完整LSDB数据库,根据SPF算法计算本地OSPF路由表。
2.2.3、系统ebug日志
OSPF 1: Nbr 10.0.0.1 Rcv AdjOk? State 2Way -> ExStart.
OSPF 1: Nbr 10.0.0.1 Rcv NegotiationDone State ExStart -> Exchange.
OSPF 1: Nbr 10.0.0.1 Rcv ExchangeDone State Exchange -> Loading.
OSPF 1: Nbr 10.0.0.1 Rcv LoadingDone State Loading -> Full
2.3、邻居和邻接的区别
注意,建立邻居和建立邻接不一样哟。
举例说明,DR和DRother之间建立的是邻接关系,交换数据。DRother之间只保持在2-Way邻居状态,不交互数据哟。
2.4、DR/BDR选举
MA广播型链路需要选举DR/BDR
选举时期
2way
完成后,Exstart
开始前。
选举过程
选举通过Hello包进行,Hello包里携带DR和BDR字段。最初,DR BDR字段为0.0.0.0,无DR和BDR。
从第一个Hello报之后等待2倍dead时间40秒后无人宣告自己是DR或BDR,开始发送Hello包进行选举。
DROther首先选举一个变成BDR,BDR发现无DR后继续变成DR。
选举原则
1、比较接口优先级,选大的
2、比较routerID,选大的
3、不抢占原则
3、OSPF-DR 和 ISIS-DIS 区别
4、OSPF路由计算
4.1、路由比较原则
区域内>区域间>Type1外部引入路由>Type2外部引入路由
1类2类>3类LSA>5类7类LSA
4.2、区域内SPF算法
区域内用SPF算法
,区域间LSA3类收敛类似于距离矢量算法。
基本步骤:
1、泛洪1类2类LSA获取邻居信息,完善本地LSDB数据库
2、全网同步LSDB数据库,每个节点都能计算出一样的全网拓扑
3、每个节点,根据链路开销,遍历所有节点生成以自己为根的SPF树
4、根据LSDB数据库,为每个节点挂载子网信息
5、生成基于自己为视角的,计算全网路由
4.3、区域间路由传递
区域间路由信息由ABR汇总,以三类LSA向其他区域传递。
区域间传递时,可以把每个区域看成一个节点,节点间通过类似距离矢量的方式进行传递。
5、LSA概述
5.1、LSA类型
LSA 类型 | LSA 作用 |
---|---|
Router-LSA (Type1) | 每个设备都会产生,描述了设备的链路状态和开销,在所属的区域内传播。 |
Network-LSA (Type2) | 由 DR 产生,描述本网段的链路状态,在所属的区域内传播。 |
Network-summary-L SA (Type3) | 由 ABR 产生,描述区域内某个网段的路由,并通告给发布或接收 此 LSA 的非 Totally STUB 或 NSSA 区域。 |
ASBR-summary-LSA (Type4) | 由 ABR 产生,描述到 ASBR 的路由,通告给除 ASBR 所在区域的 其他相关区域。 |
AS-external-LSA (Type5) | 由 ASBR 产生,描述到 AS 外部的路由,通告到所有的区域(除了 STUB 区域和 NSSA 区域)。 |
NSSA LSA (Type7) | 由 ASBR 产生,描述到 AS 外部的路由,仅在 NSSA 区域内传播。 |
Opaque LSA (Type9/Type10/Type11) | Opaque LSA 提供用于 OSPF 的扩展的通用机制。其中: Type9 LSA 仅在接口所在网段范围内传播。用于支持 GR 的 Grace LSA 就是 Type9 LSA 的一种。 Type10 LSA 在区域内传播。用于支持 TE 的 LSA 就是 Type10 LSA 的一 种。 Type11 LSA 在自治域内传播,目前还没有实际应用的例子。 |
5.2、LSA三要素
- Type
- Link-id(LSA发送者身份)
- Advertising Router(路由信息始源通告者身份)
以下截图为一个1类LSA的示例
5.3、LSA在区域内的泛洪
- LSA会从除接收端口以外的所有端口泛洪
- 拓扑发生变化的情况下,会立刻触发LSA更新
- LSA泛洪周期1800秒(没有任何变化,也会1800秒更新一下)
- LSA老化时间3600秒(原通告者不撤销,LSA也会持续存在3600秒)
- LSA记录只能有原通告者撤销
- 发送age=3600s的LSA用于撤销LSA
但是需要注意的是,邻居DOWN掉之后,虽然原LSA仍在,但是拓扑发生变化后,会触发新的1类LSA通知全网路由变化。新的LSA内如果携带age=3600,即可撤销原有通告的路由。
5.4、LSA如何鉴定更新的LSA
- Sequence越大,表示越新(800000001-7ffffffff,循环变负再变正)
- age生存时间,剩余时间越长的越新(比较差值>15min,差值<15min不更新本地LSDB)
- 校验和(校验和出错会忽略该LSA)
5.5、LSA报文字段值详细解释
LSA头部信息,除Hello报文外,其它的OSPF报文都携带LSA信息。
LS age:
此字段表示LSA已经生存的时间,单位是秒。Option:
该字段指出了部分OSPF域中LSA能够支持的可选性能。LS type:
此字段标识了LSA的格式和功能。常用的LSA类型有五种。Link State ID:
根据LSA的不用而不同。Advertising Router:
始发LSA的路由器的ID。Sequence Number:
当LSA每次新的实例产生时,这个序列号就会增加。这个更新可以帮助其他路由器识别最新的LSA实例。Checksum:
关于LSA的全部信息的校验和。因为Age字段,所以校验和会随着老化时间的增大而每次都需要重新进行计算。Length:
是一个包含LSA头部在内的LSA的长度。Router-LSA,Router-LSA必须描述始发路由器所有接口或链路。Link State ID:
是指始发路由器的路由器ID。Flag:
- V:设置为1时,说明始发路由器是一条或者多条具有完全邻接关系的虚链路的一个端点。
- E:当始发路由器是一个ASBR路由器时,该为置为1。
- B:当始发路由器是一个ABR路由器时,该为置为1。
Number of links:
表明一个LSA所描述的路由器链路数量。Link Type:
- 值为1表示为点到点网络,常见的PPP链路需要使用点到点网络描述。
- 值为2表示连接一个transit网络,有至少两台路由器的广播型网段或NBMA网段就是一种Transit网段。
5.6、各类LSA开销
5.7、各类LSA总结
6、各类LSA的详细解释
直接移步
【HCIE备考笔记】【04-OSPF】LSA知识回顾
7、LSA综合分析
问题1答案: R5 上 1 个,R6 上 1 个
问题2答案: R5 上 1 个,R6 上 1 个
问题3答案: R5上有2个(分别来自ABRR3和R4);R6上有2个 (分别来自ABRR1和R2)
问题4答案: 由routerid大的R4 进行7转5
问题5答案: R5 0 个,R6 上 4 个
R6的4个LSA4分别来自
两个来自 R1:ASBR 分别为 3.3.3.3 和 4.4.4.4
两个来自 R2:ASBR 分别为 3.3.3.3 和 4.4.4.4
Link-s id ADV router
Sum-Asbr 4.4.4.4 2.2.2.2
Sum-Asbr 4.4.4.4 1.1.1.1
Sum-Asbr 3.3.3.3 1.1.1.1
Sum-Asbr 3.3.3.3 2.2.2.2
8、OSPF快速收敛特性
9、OSPF 路由过滤
9.1 进程下
对路由计算进行过滤(import) 和对 5 类 lsa 出方向过滤(export)
Filter-policy xxx import
仅阻止路由进入自己的路由表
注意:所有类型 LSA 入方向过滤都生效,但 ABR 上效果不同(ABR 矢量)
filter-policy xxx export
对 5 类 lsa 过滤(该命令仅在 ASBR 上生效)
9.2 区域下
Filter xxx import/export
针对区域 3 类 LSA传递时进行过滤,及ABR 上由 1、2类LSA 产生 3类LSA 时做过滤
注意:仅仅针对 3 类 LSA 生效,仅在 ABR 上有效 ,对 5 类 LSA 无效
9.3 接口下
ospf filter-lsa-out (3 型、5 型、7 型、all) acl (过滤 lsa)
针对接口过滤 lsa ,LSDB 会产生 LSA,但从接口发送给邻居的时候实施过滤.
注意:可以过滤 3、5、7、甚至all 类型 LSA ,在所有路由器接口下都会生效,同时也只有这种方法能过滤 1、2 型 LSA(接 all 参数)
9.4 汇总时过滤
summary 汇总时接 not-advertise 关键字实现过滤
针对汇总路由 3类LSA和5类LSA进行过滤,3类LSA在 ABR 上配置生效,5类LSA在
ASBR 上配置生效。
注意:汇总这个方法针对虚链路场景无效!因为虚链路所在区域无法对区域 0 的路
由进行汇总,汇总不当容易出环。
10、OSPF防环机制
- 区域内SPF算法保证算不出环!
- 区域间由于是类似于距离矢量算法计算邻接路由,因此需要一些特别的方式来防环
- 非骨干区域之间不能邻接,仅能与骨干区域直接连接
- 对于双ABR邻接的两个区域,ABR对于非骨干区域收到的3类LSA不参与计算。
- 区域外路由防环
- LSA5 在整个 AS 内部泛洪的时候
link id,adv router,type
都不会发生改变
,特殊区域除外。 - 与 ASBR 在同一区域的路由器可以直接通过 SPF 算法计算出一条无环的去往 ASBR 的路径。
- 由于各路由器可以保证
自身到达 ABR 无环
。而 LSA4 又和 LSA3 具有类似的区域间路由防环机制
,所以可以保证ABR 到达 ASBR 无环
,进而可以确定其他区域路由器到达ASBR是无环的。
- LSA5 在整个 AS 内部泛洪的时候
11、虚链路环路问题
这是一个经典的虚链路导致的路由环路问题。
12、OSPF路由撤销
对于 3 型、4 型、5 型、7 型均是通过 3600s 来撤销路由!!
3 型由 ABR 发出 3600s 撤销路由
5、7 型 由 ASBR 发出 3600s 撤销路由
对于 ospf 路由由谁产生,谁撤销,只有产生者才有撤销权限!!
13、OSPFv2和v3 不同点
- 基于链路的运行(GUA 地址改变,不影响邻居和拓扑)
- 使用链路本地地址(发送报文采用 Link-local 地址) 链路支持多实例复用(配置时加 instance,报文头增加 instance)
- 通过 Router ID 唯一标识邻居 (不再使用 ip 地址(GUA),拓扑里面没有 IP)
- 认证的变化 (报头移除认证字段 使用 ipv6 扩展报头认证)
- LSA 的类型和内容不同 (俩变化 俩新增)
OSPFv3 LSA类型总结:
七、ISIS相关知识点
关于ISIS详细知识,可以参考以下博文
【HCIE备考笔记】【05-ISIS】ISIS知识回顾
【HCIE备考笔记】【05-ISIS】LSP知识回顾
【HCIE备考笔记】【05-ISIS】高级特性
【HCIE备考笔记】【05-ISIS】IPv6特性
1、ISIS报文类型
L1 路由器
:发送报文的组播目的 MAC:01-80-C2-00-00-14
L2 路由器
:发送报文的组播目的 MAC:01-80-C2-00-00-15
2、影响ISIS邻居建立因素
- Level 类型
- system id
- 认证
- MTU
- 接口网络类型
- 必须同一子网,但掩码可以不一致(直连可达,不传掩码 只传接口 ip,收到后用 ip 和自己接口进行匹配)
- 2-way 和 3-way 可以建立邻居(针对 PPP 网络类型,3-way 兼容 2-way,但 3-way only 不兼容 2-way.点到点网络默认 3-way 兼容模式)
- cost-type 开销类型 (宽度量和窄度量)可建邻居但无法传递路由 窄度量范围:0-64 (不能携带 tag)
宽度量范围:0-2^24 (打 tag)
3、ISIS邻居建立过程
注意:
- P2P:两次握手 三次握手
- MA:必须三次握手
- 两次握手缺点:不可靠,收到对方发来的 hello 报文就会单方面宣告邻居状态为 up。
- 点到点三次握手:收到的 hello 报文里面包含自己的 system-id (TLV240) 则
宣告邻居 up。(只有前两个报文填充到 MTU。)MA 网络看到自己接口 MAC 地址则宣告邻居 up。 - 点到点网络
前两个
报文填充到 MTU 大小。(没有专门 MTU TLV) - MA 网络
所有
的 hello 报文都填充到 MTU 大小。(没有专门 MTU TLV)
4、ISIS LSP相关知识点
4.1 LSP id组成格式
LSP id 由三部分构成:LSP-id 系统 id—xx(伪节点 id)—yy(分片编号)
xx 非零,则为伪节点 LSP,id 取值和接口 id 匹配
xx 为 00 ,则表示实节点 LSP(普通 LSP)
4.2 LSP新旧
- Sequence
- Age,Age=0 则表示路由撤销。类似 ospf age=3600
- 校验和
4.3 LSP同步
4.3.1、P2P 网络
先 CSNP 再 LSP
- CSNP报文用于传递LSDB摘要信息,类似于OSPF的DD报文
- 摘要交互完毕之后,通过PSNP报文请求需要的LSP
- 对方传递请求的LSP
- 再次发送相同的PSNP,用于确认收到对方发出的LSP
总结:
- CSNP只在开始时发送
- PSNP又当请求又当确认
4.3.2、MA网络
直接推 LSP
- 各个路由器直接发送自身的LSP
- DIS周期性的向MA网络内发送CSNP来保证网络内LSDB同步
- 某路由器通过CSNP发现,自身的LSDB内缺少某个LSP,则通过PSNP进行请求
- 某路由器通过CSNP发现,CSNP内缺失自身的某个LSP,则继续向网络内直接发送
4.3.3、P2P和MA网络LSDB可靠性和同步机制
isis 如何确保 LSDB 可靠性?
P2P:开始 CSNP交互摘要,之后通过PSNP 确认
MA:由 DIS每 10s 周期性 发送CSNP
4.4、LSP类型标识符
4.4.1、P
区域修复位,标示始发路由器是否支持骨干区域修复(类似 ospf 的 vlink), 由于华为设备不支持骨干区域修复,所以当前固定为 0。
4.4.2、ATT
区域连接位,由 Level-1-2 路由器产生,用来指明始发路由器是否 与其它区域相连。用于 L1 路由器产生默认路由
生成ATT位置1的LSP的条件
- 路由器类型为 L1-L2
- 必须有 L1 和 L2 的邻居关系
- L2 的邻居关系区域 ID 不能一致
4.4.3、overload
超载位,标示路由器是否进入超载状态
4.4.4、IS TYPE
路由器类型位,用于指示路由器的类型是 L1 路由器还是 L2 路由器
00 未使用
01 L1 路由器
10 未使用
11 L2 路由器
5、ISIS路由撤销
- 接口下undo isis enable。节点产生新的LSP,其中去掉某几条的路由信息。类似OSPF 1类、2类LSA的路由撤销。
- 过滤部分路由。节点产生新的LSP,其中去掉某几条的路由信息。
- undo import外部路由,即去掉所有引入路由。产生age=0的LSP,类似OSPF 3600s失效的LSA。
- L1/L2路由器上,对于从其他区域收到的路由撤销。均从自身发出新的LSP,其中去掉某几条路由信息,向其他区域发送。
6、ISIS路由计算
6.1、区域内
采用 SPF 算法计算最短路径,区域内要求 LSDB 同步。
L1/2 的路由器用于连接 L1 区域和 L2 区域,类似于 OSPF 中的 ABR,会同时维护 L1 的 LSDB 和 L2 的 LSDB。
6.2、区域间
6.2.1、L2 的区域访问 L1 的区域的路由
L1/2 的路由作为 L1 和 L2 区域的中间路由器,会将自身计算的 L1 区域的路由,以叶子的形式挂载在自身节点上。
通过向 L2 区域产生 LSP 转述
自身链接有的 L1 区域的路由,L2 区域的路由器可以通过该 LSP 计算去往 L1 区域的明细路由。
6.2.2、L1 的区域访问 L2 的区域的路由
缺省情况,L1 的路由器访问 L2 区域的路由,使用缺省路由访问。
缺省情况,在 L1/2 的路由器向 L1 区域产生的路由器 LSP 中会将 ATT 位置 1,L1 的路由器在收到 ATT 位为 1 的 路由器 LSP 后,会自动产生下一跳指向该 L1/2 路由器的 ISIS-L1 缺省路由,开销值为自身去往该 L1/2 路由器的开销。
L1 的区域缺省访问 L2 区域路由使用缺省路由访问,可以减少 LSP 的大小进而提高 L1 区域路由器的处理效率,可以将一些性能较差的路由器放在 L1 的区域中。
但是当 L1 的区域有 多台 L1/2 的路由器,容易产生次优路径。可以通过路由泄露的方式,将 L2 区域的路由有控 制的引入 L1 区域。
6.2.3、路由泄露
缺省 L2 区域的路由不会被引入 L1 区域,所以可以通过在 L1/2 路由器上配置路由泄露,将 L2 区域的路由引入 L1 区域,使得 L1 区域的路由器能够通过明细路由访问 L2 的区域,防止次优路径。
当 L1 的区域有多台 L1/2 路由器可以同时配置。
ISIS Leak 防环
up/down 位,L1/2 对 up/down 位置 1 的路由不参与计算,也不会回传到骨干区域。
6.3、选路原则
L1>L2>leak (leak 路由是特殊的 L1 路由)
7、ISIS认证
7.1、接口认证
对指定的接口下发送和接受的 L1 和 L2 的 hello 报文
做认证。
缺省情况,对发送的报文携带认证信息,对接受的报文做认证。
可以配置 send-only
参数指定对发送的 报文携带认证,对接受的报文不做认证。
7.2、区域认证
对 L1
的 LSP、CSNP 和 PSNP 做认证
7.3、路由域认证
对 L2
的 LSP、CSNP 和 PSNP 做认证
8、ISIS快速收敛特性
- SPF:使用 SPF,网络节点的拓扑变更会引发整个 SPF 算法重新计算。只有初次收敛使用全网 SPF。
- i-SPF:增量的 SPF。只计算变化的节点,用于计算变化后的拓扑。
- PRC:部分路由计算。只计算变化的路由信息,基于 ISPF 计算出的最短路径树来计算变化的路由。
9、ISIS和OSPF对比总结
各自优点比较
OSPF
- OSPF 支持更多的网络类型,可以用于复杂的网络环境中
- OSPF 支持多种区域类型,可以分配高低性能区域,将性能差的放置在普通或特殊区域,层次化部署
- OSPF 支持虚链路,可以优化路径
- OSPF 路由划分更精细,可以更好控制路由信息
- OSPF 基于 IP 的,人员熟悉度更高一些
ISIS
- ISIS 有 L1 和 L2 的区域,也可以做层次化部署,但是一般将 ISIS 进行扁平化同一区域部署。
- ISIS 收敛速度快,基于 ISPF 和 PRC
- ISIS 可以携带更多的 LSP 路由信息,支持 LSP 分片扩展,最多可以分 51*256 个分片
- ISIS 基于数据链路层,可以支持不同的网络层协议相当于增加新的 TLV,所以扩展性强
- ISIS 基于数据链路层,安全性较高
10、ISIS对IPV6的支持
- IPv6 中新增两个 TLV 和一个新的 NLPID
- ISIS 多拓扑(MT)(Muti-Topology)
IPv6 Reachability TLV [Type 236] [0xEC]
通过前缀、度量、标记等来描述可达的 IPv6 前缀信息。
在 IPv4 中有 IPv4 内部可达性 TLV 和 IPv4 外部可达性 TLV,在 IPv6 的扩展当中使 用一个“X”bit 来区分“内部”和“外部”。
IPv6 Interface Address TLV [Type 232] [0xE8]
相当于 IPv4 中的“IP Interface Address” TLV,只不过把原来的 32 比特的 IPv4 地址改为 128 比特的 IPv6 地址。
八、BGP、MPLS相关知识点
关于BGP详细知识,可以参考以下博文
【HCIE备考笔记】【06-BGP】BGP知识回顾
【HCIE备考笔记】【06-BGP】BGP属性和13条选路原则
【HCIE备考笔记】【06-BGP】BGP路由传递
【HCIE备考笔记】【06-BGP】BGP4+和IPv6
【HCIE备考笔记】【06-BGP】BGP高级特性
1、BGP报文类型
报文 | 功能 |
---|---|
Open 报文 | 协商 BGP 参数 |
Update 报文 | 交换路由信息 |
Keepalive 报文 | 保持邻居关系 |
Notification 报文 | 差错通知 |
Route-Refresh报文 | 用于在改变路由策略后请求对等体重新发送路由信息 refresh bgp all import ORF (出向路由过滤) |
2、BGP邻居建立过程
神图镇楼
3、影响BGP邻居建立的因素
先记住一句话,一切影响 tcp 连接建立的都会影响 bgp 邻居的建立!
- 版本(默认 v4)
- AS号 (不能 peer 错)
- router-id 不能冲突
- 179 号端口被禁止
- Peer 地址可达性
- 认证
- connect-interface (收到报文的源地址必须和 peer 的地址相同)
- EBGP之间建立邻居关系超过1跳,且未指定多跳
4、BGP属性
BGP 路由属性是一套参数,它是对路由的进一步的描述
类型 | 包含属性 | 描述 |
---|---|---|
公认必遵 (3条) | 1、Origin 2、Next-hop 3、As-path | 所有 BGP 路由器都必须识别 且必须存在于 Update 消息中 如果缺少这种属性,路由信息就会出错 |
公认任意 (2条) | 1、Local_Pre、 2、Atomic_aggregate | 所有 BGP 路由器都可以识别 但不要求必须存在于 Update 消息中 即就算缺少这类属性,路由信息也不会出错 |
可选过渡 (2条) | 1、Community 2、Aggregator | 在BGP 对等体之间具有可传递性的属性 BGP 路由器可以不支持此属性,但它仍然会接收这类属性,并传递给其他对等体 |
可选非过渡 (3条) | 1、Multi_Exit_Dis 2、Cluster_list 3、Originator_id | 如果 BGP 路由器不支持此属性 则相应的这类属性会被忽略,且不会传递给其他对等体 |
5、BGP选路原则
前提:如果此路由的下一跳不可达,忽略此路由
P
:优选协议首选值(PrefVal)最高的路由L
:优选本地优先级(Local_Pref)最高的路由L
:本地始发优先,本地始发优于从对等体学习的路由A
:优选 AS 路径(AS_Path)最短的路由O
:比较 Origin 属性,依次优选 Origin 类型为 IGP、EGP、Incomplete 的路由M
:优选 MED 值最低的路由(来自相同 AS(即上一个 as 相同),可命令忽略)E
:优选从 EBGP 邻居学来的路由(EBGP 路由优先级高于 IBGP 路由)I
:优选到下一跳 IGP Metric 较小的路由- 前 8 条一样可以开启负载分担(as_path 一模一样,可命令忽略)
- 优选 Cluster_List 最短的路由
- 优选 Originator_id 最小的路由
- 优选 Router ID 最小的路由器发布的路由
- Peer的IP地址
6、BGP路由撤销
BGP,不管是network宣告的路由,还是import引入的外部路由
不管是undo,还是链路故障,所有的撤销。
都是通过发送含有withdrawn字段的UPDATE报文进行撤销。
IPv6则通过含有MP_UNREACH_NLRL字段的UPDATE报文来进行撤销。
7、BGP安全机制
7.1、认证
用来验证报文来源的合法性。有 MD5 认证
和 keychain 认证
,当使用 MD5 进行认证时, 只对 TCP 做认证,认证信息携带在 TCP 头部的 option 中。如果使用 keychain,可以对 TCP 以及 BGP 协议报文进行认证。
7.2、GTSM
通用 TTL 安全保护机制 GTSM(Generalized TTL Security Mechanism)是一种通过
检查 IP 报文头中的 TTL 值是否在一个预先定义好的范围内来实现对 IP 业务进行保护的机制。
8、BGP防环机制
8.1、AS内
AS内水平分割,内部只传一跳
8.2、AS间
AS 之间依靠 AS-Path 属性
8.3、RR防环
如使用路由反射器依靠簇 LIST (Cluster_list) 和起源 ID(Originator_id)
- originator-id
起源者 ID(始发者 ID),是 BGP 的可选非传递属性,只在反射器中存在,不能传出AS。
该属性用于标识路由起源的 router-id,主要用于防止簇内成环
。
当反射器接受一条路由更新时,如果要把他反射给其他客户机或者非客户机时, 会检查该属性。如果没有,则添加一个为本 AS 内起源该路由的路由器的 router-id。
当其他路由器收到后,会检查该属性和自身的 router-id 是否一致。如果一致,则丢弃该路由,该路由传递出现了环路,如果不一致,则正常接受。
如果反射器在接受到路由更新时携带了该属性,则不会对该属性做任何修改。并且在将该属性传递给 EBGP 邻居时,会丢弃这个属性, 不传出 AS。 - cluster-list
簇列表,是 BGP 可选非传递属性,只在反射器的场景出现,不能传出 AS。
该属性用于标识一条路由经过的反射簇的路径。主要用于簇间防环
。
当反射器初次反射一条路由时,会添加 cluster-list 属性,会将自身的 cluster-id 添加到该属性的最前面。
其他反射器收到后,会检查该属性有没有自身的 cluster-id,如果有,则丢弃, 如果没有,则接受。
并将其反射给其他邻居时,会将自身的 cluster-id 添加到该 cluster-list 的最前面。
只有反射器检查该属性,并不能传递给 EBGP 邻居。
8.4、联盟防环
9、IBGP和EBGP传递路由的特点
EBGP
- 去 LP
- 改下一跳
- 仅在两个相邻的 AS 间传递 MED
- AS添号
IBGP
- IBGP 水平分割
- RR 产生两个新属性 Cluster_list、Originator_id 只在 AS 内传递
联盟依靠联盟的私有 AS 号。
10、BGP 路由无效场景
- 下一跳不可达
- 通过默认路由建立 BGP 邻居关系
- MPLS V PN 场景下,下一跳没有相应的 lsp 隧道
- 开启 BGP 路由同步但不满足同步条件(路由为有效,但是不会优选)
- 将建立邻居的路由通告进 BGP
- 路由振荡达到一定的惩罚值(针对 EBGP 路由)
九、MPLS及LSP相关知识点
关于MPLS和LSP详细知识,可以参考以下博文
【HCIE备考笔记】【08-MPLS】MPLS-LSP
【HCIE备考笔记】【08-MPLS】MPLS-隧道技术
【HCIE备考笔记】【08-MPLS】典型组网
【HCIE备考笔记】【08-MPLS】跨域MPLS方案
1、MPLS报文结构
2、MPLS 体系结构
2.1、RIB
传统IP路由表
路由表,控制层面,由路由协议生成,RIB 中有递归过程。
2.2、LIB
标签信息表
标签信息表,控制层面,由标签分配协议生成,包含标签与 FEC 的对应关系。
LIB 包含所有的标签,无论是优的还是次优的。
2.3、FIB
转发表
转发信息数据库,转发层面,数据包到达设备后查找 FIB,从而知道如何转发。
FIB 里没有递归过程
2.4、LFIB
标签转发表
标签转发数据库,转发层面,标签与 FEC 的对应关系,只有最最优的标签,指导标签数据包转发。
3、MPLS标签结构
标签共有4个字段
Label:20bit,标签值
Exp:3bit,用于扩展,现在通常用作CoS(Class of Service),用于标记优先级
S:1bit,栈底标识。MPLS支持多层标签,S值为1时表明此标签为最底层标签。
TTL:8bit,与IP报文中TTL字段意义相同
标签空间:
0-15
:特殊标签
16-1023
:静态标签
1024以上
:LDP等协议分配的动态标签
4、MPLS 对 TTL 处理
-
统一模式(Uniform)
-
管道模式(Pipe)
5、LDP邻居建立过程
6、LDP标签的发布和管理
标签发布方式:
- 下游自主:不管上游是否有需要,下游都会为所有的路由分配标签
- 下游按需:上游有请求,才会为相关路由分发标签,省标签。
标签分配控制方式:
- 有序分配:只有在收到下游为某条路由分配的标签后,才为该路由分配标签。
- 独立分配:即使没有收到下游分配标签,也可以为其独立分配标签。有可能会有 LSP 断裂,黑洞。
标签的保持方式:
- 自由保持:对于所有从下游收到的标签,无论是否是最优,都保存其标签。
- 保守保持:仅保留最优下一跳传来的标签映射信息。节省内存,但收敛慢。
目前华为设备支持如下组合方式:
下游自主
方式(DU)+有序
标签分配控制方式(Ordered)+自由标签保持
方式 (Liberal),该方式为缺省方式。下游按需
方式(DoD)+有序
标签分配控制方式(Ordered)+ 保守标签保持方式 (Conservative)。
7、RD 和 RT
RD:区分实例,标记路由,区分不同站点的相同路由
RT:对路由进行控制,控制路由的导入与导出
RD(Route Distinguisher,路由标识符值)
RD 值作用:在一台路由器上创建多个路由表(虚拟小路由器)来隔离路由。V PN 实例也称为 VRF(V PN Routing and Forwarding)。8 字节。
RT(Route Target)
也称为 V PN-target,通过 RT 属性来控制 V PN 路由信息在各Site 之间的发布和接收,导入导出路由。
8、CE双归属防环
8.1、CE端OSPF双归属
- OSPF中引入的BGP路由,LSA中D/N位置1,D/N=1的OSPF路由不会重新引入到BGP内
- 穿越BGP区域的OSPF路由会携带domain id字段。domain id相同时,1,2,3类LSA中的路由,在穿越BGP区域后,会在对端CE中以成3类LSA的形式重新进入OSPF区域,而不是以5类LSA的形势。当domain id不相同是,穿越BGP后,以5类LSA的形式进入OSPF区域。
- 对于跨越BGP+tunnel备份链路的情况,需要在BGP区域使用sham-link技术,让1,2,3类LSA以原有的形式传递到对端CE。
8.2、CE端BGP双归属
默认BGP自带防环特性,但是如果客户端多个站点AS号相同时:
- substitute-as命令用于客户端多个站点AS号相同
- soo命令用于避免替换AS命令后成环,携带起源站点属性
8.3、CE端ISIS双归属
ISIS自身没有适用于此场景的防环机制,打标签解决问题
8.4、sham-link
如前文所说《三、CE端OSPF双归属》中,OSPF LSA在穿越BGP之后会进行重构,对应关系如下:
Domain ID相同:
LSA 1 2 3–> LSA 3
LSA 5–> LSA 5
LSA 7–> LSA 7
Domain ID不相同:
LSA 1 2 3 5–> LSA 5
LSA 7–> LSA 7
但是,如果希望穿越BGP区域后依然可以构建LSA 1和LSA 2,则需要使用sham-link技术,具体如下:
9、跨域MPLS
9.1、Option A
优点
- 原理简单,ASBR 之间不需要运行 MPLS,不需要为跨域进行特殊配置。适用于 V PN 实例较少、跨越 AS 不多的简单场景。
缺点
- 扩展性差,每增加一个 V PN 实例,在中间的 ASBR 上就需要增加一条链路(可 以是虚拟的),并创建相应实例。如果跨越多个自制系统,所有 ASBR 互联的地方都需要配置。
- ASBR 需要为每个 V PN 创建相应的 V PN 实例,且需要管理所有 V PN 实例的路由。 这使得 ASBR 上的 V PNv4 私网路由数量过于庞大,如果 V PN 实例很多则对 ASBR 有着很强的 要求。
9.2、Option B
优点
- 不受 ASBR 之间互联链路的限制,相比 OptionA 扩展性好些。
缺点
- 域间V PN实例的路由信息是通过 ASBR 保存和扩散,即 ASBR 需要承载处理所有域间私网路由。这使得 ASBR 负担较重,容易成为故障点。(解决方案:ASBR 只负责 V PN 路由的保存和扩散,不再负责公网 IP 报文转发)
9.3、Option C方案一
方案一总结一句话,PE与ASBR之间建立IBGP邻居,但是沿途P路由器不知道去往PE和ASBR的具体路由,AS内全靠LDP分配最外层标签。
OptionC方案一标签查询迭代顺序
- 最内层,R2 R5之间通过BGP传递一层标签,用于在末端PE匹配客户V PN实例
- 中层,ASBR向本AS内的PE通告一条前往对方AS内PE的可达路由,基于此分配标签
- 最外层,AS内部,前往ASBR的标签隧道
9.4、Option C方案二
OptionC方案二标签查询迭代顺序
- 最内层,R2 R5之间通过BGP传递一层标签,用于在末端PE匹配客户V PN实例
- 最外层,AS内部已经具备其他AS内的PE的路由,因此LDP可以分配
OptionC特点
优点
- 扩展性强,V PN 路由在两个PE之间直接交换,不需要中间设备的保存和转发。 中间ASBR无需承载客户私网路由。
- 避免中间ASBR路由器性能瓶颈问题,中间ASBR只负责报文转发,无需维护V PN路由。适合跨越多个as,且V PN数量比较庞大的场景使用。更适合 mpls V PN的负载分担。
缺点
- 配置复杂,维护一条端到端的PE 连接管理代价较大。
10、MPLS环境下路由汇总的影响
- 针对IGP路由的汇总,lsp会发生断裂,但依旧可以通过IP路由表进行转发。此时可以开启LDP跨域扩展保证LSP连续性。
- bgp环境下针对下一跳的汇总,lsp断裂,路由黑洞
- mpls V PN环境下针对V PNv4路由下一跳汇总,lsp断裂,路由无法进入实例路由表
- 汇总路由在R3上形成但R3自身路由表里面并没有汇总路由 6.6.0.0。因此R3不会为 6.6.0.0 分标签。R2得不到下游LDP邻居的标签,自然也不会分。虽然LSP断裂,但并不影响通信,因为即使没有LSP,走FIB,通过IP路由也是可达的。
- 但对于BGP下一跳汇总来说就无法实现。因为bgp中间的路由器有黑洞,中间路由器没有IP 路由。因此,如果下一跳标签断裂,那么数据将无法通信。因为bgp是根据隧道迭代到LSP链路的,必须保证LSP的完整性。
- 包括 MPLS V PN如果对MP-BGP下一跳汇总,也会出现数据访问中断的现象
11、LSP跨域扩展(汇总)
LDP 跨域扩展通过使能 LDP 按最长匹配原则查找路由,使LDP能够 依据聚合
后的路由建立起跨越多个 IGP 区域(如 ospf 多个 area 区域)的 LDP LSP。
十、组播
笔者注:我认怂,我要是抽到组播的题。我直接报,老师我不会,5000块不要了,回见了您。
1、组播地址
1.1、组播IPv4地址
IANA(Internet Assigned Numbers Authority,互联网编号分配委员会)将D类地址空间 分配给 IPv4 组播使用。IPv4 地址一共 32 位,D 类地址最高 4 位为 1110
,因此地址范围从 224.0.0.0
到 239.255.255.255
。
1.2、组播MAC地址
常见的永久组地址
224.0.0.1
所有节点
224.0.0.2
所有路由器
224.0.0.5
OSPF
224.0.0.6
OSPF(DRother 发给 DR)
224.0.0.9
RIP
224.0.0.13
PIM
224.0.0.18
VRRP
224.0.0.22
IGMPV3
2、IGMP
Internet 组管理协议称为IGMP协议(Internet Group Management Protocol),是因特网协议家族中的一个组播协议。该协议运行在主机和组播路由器之间。IGMP协议共有三个版本,即IGMPv1、v2 和v3。
组播协议包括组成员管理协议
和组播路由协议
。
- 组成员管理协议用于管理组播组成员的加入和离开
- 组播路由协议负责在路由器之间交互信息来建立组播树。
IGMP属于前者,是组播路由器用来维护组播组成员信息的协议,运行于主机和和组播路由器之间。IGMP信息封装在IP报文中,其IP的协议号为2。
IGMP提供了在转发组播数据包到目的地的最后阶段所需的信息,实现如下双向的功能:
- 主机通过IGMP通知路由器希望接收或离开某个特定组播组的信息。
- 路由器通过IGMP周期性地查询局域网内的组播组成员是否处于活动状态,实现所连网段组成员关系的收集与维护。
2.1、IGMP各版本的区别
2.1.1、IGMPv1
两种报文:
- a 普通组查询报文 query。192.168.1.8->224.0.0.1
- b 报告报文 report。192.168.1.12–>239.5.5.5
时间:
60s
。每隔 60s 发送普遍组查询报文 130s 内没收到回应则认为无人加组。
同组抑制:
MRT 10s(固定)
离组方式:
静默离组
查询器:
PIM Hello 报文选出 DR 。由 DR 担任查询器。DR优先级、 IP 越大越好。
2.1.2、IGMPv2
四种报文:
- a 普遍组查询报文 60s
- b 报告报文
- c 特定组查询(新增)
- d 离组报文(新增)
时间:
同上
同组抑制:
同上 MRT 时间可手动修改
查询报文MRT时间修改:
新增MRT字段,普通组查询MRT=10s,特定组查询MRT=1s。
这俩时间都可以手动修改。
离组方式:
用户离组发送 Leave 离组报文,路由器收到离组报文后,(*,G)老
化时间 由130s变成2s ,然后发送特定组查询 1s 一次 ,如果收不到 report 则删除(*,G)。
查询器(和 v1 不同):
ip 地址小的 (igmp 普通组查询报文(60s) 源 ip 地址)
与 v1 三点不同:
- a 离组机制
- b 查询器选举机制
- c MRT 时间修改
2.1.3、IGMPv3
两大类报文:
- 查询
- a 普通组查询
- b 特定组查询
- c 指定组和源查询(组播源)
- 报告
根据过滤模式的不同,有多种功能的报告报文,加组时同时指定组播源。
时间:
同 v2
同组抑制:
取消。原因如下:
- 跟踪每个成员状态
- igmp snooping 会使同组抑制失效
- 简化主机处理机制
- 一个 report 报文可携带多个组
离组方式:
没有特定的离组报文,通过组记录CHANGE_TO_INCLUD_MODE
源列表为空,表示离开组播组。
如:report (S=0 ,CHANGE_TO_INCLUD_MODE,G=239.5.5.5)
路由器收到这种特殊的 report 报文后会发送指定组和源查询报文(两次)。
查询器选举:
同 v2
IGMPv3与 v2 区别:
- a 报告报文含组播源(通过过滤模式实现)
- b 一个报告报文可以携带多个组播组信息
- c 没有定义专门的 leave 报文,通过特定的报告报文来实现
- (过滤模式:CHANGE_TO_INCLUD_MODE 源列表为空)
- d 新增特定源组查询报文
3、IGMP snooping
IGMP snooping 的作用是侦听路由器与接收者之间的报文,形成二层组播转发表,可以减少二层组播流量的泛洪,只传给对应的接受者,可以节省开销,减少无用的组播流量。
IGMP snooping proxy
当交换机开启了 snooping 功能后,就没有了抑制报告报文的作用,所有的成员都会发送 report 报文,路由器处理了很多相同的 report 报文,为了减少路由器处理报文的数量,所以在交换机上开启 IGMP snooping proxy,可以减少交换机与路由器之间的报文数量。中间的交换机,针对路由器来说是成员,针对成员来说是查询者。
4、组播的服务模型
接收者主机接收数据时可以对源进行选择,因此产生了
- ASM(Any-Source Multicast)
- SSM(Source-Specific Multicast)
两种服务模型。 这两种服务模型默认使用不同的组播组地址范围。
-
ASM
- 任意源模式,接收者主机加入组播组以后可以接收到任意源发送到该组的数据。
- 判断条件: 最后一跳路由器生成组播路由条目为(*,G)
- 缺点: 可能会收到重复的组播流量。如果有两种不同的应用程序使用了同一个ASM 组地址发送数据,它们的接收者会同时收到来自两个源的数据。这样一方面会导致网络流量拥塞,另一方面也会给接收者主机造成困扰。
-
SSM
- 指定源模式,接收者主机在加入组播组时,可以指定只接收哪些源的数据或指定拒绝接收来自哪些源的数据。 加入组播组以后,主机只会收到指定源发送到该组的数据。
- 判断条件: 最后一跳路由器生成组播路由条目为(S,G)
- 优点: 不同的源之间可以使用相同的组地址,因为 SSM 模型中针对每一个(源,组)信息都会生成表项。这样一方面节省了组播组地址,另一方面也不会造成网络拥塞。
5、PIM相关
PIM 的作用:
PIM运行在路由器之间,生成组播的路由表项,指导组播流量的转发。
协议无关组播:
组播路由器通过 RPF 检查来确定 RPF 接口,而 RPF 检查是 通过 IGP 路由表进行,并不关心 IGP 路由表中的路由如何生成。
组播的工作模式:
- DM 密集模式:适用于接收者密集,小型网络的情况,SPT 树越多,就认为接收者越多,也就越密集。
- SM 稀疏模式:适用于接受者少,大型网络。
5.1、DM 的工作机制
- 邻居发现(Holdtime)
- 泛洪
- 剪枝/加入
- 状态刷新(作用)
- 嫁接
- 断言 (重点)
5.2、SM 的工作机制
- RPT 树的形成
- SPT 树的形成
- 注册消息的作用,及什么时候会发送注册停止。
- 切换的过程,切换后的剪枝
5.3、RPF 的作用
- 防止环路
- 防止次优路径
- 避免重复流量
十一、IPV6相关知识点
更多IPv6详细知识点,可以参阅以下博文
【HCIE备考笔记】【03-IPv6】重点难点整理
1、IPv6地址类型
2、IPv6报头结构
2.1、IPv4报头
- 本 :当前 IP 版本,IPv4。
- 首部长度:指的是 IPv4 报头长度,20-60 个字节,因为 Option 字段是 0-40 个字节。
- 区分服务:用于 Qos 报头。
- 总长度:总长度=头长+载荷长
- 标识、标志、 片移位 :用于 IP 报文的分片和重组。
- 协议:表示上层协议。
- 首部校验和:头校验和,对报文进行校验。
2.2、IPv6报头
- traffic class:是 IPv4 的 ToS,用于 QoS 中标识优先级
- flow lable:长度为 20bit,IPv6 中增加了 flow lable(流标签)字段,用于唯一确定 一条 IPv6 数据流,因为在 IPv4 中确定一条数据流需要使用 5 元组,而确定 TCP/UDP 端口号 需要对报文进行传输层解封装,会消耗设备性能。而流标签可唯一标识数据流,能够更好实现 QoS。
- payload length:有效载荷长度,用于表示上层协议报文的大小,因为 IPv6 报头是 固定长 40byte,所以仅需标识上层协议载荷大小即可。
- next header:标识上层协议或上层扩展报头,类似于 IPv4 的 protocol。IPv6 中增 加了扩展报头用于实现扩展的功能如分片,加密等。
- hop limit:跳数限制,用于防环,类似于 IPv4 的 TTL。
- IPv6 删除了 IPv4 中的标识、标志、分片移位、首部长度、Option、校验和等字段。IPv6 之所以移除校验和,是因为在二层有 FCS 校验,在四层有 TCP/UDP 做校验,IPv6 报文无需校验,提升了 IPv6 的性能。
- 扩展报头:用于实现 IPv6 的扩展功能,比如分片,认证,加密等。
2.3、IPv6 扩展报头
报头类型 | 代表该类报头的 Next Header 字段值 | 描述 |
---|---|---|
逐跳选项报头 | 0 | 该选项主要用于为在传送路径上的每跳转发指定发送参数,传送路径上的每台中间节点都要读取并处理该字段。逐跳选项报头目前的主要应用有以下三种: 1、用于巨型载荷(载荷长度超过 65535 字节)。 2、用于设备提示,使设备检查该选项的信息,而不是简单的转发出去。 3、用于资源预留(RSVP)。 |
分段报头 | 44 | 同 IPv4 一样,IPv6 报文发送也受到 MTU 的限制。当报文长度超过 MTU 时就需要将报文分段发送,而在 IPv6 中,分段发送使用的是分段报头。 |
认证报头 (AH) | 51 | 该报头由 IPsec 使用,提供认证、数据完整性以及重放保护。它还对 IPv6 基本报头中的一些字段进行保护。 |
封装安全净载报头(ESP) | 50 | 该报头由 IPsec 使用,提供认证、数据完整性以及重放保 护和 IPv6 数据报的保密,类似于认证报头。 |
3、IPv6地址主机位ID的生成方式
3.1、手工配置
3.2、操作系统自定义规则
系统通过规则和软件自动生成(优点是无法根据IPV6倒推设备信息,私密性好)
3.3、EUI-64规则
XX-XX-XX-XX-XX-XX原MAC地址
XX-XX-XX-FF:FE-XX-XX-XX,原MAC地址第7bit取反,中间插FFFE
4、NDP协议和 ICMPv6报文
IPv6取消了ARP等诸多繁杂的协议,通过ICMPv6报文构建NDP(邻居发现协议)来实现地址解析等诸多功能
4.1、NDP的各种功能
下图必考!
4.2、NDP使用的ICMPv6报文
4.3、重点,地址解析(IPv6中的ARP)
IPv6使用NA和NS报文来实现类似于ARP的IPv6地址与MAC地址对应解析
- IPv6 的地址解析不再使用 ARP,也不再使用广播方式。 ●地址解析在三层完成,针对不同的链路层协议可以采用相同的地址解析协议
- 通过 ICMPv6(类型 135 的 NS 及类型 136 的 NA 报文)来实现地址解析。
- NS 报文发送使用组播的方式,报文的目的 IPv6 地址为被请求的 IPv6 地址对应的“被请
求节点组播地址”,报文的目的 MAC 为组播 MAC。 - 采用组播的方式发送 NS 消息相比于广播的方式更加的高效,也减少了对其他节点的
影响和对二层网络的性能压力。 - 可以使用三层的安全机制(例如 IPSec)避免地址解析攻击。
6、IPv6过渡机制
6.1、双栈
双栈技术是 IPv4 向 IPv6 过渡的一种有效的技术。
网络中的节点同时支持 IPv4 和 IPv6 协议栈
,源节点根据目的节点的不同选用不同的协议栈,而网络设备根据报文的协议类型选择不同的协议栈进行处理和转发。
在过渡前期,双栈技术大量用于园区网和运营商。目前大多数的网络设备和主机均支持双栈。
6.2、IPv6 over IPv4 隧道
在过渡初期,IPv4 网络已经大量部署,而 IPv6 网络只是散落在各地的一个个“孤岛”, IPv6 over IPv4 隧道就是通过隧道技术,使 IPv6 报文在 IPv4 网络中传输,实现 IPv6 网络之间的孤岛互连。
6.3、IPv4 over IPv6 隧道
过渡后期,可以使用 IPv4 over IPv6隧道技术解决 ipv4 孤岛问题。
十二、Feature功能特性
1、DHCP
1.1、DHCP地址获取过程
1.1.1、发现阶段
DHCP 客户端通过发送 DHCP DISCOVER 报文来寻找 DHCP 服务器。
由于 DHCP 服务器的 IP 地址对于客户端来说是未知的,所以DHCP 客户端以广播方式(三层广播)发送 DHCP DISCOVER 报文。
所有收到 DHCP DISCOVER 报文的 DHCP 服务器都会发送回应报文,DHCP 客户端据此可以知道网络中存在的 DHCP 服务器的位置。
DHCP 报文源 IP:0.0.0.0 ,目的 IP:255.255.255.255
1.1.2、提供阶段
网络中接收到 DHCP DISCOVER 报文的 DHCP 服务器,会从地址池选择一个合适的 IP 地址,连同 IP 地址租约期限和其他配置信息(如网关地址、域名服务器地址等)通过 DHCP OFFER 报文发送给 DHCP 客户端。
此阶段 DHCP 服务器分配给客户端的 IP 地址不一定是最终确定使用的 IP 地址,因为 DHCP OFFER 报文发送给客户端等待 16 秒后如果没有收到客户端的响应,此地址就可以继续分配给其他客户端。
通过下面的选择阶段和确认阶段后才能最终确定客户端可以使用的 IP 地址。
1.1.3、选择阶段
如果有多台 DHCP 服务器向 DHCP 客户端回应 DHCP OFFER 报文,则 DHCP 客户端只接收第一个收到的 DHCP OFFER 报文。然后以广播方式发送 DHCP REQUEST 请求报文,该报文中包含服务器标识选项 (Option54),即它选择的 DHCP 服务器的 IP 地址信息。
以广播方式发送 DHCP REQUEST 报文,是为了通知所有的 DHCP 服务器,它将选择某个 DHCP 服务器提供的 IP 地址,其他 DHCP 服务器可以重新将曾经分配给客户端的 IP 地址分配给其他客户端。
1.1.4、确认阶段
当 DHCP 服务器收到 DHCP 客户端回答的 DHCP REQUEST 报文后,DHCP 服务器会根据 DHCP REQUEST 报文中携带的 MAC 地址来查找有没有相应的租约记录。如果有,则向客户端发送包含它所提供的 IP 地址和 其它设置的 DHCP ACK 确认报文。DHCP 客户端收到该确认报文后,会以广播的方式发送免费 ARP 报文,探测是否有主机使用服务器分配的 IP 地址, 如果在规定的时间内没有收到回应,客户端才使用此地址。
当 DHCP 服务器收到 DHCP 客户端发送的 DHCP REQUEST 报文后, 如果 DHCP 服务器由于某些原因(例如协商出错或者由于发送 REQUEST 过 慢导致服务器已经把此地址分配给其他客户端)无法分配 DHCP REQUEST 报文中 Opton50 填充的 IP 地址,则发送 DHCP NAK 报文作为应答,通知 DHCP 客户端无法分配此 IP 地址。DHCP 客户端需要重新发送 DHCP DISCOVER 报文来申请新的 IP 地址。
1.2、DHCP续租过程
当租期达到 50%(T1)
时,DHCP 客户端会自动以单播
的方式向 DHCP 服务器发送 DHCP REQUEST 报文,请求更新 IP 地址租期。如果收到 DHCP 服务器回应的 DHCP ACK 报文,则租期更新成功(即租期从 0 开始计算)。如果 收到 DHCP NAK 报文,则重新发送 DHCP DISCOVER 报文请求新的 IP 地址。
当租期达到 87.5%(T2
)时,如果仍未收到 DHCP 服务器的应答,DHCP 客户端会自动以广播
的方式向 DHCP 服务器发送 DHCP REQUEST 报文,请求更新 IP 地址租期。如果收到 DHCP 服务器回应的 DHCP ACK 报文,则租期更 新成功(即租期从 0 开始计算);如果收到 DHCP NAK 报文,则重新发送 DHCP DISCOVER 报文请求新的 IP 地址。
如果租期时间到时都没有收到服务器的回应,客户端停止使用此 IP 地址, 重新发送 DHCP DISCOVER 报文请求新的 IP 地址。
1.3、DHCP中继
DHCP 客户端发送请求报文给 DHCP 服务器, DHCP 中继收到该报文并适当处理后,以单播形式发送给指定的位于其它网段上的DHCP 服务器。服务器根据请求报文中提供的必要信息,通过 DHCP 中继将配置信息返回给客户端,完成对客户端的动态配置。
1.3.1、DHCP relay 里面的三个参数
GIADDR
gateway ip address 第一个中继设备的 ip 地址,即使经过多个中继设备只放第 个中继设备的 ip,而且不更改。
CHADDR
Client hardware address
HOP
防环 开始 0,每经过一个 dhcp 中继加 1,不能超过 16 跳。
1.3.2、Option 82选项
称为中继代理信息选项,该选项记录了 DHCP 客户端的位置信息。DHCP 中继或 DHCP Snooping 设备接收到 DHCP 客户端发送给 DHCP 服务器的请求报文后,在该报文中添加 Option82, 并转发给 DHCP 服务器。 管理员可以从 Option82 中获得 DHCP 客户端的位置信息,以便定位 DHCP 客户端,实现对客户端的安全和计费等控制。
支持 Option82 的服务器还可以根据该选项的信息制定 IP 地址和其他参数的分配策略,提供 更加灵活的地址分配方案。
客户端的位置信息具体指,客户端在哪个交换机(SW 的 MAC)、哪个 vlan、哪个接口;
Circuit ID:主要用来标识客户端所在的 VLAN、接口等信息。
Remote ID:主要用来标识客户端接入的设备,一般为设备的 MAC 地址。
1.4、DHCP报文大全
2、VRRP
2.1、VRRP 协议原理
(1) VRRP 备份组中的设备根据优先级选举出 Master。Master 设备通过发送免费 ARP 报文,将虚拟 MAC 地址通知给与它连接的设备或者主机,从而承担报文转发任务。Master 设备周期性向备份组内所有 Backup 设备发送 VRRP 通告报文,以公布其配置信息(优先级等)和工作状况
(2) 如果 Master 设备出现故障,VRRP 备份组中的 Backup 设备将根据优先级重新选举新的 Master
(3) VRRP 备份组状态切换时,Master 设备由一台设备切换为另外一台设备,新的 Master 设备会立即发送携带虚拟路由器的虚拟 MAC 地址和虚拟 IP 地址信息的免费 ARP 报文,刷新与它连接的主机或设备中的 MAC 表项
,从而把用户流量引到新的 Master 设备上来,整个过程对用户完全透明
(4) 原 Master 设备故障恢复时,若该设备为 IP 地址拥有者(优先级为 255), 将直接切换至 Master 状态。若该设备优先级小于 255,将首先切换至 Backup 状态,且其优先级恢复为故障前配置的优先级
(5) Backup 设备的优先级高于 Master 设备时,由 Backup 设备的工作方式
( 抢占方式和非抢占方式)决定是否重新选举 Master
(6) VRRP 虚拟的 mac 地址为00-00-5e-00-01-xx
,其中xx 属于 VRRP vrid
2.2、VRRP 特殊优先级
0 为系统保留给路由器放弃 Master 位置时候使用
255 是系统保留给 IP 地址拥有者使用。
当路由器为 IP 地址拥有者时,其优先级始终为 255。 因此,当虚拟路由器内存在 IP 地址拥有者时,只要其工作正常,则必定为 Master 路由器
2.3、VRRP故障恢复时间
(1)当 Master 设备主动放弃 Master 地位(如 Master 设备退出备份组)时,会发送优先级为 0 的通告报文,用于加速网络收敛,使 Backup 设备快速切换成 Master 设备,而不用等到 Master_Down_Interval 定时器超时。这个切换的时间称为 Skew time
,计算方式为:(256-Backup 设备的优先级)/256
,单位为秒
(2)当 Master 设备发生网络故障而不能发送通告报文的时候,Backup 设备并不能立 即知道其工作状况。
等到 Master_Down_Interval 定时器超时后,才会认为 Master 设备无法正常工作,从而将状态切换为 Master。
其中,Master_Down_Interval 定时器为:3×Advertisement_Interval+Skew_time
,单位为秒。
2.4、VRRP双主情况的可能性
- 心跳故障(链路拥塞 ,中间交换机没有允许相应的 vlan 通过)
- 认证不通过。
- hello 时间
- vrid 或 virtual ip 不一致
3、FTP的主动模式和被动模式问题
主动模式:
服务器主动连接客户端提供的数据通道端口
被动模式:
服务器开一个数据通道端口,等待客户端过来连接。
4、NAT
4.1、静态NAT
在进行 NAT 时,内部网络主机的 IP 同公网 IP 是一对一静态绑定的
,
内网的 IP+协议号+端口号
同公网 IP+协议号+端口号
是一对一静态绑定的。
静态 NAPT 中的公网 IP 可以为多个 NAPT 条目使用,通常用来对外网主动发起访问内网服务器的数据应用进行放行。支持内网主机发起对外网主机的访问,以及外网主机发起对内网主机的访问。
入站NAT常用的NAT Server即是如此。
4.2、动态NAT
使用地址池(有 1 个或多个地址),有数据包要穿越设备时,通过动态地从地址池里选出可用的地址,进行 1 对 1 翻译,并且放行。
4.3、NAPT
Network Address Port Translation
能实现并发的地址转换。它允许多个内部地址映射到同一个或少量公有地址上,非正式的也可称之为“多对一地址转换”或地址复用。
NAPT 需要维护内网的 IP+协议号+端口号
和公网 IP+协议号+端口号
的对应关系表。
4.4、NAPT对ICMP的转换
NAPT会根据ICMP id建立不同的转换条目的映射表,icmp 通过一个标识符(icmp id)来表示不同的主机源
5、NQA和BFD
5.1、NQA和BFD对比
- BFD 毫秒,NQA 秒级;
- 一般情况下 BFD 两端都需启动,(单臂回声除外),NQA 可以只在一边测试;
- 单臂回声模式只能传一跳,NQA 可传多跳;
- 针对的对象不同;BFD 主要侧重用快速测出连通性、而 NQA 侧重于网络质量。
- BFD 只能使用 bfd 的报文,而 NQA 测试的报文可以选择很多种,NQA 测试类型更多, 功能更多。
5.2、NQA支持的测试类型
ICMP-echo、DHCP、FTP、HTTP、UDP-jitter、SNMP、TCP、UDP-echo 和 DLSw 测试
5.3、BFD会话建立方式
静态建立 BFD 会话
静态建立 BFD 会话是指通过命令行手工配置 BFD 会话参数,包括配置本地标识符 和远端标识符等,然后手工下发 BFD 会话建立请求。
动态建立 BFD 会话
动态建立 BFD 会话时,系统对本地标识符和远端标识符的处理方式如下:
- A 动态分配本地标识符
当应用程序触发动态创建 BFD 会话时,系统分配属于动态会话标识符区域 的值作为 BFD 会话的本地标识符。然后向对端发送 Remote Discriminator 的 值为 0 的 BFD 控制报文,进行会话协商。 - B 自学习远端标识符
当 BFD 会话的一端收到 Remote Discriminator 的值为 0 的 BFD 控制报文时, 判断该报文是否与本地 BFD 会话匹配,如果匹配,则学习接收到的 BFD 报 文中 Local Discriminator 的值,获取远端标识符。
5.4、BFD单臂回声原理
在两台直接相连的设备中,其中一台设备支持BFD功能,另一台设备不支持BFD功能。
支持BFD功能的设备主动发起回声请求功能,不支持BFD功能的设备接收到该报文后直接将其环回,从而实现转发链路的连通性检测功能。
简单来说,发一个目的地址是自己的BFD报文,等待对方扔回来。
6、URPF
Unicast Reverse Path Forwarding 单播逆向路径转发
目的:
防止基于源 ip 地址欺骗的攻击行为
两种工作模式:
- 严格模式: 查源地址在 Fib 表中存在相应表项,而且还要匹配入接口
- 松散模式: 只查路由 Fib 表是否匹配 (部分多 ISP 归属 来回路径不一致场景)
7、SNMP
7.1、SNMP版本区别
SNMPv1: 安全性差,只能使用团体名认证
SNMPv2c: 有一定安全性但报文不加密,可以使用用户名或团体名进行认证,增加 GetBulk和 inform (需要确认的 trap)
SNMPv3: SNMPv3 的实现原理和 SNMPv1/SNMPv2c 基本一致,主要的区别是SNMPv3增加了身份验证和加密处理。
7.2、SNMPv3 比 v1 和 v2c 安全性的提升
- 数据完整性(防篡改)
- 认证:检验信息来源正确性
- 私密性:封包加密传输
8、NTP
8.1、NTP原理
网络时间协议 NTP(Network Time Protocol)是 TCP/IP 协议族里面的一个应用层协议。 NTP 用于在一系列分布式时间服务器与客户端之间同步时钟。NTP 的实现基于 IP 和 UDP。 NTP 报文通过 UDP 传输,端口号是 123。
8.2、NTP 版本
v1: 不支持认证和控制消息
v2: 支持认证和控制消息
v3: 引入校正原则 并改进时钟选择和时钟过滤算法 (目前应用最多)
v4: 同时支持 ipv4 和 ipv6
9、NetStream
NetStream 是一种基于网络流信息的统计技术,可以对网络中的业务流量情况进行统计和分析。
9.1、数据流分类
V4(七元组):
- 目的 IP 地址
- 源 IP 地址
- 目的端口号
- 源端口号
- 协议号
- 服务类型 ToS(Type of Service)
- 输入接口或输出接口
V6(八元组):
- 将 v4中的TOS 位换为 TC 位(流分类),同时增加流标签
9.2、流老化方式
活跃流的老化
- 从采集到的数据流中的第一个报文开始,定时一直采集,采集后输出。
不活跃的老化
- 从最后一个报文开始,在指定时间内没有采集到,设备会向 Netstream 服务器输出该流统计信息。该老化方式可以清除设备上 Netstream 缓存区中的无用表项,节省内存。
9.3、数据采样方式
采样四种方式:
- 随机报文采样 (100 个中随机采样 1 个)
- 随机时间采样 (100ms 内随机采样 1 个)
- 固定报文间隔采样(每隔 100 个报文采样一个)
- 固定时间间隔采样(每 100ms 的第 5ms 进行采样)
十三、QoS
1、拥塞管理
搞清楚FIFO、PQ、 RR、WRR 、WFQ、CBQ 等工作原理
2、拥塞避免
搞清楚RED和WRED的工作原理,搞清楚TCP全局同步问题。
2.1、DropTail 尾丢弃
当软件队列也满了之后,再来的报文就要丢弃了,此时就要使用拥塞避免技术,传统的拥塞避免技术是尾丢弃。
尾丢弃缺点:
- 无差别丢弃
- TCP 全局同步
- TCP 流量饿死 (竞争不过 UDP)
2.2、RED
在流量未达到拥塞之前,就开始概率性的丢弃报文。
解决 TCP 全局同步 和 TCP 流量饿死,但不能解决无差别丢弃。
2.3、WRED
相比较RED,增加了对不同服务级别的报文,区别设置丢包率的功能。
解决 TCP 全局同步和 TCP 流量饿死,同时解决无差别丢弃。
2.4、TCP饥饿问题
简单来说,在网络拥塞的时候会有以下情况:
- TCP的滑动窗口机制发现,哟吼丢包了,所以会在下次发包中减少发包速率。
- TCP减少带宽占用之后,UDP发现,哟吼,又出现可用的带宽了。
- UDP再次将TCP节省下来的可用带宽占满,导致网络重新拥塞。
- TCP再次发现丢包,再次降低滑动窗口。
- 周而复始。于是,TCP就饿死了。
2.5、TCP全局同步问题
接上文,在很多个会话并存的网络里,如果拥塞了,会有以下情况
- TCP的滑动窗口机制发现,哟吼丢包了,所以会在下次发包中减少发包速率。
- 其他TCP会话也会如此,所以全网的TCP会话速率,会一起降下来。
- 过了一会,TCP滑动窗口机制发现,好久没有丢包了,于是开始慢慢增加发包速率。
- 其他TCP会话也是如此,所以全网的TCP会话速率,又会一起涨上去。
- 周而复始,大家一起拥塞,然后降低速率,然后再一起恢复速率,重新拥塞。
3、流量监管和整形
3.1、流量监管 TP
- 入方向,出方向都可以设置惩罚机制,对超出的流量直接丢弃。
- 造成较高丢包率,链路空闲时带宽得不到充分利用
3.2、流量整形 TS
- 只能用于出方向,有缓存机制,对超出流量缓存。
- 较少丢弃报文,充分利用带宽。但是会引入额外时延和抖动。需要较高缓存。
4、队列和令牌桶算法
CIR(Committed Information Rate)
:承诺信息速率
CBS(Committed Burst Size)
:承诺突发尺寸,表示C 桶的大小
EBS(Extended burst size)
:超额突发尺寸,表示E 桶的大小
PIR(Peak Information Rate)
:表示峰值信息速率
PBS(Peak Burst Size)
:表示峰值突发尺寸
CIR=CBS/△T
CBS:令牌桶(C 桶)的大小 (该桶最多可以放多少令牌) △T :时间周期 一个△T 周期内将令牌桶填满
TC
:Time CBS 当前时间内令牌桶(C 桶)中令牌的大小
TE
:当前时间 E 桶大小
TP
:当前时间 P 桶大小
十四、安全
1、常用的安全技术
1、STP 安全技术
- 频繁 up/down:边缘端口
- stp 根桥抢占:bpdu 保护
2、ARP安全技术
- arp 泛洪攻击:arp 报文限速、arp miss 消息限速、arp 表项限制(网关上)
- arp 欺骗攻击 :dhcp snooping+DAI (交换机),PC机安全软件开启局域网 arp 放欺骗。
3、dhcp安全技术
- 非法 DHCP server :dhcp snooping
- DHCP 广播泛洪攻击:dhcp snooping+全局 dhcp 限速
- DHCP 耗尽攻击:dhcp snooping +端口安全
4、vrrp安全技术
- vrrp 认证 (kali 可以伪装 vrrp 报文)
5、准入认证
NAC(Network Admission Control)称为网络接入控制
- A 802.1x 客户端 ,具有长久、用户集中的特点,安全性最高。
- B MAC 认证哑终端 ,radius 服务器填写 mac 地址或填在本地
- C portal 认证 ,临时,用户流动性大的场景,不用安装客户端,安全性不高。
6、手动静态地址
- 责任到人,IP-MAC-人绑定
- 微软 AD 联动,确认IP归属
7、接入端口安全
8、桌面管理审计系统/桌面云(虚拟桌面)
9、权限分配和制度约束
2、802.1x
802.1x 认证用户名和密码封装在 EAP 里面,还需经过 Radius 协议封装成三层报文方可发给 radius server 进行验证。
笔者有不少关于认证的文章,感兴趣的读者可以移步以下博文:
【逗老师带你学IT】AD域控和freeradius集成认证环境,PAP,MSCHAPV2
【逗老师带你学IT】Windows Server NPS服务构建基于AD域控的radius认证
【逗老师带你学IT】Windows Server Network Policy Service(NPS)记账与审计
3、IPSec
IPSec(Internet 协议安全)是一个工业标准网络安全协议,为 IP 网络通信提供透明 的安全服务,保护 TCP/IP 通信免遭窃听和篡改,可以有效抵御网络攻击,同时保持易用性。IPSec 通过在 IPSec 对等体间建立双向安全联盟,形成一个安全互通的 IPSec 隧道,来实现Internet 上数据的安全传输。若在网络中部署 IPSec,便可对传输的数据进行加密、完整性校验及源认证等处理,降低信息泄漏的风险。
3.1、安全联盟 SA
IPSec 安全传输数据的前提是在 IPSec 对等体(即运行 IPSec 协议的两个端点)之间成功建立安全联盟 SA(Security Association)。
SA 是通信的 IPSec 对等体间对某些要素的约定,例如:对等体间使用何种安全协议、需要保护的数据流特征、对等体间传输的数据的封装模式、协议采用的加密算法、验证算法,对等体间使用何种密钥交换和 IKE 协议,以及 SA 的生存周期等。
SA 由一个三元组来唯一标识,这个三元组包括安全参数索引 SPI(Security Parameter Index)、 目的 IP 地址和使用的安全协议号(AH 或 ESP)。
3.2、 IKE
IKE SA 是为 IPSec SA 服务的,为 IPSec 提供了自动协商密钥、建立 IPSec 安全联盟的服务。
IKE(Internet Key Exchange)协议建立在 Internet 安全联盟和密钥管理协议 ISAKMP 定义的框架上,是基于 UDP 的应用层协议,可为数据加密提供所需的密钥,能够简化 IPSec 的使用和管理,大大简化了 IPSec 的配置和维护工作。
对等体之间建立一个 IKE SA 完成身份验证和密钥信息交换后,在 IKE SA 的保护下,根据配置的 AH/ESP 安全协议等参数协商出一对 IPSec SA。此后,对等体间的数据将在 IPSec 隧道 中加密传输。
3.3、IPSEC 安全协议(报文封装)
IPSec 通过验证头 AH(Authentication Header)和封装安全载荷 ESP(Encapsulating Security Payload)两个安全协议实现 IP 报文的安全保护。
封装模式:
- 传输模式
- 隧道模式
传输模式和隧道模式的区别在于: 从安全性来讲,隧道模式优于传输模式。它可以完全地对原始 IP 数据报进行验证和加密。隧道模式下可以隐藏内部 IP 地址,协议类型和端口。
从性能来讲,隧道模式因为有一个额外的 IP 头,所以它将比传输模式占用更多带宽。
3.4、 IPSec 加解密及验证过程
IPSec 采用对称加密算法对数据进行加密和解密。
验证指 IP 通信的接收方确认数据发送方的真实身份以及数据在传输过程中是否遭篡改。 IPSec 采用 HMAC(Keyed-Hash Message Authentication Code)功能进行验证。HMAC功能通过比较数字签名进行数据包完整性和真实性验证。
十五、SDN
1、VxLAN
VxLAN(Virtual eXtensible Local Area Network)是 VLAN 扩展方案草案,采用 MAC in
UDP(User Datagram Protocol)封装方式,是 NVo3(Network Virtualization over Layer 3) 中的一种网络虚拟化技术。
1.1、VxLAN报文封装
VxLAN 的目端口永远为 UDP 的 4789,源端口为随机的 ,源端口号是内层以太报文头通过哈希算法计后的值。
1.2、VxLAN相关概念
- VNI:virtual net instance 类似 vlan tag 表示
24bit 16M 即 16000000 1 千 6 百万 - NVO:network virtual overlay (NVO3: )基于 overlay 的网络虚拟化
- NVE:network virtualization edge 网络虚拟边缘设备,也可以是虚拟交换机,用于管理 VTEP、VNI以及映射关系。
VTEP:VxLAN tunnel endpoint ,VxLAN 隧道端 点每一个 NVE 至少有一个 VTEP,VTEP 使用NVE的IP地址表示。
两个VTEP 可以确定一条 VxLAN 隧道
BD:bridge domain,标识一个交换机上的二层广播域 ,本地有效。
BD和VNI 之间进行1:1 映射,VNI 就是在BD里面配置的。
1.3、VxLAN网关
1.3.1、二层网关
用于解决租户接入 VxLAN 虚拟网络的问题,也可用于同一 VxLAN 虚拟网络的子网通信,实现同网段互通。
1.3.2、三层网关
用于 VxLAN 虚拟网络的跨子网通信以及外部网络的访问。
根据三层网关部署方式的不同,VxLAN 三层网关又可以分为集中式网关
和分 布式网关
。
集中式网关:
- arp 表项太大
网关 spine 需要学习同网段所有服务器(虚机)的 mac 地址,并建立 arp 映射,即使是多活,多活的各网关也都需要构建所有服务器(虚机)的 arp 表项 - 次优路径
- 单机性能瓶颈
分布式网关
- 优点避免次优路径
- 避免 arp 表项过大
- 减少单台设备的性能性能压力
2、EV PN
2.2、EV PN 基本概念
EV PN(Ethernet Virtual Private Network)是一种用于二层网络互联的 V PN 技术。
EV PN 技术采用类似于 BGP/MPLS IP V PN 的机制,在 BGP 协议的基础上定义了一种新的 NLRI即 EV PN NLRI
。
EV PN NLRI 定义了几种新的 BGP EV PN 路由类型,用于不同站点之间的 MAC 地址学习和发布。
VxLAN 引入了 EV PN 作为控制平面,通过在 VTEP之间交换 BGP EV PN 路由实现 VTEP 的自动发现、主机信息相互通告等特性,从而避免了不必要的数据流量泛洪。
BGP EV PN 路由在 EV PN NLRI 中定义了如下几种应用于 VxLAN 控制平面的 BGP EV PN 路由。
2.2、BGP EV PN 路由类型
2.2.1、Type2 路由——MAC/IP 路由
传递信息包含
- 主机 MAC 地址通告
- 主机 ARP 通告
- 主机 IP 路由通告
2.2.2、Type3 路由——Inclusive Multicast 路由
该类型路由在 VxLAN 控制平面中主要用于 VTEP 的自动发现和 VxLAN 隧道的动态建立。
作为BGP EV PN 对等体的 VTEP,通过 Type3 路由互相传递二层 VNI 和 VTEP IP 地址信息。
其中,Originating Router’s IP Address 字段为本端 VTEP IP 地址,MPLS Label 字段为二层 VNI。
- 如果对端 VTEP IP 地址是三层路由可达的,则建立一条到对端的 VxLAN 隧道。同时,
- 如果对端 VNI 与本端相同,则创建一个头端复制表,用于后续 BUM 报文转发。
2.2.3、Type5 路由——IP前缀路由
该类型路由的 IP Prefix Length 和 IP Prefix 字段既可以携带主机 IP 地址,也可以携带网段地址。
- 当携带主机 IP 地址时,该类型路由在 VxLAN 控制平面中的作用与 type2 类型路由是一样的, 主要用于分布式网关场景中的主机 IP 路由通告。
- 当携带网段地址时,通过传递该类型路由,可以实现 VxLAN 网络中的主机访问外部网络。
十六、面试常考题目
标红的,为笔者认为需要重点记忆的问题
- 描述 STP、RSTP 以及 MSTP 的区别及兼容性
- STP 拓扑变更
- 交换机和路由器如何处理未知表项的报文
- MAC 地址分类 MAC 地址表组成
- 二层端口特性,混合端口使用场景
- 边缘端口的作用,边缘端口会存在哪些问题
- 代理 ARP 工作原理
- 追问:除 STP 外,你还知道哪些二层防环技术?
- PPP 认证都有哪些?有什么区别?
- 描述 PPP 建立连接的过程?
- 追问:PPP 两端不在同一网段配置 OSPF 会不会有问题
- 追问:除 PPP 认证外,是否知道其它认证方式:如 PPPoE,Portal,MAC 认证
- 追问:PPP 链路两端不在同一网段能否建立 OSPF 邻居
- 追问:描述 PPPOE 认证过程?PPPOE 如何配置?
- 追问:PPP 认证过程中如何防重放攻击
- 追问: PPPoE 中 LCP 协商后的 MRU 为多少:
1492
、 - 追问:PPPoE 认证时,客户的路由指向哪个接口?
追问:链路层协议运行 PPP 时,OSPF1 类 LSA 的内容
- 追问:哪些物理接口封装 PPP?或者 PPP 一般运行在什么链路上?
- LCP 的作用?
- PPP LCP中MRU 的作用,魔术字的作用?
- PPP如何区分认证端与被认证端(LCP 阶段)?
- PPP认证中 ID 的作用,为什么要进行标识?
- PPP认证端与被认证端各自的密码如何获得?
- PPP被认证端用户名的作用?认证端密码的作用?
- 什么叫双向认证?
- PPP NCP 中包含哪些协议?
- PPP IPCP 中互推地址的作用?
- PPP双方是否都可以自动获得地址?
- 为什么需要使用 PPPOE?
isis,ospf,bgp 对 ipv6 的支持(见各路由协议章节)
- bgp 为什么可以很好的拓展 ipv4 ipv6 V PNv4 V PNv6(见 BGP 章节)
- ipv6 地址配置方式有哪些
ipv6 过渡机制
- IPv6 的链路本地地址分配方式、作用和 IPv4 比有什么优势
- IPv4 和 IPv6 组播三层到二层的映射有什么不同,有什么影响。
- IPV6 link-local 地址的特点和作用
ipv4 头部跟 ipv6 头部主要字段有什么区别,ipv6 对 qos 有啥特别的支持?
- 描述 ospf isis bgp 路由撤销过程
影响 OSPF 邻居建立的因素有哪些
- ospf 有哪些特殊区域,怎么传递 lsa
- ospf 邻居建立过程
- OSPF vlink 应用场景,作用
- OSPF 的路由过滤
OSPF 中 1 类 LSA 中有哪些链路类型(链路状态描述),它们的作用是什么?
- Router id 的作用,配置及影响
- 2类LSA的作用
ospfv2 v3 区别
- OSPF DR/BDR 与 ISIS DIS 的区别
- OSPF 的区域类别和区别
OSPFv3 新增了哪些 LSA
OSPFv3 LSA 的类型
- ospf 在设计上是如何防环的
- 各路由协议的下层协议是什么?由此使得各协议有什么特点
华为路由优先级有哪些及作用
- LSA4 的作用
- OSPFV3 的 8 和 9 类 LSA,追问 8 类的 LS ID 是什么(是接口编号)
- OSPF 在 PPP 链路上(地址不在一个网段)是否可以建邻居,是否可以学习路由
ISIS 对 ipv6 支持
- ISIS 邻居关系建立
- ISIS 路由撤销
- ISIS LEVEL 1 的次优路径
- ISIS 报文类型
NET 的构成,区域号的长度范围,00 的含义。
- DIS 与 DR 的区别(见 ospf 章节)
- P2P 与 MA 中 CSNP 有什么区别
- ISIS 支持的链路类型,以及邻居建立的特点
影响 isis 邻居建立因素
- ISIS 有哪些链路类型(网络类型)?它们分别是怎么建立邻居和同步 LSP
BGP 属性
- BGP 为什么可以很好的拓展 Ipv4,Ipv6,V PNv4
- Isis、ospf、bgp 对 IPv6 的支持
- IBGP、EBGP 通常用什么接口建立邻居关系,为什么?
- bgp 同步,为什么要有这个技术,现网中一般怎么做,为什么?
BGP 报文有几种,作用是什么?
- bgp 路由的撤销
- BGP 如何防环,及RR 中的防环规则
BGP 选路原则
bgp 路由表中,会有某些路由无效,请说出有哪些场景导致这些问题
- EBGP 和 IBGP 传递路由有什么区别
- bgp 传递路由的规则,加入 RR 之后会怎么样
bgp 的影响邻居建立因素
- IBGP 和 EBGP 传路由区别,有 rr 的时候是什么情况
- BGP 域内解决 IBGP 全互联的方法
- BGP 如何实现负载分担
- mpls V PN 两层标签是谁分配的,怎么分配的
- LSP 断裂
- MPLS 中路由器的角色
mpls 头部字段有什么?
各有什么作用? 追问:TTL 有什么用?TTL 的处理方式?- MPLS 工作过程 ,ldp 的标签分配
- CE 双归属时与 PE 间实例运行 ISIS 会有什么问题?
- MPLS 的控制平面和转发平面
MPLS 转发过程中使用到哪些表项及作用
(追问 hub-spoke 实现)- MPLS 的控制平面与转发平面(追问 FIB 与 RIB 的区别)
- MPLS 的次末跳弹出
- Mpls lsp 的建立方式
- 在 MPLS V PN 中,RT、RD 的作用是什么
mpls 路由汇总会遇到什么问题
- mpls 头部比 ip 头部的好处
- 在 MPLS 中都有哪些转发表项?作用是什么?
- 双 pe 场景,追问 domain id 作用追问后门链路。
- MPLS V PN CE 双归属的问题
- MPLS 标签的分发(发布)、控制、保留(保持)方式?
- 跨域 MPLS V PN 实现的方式
- PIM SM 工作机制
- PIM中SM的RP选择
- 组播转发路径称为什么?哪有几种类型?他们的工作过程?
- 组播rp种类
- IGMPv2 中路由器和主机如何知道谁 laste reporter 的?
- IGMP snooping 作用以及工作原理
- RPF 检测的作用 依据
- RP 的作用和选举机制,以及 BSR
- 组播成员的加入与离开过程
- 知道组播源的位置,采用何种组播路由协议 ,这种协议工作过程
- 追问 igmp v1 v2 v3 追问 pim sm 中的注册报文内容 追问 pim ssm 中有没有 rp
- IGMP SNOOPING(如何减少 2 层的组播流量)
- 组播的 PIM_SM 中有一种静态 RP,请问静态 RP 有哪些备份技术
- igmp 的 dr 选举和查询器
- Igmp v1,v2,v3
- RP 的备份方式
- WRED 和 RED 的区别
- 交换机和路由器的流量整形
- 交换机和路由器分别有几种流量整形?
- 追问什么是复杂流分类、视频流量和语音流量哪种做整形、哪种做监管
- 流量整形的分类(追问流量整形与监管的区别)
- 流量监管和整形的区别,他们的应用场景
- cos 和 tos 的区别和使用场景
- QOS,追问令牌桶
- 华为路由器与交换机中的流量整形
- DHCP 报文攻击(追问 DHCP 服务器分配 IP 时优先选择的顺序)
- Netstream 系统由哪三部分组成?以及作用?
- SNMP 由哪几部分组成,功能是什么。几种版本,几种报文,区别是什么?(追问如何配置)
- 除了静态 Nat 动态 nat,napt 还有什么 nat 至少列举两种
- FTP 与 NAT
- DHCP 的客户端发 request ,什么时候回 ack 和发送免费 arp (追问 Chaddress 字段,以及租约记录中的内容)
- DHCP 攻击
- NQA 与 VRRP 的联动
- arp 攻击与防范举例两种
- DHCP SNOOPING
- VRRP 主备选举过程,虚拟 MAC,安全防护
- VRRP 优先级范围,哪些先级不能配置
- DHCP snooping 工作原理以及相关作用
- DHCP 地址分配过程
- DHCP server 如何知道什么时候回复 ACK,如果不回 ACK,DHCP server 会做什么
- DAI 可以防止哪些攻击
- DHCP 交互过程(追问 SERVER 如何处理和端口号多少)
- URPF 的作用及其部署
- DHCP 限速是基于接口还是全局
- DHCP 服务器不能分配地址原因
- ICMP 攻击和防范
- VRRP优先级0和255
- NAT 地址转换过程
- FTP 工作原理
- DHCP SNOOPING 作用 基本功能 应用场景