HCIA第八天到第十天

第八天

Bellman-Ford算法:贝尔曼-福特算法(Bellman-Ford)是由理查德·贝尔曼(Richard Bellman) 和 莱斯特·福特 创立的,求解单源最短路径问题的一种算法。有时候这种算法也被称为 Moore-Bellman-Ford 算法,因为 Edward F. Moore 也为这个算法的发展做出了贡献。

1, AR2发送2.0网段的信息给AR1, 如果, AR1本身并不存在该网段的路由 信息, 则将直接刷新到本地的路由表中。

Destination/Mask    Proto   Pre  Cost      Flags NextHop

Interface

1    2.2.2.0/24D    12.0.0.2RIP   100G0/0/0

2, AR2发送2.0网段的信息给AR1, 如果, R1本身存在该网段的路由信息, 且下一跳就是AR2。则将AR2发来的信息刷新到路由表中。

3, AR2发送2.0网段的信息给AR1, 如果, R1本身存在该网段的路由信息, 但是下一跳不是AR2, 则比较开销值, 如果, 本地路由的开销值大于AR2发 来的开销值, 则将AR2发来的信息刷新到路由表中。

4, AR2发送2.0网段的信息给AR1, 如果, R1本身存在该网段的路由信息, 但是下一跳不是AR2, 则比较开销值, 如果, 本地路由的开销值小于AR2发 来的开销值, 则不刷新路由条目。

RIP的计时器

周期更新计时器 --- 30S

失效计时器 --- 180S --- 路由条目刷新后启动一个180S的失效计时 器, 若计时器时间结束, 路由未刷新, 则认为路由不可达, 将该路由 从全局路由表中删除掉。  --- 带毒传输

垃圾回收计时器 --- 120S --- 失效计时器归0后开始计时, 时间 到, 则将该路由彻底删除

RIP的破环机制

1, 触发更新 : 当拓扑结构发生变化时, 直接将变化信息传递出去 而不去等待周期更新。

2, 水平分割: 从哪个接口学到的信息, 不再从哪个接口发出去。  3, 毒性逆转: 从哪个接口学到的信息, 还可以从这个接口发出去, 但是, 要带毒。

因为水平分割和毒性逆转的做法相反, 所以, 在选择时, 只能选择其 中一个来执行。华为设备默认开启水平分割。如果水平分割和毒性逆转同 时开启, 华为设备将按照毒性逆转的规则来执行。

RIP配置

1, 启动RIP进程

[r1]rip 1 --- 1为进程号, 仅存在本地意义, 用来区分一台设备上的多 个RIP进程

2, 选择版本

[r1-rip-1]version 1

3, 宣告

要求:

1, 宣告所有直连网段

2, 必须按照主类进行宣告

[r1-rip-1]network 1.0.0.0

目的:

1, 激活接口 --- 只有激活的接口才能收发RIP的数据

2, 发布路由 --- 只有激活的接口所对应路由信息才能被发布 [r1]display rip 1 route  --- 查看RIP路由表

RIP的拓展配置

1, RIPV2的手工认证

[r2-GigabitEthernet0/0/0]rip authentication-mode md5 usual

plain 123456

2, RIPV2的手工汇总

[r1-GigabitEthernet0/0/0]rip summary-address 192.168.0.0 255.255.254.0

3, 沉默接口

使得该激活接口, 只接收不发送RIP数据。

[r1-rip-1]silent-interface GigabitEthernet 0/0/2 4, 加快收敛 --- 减少计时器的时间

[r1-rip-1]timers rip 30 180 120 --- 修改计时器时三个计时器的

倍数关系不能该变

5, 缺省路由

[r3-rip-1]default-route originate

第九天

选路佳, 收敛快, 占用资源少

1, 因为RIP是依据跳数作为开销值进行选路的, 所以, 本身就存在不合理 性;

2, 因为RIP的计时器时间较长, 所以, 收敛速度较慢;

3, RIP本身单个数据包占用资源并不大, 但是, 因为他存在30S一次的周 期更新, 所以, 从整体的角度看, 占用资源较大;

OSPF --- 开放式最短路由优先协议

1, OSPF使用SPF算法计算路径信息, 不会出现环路, 并且, OSPF使用带宽 作为开销值进行选路, 相对更合理一些, 所以, 选路的层面优于RIP;

2, 因为OSPF计时器时间短于RIP, 所以, 从收敛速度的角度看, OSPF优于 RIP;

3, 从单个数据包的角度来看, 因为OSPF传递的是拓扑信息(链路状态信  息 --- LSA) ,所以, 数据量远远大于RIP的单个数据包。但是, 因为RIP 存在30S一次的周期更新, 整体上看, 占用资源量巨大; 再加上OSPF本身  存在很多减少更新量的手段, 所以, 从整体的角度来看, OSPF小优于     RIP。

RIP存在三个版本 --- RIPV1,RIPV2  --- IPV4

RIPNG --- IPV6

OSPF也存在三个版本 --- ospfv1(实验室阶段夭折) ,ospfv2 --- IPV4 ospfv3 --- IPV6

RIPV2和OSPFV2的相同点:

1, OSPFV2和RIPV2一样, 都是无类别的路由协议(传递目标网段信息时携 带子网掩码)  -- 都支持VLSM, CIDR

2, OSPFV2和RIPV2都是以组播发送信息 ----- OSPFV2所使用的组播地址 为 224.0.0.5和224.0.0.6

3, OSPFV2和RIPV2一样, 都支持等开销负载均衡

不同点:

RIP只适用于小型网络环境中, OSPF可以适用于中大型的网络环境    --- OSPF为了适用中大型的网络环境, 需要进行 --- 结构化部署 (区域划分)

如果网络规模不大, 仅存在一个OSPF区域, 则称之为单区域OSPF网络; 若

存在多个OSPF区域, 则称之为多区域OSPF网络

区域划分的主要目的: 区域内部传递拓扑信息, 区域之间传递路由信 息 --- 链路状态型协议的距离矢量特征

区域边界路由器(ABR)  --- 同时属于多个区域, 一个接口对应一个区 域, 必须有一个接口在区域0。

区域之间可以存在多个ABR设备, 一个ABR可以对应多个区域 区域划分的要求:

1, 区域之间必须存在ABR;

2, 区域划分必须遵循星型拓扑结构 --- 星型拓扑的中间区域称为骨 干区域

为了方便对OSPF的区域进行管理, 我们给区域设计了一个编号 --- 区域ID(area ID)   ---- 32位二进制构成 ---- 一般会采用点分十进制 的方法来表示/也可以直接用十进制来表示 ---- 规定骨干区域的area ID 为0

1, OSPF的数据包类型

Hello包 --- 周期发现, 建立和保活邻居关系

hello的周期发送时间默认为 10s --- hello时间。

失效判断的默认时间为4倍的hello时间 --- 40S ---- 死亡时间 (dead time)

OSPF为了区分和标定不同的路由器, 给每个路由器设立了一个 RID --- 1,全网唯一; 2, 格式统一 --- 统一按照IP地址的格 式 ---- 32位二进制构成

RID的获取方法有两种

1, 手工配置 --- 仅需满足以上两点要求即可

2, 自动获取 --- 路由器会先在自己的环回接口的IP地址中 选择最大的IP地址作为RID; 如果, 路由器不存在环回接    口, 则将在自己物理接口的IP地址中选择最大的作为RID;

DBD包 --- 数据库描述报文 ---- 携带的时路径信息的摘要

LSR包 --- 链路状态请求报文 --- 基于DBD包请求未知的LSA信息  LSU包 --- 链路状态更新报文 --- 真正携带LSA信息的数据包

LSACK包 --- 链路状态确认报文 --- 确认包

OSPF存在每30MIN一次的周期更新

2, OSPF的状态机

HCIA第八天到第十天

TWO-WAY ---- 标志着邻居关系的建立

(条件匹配)

HCIA第八天到第十天

主从关系选举 --- 使用未携带数据的DBD包(主要是为了和之前的邻居关 系进行区分) ,通过比较RID来进行主从关系选举, RID大的为主, 可以优 先进入下一个状态

LSDB --- 链路状态数据库 --- 存储LSA信息的数据库

HCIA第八天到第十天

FULL状态 --- 标志着邻接关系的建立 ---- 邻接关系主要为了和邻居关 系进行区分, 邻居关系仅使用hello包进行周期保活, 邻接关系才可以进 行LSA信息的交换。

down状态 --- 启动ospf, 发出Hello包之后进入下一个状态

init(初始化) 状态 --- 收到hello包中携带自己本地的RID, 进入下一 个状态

two-way(双向通讯) 状态 --- 标志邻居关系的建立

(条件匹配) 条件匹配成功, 则进入下一个状态; 否则, 将停留在邻居状 态, 仅发送hello包周期保活

exstart(预启动) 状态 --- 使用未携带数据的DBD包进行主从关系选 举, RID大的为主, 优先进入下一个状态

exchange(准交换) 状态 --- 使用携带目录信息的DBD包进行目录共享  loading(加载) 状态 --- 基于DBD包中的未知的LSA信息, 使用LSR包进 行请求, 邻居使用LSU包回复, 需要LSACK进行确认

FULL状态 --- 标志着邻接关系的建立

3, OSPF的工作过程

启动配置完成后, OSPF会向所有运行协议的接口以组播224.0.0.5的 形式发送hello包; hello包中携带本地的RID以及本地已知的邻居的RID。 之后, 将收集到的邻居关系记录在一张表中 ---- 邻居表。

邻居建立之后, 需要进行条件匹配; 匹配失败则停留在邻居关系, 仅 使用Hello包进行周期保活。

匹配成功, 则可以开始建立邻接关系。首先使用未携带数据的DBD包  进行主从关系选举, 之后使用携带数据的DBD包进行数据库目录信息共    享; 之后本地使用LSR/LSU/LSACk来获取未知的LSA信息; 完成本地数据库 的建立; 生成数据库表 --- LSDB。

最后, 基于本地的链路状态数据库生成有向图及最短路径树, 之后计 算本地到未知网段的路由信息, 生成路由并添加到路由表中。

收敛完成之后, hello包10S一次进行周期保活, 30MIN一次周期更 新。

结构突变

1, 新增一个网段

2, 断开一个网段

3, 无法沟通 ---- 40S

4, OSPF的基本配置

第十天

4, OSPF的基本配置

1) 启动OSPF进程

[r1]ospf 1 router-id 1.1.1.1  ---- 1 --- 进程号, 仅具有本地

意义。

[r1-ospf-1]

2, 创建区域

[r1-ospf-1]area 0

[r1-ospf-1-area-0.0.0.0]

3, 宣告

[r1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0 --- 反掩 码 --- 由连续的0和连续的1组成, 0带表不可变, 1代表可变

[r1]display ospf peer  --- 查看OSPF邻居表

[r1]display ospf peer brief  --- 查看邻居关系简表

[r1]display ospf lsdb  --- 查看OSPF的链路状态数据库

[r1]display ospf lsdb router 2.2.2.2 --- 查看LSA详细信息 [r1]display ip routing-table protocol ospf

OSPF协议 --- 华为设备分配的默认优先级为10

OSPF是以带宽作为开销值的度量标准的

cost = 参考带宽/真实带宽   ---  华为设备OSPF的参考带宽默认为 100Mbps

[r1-ospf-1]bandwidth-reference 1000 ---- 修改参考带宽的命令    注意: 如果需要修改一台路由器的参考带宽, 则需要将所有(OSPF网络 内) 路由器的参考带宽都修改为一样的

指定路由器 --- DR

备份指定路由器 --- BDR

DROther

当一个广播域中存在DR和BDR时, 想要看到邻居关系, 至少需要4台路由设 备

DR/BDR是接口概念

条件匹配: 在一个广播域中, 若所有设备均建立邻接关系, 将造成大量的 重复更新, 故需要进行DR/BDR的选举, 所有非DR/BDR设备之间仅保留邻居 关系。

DR/BDR的选举

1, 先比较优先级, 优先级大的为DR, 优先级次大的为BDR

优先级的默认初始值为1。

[r1-GigabitEthernet0/0/0]ospf dr-priority ?

INTEGER<0-255>  Router priority value 优先级的取值范围 0 - 255

如果, 将一个接口的优先级修改为0, 则代表该接口放弃DR/BDR 的选举。

2, 当优先级相同时, 则比较RID。RID大的路由器的对应接口为DR, 次大的为BDR。

DR/BDR的选举是非抢占模式的 --- DR/BDR一旦选举成功, 则将不能被抢 占。DR/BDR的选举时间40S。

<r1>reset ospf 1 process  --- 重启OSPF进程

5, OSPF的拓展配置

1) 手工认证

[r1-GigabitEthernet0/0/0]ospf authentication-mode md5 1 cipher 123456

注意: 两边的KEY ID必须相同

2) 手工汇总 --- 区域汇总

[r2-ospf-1-area-0.0.0.0]abr-summary 192.168.0.0 255.255.254.0

3) 沉默接口

[r1-ospf-1]silent-interface GigabitEthernet 0/0/2

4) 加快收敛 --- 减少计时器时间                  [r1-GigabitEthernet0/0/0]ospf timer hello 5

注意: 修改hello时间后, 死亡时间将自动按照4倍关系匹配   注意: ospf要求, 邻居之间的hello时间和死亡时间必须相同, 否则无法建立邻居关系。

5) 缺省路由

[r3-ospf-1]default-route-advertise

注意: OSPF要求边界路由器自身必须存在缺省路由, 才能下发缺 省路由信息

[r3-ospf-1]default-route-advertise always  --- 强制下发

缺省信息

上一篇:HCIA第八天


下一篇:实测:Kubernetes 1.6 中的混合 DNS