前期回顾
上一章节我们学习了路由汇总包括区域间路由汇总和外部路由汇总,抓住几个特性,比较着记忆,更加容易理解!
区域间路由汇总特性:
1、只能在 ABR上执行
2、只能对直连区域的路由做汇总(即对区域内的路由做汇总)
3、汇总的默认开销继承明细路由中开销最大的
4、明细路由全部失效,汇总路由也会失效
5、如果区域有多个ABR,所有ABR都要执行汇总,否则失去汇总效果。
6、我们可以使用命令将路由汇总却不通告。
外部路由汇总特性:
1、只能在ASBR上 执行,
2、汇总路由的开销类型继承明细路由的开销类型,如果明细路由的开销类型不一致,则开销类型为2(默认的类型)
3、NSSA区域的外部路由可以在ASBR上 执行,也可以在NSSA区域上的ABR执行
OSPF的更新机制
定时更新与触发更新
定时更新
LSA每1800s更新一次,3600s#前期回顾
上一章节我们学习了路由汇总包括区域间路由汇总和外部路由汇总,抓住几个特性,比较着记忆,更加容易理解!
区域间路由汇总特性:
1、只能在 ABR上执行
2、只能对直连区域的路由做汇总(即对区域内的路由做汇总)
3、汇总的默认开销继承明细路由中开销最大的
4、明细路由全部失效,汇总路由也会失效
5、如果区域有多个ABR,所有ABR都要执行汇总,否则失去汇总效果。
6、我们可以使用命令将路由汇总却不通告。
外部路由汇总特性:
1、只能在ASBR上 执行,
2、汇总路由的开销类型继承明细路由的开销类型,如果明细路由的开销类型不一致,则开销类型为2(默认的类型)
3、NSSA区域的外部路由可以在ASBR上 执行,也可以在NSSA区域上的ABR执行
OSPF的更新机制OSPF
定时更新与触发更新
定时更新
协议规定,默认情况下,产生这条LSA的路由器每隔1800s会更新自身产生的LSA,
主要表现形式:seq序列号+1,chksum校验和重新计算,ls age 置为0
现在我们复习下如何描述LSA的新旧,
1、seq序列号越大越新
2、校验和越大越新
3、老化时间是否等于3600s,等于3600s的最新
4、ls age老化时间的差值,>900 ,ls age小的新 <900 两条LSA新旧程度是一样的。
LSA每1800s更新一次,3600s失效
触发更新
当链路状态发生变化(各类LSA的参数发生了变化)之后,立即发送链路状态更新
主要表现形式:seq序列号+1,chksum校验和重新计算,ls age 置为0
OSPF协议如何删除一条LSA?
在序列号不变,校验和不变的情况下,将LSA age设置为3600s
路由协议的认证
特性:保证协议报文的安全性
数据安全
数据的机密性:只有通信双方才能看懂数据,其他任何人都无法了解数据内容。
数据的完整性:数据无法被伪造或者被篡改,
数据的不可抵赖性:不能否认你做过或者没做过,
路由协议认证:只实现数据完整性保护
认证帮助我们解决安全隐患
认证方式
1、区域认证
在属于这个区域的所有接口上启用认证。
[R1]ospf 1
[R1-ospf-1]a 1
[R1-ospf-1-area-0.0.0.1]authentication-mode
2、接口认证
仅在该接口上启用认证
[R1]INT G0/0/0
[R1-GigabitEthernet0/0/0]ospf authentication-mode
3、接口认证优先于区域认证
实验,我们在接口下启用明文认证,在区域内进行md5认证
接口下:
[R1-GigabitEthernet0/0/0]ospf authentication-mode simple plain HCIP
区域内
[R1-ospf-1-area-0.0.0.1]authentication-mode md5 1 plain HCIP@123
对端接口也需要配置。
支持的认证模式
1、null(不认证)、不做认证 auth type 0
2、simple(明文)、只要密码一致,即认为认证通过,auth type 1,无法实现数据完整性保护,聊胜于无,无法防护欺骗攻击和篡改攻击
3、MD5:要求key id要一样,key要一样,认证才能成功
4、认证的模式要一致
认证方式可以为接口或者区域,但是两端认证认证模式需要一致
5、ospf authentication-mode null 将接口从区域认证中排除,做空认证。
6、如果做了一个区域的区域认证,并且存在虚链路v-link,那么虚链路也要做认证。
MD5(思科用的)、HMAC-MD5(华为特有的加强版MD5认证)
然后我们将接口认证undo 实行区域认证的MD5,
OSPF Header
Version: 2
Message Type: Hello Packet (1)
Packet Length: 44
Source OSPF Router: 1.1.1.1
Area ID: 0.0.0.1
Checksum: 0x0000 (None)
Auth Type: Cryptographic (2) 标识MD5
Auth Crypt Key id: 1 key id,可在命令行中追加指定
Auth Crypt Data Length: 16 MD5定长是16字节
Auth Crypt Sequence Number: 1947 序列号防止重放攻击每一次发送的序列号要比上一次的大,
Auth Crypt Data: 1a94bd7f5c452be0dbed9d7eead21504 哈希值,用来防范报文被篡改,
MD5算法
特点:
1、不可逆,无法通过哈希值反推出原始数据
2、雪崩效应,原始数据任何bit被修改,得到的hash和原始数据的hash值存在很大区别。
3、随机输入固定输出,无论原始数据大小如何,hash结果长度一致,MD5为128bit,SHA为160bit
认证是如何确保安全性的?
路由在添加认证模式后会选定 Key id,这个key是只有配置人才进行修改指定的,在路由发送时,会将key+数据进行哈希算法(MD5)运算形成摘要,得到摘要和数据的对端会再次使用本端指定的密钥和发送过来的数据进行相同的运算得到摘要,两个摘要进行对比,可以在保证安全的情况下进行身份认证的判断和数据防篡改的验证。
含虚链路的区域认证
我们在认证模式的链路中知道第六个特性,
6、如果做了一个区域的区域认证,并且存在虚链路v-link,那么虚链路也要做认证。
现在我们通过实验对其进一步了解,
先在R2上进行查看ospf的邻居关系
在R2的区域1中做一条虚链路,在R2的区域0进行配置区域认证,
[R2-ospf-1-area-0.0.0.0]authentication-mode md5 1 plain HCIE@123
然后在R1的区域1中做一条虚链路
[R2]ospf 1
[R2-ospf-1]a 1
[R2-ospf-1-area-0.0.0.1]vlink-peer 1.1.1.1
R1
[R1]ospf 1
[R1-ospf-1]a 1
[R1-ospf-1-area-0.0.0.1]vlink-peer 2.2.2.2
现在我们查看虚链路的邻居
发现虚链路并没有找到邻居,我们知道虚链路永远属于区域0,我们在区域0配置了区域认证,但是却没有将R1的虚链路进行区域认证设置,我们可以做以下措施进行补救
1、我们需要在R1的虚链路进行配置操作
[R1-ospf-1-area-0.0.0.1]vlink-peer 2.2.2.2 md5 1 plain HCIE@123
结果展示
2、我们还可以直接在R1上创建区域0,然后进行认证模式设置
[R1-ospf-1]a 0
[R1-ospf-1-area-0.0.0.0]vlink-peer 2.2.2.2 md5 1 plain HCIE@123
结果展示
2、我们还可以在R2上将虚链路变为空认证
[R2-ospf-1]a 1
[R2-ospf-1-area-0.0.0.1]vlink-peer 1.1.1.1 authentication-null
结果展示