4.0【OSPF】NP十二班第六天OSPF其它LSA详解&域间汇总及过滤-2

OSPF其它LSA详解&域间汇总及过滤

域间汇总

在OSPF里面有两种角色可以做汇总:

1.ABR:可以生成3类,针对3类域间路由做汇总

2.ASBR:生成5类,可以对外部路由做汇总


【实验配置】2:20

在R1上创建lo0口宣告进OSPF,ABR会针对这条链路信息通告一个3类LSA

在R1上看这条链路是否被宣告进OSPF:

show  ip ospf database router self-originate

逻辑接口/物理接口但没有邻居关系,会被通告成stub network 末节网络


在lo 1口下配置的是24位掩码地址,宣告的时候宣告成32位了,这是为什么?




 因为网络类型为LOOPBACK,这个网络类型在RFC中没有定义过,RFC中只有5种网络类型,思科私有。OSPF里面会认为所有的LOOPBACK都是一个主机地址,通告的时候都通告成32位的主机地址。在华为里面没有LOOPBACK网络类型,在华为里面是点到点网络类型。

那如何去通告一个24位的路由?

更改网络类型,把LOOPBACK改成点到点或者广播网



 再去看router LSA,变成24位

默认是LOOPBACK的会宣告成32位的,会造成标签分错,需要改成正确的掩码



在ABR上针对lo0和lo1口的这两条路由做一个汇总,汇总成16位的

9:36

路由汇总

数路由的公共位就可以了,不一样的位置全部填充为0

在R2上做路由汇总

链路信息来自于区域0,需要针对区域0的链路信息做一个汇总,通告一个汇总的3类LSA,前缀 1.1.0.0   255.255.0.0

router ospf 1

area 0 range 1.1.0.0  255.255.0.0

R3上现在只变成一条路由,在OSPF上如果做了汇总会抑制明细路由;汇总以后只通告汇总路由而不通告明细路由

针对路由汇总做路由过滤



 在R3上面没有这条路由

LSA的删除



 在OSPF里面,如果想取消或者撤销掉这条LSA通告,把LSA时间加成3600然后删除(1类LSA除外),1类LSA只能通过序列号删除,只能由始发者操作


通过汇总命令行实现一个路由的过滤:

如果只针对一条明细做过滤,只想过滤1.1.1.1同时放行1.1.2.0?

area 0 range 1.1.1.1 255.255.255.255 not-advertise


将3条链路信息做个汇总,Metric值都不一样,分别是10、100、200,如果汇总成一条,这条汇总的Metric值怎么算?

华为汇总的路由Metric值,选 最大的一个链路信息的Metric值

思科中域间汇总路由的Metric值等于最小链路的Metric值加1

*******************************************************

路由过滤

27:49

OSPF的路由过滤:

1、针对LSA(ABR、ASBR)

2、针对路由(所有设备都可以)

ABR-3类LSA

ASBR-5类LSA

过滤可以在区域0里面做,也可以在区域1里做,方向不一样

针对1.1.1.1做一个过滤



 area 0 filter-list prefix    通过前缀列表匹配路由条目,前缀列表只能匹配路由不能匹配流量

分两段匹配:

1.先匹配前缀

2.再匹配掩码

ge-大于等于多少

le  -小于等于多少

ip prefix-list ccie permit 1.1.0.0/16 ge 32 le 32   //匹配32位路由



 查看:show ip prefix-list

在area 0里面,ABR汇总,汇总成3类LSA,针对区域0是出out方向,针对区域1是in方向

在区域0里面配置filter-list

area 0 filter-list prefix ccie out

查看前缀列表:

show ip prefix-list



 1.1.1.1的3类LSA没有


show  ip ospf database

1、ABR上使用filter-list过滤3类LSA, filter-list只能适用于ABR设备。

router ospf 1

log-adjacency-changes

area 1 filter-list prefix ccie in \\filter-policy的方向区分:链路信息的来源区域属于OUT方向,而生成后的3类LSA的通告区域属于IN方向。


针对路由过滤 (分发列表)


通过分发列表来做过滤,分发列表是可以绑定多个工具的



 

R3上面有个1.1.2.0 ,过滤这条路由条目可以用分发列表

分发列表是针对于路由条目来做过滤的和LSA没关系

distribute是针对路由条目来做过滤的

OSPF是先收LSA,根据SPF算法计算最短路径计算路由,把路由放到RIB表里面。在加RIB表的时候执行了一次distribute-list,方向是依据路由表判断的。参考物是路由表


 加表-IN 方向(针对路由表来说是IN方向)

出路由表,重分发-OUT方向(ASBR的过滤)


通过分发列表可以在所有的OSPF设备上执行路由过滤,判断分发列表的使用方向需要参考路由表,如果是将路由条目放入到路由表,就是IN方向,如果是从路由表重分发到路由协议,就是OUT方向。


用ACL作过滤:

//通过ACL匹配路由条目

access-list 1  deny   1.1.2.0   0.0.0.255

access-list  1 permit  any         //放行其他


//在进程下面调用distribute-list

router ospf 1

distribute-list 1 in  




R2上已经过滤了1.1.2.0的路由条目,R2是否还会向区域·1发送一条1.1.2.0的3类LSA?

本地已经做了路由过滤了,R2不会再通告3类LSA

如果在ABR上针对这条路由做了一个distribute-list路由过滤,在ABR的路由表里面是不存在这条路由条目的,由于ABR上不存在路由条目,这条路由就不应该生成3类LSA通告给区域1;区域1的所有路由器想到达域间路由的话,必须要走ABR,3类LSA通告者是ABR,需要先把这个报文交给ABR,ABR才能转发给目的地址;现在ABR都没有路由条目发3类LSA完全没有意义。

过滤的话,如果在3的话完全没有任何影响。


思考题是针对5类LSA

链路状态ID通告的是一条外部路由前缀:

如果在一台路由器上面配置两条静态路由,掩码不一样路由前缀是一样的。

1.1.1.0/30

1.1.1.0/24

把这两条路由条目全部重分发进OSPF,它会通告几条LSA? 2条5类LSA,链路状态ID是否是一样的?

由于头部是一样的,

把两条静态路由重分发进ospf:

router ospf 1

redistribute static subnets



 show ip ospf database



 Link ID不一样,Link ID在5类LSA中是用来通告路由前缀的,实际上不会将两条5类LSA的Link ID配置成一样的,对方收到LSA以后会比较头部信息,Link ID和ADV Router(通告路由器)都一样 ,对方会认为是一条,这样就有问题,重分发的时候1.1.1.0/30是用广播地址(1.1.1.3)作为前缀地址去通告的,由于头部是一样的没有办法去区分路由条目,需要这样去做一个区分

开启0子网:ip subnet-zero   //0子网

no ip subnet-zero            //关闭0子网功能

192.168.0.0/24

192.168.0.0/30

如果不携带掩码长度的话,192.168.0.0/30对方肯定会认为这是一个主类网段,会和192.168.0.0/24造成冲突,子网的0.0和主类的0.0不能区分开来;如果是192.168.0.4/30不会造成冲突;这时开启ip subnet-zero就可以应用0子网

子网掩码的最大长度:

广播网:30

串口  (点到点)   :31

来自为知笔记(Wiz)

附件列表

4.0【OSPF】NP十二班第六天OSPF其它LSA详解&域间汇总及过滤-2

原文地址:https://www.cnblogs.com/xuxaut-558/p/11298229.html

时间: 2024-11-29 08:20:54

4.0【OSPF】NP十二班第六天OSPF其它LSA详解&域间汇总及过滤-2的相关文章

3.2【OSPF】NP十二班第二天-OSPF邻居状态机及邻居建立1

OSPF邻居状态机及邻居建立 控制层面:RIB表 转发层面:FIB表 Hello报文的作用:发现建立和维护邻居关系 \\Hello报文里的字段 option选项在哪些报文中存在? 1.Hello    2.DBD   3.LSA OPtion选项: DN比特位 DN比特位(宕比特位)置位如何防环 运营商和客户路由重分发造成环路 把OSPF重分发进BGP很可能造成环路 通过DN位解决,如果DN位置位了,这条路由本地是不能做选路的,同时也不会重分发进其他的协议 DC位 按虚电路:需要的时候才建立虚电

3.5【OSPF】NP十二班第四天-OSPF接口状态机及DR和BDR选举-1

OSPF接口状态机及DR和BDR选举 OSPF协议:<TCP/IP协议卷一><OSPF和IS-IS详解>   研究OSPF这本书好,建议读, 比卷一还好:   通过上课入门,课后探讨,多 动手实验:自学重要   通过什么方式以什么方式记得更牢? 1.隔一段时间经常复习 2.当个讲师把理论知识好好沉淀 华为面试一次5000块钱 什么情况下一边down一边Init状态? Init状态:初始化状态:收到hello报文并且检测通过了 通过ACL可以过滤IP包,一端拒绝所有的接收报文但是可以

Python之路【第十二篇续】jQuery案例详解

jQuery 1.jQuery和JS和HTML的关系 首先了HTML是实际展示在用户面前的用户可以直接体验到的,JS是操作HTML的他能改变HTML实际展示给用户的效果! 首先了解JS是一门语言,他是运行在浏览器上的. jQuery是什么呢?他是对JS进行了封装,成了一个类库,就类似于python中的类,我们用的时候直接掉类库了就行了非常方便.比如paramiko模块,我们要使用paramiko就得学习里面的方法. 2.jQuery分为的几部分 ------找 ----选择器 ----筛选器 -

记内大EMBA总裁班十二班返校周草原消夏活动

"因为我们今生有缘,让我有个心愿:等到草原最美的季节,陪你一起看草原......"2014年7月5日下午5点钟,刚刚参加完当天上午举行的"内蒙古大学总裁教育中心5周年庆典表彰"的总裁12班同学们带着获奖后的喜悦心情,在聆听完当天下午中央电视台特约评论员杨禹先生的<当前宏观经济形势及深化改革态势分析>的精彩课程后,应12班呼市同学会的热情邀请,来自包头.鄂尔多斯.巴盟.乌海各地近40位老师.同学们,一路欢歌乘车前往著名旅游景点-内蒙古乌盟察右中旗辉腾锡勒草

OSPF详解之三:OSPF LSA详解

OSPF LSA详解 OSPF V2版本中常用的主要有6类LSA,分别是Router-LSA.Network-LSA.Network-summary-LSA.ASBR-summary-LSA.AS-External-LSA.NSSA-LSA,接下来我将一步一步为大家解析. Type 1:Router-LSA 每个设备都会产生,描述了设备的链路状态和开销,在所属的区域内传播. 谈到1类LSA,大家必然会想到它的链路类型,链路类型分为4类:P2P.Stub.Transit.Vritual link.

18、OSPF配置实验之域间汇总和域外汇总

1.域间汇总.域外汇总解析 2.实验拓扑 3.实验配置 R1配置 interface Loopback0 ip address 1.1.1.1 255.255.255.0 interface Serial0/0 ip address 12.1.1.1 255.255.255.0 interface FastEthernet1/0 ip address 120.1.1.1 255.255.255.0 router ospf 110 router-id 8.8.8.1 network 1.1.1.0

Swift研究之编程高级教程(二)属性,存储属性详解

 属性 属性是依赖于某个特定的类.结构体或者枚举类型的值.Swift有两种属性:存储类型和计算类型.其中存储类型可以作为实例的一部分存放变量或者常量的值,而计算类型的属性值是通过运算的来的.计算类型的属性可以在类.结构体和枚举类型中出现,但存储类型只可能出现在类和结构体类型中. 属性一般依赖于一个特定类型的实例,但是也可以依赖于类本身.依赖于类型本身的属性称为类型属性. 可以定义属性观察者来监督属性值的改变,从而作出响应.对集合不明白的看集合类型-数组详解 存储属性 常量属性let的值在初始

Storm专题二:Storm Trident API 使用详解

一.概述 Storm Trident中的核心数据模型就是"Stream",也就是说,Storm Trident处理的是Stream,但是实际上Stream是被成批处理的,Stream被切分成一个个的Batch分布到集群中,所有应用在Stream上的函数最终会应用到每个节点的Batch中,实现并行计算,具体如下图所示: 在Trident中有五种操作类型: Apply Locally:本地操作,所有操作应用在本地节点数据上,不会产生网络传输 Repartitioning:数据流重定向,单纯

JavaScript正则表达式详解(二)JavaScript中正则表达式函数详解

二.JavaScript中正则表达式函数详解(exec, test, match, replace, search, split) 1.使用正则表达式的方法去匹配查找字符串 1.1. exec方法详解 exec方法的返回值 exec方法返回的其实并不是匹配结果字符串,而是一个对象,简单地修改一下execReg函数,来做一个实验就可以印证这一点: function execReg(reg, str) { var result = reg.exec(str); alert(typeof result