ospf 提升 二 ---LSA

ospf

ABR和ASBR的区别
官方建议中大型网络的规模参考   根据spf算法   而不是路由器的硬件性能强弱
a ABR最多关联3个区域
b 单区域内路由器最多50台
c 一台运行ospf的路由器 邻接关系的邻居最多60台
 
路由器的角色

  ABR 不同的接口被宣告进不同的区域   其中至少一个接口在area0    所有接口都运行ospf协议

ASBR 不同的接口被宣告进不同的区域  系统边界路由器    除了运行ospf外还会运行其他的某种路由协议  将其他协议 的路由通过重分发的形式引入到ospf域内    必须关联多个区域
可以是ABR     可以是area0内的路由器   也可以是常规区域内非ABR的路由器
 
一 LSA
类型 共11种    常用前7种
  第6类LSA   在单播中不存在    MOSPF    为组播做路由     
第7类LSA   是特殊的nssa类型的    单讲
重点1 2 3 4 5是本节的重点内容
LSA的研究方向
a 传播范围
b 该LSA的通告者   谁产生的
c LSA包含的内容  包含的是拓扑信息还是路由信息
1 router LSAs
  a 在单区域内泛洪 不会通过ABR-----传播范围
b one router LSA (type1) for every router in an area
每个区域内的每台路由器生成一条类型为1的LSA 无论一台路由器有多少个接口宣告进一个区域
都只发送一条1类LSA
identified by the router id of the originating router 
每条1类LSA中的唯一标识符是router id
当在路由器接口宣告ospf域时 举network 192.168.1.1 0.0.0.0 area 0 就会在area0内发送一类LSA
c 包含的内容:单区域内纯拓扑信息  
1 描述该路由器所有的直连的链路列表 这些链路信息是单区域内 不会跨区域
2 链路的前缀 掩码及链路类型
实验
r1 12.1.1.1 255.255.255.0   开启环回口
 router-id  1.1.1.1
network 1.1.1.1    0.0.0.0 area 0.0.0.0
network 12.1.1.1    0.0.0.0 area 0.0.0.0
r2 12.1.1.2 255.255.255.0
router-id 2.2.2.2
network 2.2.2.2  0.0.0.0 area 0.0.0.0
network 12.1.1.2    0.0.0.0 area 0.0.0.0
 
router ospf 110
建立邻居关系    查看路由是否都能得到
 
查看LSDB命令    显示本地的链路状态数据库
show ip ospf database
 

  在图中可以看到有两条1类的LSA   但是在r1和r2上一共宣告了4个接口在area0中
所以结论是无论一个路由器宣告几个接口在一个区域内   都只发送一条1类的LSA报文
区域内所有的LSA信息应该一致所以在r2上的图与此图完全一致
link id   为1类LSA标识    是router -id
adv router   -=====advertise  通告   表明通告者   也就是哪个路由器发出的这个LSA    router-id
age 老化时间   60分钟    从小到大计时
seq 序列号    最初应该是0x80000001
checksum  校验和
link count 链路数量    关于此条LSA共有3条链路   但是宣告时候只有一个环回口和一个物理接口串口
正常是应该有两个  
串口在1类LSA信息  会形成两条链路信息  一条末节网络链路信息   另一条点到点链路信息
所以实际链路是===link count-1

一台路由器如果拥有router-id 并且与其他路由器已经建立邻接关系  
如果想强制修改router-id   一种方式是重新启动     另一种方式是重置路由器ospf进程
router-id *.*.*.*     先修改成需要的值   再清理ospf的进程
clear ip ospf process
 
以上是LSA的摘要信息      
下面介绍1类LSA的详细内容   命令
show ip ospf database router
 
总结:传播范围:  只能在一个区域内传递  不能穿越ABR
  通告者:每台属于一个区域的路由器都会基于该区域通告一条1类LSA
包含内容:拓扑信息    其中描述该路由器所有宣告进该区域的链路的前缀   掩码   网络类型以及度量值
LINK-ID:通告该LSA的路由器的RID
ADV ROUTER :通告该LSA的路由器的RID
 
2.NETwork LSA    网络LSA
 
范围:floods winthin its area only ;does not cross ABR--------区域内  不同穿越ABR
通告者:advertised by the DR of the broadcast network--------DR
内容:one network(type2)LSA for each transit broadcast or NBMA network in an area
includes list of attached routers on the transit link
includes subnet mask of link
MA网段   在单区域内  DR通告一条2类LSA     
有多少个MA网段就会有多少份2类LSA
内容与1类LSA内容一致     都是拓扑信息
包含所有和该MA网段直连的路由器列表   router-id
描述该MA网段的掩码长度是多少位
实验
  定义ip地址     点到点同上实验
MA网段  100.1.1.0   
r1     100.1.1.1
r2  100.1.1.2
宣告network 100.1.1.1 0.0.0.0 area 0
show ip ospf database
 
   
 
现在出现了     net link states   2类LSA
DR    是r2    
adv router   =====r2的id
link id====r2接口的ip地址
缺少link count       在2类LSA中不描述链路逻辑客观信息
详细看信息  
show ip ospf database network
问题1:在上图中再加一r3用串口与r1相连  也在area0中       r3收到100网段的路由   是通过几类LSA获得
答案:1类和2类相加   才能得到路由条目
   形成路由条目的要素   前缀    掩码    度量值
 
 
总结:传播范围   同1类
通告者:MA网段中的DR
包含的内容:纯拓扑信息
该MA 网段直连的所有路由器的RID信息    该MA 网段的掩码
LINK-ID:该MA网段DR接口的ip地址
ADV Router: 该DR的RID
3.summary LSA 默认不汇总   可以汇总
  域间传递的LSA
正常情况下ABR域间传递LSA时不做汇总
传递范围:除了关于这些路由产生的区域之外的所有其他的ospf路由选择域
area1产生的由abr1传到area0和area2
通告者:ABR
内 容:纯路由信息
一台ABR 收到多条1类LSA   2类LSA   从而形成多条路由    ABR分别针对每条域间路由生成一条3类 LSA 发到其他区域
 
实验:

  r1   s1/0    13.1.1.1 255.255.255.0

                                                     network 13.1.1.1 0.0.0.0 area 1

                                   r3     s1/1 13.1.1.3 255.255.255.0

                                            loopback 3.3.3.3 255.255.255.0

                                                     network 13.1.1.3 0.0.0.0 area 1

                                                     network  3.3.3.3 0.0.0.0 area 1

                                   此时r3不会收到area0中的1类和2类LSA

                                   查看路由表

                                   显示show IP route

                                           

                               路由表中显示的是O IA   表示ospf   inter area    域间路由

 

Show ip ospf database

ADV ROUTER   为r1的router-id

Link-id   =====    域间路由条目前缀         4条3类LSA

 显示3类LSA详细内容

Show ip ospf database summary

r1通告的r1环回口的 1.1.1.1 /32 metric 1
r2的环回口 2.2.2.2/32 metric11
r1-r2串口 12.1.1.0 /24 metric 64
  r1-r2MA网段 100.1.1.0 /24   metric 10
 
     r1#show ip ospf database
会显示area0的1类LSA      2类LSA    3类的LSA(原因ABR会将area1的路由传递给area0)  共两条3的环回口和13 网段
area1的1类LSA     3类LSA
  每个ABR关于每个区域维护一张独立的LSDB
 
总结:传播范围:除了该区域外的整个ospf路由选择域
通告者:ABR
内容:一条3类LSA包含一条ospf域间路由     O IA
LINK-ID:3类LSA路由的前缀
ADV ROUTER:ABR的RID   3类LSA在ospf路由选择域内传递的时候为了保证可达性   每跨越一个ABR都会 自动改写为该ABR的RID
 
 
 
5.EXTERNAL LSA 外部LSA
 
  实验

  在以前的图中再加入r4  和r5
r4   s1/0   ospf    24.1.1.2 255.255.255.0
loopback0   4.4.4.4    255.255.255.0
fa0/1 24.1.1.4  255.255.255.0
r5 fa 0/0    eigrp 45.1.1.5 255.255.255.0
loopback 0 5.5.5.5   255.255.255.0
 
 
r5#router  eigrp 90
no auto-summary
network  5.5.5.5 0.0.0.0
network 45.1.1.5 0.0.0.0
此时查看r4的路由条目   其中有O IA和D 标记的路由  
r2上验证   ABR和ASBR
r2#show ip ospf  border-routers
此时未显示r4的信息
ASBR   满足的条件   1 . 运行多协议  2.重分发
 
r4#router ospf 110
redistribute eigrp 90 subnets
再次在r2上 show ip route  出现了O E2的路由  即外部引入的路由条目
r2#show ip ospf  border-routers    会出现r4为ASBR的信息
r4#show ip ospf database
会出现5类的LSA信息   不会和任何区域关联   相较之前的字段  多出了tag字段
tag字段的意义      阿拉伯数字   默认为0   举例在route map抓包时   可以抓取Tag标签的路由条目  
而不是前缀
 
r4#show ip ospf database external   显示详细内容
 
总结  5类   
传递范围:整个ospf路由选择域
通告者:ASBR
内容:纯路由信息  一条ospf域外路由对应一条5类LSA
link-id    域外路由的路由前缀
ADV Router:ASBR 的RID    该LSA在ospf域内传递的时候     ADV Router值不会发生任何改变  
r2通过show ip ospf database router 1类LSA 可以看出r4是ASBR
1类LSA报头中的2个bit   一个是B位     另一个是E位   单区域中通常都置0 ,但是当一台路由器连接多 个区域的时候,形成ABR时候   B位会置位   显示   area border  router   ;r4的通告信息会显示  AS BOUNDARY  ROUTER  E位置位
r2能知道r4是ASBR    但是r1和r3由于收不到r4的1类LSA的信息   所有1和3不知道r4是ASBR
由此出现了4类的LSA
4 .Summary  ASB  LSA
 
 
实验    同5实验图
r4#show IP ospf database
area2中  有1类  3类      5类
r2#show IP ospf database
area2中有1类   3类   5类
area0有summary ASB link   states   此为4类LSA
#show ip  ospf    database  asbr-summary
r1#show IP ospf database
其中的area0中的4类LSA与r2上看到的一样
但是在area1中的4类LSA的ADV Router变成了R1   link-id没有变化
结论:传递范围    除了ASBR所在的区域之外的整个路由选择域
通告者 和ASBR在同一个区域的ABR的路由器
包含内容  纯拓扑信息   描述了ASBR所在的位置
LINK-ID   ASBR的RID
ADV Router   通告者ABR的RID   并且该值每跨越一个ABR都会自动改变   同3类LSA
 
 
总结     1类 和2类LSA形成的路由是O标记的标准域内ospf路由
3类形成的路由是O IA  的域间路由
5类形成的路由是O E1或者O E2(缺省)的   域外路由
 
6.O E1和O E2路由的区别
r2#show ip route
 
从图中可以看到 O O IA O E2标记的路由条目中的管理距离和度量值
r1#show IP route
   在r1和r2中  的O E2标记的到5.5.5.0的度量值都是20     没有变化
同理在r3上的度量值也是20     也就是度量值不累加   由于此路由是eigrp协议引进ospf域内的  计算度量值的方法不同  所以强制设置一个度量值  此度量值不变   称为seed  metric   种子度量值   
种子度量值     :对于ospf    将bgp路由重分发进入   则seed  metric默认为1    所有其他外部路由缺省seed metric是20.
将OE2修改为OE1的方法
1.在通告者(ASBR)上修改   r4 做重分发时修改
2.命令
r4#router ospf 110  110为ospf 进程号
#redistribute eigrp 90 subnets metric-type 1      90为eigrp进程号
3.查看r2# show IP ospf database external       metric type 变为1
show IP route       OE2变为OE1
但是度量值20变为84
ospf   度量值===控制层面路由流向入接口的度量值累加   
默认20未变    r2的s1/1  串口为10的8次方/1544000==64    所以度量值为20+64=84
r1的s1/1接口度量值为84+10=94
r3的s1/1接口度量值为94+64=158
 
所以 1关心内网路径好坏时候使用OE1             2 内网小  不需要判断路径好坏  则使用OE2
 
4.修改种子度量值的方法
r4#router ospf 110
#redistribute eigrp 90 subnets metric-type 1 metric 100 tag 20
其中的100是修改后的度量值        tag 20表示给此路由条目加上一个标识   便于高级工具抓取  做策略
查看r2#show ip ospf database
或者#show ip route
查看路由条目明细  #show  IP route  5.5.5.0 255.255.255.0  
 
7.路由的汇总和聚合及特性
域间汇总需要在ABR上部署   实现对3类LSA的汇总传递   
域外汇总需要在ASBR上部署   实现对5类LSA的汇总传递
a 域间汇总
  要求:在r1上增加的4个网段    202.10.8.0-202.10.11.0/24   实现汇总
命令:开启4个环回口   主机位设置为1
loopback5  202.10.8.1
loopback6  202.10.9.1
loopback7  202.10.10.1
loopback8  202.10.11.1
 
同时宣告4个环回口进入ospf
router ospf 110
network 202.10.8.0   0.0.3.255 area 0
在r1上将4个loopback类型网络还原成自然掩码   
int loopback 5
IP ospf network point-to-point
同理6 7 8 一样设置
在r2和r3上验证
show IP  route  ospf
在r1上做汇总    汇总命令与rip与eigrp的区别  前者是链路级别    后面的两个是接口级别
r1#router ospf 110         
#area 0 range 202.10.8.0 255.255.252.0       只是针对3类LSA做的汇总
域间汇总完成   此时r3中show IP ospf database中显示的汇总的路由    但是在r4上显示的同样是明细路由并没有汇总   原因是r2与r1直连能够收到4条明细路由   此时r2作为ABR同样把4条路由转换成3类LSA 明细路由 传递给其他区域     如果想在所有区域内都收到汇总的路由  建议将区域中的所有ABR都做路由汇总  
所以r2同样需要汇总
r2#router ospf 110
#area 0 range 202.10.8.0 255.255.252.0
 
域间汇总的参数
area 命令中有3个参数
advertise     (default)
cost 度量值    可以修改   体现ospf的高可控性
例如     area 0 range 202.10.8.0 255.255.252.0   cost  36   就将度量值修改成36  再发送出去
not-advertise      汇总之后不通告    可以用于路由过滤   明细和汇总路由都被抑制
举例1   area 0 range 202.10.8.0 255.255.252.0 not-advertise
在r3上show ip route ospf之后会发现汇总路由消失了
举例2   如果想实现抑制8.0和9.0的路由条目  但是放行10.0和11.0的的路由条目
可以将前两个汇总成一条路由    not-advertise       202.10.8.0   255.255.254.0
后两个汇总成一条路由   默认通告即可 202.10.10.0   255.255.254.0
即可实现路由的过滤 繁琐不建议
题外话   路由过滤的方式简介  使用前缀列表抓取
要求同上   过滤8 9     放行10和11
r1#ip prefix-list 10 seq 10 deny  202.10.8.0/23 ge 24  le 24   拒绝这些路由
#ip prefix-list 10 seq 10 permit 0.0.0.0/0 le 32   放行所有路由
#router ospf 110
#area 1 filter-list prefix 10 in 
然后在聚合
r1#area 0 range 202.10.10.0 255.255.254.0 
b 域外汇总
需要在ASBR上做
 
r5开启loopback5-8   4个环回口   并且汇总
ip地址分别对应  192.168.8.0/24        9.0       10.0       11.0
r5#router eigrp 90
#network 192.168.8.0 0.0.3.255 
在r4上查看     #show  ip route   eigrp  90  可以看到明细路由
r4#router   ospf  110
#summary-addreess    192.168.8.0 255.255.252.0   
会生成指向null0接口的汇总路由
在r2和r1上都可以看到此汇总路由
 
OSPF  LSDB OVERLOAD PROTECTION
LSDB过载保护     主要用于性能不高的路由器     过载保护
  实验略

 
修改OSPF度量值
#ip ospf cost  interface-cost
默认是10的8次方除以接口带宽
#int serial 1/1
#IP ospf cost 66    将度量值修改为66
***比较重要的命令   auto-cost   reference-bandwidth  ref-bw
10的8次方  相当于带宽的百兆     当网络内千兆和万兆时度量值都是1    无法区分更好的路径
所以需要修改计算公式中的分子的大小   即将10的8次方改大     改成10次方或更多
命令
r3#router ospf 110
#auto-cost reference-bandwidth 100    其中100是缺省值
可以将100改为10000    即万兆  
所以如果接口为百兆则度量值为100
千兆度量值为10
万兆度量值为1
所以路径好坏  可见
但是要注意在ospf中   进程级别和接口级别都可以配置度量值     接口级别的优先级比进程级别的优先级 更高    所以上面的例子中   r3#show IP  ospf interface   查看   cost没有变化
需要先去掉接口级别的度量值修改    no IP ospf cost 66    然后才能看到cost的值已经改变
原文地址:https://www.cnblogs.com/dongguolei/p/7902632.html