HCNA Routing&Switching之OSPF度量值和基础配置命令总结
前文我们了解了OSPF的网络类型,OSPF中的DR和BDR的选举规则、作用等相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15054938.html;今天我们来聊一聊OSPF的度量值以及基础配置命令相关话题;
我们知道路由器的作用就是维护路由表和根据路由表中的路由来进行数据包转发;其中路由表中有目标网络、掩码、优先级、开销、下一跳、出接口等信息;其中开销(cost)这个字段就是用来描述到达目标网络的开销;对于不同类型的路由,其开销这个字段的意义各不相同;比如在RIP里cost这个字段是用来描述到达目标网络的跳数(默认情况下数据包所经过一个路由器,其跳数+1),并且规定大于等于16,该路由则为不可达网络;而在OSPF中cost这个字段是用来描述对应路由所在匹配的接口开销;在每一个运行OSPF的接口上,都维护着一个接口开销,这个接口开销是指接口带宽参考值和接口带宽的比,即cost=接口带宽参考值/接口带宽;接口带宽参考值是10^8,单位是bps(每秒传输的字节数);换算成以兆(M)为单位就是100Mbps;所以默认情况下在ospf中cost的计算就是100Mbps/对应接口的带宽;比如接口带宽为100M,对应计算cost就是1;对应接口带宽为1000M,按照公式计算出来的cost应该是0.1,但是在cost这个字段上是没有小数的,所以如果接口带宽为1000M,那么对应的开销也是为1;所以在ospf中开销最小值为1 ;如果我们计算cost的值有小数,则直接取整(注意不是四舍五入哦);对于物理的接口通过上述公式可以计算出cost;对于逻辑接口lo,华为这边默认是0,思科默认是1;
在ospf里cost是用来描述到达一个目标网络的度量值,该度量值可以从两个层面来描述,如果从数据层面,我们就说这个cost是用来描述从源到目标,沿途所经过的路由器出站接口的cost值的累加;如果从路由学习方向(控制层面)来讲,cost是指从源到目标,沿途所经过的路由器入站接口的cost的值的累加;这两句话都是表达的同一个意思,只是各自描述的方向不同;

提示:从1.1.1.0/24网络到达路由器A的cost为1的话,那么到达路由器B的cost就是路由器A的入站接口cost+路由器B的入站接口的cost,即1+64=65;到达C路由器的cost就是路由器A的入站接口cost+路由器B的人站接口cost+c的入站接口cost,即从1.1.1.0/24网络到达路由器C的cost就为1+64+1=66;
实验:如下图top,配置好各路由器,并全网运行ospf

R1的配置
<Huawei>sys
Enter system view, return user view with Ctrl+Z.
[Huawei]sys R1
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip add 192.168.100.1 24
[R1-GigabitEthernet0/0/0]int lo1
Jul 28 2021 10:55:40-08:00 R1 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP on the interface GigabitEthernet0/0/0 has entered the UP state.
[R1-GigabitEthernet0/0/0]int lo1
[R1-LoopBack1]ip add 1.1.1.1 32
[R1-LoopBack1]ospf 1 router-id 1.1.1.1
[R1-ospf-1]area 0
[R1-ospf-1-area-0.0.0.0]net 192.168.100.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]net 1.1.1.1 0.0.0.0
[R1-ospf-1-area-0.0.0.0]
R2的配置
<Huawei>sys
Enter system view, return user view with Ctrl+Z.
[Huawei]sys R2
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip add 192.168.100.2 24
[R2-GigabitEthernet0/0/0]int lo1
Jul 28 2021 10:56:29-08:00 R2 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP on the interface GigabitEthernet0/0/0 has entered the UP state.
[R2-GigabitEthernet0/0/0]int lo1
[R2-LoopBack1]ip add 2.2.2.2 32
[R2-LoopBack1]ospf 1 router-id 2.2.2.2
[R2-ospf-1]area 0
[R2-ospf-1-area-0.0.0.0]net 192.168.100.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]net 2.2.2.2 0.0.0.0
[R2-ospf-1-area-0.0.0.0]
R3的配置
<Huawei>sys
Enter system view, return user view with Ctrl+Z.
[Huawei]sys R3
[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]ip add 192.168.100.3 24
Jul 28 2021 10:57:07-08:00 R3 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP on the interface GigabitEthernet0/0/0 has entered the UP state. int lo1
[R3-GigabitEthernet0/0/0]
[R3-LoopBack1]ip add 3.3.3.3 32
[R3-LoopBack1]ospf 1 router-id 3.3.3.3
[R3-ospf-1]area 0
[R3-ospf-1-area-0.0.0.0]net 192.168.100.0 0.0.0.255
[R3-ospf-1-area-0.0.0.0]net 3.3.3.3 0.0.0.0
[R3-ospf-1-area-0.0.0.0]
[R3-ospf-1-area-0.0.0.0]
R4的配置
<Huawei>sys
Enter system view, return user view with Ctrl+Z.
[Huawei]sys R4
[R4]int g0/0/0
[R4-GigabitEthernet0/0/0]ip add 192.168.100.4 24
[R4-GigabitEthernet0/0/0]int lo1
Jul 28 2021 10:57:43-08:00 R4 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP on the interface GigabitEthernet0/0/0 has entered the UP state.
[R4-GigabitEthernet0/0/0]int lo1
[R4-LoopBack1]ip add 4.4.4.4 32
[R4-LoopBack1]ospf 1 router-id 4.4.4.4
[R4-ospf-1]area 0
[R4-ospf-1-area-0.0.0.0]net 192.168.100.0 0.0.0.255
[R4-ospf-1-area-0.0.0.0]net 4.4.4.4 0.0.0.0
Jul 28 2021 10:57:44-08:00 R4 %%01OSPF/4/NBR_CHANGE_E(l)[1]:Neighbor changes event: neighbor status changed. (ProcessId=256, NeighborAddress=3.100.168.192, NeighborEvent=HelloReceived, NeighborPreviousState=Down, NeighborCurrentState=Init)
[R4-ospf-1-area-0.0.0.0]net 4.4.4.4 0.0.0.0
Jul 28 2021 10:57:44-08:00 R4 %%01OSPF/4/NBR_CHANGE_E(l)[2]:Neighbor changes event: neighbor status changed. (ProcessId=256, NeighborAddress=3.100.168.192, NeighborEvent=2WayReceived, NeighborPreviousState=Init, NeighborCurrentState=2Way)
[R4-ospf-1-area-0.0.0.0]net 4.4.4.4 0.0.0.0
[R4-ospf-1-area-0.0.0.0]
验证:在R1上查看邻居关系

提示:可以看到在R1上查看对应的邻居表,里面有三个邻居,和我们的拓扑图一样;说明ospf配置没有问题,并且对应的ospf都运行起来;
验证:在R1上查看通过ospf学习到的路由

提示:可以看到R1通过ospf学习到了三条路由,并且这三条路由的开销都为1;这是因为,默认情况下lo接口的开销为0,物理接口比如g0/0/0这些接口默认是1;所以R1到R2的lo接口的cost就是R2的lo接口的开销+R1的g0/0/0接口的开销,即0+1=1;同理R3、R4也是一样的;
验证:修改R1的g0/0/0接口开销为10,看看对应的路由的开销是否会发生变化呢?

提示:更改ospf的开销,需要在对应接口上修改;可以看到修改了R1的g0/0/0接口开销以后,对应学习到的路由开销都变为10,这是因为各路由器到达R1时,都要从g0/0/0入站,所以开销都是对应路由器的lo接口的开销+R1的g0/0/0的开销,即0+10=10;
验证:在R2查看对应ospf学习到的路由,看看对应路由的开销有什么变化?

提示:可以看到在R2上查看对应的路由,对应路由的开销都为1,这是因为各路由器的lo接口从R2入站,对应cost就是各路由器的lo接口cost+上R2的g0/0/0接口的cost,即0+1=1;
验证:更改R2的lo接口cost为100,看看对应路由的cost是否会有变化呢?

提示:可以看到在R2 上更改了lo接口cost为100以后,在R2上查看对应路由的cost并没有发生变化,其原因是各个路由器的路由都是从R2的g0/0/0接口入站,对应cost就是为各路由器的lo接口cost+R2的g0/0/0接口的cost,即0+1=1;
验证:在R3上查看对应ospf学习到的路由,看看对应路由的cost会是多少呢?

提示:可以看到在R3上查看ospf学习到的路由中,到达R2lo接口的路由,对应cost为101,这是因为R2的lo接口的cost为100,那么到达R3,对应cost就为R2的lo接口cost+R3的g0/0/0的cost,即100++1=101;对于除R2以外的其他路由器,学习到达R2的路由cost都是101;
路由表中的cost字段,主要用来描述到达目标网络的cost,它的主要作用评判对应链路的cost,数字越大表示开销越大,开销越大即路由器选择对应的路由的几率就越低(如果有到达相同目标网络的路由),所以更改cost是能够影响路由器选路;
验证:查看R4的lo接口和g/00/0接口,看看默认情况下对应lo接口和物理接口的cost为多少?

提示:默认情况下华为设备的lo接口cost为0,思科的设备lo接口cost为1 ;
OSPF基础配置命令总结
ospf 1 router-id 1.1.1.1
提示:上述命令表示开启ospf进程,进程号为1,并手动设置其router id 为1.1.1.1;
area 0
提示:上述命令是配置对应ospf的区域id为0;区域id为0表示该区域为ospf的骨干区域,非0的区域是常规区域;
network 192.168.0.0 0.0.0.255
提示:上述命令是用来在ospf中宣告网络,这个和RIP中宣告网络的命令一样;只有在对应的动态路由协议中宣告了网络,其他路由器才能学习到到达该网络的路由条目;对于RIP来讲,我们宣告的时候只需要把对应要宣告的网络的主类地址进行宣告即可,不需要带掩码;而在ospf中,宣告网络必须带反掩码,所谓反掩码就是指255.255.255.255减去对应网络的掩码;比如255.255.255.0的反掩码就是0.0.0.255;255.255.255.252的反掩码就是0.0.0.3;我们宣告网络可以对一个网段进行宣告,当然也可单独对一个地址进行宣告,只要宣告的网络能够包含对应接口的地址就行;
display ospf peer
display ospf peer brief
提示:上述命令用来验证ospf的邻居信息的;
ospf timer hello 10
提示:该命令在对应接口下进行修改,表示修改ospf的发送hello包的时间间隔,默认只修改hello包发送时间间隔,对应死亡间隔也会跟着保持4倍关系进行修改;
ospf timer dead 40
提示:上述命令表示修改ospf接口hello包的死亡时间为40秒;如果修改了hello包的死亡事件和发送时间,它会以后者修改的为准,不会和hello发送时间保持4倍关系,如果只修改hello包的发送时间,它会跟着修改保持4倍关系;
display ospf interface g0/0/0
提示:该命令用于显示ospf接口的相关信息;默认ospf后面不跟进程号,默认就是1号进程;
ospf dr-priority 100
提示:该命令用于在接口模式下修改ospf的DR优先级;默认情况下ospf的接口DR优先级都为1 ,修改其优先级可以影响对应DR和BDR的选举,当前提是在DR和BDR没有完全选举成功,如果DR和BDR选举成功,需要重置ospf进程触发DR和BDR的重新选举,让其新的配置生效;
ospf cost 10
提示:该命令用于在接口模式下修改对应接口的cost,其范围是1-65535,默认情况下都是1 ;
bandwidth-reference 100
提示:上述命令是在ospf进程模式下调整ospf接口的带宽参考值,默认情况下带宽参考值为100Mbps;需要在整个OSPF网络中统一进行调整;
bandwidth 100
提示:该命令用于在接口模式下修改对应接口的带宽;
reset ospf process
提示:该命令用于用户模式下重启ospf进程;
HCNA Routing&Switching之OSPF度量值和基础配置命令总结的更多相关文章
- HCNA Routing&Switching之OSPF缺省路由发布
前文我们了解了OSPF的度量值,以及基础配置命令的总结,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15069632.html:今天我们来聊一聊在ospf里动 ...
- HCNA Routing&Switching之动态路由协议OSPF基础(一)
前文我们了解了基于路径矢量算法的动态路由协议RIP防环以及度量值的修改相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15012895.html:今天我 ...
- HCNA Routing&Switching之路由基础
在开始聊路由之前,我们首先要明白在网络通讯里,什么是路由?什么是路由表.路由器以及网关的相关术语:路由简单讲就是指网络数据包从源头到目标的路径,主要用来为不同网络间通讯提供数据包转发依据:路由表就是多 ...
- HCNA Routing&Switching之动态路由协议RIP
前文我们了解了动态路由的基本概念,以及动态路由和静态路由的区别,优缺点,动态路由的分类,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14995317.html ...
- HCNA Routing&Switching之RIP防环机制
前文我们了解了RIP的基础概念.RIP的特点.RIP报文格式.RIP度量以及RIP配置认证等相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/150085 ...
- HCNP Routing&Switching之OSPF网络类型
前文我们了解了PPPoE协议相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15182512.html:今天我们聊聊一聊OSPF中的网络类型相关话题: ...
- HCNP Routing&Switching之OSPF LSA类型
前文我们了解了OSPF中的虚连接相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15202348.html:今天我们来聊一聊OSPF数据包中LSA类型相 ...
- HCNP Routing&Switching之OSPF LSA类型(二)
前文我们了解了OSPF的一类.二类.三类LSA,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15209829.html:今天我们来聊一聊OSPF的四类和五类L ...
- HCNP Routing&Switching之OSPF LSA更新规则和路由汇总
前文我们了解了OSPF外部路由类型以及forwarding address字段的作用,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15225673.html: ...
随机推荐
- postman 获取Json 返回值的某个键值并进行断言判定
前提: 当前接口返回的结果值为json格式 1.将响应正文信息copy 到 https://www.bejson.com/ 便于查看 2.取值并进行断言编写 //json对象解析取值 var jd ...
- Web打印插件实现思路(C#/Winform)
最近,客户有个需求过来,Web端无预览打印,美其名曰:快捷打印. 当时第一反应就是找插件,拿来主义永远不过时.找了一圈发现,免费的有限制,没限制的需要收费(LODOP真的好用).说来就是一个简单的无预 ...
- 09:jQuery(02)
内容概要 jQuery操作标签 jQuery绑定事件 jQuery补充知识点 jQuery动画效果(了解) 零散补充 内容详细 jQuery练习题 $('#i1') r.fn.init [div#i1 ...
- NOIP模拟测试4「礼物·通讯·奇袭」
礼物. 首先见到期望一定要想dp,看到n的范围无脑想状压, 然后我就只想到这了. dp方程式还是比较好想的,但是我依然想不出来 略经思考 颓题解 依然不会,随便写了个式子 i状态中不含j $f[i ...
- ESCMScript(1)let和const
1.let命令 基本语法 ES6 新增了let命令,用来声明变量.它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效. { let a = 1 var b = 2 console ...
- 第三方API对接如何设计接口认证?
一.前言 在与第三方系统做接口对接时,往往需要考虑接口的安全性问题,本文主要分享几个常见的系统之间做接口对接时的认证方案. 二.认证方案 例如订单下单后通过 延时任务 对接 物流系统 这种 异步 的场 ...
- Python如何设计面向对象的类(上)
Python是一门高级语言,支持面向对象设计,如何设计一个符合Python风格的面向对象的类,是一个比较复杂的问题,本文提供一个参考,表达一种思路,探究一层原理. 目标 期望实现的类具有以下基本行为: ...
- jquery鼠标移入移出事件
<!DOCTYPE html><html> <head> <meta http-equiv="Content-type" conte ...
- 第二篇CTF-MISC
第一篇写成了日记,发布不了.第一篇CTF-MISC 04.坚持60S 附件下载下来,是个jar的文件,打开 耶?这是嘛呀? 反正没看懂,既然是jar文件,直接上jd-gui反编译一波试试 这么明显的f ...
- k8s 1.12 环境部署及学习笔记
1.K8S概述 1.Kubernetes是什么 2.Kubernetes特性 3.Kubernetes集群架构与组件 4.Kubernetes核心概念 1.1 Kubernetes是什么 • Kube ...