动态路由协议 - OSPF 基本配置 详解 (反掩码,宣告,三张表,Cost默认值修改 )

目录

预备工作   :

基础配置  : 

      先启动 OSPF 的进程  : 

      创建区域 : 

       宣告  :  

 查看三张表 

邻居表  : 

数据库表 : 

 路由表 : 


以下示拓扑为 OSPF 示范  : 

  

                             第一步确定有几个广播域,  第二步给广播域分配网段

                         AR1 , R2 ,R3 的环回分别是 1.1.1.0/24    2.2.2.0/24    3.3.3.0/24 

预备工作   :

先给三台设备分配 IP : 

               R1 :                   

[Huawei]sysname r1
[r1]interface  g 0/0/0
[r1-GigabitEthernet0/0/0]ip address 12.0.0.1 24
[r1-GigabitEthernet0/0/0]int l0
[r1-LoopBack0]
[r1-LoopBack0]ip address 1.1.1.1 24 

                

              R2  :  

[Huawei]sys r2
[r2]
[r2]interface g 0/0/0
[r2-GigabitEthernet0/0/0]ip address  12.0.0.2 24
[r2-GigabitEthernet0/0/0]int l0
[r2-LoopBack0]	
[r2-LoopBack0]ip address 2.2.2.2 24 
[r2-LoopBack0]int g 0/0/1
[r2-GigabitEthernet0/0/1]ip address  23.0.0.1 24

              R3  : 

[Huawei]sys r3
[r3]int g 0/0/0
[r3-GigabitEthernet0/0/0]ip address 23.0.0.2 24
[r3-GigabitEthernet0/0/0]int l0
[r3-LoopBack0]ip address 3.3.3.3 24

        

基础配置  : 

       

      先启动 OSPF 的进程  : 

        

        启动的方式也很简单,就是 OSPF 1  即可,这个 1 就代表着 进程号

        进程号 ( 1-65535 ) 均可 

        一般来讲 OSPF 1 就结束了,就是 进程肯定是启动了 

        但是,前面我们不是也讲了, OSPF 是需要 Router ID 的,

        而按照上示中执行,不是不可,是采取系统默认的角度  就直接给分配了 Router ID 

        

        可以看到的是,当我们启动 OSPF 进程,并没有手动命名 Router ID 的时候,

        我们使用 display ospf routing 命令 可以直接看到,系统是给 Router ID 分配了的~!! 

        而我们一般建议 是手动命名的,

        所以具体的操作应是   进程启动的同时  也把 Router ID 给命名了 

        ===>>>

           

           手工配置 RID  在启动时就直接配置 ~!! 

           

           怎么给 RID 取值呢 ? 

           ===>>>

           有环回接口,就先取环回接口的 IP , 环回接口有多个,就取数值最大的那一个。

           要是没有环回,那就以接口 IP 为 RID值 

            :  回忆一下,RIP 在配置时,第二步是 选择版本,那对于OSPF 来说 还需要选择嘛 ?

                     是不需要的~!! 

                     OSPF 是有三个版本不假,但在 IPV4 领域只有两个,V1 和 V2 

                     而 V1 就没出来,所以对于 IPV4 领域来讲 就是进入的 V2 版本 ~!! 

                     对于 OSPF  V3 版本来说,启动进程是   OSPFV3   来启动的~!! 

                      OSPF 还有一个点就是  区域划分 ~!!! 

         

           蓝色为 区域0, 橙色为区域 1  

           区域中心为 蓝色区域,这是 OK 的, ABR 为 R2 

           就是 R2 的环回 2.2.2.2 我们划到 区域0 这边 ,当然了,是都可以的,

           放 骨干区域能更合适点 ~! 

          但是,诸如上面区域划分阐述的那样,问题是啥呢 ?? 

          问题是,区域怎么划分,你拿嘴怎么说都成,就是这设备是怎么知道 哪个是哪个的区域呢?

          怎么告诉设备就很重要

          ===>>>

          就是说,你要划分区域,那你得先要有区域呀~!! 

          以 R1 举例,R1 简单,因为 R1 里的所哟接口都在 区域0 里~! 

          那你就得首先要有 这个 区域 0 呀 ~!! 

          创建区域 : 

               

                R1  : 

               

              如此,区域 0 就创建好了 ~!! 

              

              区域创建好后,那接下来的问题是啥呢 ??

              ===>>> 

              就是说,你区域是有了,那你这个设备( R1 ) 是哪些接口属于这个 区域 0 呢? 

              当然了,按照上示,R1 所有的接口都是属于 区域0 的

              可以,没问题,但是 区域0 是怎么知道 它有那些接口属于他呢 ??

              换言之,对于 R2 来言,有一部分接口属于 区域0  有一部分接口属于 区域1 

              那也就是说 R2 是有两个 区域的,

              那哪些接口属于 区域0 哪些又属于 区域 1 呢?? 

              ===>>>

              和 RIP 一样, OSPF 也有 宣告 ~!!! 

         宣告  :  

            

             RIP 有宣告, OSPF 也是有宣告的~!!

             宣告的作用  :  激活接口,发布路由 

        

             OSPF 的宣告不是在进程里宣告,是在对应的区域进行的宣告 ,你接口在哪个区域里,那

             就在对应的区域进行宣告。 

             R1  : 

                  

[r1-ospf-1-area-0.0.0.0]network 12.0.0.0  0.0.0.255

              这就是 R1  的 area 0 区域 0 的宣告 

              当然,你看完之后,肯定就会提疑问, 这个 0.0.0.255  是个干啥的 ??好奇怪~!

             ===>>>

             0.0.0.255 即是 反掩码 ~!!

            

            反掩码  :  它与掩码刚好相反,他也是由连续的 0 和 1 组成,32 位二进制 。 

                              怎么个反法呢 

                              ===>>>

                              它的规则就是  0对应的位不可变,而1 对应的位 可变 ~!! 

                              以上示解释 :

                               12.0.0.       0 

                                0.0. 0.       255

                                就相当于, 0对应的位置 ,那就是 12.0.0  是不能变的,而后面 255 对应的0

                                是可变的( 255 就是 1 嘛,是转化成 十进制后成 255 的嘛 )

                                所以,也就是说 255 对应的 0 是可以发生变化的~!! 

                                 

                                我们宣告的目的 是为了 激活接口, 就相当于划分了 一个范围,目的就是激活

                                这个范围内的接口依照反掩码的规则划分了范围,

                                范围就是   12.0.0.0 ~ 12.0.0.255   ( 因为最后一组 是允许发生变化的  ) 

                                有了反掩码就是比较自如了,你可以控制某个范围,这个范围也可大,也可小

                                甚至你都可以 直接精确到某一个  IP ,这都是可以通过 反掩码来实现的~!!                         

[r1-ospf-1-area-0.0.0.0]network 1.1.1.1   0.0.0.0 

                               这呢就意味着 直接精确到 1.1.1.1 这个 IP 了   ( 上示是给 R1 的 1.1.1.1 接

                               口 激活的 )

                               所以,设置反掩码,就是 会使得 宣告 很灵活了 ~!!

                               

                                至此, R1 的配置就结束了,我们接下来 处理 R2 和 R3 

        R2  : 

                        在 R2   所有接口的 IP 配置过后,我们来给他进行 OSPF 相关配置 

                        与 R1 同理,先启动 OSPF 进程,并顺手配置 RID 

                        ===>>>

[r2]ospf 1 router-id 2.2.2.2 

                        

                        接着,创建区域  : 

                        由于 R2 的区域涉及到两个部分,当然啦,无伤大雅洛,你涉及 100 个区域,也是

                        一个一个来的呗,不急,跟他耍耍~!!!

                        我意思,咱就先弄 区域0,再弄区域1 

                        区域  0 的接口 有一个 0/0/0, R2 不是还有一个 环回接口嘛,我们把这个 环回接口

                        也弄到 区域 0 里  

[r2-ospf-1-area-0.0.0.0]network 12.0.0.0   0.0.0.255

                        我们在 R2 里, 区域0 上,宣告了 12.0.0.0 这个网段范围 

                        随后,就发生了一些 奇妙的变化 

                        ===>>>

                        会产生日志 

                       

                      由于我们之前,先在 R1 上 已经对 区域0 进行宣告了 ,所以会产生了日志

                      这个日志里面,将 OSPF 的整个过程状态,都反应了出来 ~!! 

                      主要就是, R1 的 0/0/0 和 R2 的 0/0/0 是直连的,并且被宣告都是同一网段,

                      接口就被激活,就可以收发 OSPF  数据,就会收发 HELLO 包了,自然而然就会

                      进行一系列的 OSPF 的过程了 ~!! 

                       

                      我们再对 R2 的 环回接口进行激活 ( 也是在 区域0 )                      

[r2-ospf-1-area-0.0.0.0]network 2.2.2.2   0.0.0.0 

          我们采用了 精准激活的方式,就是没有宣告哪个范围,直接就是 2.2.2.2 这 1个 IP  地址 

                

               

               我们再给 R2 的区域1 进行 宣告 ,这次 接口的范围我们又设置大了一点儿

               就都试试嘛 ~!! 

               在前面,都可以看到, area 区域 后面是 0.0.0.1   

               他本质也是 32位二进制构成的; 可以是 十进制 表示,也可以是 点分十进制 

               至此, R2 的配置就结束了,我们再给 R3 一配置就结束了 

        R3  : 

                      同样,先来启动进程并且  配置 RID 

         

                    接着 划区域,宣告 

          

          

          宣告完后,就OSPF 就开始了自己的工作过程,产生了日志 

          

         

          至此, 针对于 本拓扑, 要实行 OSPF 协议的基本配置,就结束了 ~!! 

          总结  :  就是 针对 OSPF 的实现, 就贯穿三个步骤 

                         #  启动进程,并手动 赋值 RID   (也可以自动 赋值 RID ,但建议手动 )

                         #  划分区域 

                          进行宣告 

     

                接下来,就看看 那三张表 ~!!

查看三张表 

        

            三张表 :    邻居表, 生成数据库表, 路由表 

            

邻居表  : 

              以 R1  上的 邻居表 为例 : 

             查看邻居表

[r1]display ospf peer

            

            第一行显示 本设备的信息 即 进程 1 , RID 为 1.1.1.1 

            然后 Neighbors 就是展示 邻居的信息了  

            ===>>>

            就是说这个邻居 是在 区域 0 建立的邻居 

            区域 0, 接口 12.0.0.1 (即是 g 0/0/0  这个接口的邻居,这个接口的 IP 是 12.0.0.1 )

           

           邻居的信息  : 

           即 AR1 的邻居,根据拓扑,就可以看到是 AR2  

           RID 为 2.2.2.2          地址为  12.0.0.2  (即与 AR1 0/0/0 这个接口 直连网段对应接口的IP

                                            即 AR2 的 0/0/0 接口IP ) 

          State  :  状态,为 Full 状态,即 邻接关系 ( AR1 与 AR2 为邻接关系 ) ~!! 

          Mode  :   模式的意思, Nbr 就是邻居, 即 邻居是主人 ( 就是 邻居是主 的意思 )

                         即 2.2.2.2 是主人 ( 因为 RID 大呀 ) 

          Priority :  也是 优先级的意思( 先不详解 ) 

          DR, BDR :  也先不解释,后面再讲  

          MTU  : 最大传输单元 ( 显示 值为 0 ,当然这是不可能的,是因为 华为设备默认没有开

                        启 MTU 检测功能,所以  先显示为 0 ) 

         Dead  timer  :   死亡计时器 

         剩下的就是一些 不太重要的参数了 ~!! 

         

          当然,上示也有好多参数我们不太用的到,所以,有个命令可以 简约汇总下 

          查看邻居关系简表  : 

[r1]display ospf peer brief 

          ===>>>

         

          

数据库表 : 

           

              R1

             查看数据库表 

[r1]display ospf lsdb

          

          在之前,我们讲过 数据库表存放的是 LSA 信息, 而 LSA 信息相比于 路由信息,内容是很

          大的,而现在 好像显示的内容不算很多 ~!

          是这样的, 上示 显示的每一行 都是一条 LSA 信息, 有五条 LSA 信息 ; 

          而每一条 LSA 信息 是可以展开的,上示显示的是一个目录而已,并没有显示完整~!! 

          

          而我们要想看每一条LSA展开的信息 

          ===>>>

         

         依旧是 display ospf  lsdb  然后再 Type 类型, 再 Linkstate ID ,这样就查看的是某一条具体

         的 LSA 信息了 ~!! 

         

         里面的细节,我们后面再讲,先清楚 具体某一条 LSA 展开的查询方法 ~!!

      路由表 : 

        R1  : 

[r1]display ip routing-table  protocol  ospf 

          

          可以看到的是, OSPF 的优先级 是 10 ,而静态是 60 , RIP 是 100 

          这就说明 华为设备对 OSPF 的信任 比 对 人的信任都高 ~!! 

         

          Cost  就是 OSPF 的开销 , 在之前就讲过, OSPF 是以 带宽作为 开销值 评判标准

          上示 显示 Cost 是 1, 2 ; 那这个开销值是咋 算出来的呢 ? 

          ===>>>

           那 开销值 是 越大越好,还是越小越好 ;

           肯定是  越小越好; 

           那 带宽 是越大越好,还是 越小越好 ;

           肯定是  越大越好

           ===>>>

           那就是说,要把一个 越大越好的值 给转变成 越小越好  

           那就是 通过 反比例 来转换 ~!! 

           所以, Cost 开销值  :   Cost =  参考带宽 /  真实带宽  

           华为设备 默认 参考带宽 为 100Mbps   ,而这个 默认参考带宽 也是可以人工修改的 ~!

            

           修改默认参考带宽 

           ===>>>

         

         后面的单位 ( Mbits/s )  这个 bits/s 就是 比特每秒 即 bps  前面还有一个 M 即 兆 

         可修改的范围 是  1-2147483648  还蛮大的~!! 

         上示,显示,我们修改的值是  1000  

         因为 默认参考带宽 值较小,在目前传输速率都比较大的情况下,会出现选路不佳的情况,

         可以将参考带宽改大来改善该问题。  

         注意  :  一台路由器 参考带宽修改了,则所有的路由器的参考带宽就都得修改成一样的值

                        因为,要靠这个评判标准( Cost )开销值来选路的,所以要保持 Cost 值 一致~!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于python卷积网络对漫画人物好坏识别-含数据集和代码

数据集介绍,下载本资源后,界面如下: 有一个文件夹一个是存放数据集的文件。 数据集介绍: 一共含有:2个类别,包含:evil, good等。 然后本地的train.txt和val.txt里面存放的是数据集的图片路径和对应的标签。 运行trai…

linux驱动(八):block,net

本文主要探讨210的block驱动和net驱动。 block 随机存取设备且读写是按块进行,缓冲区用于暂存数据,达条件后一次性写入设备或读到缓冲区 块设备与字符设备:同一设备支持块和字符访问策略,块设备驱动层支持缓冲区,字符设备驱动层没有缓冲 块设备单位:扇…

基于python深度学习的颜色识别-含数据集和代码

数据集介绍,下载本资源后,界面如下: 有一个文件夹一个是存放数据集的文件。 数据集介绍: 一共含有:10个类别,包含:black, blue, brown, green, grey, orange, red, violet, white, yellow等。 然后本地的train.txt和…

什么是游戏盾?哪家效果好。

游戏盾是什么呢,很多做游戏开发的客户估计都是听说过的,但是也不是所有的游戏开发者会运用到。因为,游戏盾是针对游戏行业APP业务所推出的高度可定制的网络安全管理解决方案,除了能针对大型DDoS攻击(T级别)进行有效防御外&#xf…

腾讯云com域名注册怎么收费?

腾讯云com域名首年价格,企业新用户注册com域名首年1元,个人新用户注册com域名33元首年,非新用户注册com域名首年元85元一年,优惠价75元一年,com域名续费85元一年。腾讯云百科txybk.com分享腾讯云com域名注册优惠价格&a…

3.postman动态参数、文件上传及断言

一、postman内置动态参数以及自定义的动态参数 postman内置动态参数: {{$timestamp}} 生成当前时间的时间戳 {{$randomint}} 生成0-1000之间的随机数 {{$guid}} 生成随机guid字符串 自定义动态参数: 在请求中pre-req页面下 //手动的获得时间戳 var…

关于索引的最常见的十道面试题

面试题一:索引底层如何实现的? MySQL索引的底层实现是取决于存储引擎的,但是是大部分存储引擎底层都是通过B树实现的,以默认的存储InnoDB为例,底层就是通过B树实现的,如下图所示: B树是一种自平…

NumPy2要来了,但先别急!

B站:啥都会一点的研究生公众号:啥都会一点的研究生 如果你正在使用 Python 编写代码,那么很有可能正在直接或间接地使用 NumPy 如Pandas、Scikit-Image、SciPy、Scikit-Learn、AstroPy…这些都依赖于 NumPy NumPy 2 是一个新的重要版本&am…

网络逻辑示意图工具

现代网络容纳了来自不同供应商的大量设备,支持一系列新技术,并跨越了分布在多个位置的边界,随着网络变得越来越复杂,网络管理员发现越来越难以跟踪网络领域的所有当代进步和发展,这使得网络管理比以往任何时候都更具挑…

Java8的Stream最佳实践

从这一篇文章开始,我们会由浅入深,全面的学习stream API的最佳实践(结合我的使用经验),本想一篇写完,但写着写着发现需要写的内容太多了,所以分成一个系列慢慢来说。给大家分享我的经验的同时&a…

hadoop必记知识点(1)

1.Hadoop是什么,解决什么问题? Hadoop是一个由Apache基金会所开发的分布式系统基础架构。它可以让使用者在普通的硬件上搭建起一个强大的计算集群。Hadoop的特点包括:高可靠性、高扩展性、高容错性、支持大数据和高并发等。Hadoop核心组件包…

python写完程序怎么运行

python有两种运行方式,一种是在python交互式命令行下运行; 另一种是使用文本编辑器直接在命令行上运行。 注:以上两种运行方式均由CPython解释器编译运行。 当然,也可以将python代码写入eclipse中,用JPython解释器运行&#xff0c…

推荐系统|2.4 矩阵分解的目的和效果

文章目录 矩阵分解矩阵分解的必要性和方法隐向量 矩阵分解 矩阵分解的必要性和方法 比如原本是一个 m n m\times n mn规模大小的矩阵,经过分解后可得到两个矩阵一个是 m k m\times k mk,另外一个是 k n k\times n kn,于是总占用空间为 ( m n ) k (mn)\times k…

腾讯云.com域名报价

腾讯云com域名首年价格,企业新用户注册com域名首年1元,个人新用户注册com域名33元首年,非新用户注册com域名首年元85元一年,优惠价75元一年,com域名续费85元一年。腾讯云百科txybk.com分享腾讯云com域名注册优惠价格&a…

【C语言编程之旅 7】刷题篇-函数

第1题 解析 A:错误,一个函数只能返回一个结果 B:正确,将形参存在数组中,修改数组中内容,可以通过数组将修改结果带出去 C:正确,形参如果用指针,最终指向的是外部的实参…

Unity3D学习之UI系统——GUI

文章目录 1. 前言2. 工作原理和主要作用3. 基础控件3.1 重要参数及文本和按钮3.1.1 GUI 共同点3.1.2 文本控件3.1.3 按钮控件 3.2 多选框和单选框3.2.1 多选框3.2.2 单选框3.2.3 输入框3.2.4 拖动条 3.3 图片绘制和框3.3.1 图片3.3.2 框绘制 4 工具栏和选择网格4.1 工具栏4.2 选…

Docker(十一)Swarm mode

作者主页: 正函数的个人主页 文章收录专栏: Docker 欢迎大家点赞 👍 收藏 ⭐ 加关注哦! Swarm mode Docker 1.12 Swarm mode 已经内嵌入 Docker 引擎,成为了 docker 子命令 docker swarm。请注意与旧的 Docker Swarm …

Liunx系统和Window系统有什么区别

在信息技术世界里,操作系统扮演着至关重要的角色,它负责管理和控制计算机硬件与软件资源。Linux和Windows是市面上两个最流行的操作系统。接下来,我们将深入研究这两种操作系统的主要差异。 核心体系结构及源代码访问: 首先&#…

node介绍

1.node是什么 Node是一个基于Chrome V8引擎的JS运行环境。 Node不是一个独立的语言、node不是JS框架。 Node是一个除了浏览器之外的、可以让JS运行的环境 Node.js是一个让JS运行在服务端的开发平台,是使用事件驱动,异步非阻塞I/O,单线程&…

团灭 LeetCode 股票买卖问题

这几道题目是有共性的,我们只需要抽出来力扣第 188 题「188. 买卖股票的最佳时机 IV - 力扣(LeetCode)」进行研究,因为这道题是最泛化的形式,其他的问题都是这个形式的简化,看下题目: 第一题是只…