OSPF解决不规则区域:
双向重分布:
在ABR上起不同OSPF进程,进行OSPF之间的重分布。
例如:R1的s0口在area 1中,进程号是10,s1口在area 2中,进程号是20,然后相互重分布
router ospf 1
router-id 3.3.3.3
log-adjacency-changes
redistribute ospf 2 subnets
network 23.0.0.0 0.0.0.255 area 1
network 200.0.0.0 0.0.255.255 area 1
!
router ospf 2
router-id 33.33.33.33
log-adjacency-changes
redistribute ospf 1 subnets
network 34.0.0.0 0.0.0.255 area 2
Tunnel:
tunnel 只要在区域的两个边界上配置
R2: R3:
Int tunnel 1 int tunnel 2
Tunnel source s1 tunnel source s1
Tunnel destination 12.1.1.2 tunnel destination 12.1.1.1
Ip add 100.1.1.1 255.255.255.0 Ip add 100.1.1.2 255.255.255.0
Router ospf 10 router ospf 10
Net 100.1.1.0 0.0.0.255 area 0 net 100.1.1.0 0.0.0.255 area 0 (起地址的原因就是需要把tunnel的地址宣告到area 0中)
虚链路:
虚链路的使用规则:
1.必须配置在两台ABR之间
2.配置虚链路所经过的区域必须拥有全部的路由,这样才能打通通道(又叫传送区域)
3.传送区域不能是末梢区域
注意:虚链路是属于area0的,是点到点的链路
最简单的方法,只需在区域的两台边界路由器上配就可以了
R1:
router ospf 110
area 1 virtual-link 2.2.2.2
(中转区域) (对方Router-ID)
为什么虚链路打上RID,但没有RID路由就能通信?
因为都在同一区域 双方已知对方的RID通过查看本地的LSDB 找到路由 通过一类LSA
·注意:虚链路只在建邻居时发送hello包,当邻居关系建立后,不再发送hello包。并且LSA是触发更新且不老化的。这个特性被称为DNA(DoNotAge)。
OSPF汇总:
汇总要考虑四点:
1.基于接口还是基于进程 基于接口的有EIGRP和RIP
2.一旦做了汇总 本地汇产生一个这个汇总路由 指向空接口
3.所有明细路由都消失的时候 汇总路由才消失
4.汇总路由COST值取所有明细路由的最小值 因为同一个区域所有路由器都有相同的LSDB 不可能有域内汇总
域内汇总:
只能在ABR上做,用来将一个区域的路由传递到另一个区域时进行汇总。域间汇总只能对打O的路由做汇总
(config-router)#area 0 range 10.0.0.0 255.255.255.0 ?
advertise Advertise this range (default)
cost User specified metric for this range
not-advertise DoNotAdvertise this range
默认会产生一条防环路由。
这条路由称为discard-route
(config-router)#no discard-route ?
external Discard route for redistributed summarised routes
internal Discard route for summarised internal routes 去除此防环路由 选择去除域×××总或域间汇总产
<cr>
生的默认路由
域×××总:
只能在ASBR上做,用于将外部路由重分布进OSPF时进行汇总
(config-router)#summary-address 10.0.0.0 255.255.255.0 ?
not-advertise Do not advertise when translating OSPF type-7 LSA
tag Set tag
OSPF区域中下放默认路由
1.同样 要确保本地有这条路由 进程中 defult-information originate下放的为5类的LSA COST值为1
2. defult-information originate always 在本地没有默认路由的时候 也可以去强行下发默认路由 用于本地没有默认路由 但是数据要从此路由出去(本路由器与外界并非默认路由相连)
两种方法的目的不同点在于 第一种 通过默认与外界连接 要有默认 ip route 0.0.0.0 0.0.0.0 serial 1/0(连接外网接口)
而第二种不一定 同样也有Seed值 和E1 E2的选项
OSPF认证:
从认证强度上来说OSPF支持明文和MD5
从应用方式上来说1.链路认证2.区域认证3.虚电路认证
链路认证(明文):
(config-if)#ip ospf authentication-key wolf
(config-if)#ip ospf authentication
链路认证(密文):
(config-if)#ip ospf message-digest-key 1 md5 wolf
(config-if)#ip ospf authentication message-digest
区域认证(明文):
(config-if)#ip ospf authentication-key wolf
(config-router)#area 1 authentication
区域认证(密文):
(config-if)#ip ospf message-digest-key 1 md5 wolf
(config-router)#area 1 authentication message-digest
虚链路认证(明文):
(config-router)#area 1 virtual-link 10.0.0.1 authentication-key wolf
(config-router)#area 1 virtual-link 10.0.0.1 authentication
虚链路认证(密文):
(config-router)#area 1 virtual-link 10.0.0.1 message-digest-key 1 md5 wolf
(config-router)#area 1 virtual-link 10.0.0.1 authentication message-digest
在哪启用密钥 在哪声明
链路 接口 接口
区域 接口 进程
虚电路 进程 进程
这个图中,在R2,R3之间打通虚链路。在R2,R3上开启区域认证,在R2上开启虚链路的明文认证,清除OSPF进程,在R2上看OSPF邻居
R2:
area 0 authentication
area 1 virtual-link 3.3.3.3 authentication-key wolf
R3:
area 0 authentication
现象:
Neighbor ID Pri State Dead Time Address Interface
3.3.3.3 0 FULL/ - - 23.0.0.3 OSPF_VL0
3.3.3.3 0 FULL/ - 00:00:35 23.0.0.3 Serial1/1
R2(config-router)#do clea ip os p
Reset ALL OSPF processes? [no]: y
R2(config-router)#do show ip os nei
Neighbor ID Pri State Dead Time Address Interface
3.3.3.3 0 FULL/ - 00:00:38 23.0.0.3 Serial1/1
R3上开启认证:
R3(config-router)#area 1 virtual-link 2.2.2.2 authentication-key wolf
sys log :
*Oct 21 19:23:27.695: %OSPF-5-ADJCHG: Process 1, Nbr 2.2.2.2 on OSPF_VL0 from LOADING to FULL, Loading Done
注意:虚链路接口是area0的,所以在R2,R3上区域认证开启的是area 0 的,虚链路认证是在虚链路命令后面跟进的。
区域认证跟接口认证可以协商通过,因为区域认证相当于开启了所有接口的认证。接口认证优先于区域认证,在同时有区域认证和接口认证的情况下,则使用接口的认证进行协商。(接口命令都优于进程命令) 因为接口只能调用密文或明文其中一种,所以没有密文优于明文的概念。
在有虚链路的情况下,如果Area0启动认证,起了Virtual-Link的两台路由器上也要启动区域认证。
注意:虚电路上只在刚开始建立邻居关系的时候发送hello包,之后不再发送hello包。所以做这个试验之后要重置邻居关系
关于做MD5认证时的KEY-ID值:
当链路需要换密码时,为了防止链路抖动,可以使用Key ID来实现平稳过渡。
最后配置的KEYID才是YoungestID,与ID号大小无关,就算clear ip os pro也没用。要求双方youngestID的密钥必须一致。
当起用了最新的KEYID,将新的和老的KEYID都发过去
当最新的youngestKEYID没有被通过认证,则用老的KEYID做匹配。
但还是会一直发送新老KEYID,新ID会一直失败,不影响正常工作
当最新的youngestKEYID被在对方的列表找到相同的KEYID了,将只发最新的KEYID。而不全发。
当youngestID被no掉了,如果次yongestID的ID和密码匹配的话,就会选次yongest为yongestID