ospf的路由更新和撤销总结
首先ospf 的报文有:
hello报文,主要作用ospf 邻居建立及维护。
dd报文,主要作用主从选举,序列号主从的确认,mtu的协商(可选)。
lsr 报文,主要作用向邻居请求lsa。
lsu报文,主要作用通告和维护ospf的lsdb。
lack 报文 主要作用确认回复通告报文。
那么ospf的路由更新和撤销主要通过ospf的lsu报文,接受者并回复ack确认报文。接受者也会向其他邻居进行lsdb的同步,那么他会检查自己的lsdb是否拥有这条lsa如果没有记录下来进行lsu的通告。如果lsdb数据库已经拥有这条lsa那么将重置计时器。
接下来做个试验验证一样,通过抓包分析。
试验环境如上图,
1、测试ospf路由的更新。
R5通告了一条lsu的报文,R6收到lsu报文后立刻回复lack报文,R6收到更新报文后即刻回复lack确认报文。那么R6会向邻居发送lsu报文同上见下图。
关于lsu 和ack报文如下,首先是ospf 的头部,然后是ospf lsu的内容,内容为lsa的头部及lsa的内容,其中需要关注的是lsa的age 时间为1,序列号和校验和。这个是确认lsa的新旧。
R6收到lsu后回复lack确认报文,所有ospf的更新撤销报文是可靠机制的,有一个确认机制。报文如下:
R6检查自己的lsdb数据库中没有这条lsa,那么向其他邻居进行lsdb的同步。
2、测试ospf 的路由撤销
在R5上通过und network 5.5.5.5 模拟撤销这条路由,通告抓包分析路由是如何撤销的。那么R5也会向路有跟新一样发送lsu更新报文,R6收到更新报文后即刻回复lack确认报文。那么R6会向邻居发送lsu报文同上。具体见下图;
R6发送lsu更新lsdb,并设置老化时间为3600S,对方路由器收到后会删除该路由条目。
ospf的路由更新和撤销总结的更多相关文章
- quagga源码学习--BGP协议路由更新
BGP的核心就是交换路由,所以关键的部分还是在路由的更新与撤销上面,这之间包含了冗长的属性,community等等处理过程,不做详述. bgp_read函数是路由更新的事件处理函数,在收到BGP_MS ...
- (转)示例化讲解RIP路由更新机制
目录(?)[+] 以下内容摘自最新上市的“四大金刚”图书之一<Cisco路由器配置与管理完全手册>(第二版)(其它三本分别为<Cisco交换机配置与管理完全手册>(第二 ...
- 两台三层交换机单区域OSPF动态路由实验
一. 实验目的 1. 掌握三层交换机之间通过OSPF协议实现网段互通的配置方法. 2. 理解RIP协议和OSPF协议内部实现的不同点 二. 应用环境 当两台三层交换机级联时,为了保证每台交 ...
- HCNP Routing&Switching之OSPF外部路由类型以及forwarding address
前文我们了解了OSPF的4类.5类LSA,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15222969.html:今天我们来聊一聊外部路由类型和forward ...
- vue 路由更新页面视图未更新问题
最近项目做面包屑的时候遇到一个问题就是路由变化的时候页面视图并没有发生变化,后来上网查,发现是vue-router的特性导致的. vue-router的切换不同于传统的页面的切换.路由之间的切换,其实 ...
- 自定义npm包的创建、发布、更新和撤销
大纲 1.准备2.自定义npm包3.发布自定义npm包4.引用npm包5.更新npm包6.撤销发布的npm包 简书原文 https://www.jianshu.com/p/d737bc5df5b7 1 ...
- 解决win10无法完成更新 正在撤销更改
删除Windows 更新缓存文件按Windows+X,选择“命令提示符(管理员)”:输入:net stop wuauserv,回车(此处会提醒服务停止):输入: %windir%\SoftwareDi ...
- Win10更新补丁失败后出现无法更新正在撤销 解决办法
系统更新失败,反复重启还是不行,那是不是下载下来的补丁没用了呢??所以我们先要删除Windows更新的缓存文件!在做以下操作之前,首先我们要确认系统内的windows update & BIT ...
- ospf动态路由配置(单区域)
命令: Router(config-router)#network 目标网络号 反子网掩码 area 区域号 示例: Router(config-router)#network 10.2.2.0 0. ...
随机推荐
- 使用awk格式化输出文本
注意:本文并不是一篇awk入门文章,而是偏重实例讲解 awk借鉴了c语法,因此awk在许多地方还保留有c语言的痕迹,比如printf语句:for,if的语法结构等 介绍 最简单地说,AWK 是一种用于 ...
- centos源码编译安装新版本内核
在工作中,很多时候由于需要使用新的技术方案,需要较新版本的内核来支持新的功能,而centos系统自带的内核版本普遍都比较旧,因此我们需要对系统的内核进行升级,安装新版的内核.本文以centos7系 ...
- SaltStack--使用salt-ssh
SaltStack使用salt-ssh模式 salt-ssh 介绍 参考官档 salt-ssh是 0.17.0 新引入的一个功能,不需要minion对客户端进行管理,也可以不需要master:salt ...
- 基于gin框架搭建的一个简单的web服务
刚把go编程基础知识学习完了,学习的时间很短,可能还有的没有完全吸收.不过还是在项目中发现知识,然后在去回顾已学的知识,现在利用gin这个web框架做一个简单的CRUD操作. 1.Go Web框架的技 ...
- live555流媒体框架介绍
LIVE555 Streaming Media This code forms a set of C++ libraries for multimedia streaming, using open ...
- 用Python打造了一个渗透测试暴力探测器
资源探测的作用 通过资源探测,我们可以在目标系统中发现文件.目录.活动.服务还有相关的参数,为下一步的行动提供信息参考. 一个开源的模糊测试数据库 https://github.com/fuzzdb- ...
- Java实现List自定义排序
废话不多说,直接上代码 import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; i ...
- [React] Fix "React Error: Rendered fewer hooks than expected"
In this lesson we'll see an interesting situation where we're actually calling a function component ...
- 【C/C++】指针
指针定义 指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址.就像其他变量或常量一样,必须在使用指针存储其他变量地址之前,对其进行声明.指针变量声明的一般形式为: type *var-na ...
- BZOJ 5306: [Haoi2018]染色 二项式反演+NTT
给定长度为 $n$ 的序列, 每个位置都可以被染成 $m$ 种颜色中的某一种. 如果恰好出现了 $s$ 次的颜色有 $k$ 种, 则会产生 $w_{k}$ 的价值. 求对于所有可能的染色方案,获得价值 ...