第01节课配置OSPF.docx
- 文档编号:12813001
- 上传时间:2023-04-22
- 格式:DOCX
- 页数:15
- 大小:760.67KB
第01节课配置OSPF.docx
《第01节课配置OSPF.docx》由会员分享,可在线阅读,更多相关《第01节课配置OSPF.docx(15页珍藏版)》请在冰豆网上搜索。
第01节课配置OSPF
配置OSPF
协议比较:
RIP
OSPF
EIGRP
BGP
IS-IS
直连
静态端口/下一条
工作层次
应用层
传输层
传输层
应用层
网络层
端口/协议号
UDP/520
89
88
TCP/179
管理距离
120
110
90
200
115
0
0/1
DV/LS
DV
LV
DV
DV
LS
第一节课枯燥一些,理论东西太多。
大家别睡着了。
关键是我别睡着了
第一个PPT:
OSPF叫开放最短路径优先选择协议,我们前面已经说了,动态路由协议分为距离矢量和链路状态,而我们的OSPF是链路状态的一个典型代表。
那么就需要将它和距离矢量路由协议做一个比较:
如果是距离矢量路由选择协议,针对A来说,它只知道它的邻居的信息,只知道B和D的信息,而不知道C的信息,也就是说,通过运行RIP,路由器A是可以学习到C的路由信息的,但是它并不知道C的存在。
所以距离矢量只知道直接邻居的存在,而不知道其他路由器的存在,但OSPF在传递路由时使用的是LSA,LSA放在更新包中传递。
如果D的网络发生改变,就会发给A,发给C,然后再发给B。
LSA传递的是什么东西呢?
这里是链路状态,而不是具体的路由。
而是我有哪些接口在运行OSPF协议,这个接口的相关信息。
如这个接口的IP地址,子网掩码还有邻居信息等。
如果我把整个网络上的所有这些信息都收集起来的话,就相当于把整个网络的拓扑结构画出来了。
OSPF的同步指的是:
如果路由器A的网络发生变化会被BCD收集并保存,B产生的LSA会被ACD收集并保存,这叫同步。
也就是说每台路由器产生的LSA会被其他的路由器收集并保存。
以达到信息的一致。
也就是所有的路由器保存的信息都是一致的,相同的。
LSA是放在链路状态数据库中,而且全网的链路状态数据库是相同的。
那么对路由的判断也是一样的。
然后再针对链路状态数据库运行SPF算法,生成一棵SPF路径树。
得到一个最佳路由存放到路由表中。
那么为了最终能达到一个最佳的路由,OSPF要做三件事性:
也就是会形成三张表:
邻居表:
每个路由器的邻居是谁
又称为邻接关系数据库,包含认识到的邻居列表。
但注意邻居和邻接是有区别的。
利用组播224.0.0.5发hello包来建邻居关系
拓扑表:
又称为链路状态数据库,LSDB
存放的是所有路由器的它们的相关链路状态。
在同一个区域内路由器的拓扑表是相同的。
一个区域最多可以放200台。
没有问题!
路由表:
存放最佳路由
又被称为转发数据库
包含到达目的网络的最佳路由。
OSPF的区域:
比距离矢量相比做了优化,有一定的层次要求。
RIP就是一个扁平的。
只要有一个发生变化,那么所有的ROUTER都会发生收敛,而OSPF采用区域的概念就把变化的范围减少了。
特征:
1.路由表更小
2.将区域内拓扑变化的影响限制在本地
3.将LSA扩散限制在区域内。
两种类型的区域:
1.主干区域
2.标准区域
Area术语:
主干路由器:
一个路由器的所有接口都在AREA0中
ABR:
只要一个路由器连接两个区域
ABR必须依附于AREA0
其他区域上再连一个其他区域行不行?
比如说,在area1下再连接一个area4或者是一个区域把area0给隔开了。
也可以,很少,必须使用V-LINK
当然说,我不用这么多区域行不行?
也可以,都在AREA0中。
但数据最好不要太多
还有一个术语叫:
ASBR一个路由器连接两个不同的路由器或不同的自治系统。
一个路由器最好不要超过三个区域
OSPF的邻居关系:
靠发HELLO并且要求有一些参数必须一些才可以。
哪些参数,后面会详细说到。
邻居关系的建立情况:
1点到点链路:
直接可以创建邻居关系如HDLCPPP等
2以太网建立邻居有关系需要使用DR指定路由器和BDR备份指定路由器DR和BDR是一个。
当然还有DBOTHER但也有可能没有BDR,当优先级为0的时候,就没有BDR,每一个网络都有一个DR/BDR比如说三个路由器,两个都为0,那么就没有BDR.
DR与DBR是FULLDBOTHER与DR/BDR是FULLOTHER之间是2WAY
这个邻居关系的创建说明在不同的网络环境里,邻居关系的创建也不相同。
实验:
点到点网络使用OSPF
Intso/0
Ipospfnetworkpoint-to-point
对方也一样
实验:
以太网中使用OSPF
实验:
帧中继网络中使用有一种状态:
ATTEMPT状态
R1R3:
Interfaces0/0
Encaframe-relay
Clockrate64000
……..
FR:
Frame-relayswitching
Ints0/0
Encaframe-relay
Frame-relayintf-typedce
Clockrate64000
Noshut
Intso/1
……
OSPF的算法:
Dijkstra(迪杰斯特拉)荷兰人这个算法的核心思想就是每个路由得到的完整的网络链路状态后,都会以自己为根计算一个到达目的网络的最佳路径。
LSA的操作:
当一个路由器收到LSA之后怎么办?
一个路由器可以通过各个方向收到其他路由器发过来的LSA,那么是全部放到自己的拓扑表中呢,还是有所选择呢?
通过这个图就可以看出来。
LSA是包含在LSU中的。
当一个路由器对外发送LSA时,会标识上自己的信息,表明是自己发出的。
有一个字段是通告路由器。
是谁产生的会把谁的ROUTER-ID写进去。
那么针对同一个路由器所发出的LSA会带上一个系列号,来表明这个LSA是不是新鲜的。
当收到一个LSA,先来看一下自己的LSDB中有没有相同的LSA,如果没有,就加进入,并发回应,并泛洪给其他路由器。
最后再计算最短路径放到路由表,结束
如果有的话,就比较系列号,是不是最新的。
如果系列号是否相同,如果相同就忽略,ignoreLSA.
如果不同,是不是更高,如果更高就到A。
如果不高,则说明还没有我的高,也就是说没有我的新鲜,我就把我的LSA发给你。
第二个PPT:
OSPF在工作时会用到的数据类型:
它的协议号是89但向下是封装在IP数据包里面的,那么它在工作的时候一共会使用到五种类型的数据包:
OSPFPacketTypes:
包类型
Hello:
用于建立和维护邻居关系
中间有很多参数
DBD:
数据库描述在邻居建立当中,需要发送的报文,包括的是数据库的摘要信息,这个摘要信息干什么用呢,举个例子,有一个路由器因为某种原因,突然和网络发生了中断,但原来已经有一部分信息了,有一部分新的信息我不知道,那么就没有必要把所有的内容都更新。
只要把我的内容和对方的内容做一个比较,不同的再发送过来。
如一个路由器有90个LSA,另一个路由器有100个LSA,那么双方就发一个DBD描述,把我的摘要发给你,你看一下,缺少哪些,给我发一个申请,我再发给。
节省带宽。
相当于咱们去图书馆借书一样。
也就是说DBD的作用:
检查路由器数据库之间是否同步如果你需要的话,就会发出申请,就是下面这个报文
LSR:
申请报文,需要什么内容就提出申请,对方需要给你回应,就是下面的报文
LSU更新报文是对LSR的回应这里面才包含LSA
LSA确认报文是对LSU的确认。
中间三个需要可靠传输,但DBD属于隐式确认,而LSR/LSU属于显式确认。
那OSPF如果确认每一种报文呢。
那么在封装IP数据包的时候里面有一个类型字段来表明使用的是哪一种包类型
每一种报文有一个数字作为标识。
下面就能看到:
版本号:
现在是V2,V1已经不用,V3会支持IPV6
类型:
1HELLO2DBD3LSR4LSU5LSACK
包的长度:
单位为字节
路由器ID:
标识最初发送分组的路由器,唯一的,两个相邻的路由器不能相同。
而且选举DR/BDR需要用到。
选择主从路由器的时候也需要这个东西,但这个东西不可路由!
先知道有这么一个东西。
区域号:
指出分组来自哪个区域:
有两种表现形式:
一种是以数字表示,另外一种是和IP地址的形式是一样的。
0.0.0.0表达区域01.1.1.1表示区域1.如果255.255.255.25但习惯上使用
校验和:
检测OSPF分组在传输过程中是否受损
身份验证类型:
0不1明文2MD5
身份验证:
结合验证类型使用。
数据:
具体数据
Hello包的内容:
路由器ID:
HELLO/失效间隔:
两个时间,一个是hello,一个是失效时间
邻居:
我有哪些邻居,我发出去
区域ID:
优先级:
默认为1,直接影响DR/BDR的选举
DRIP:
DR是谁
BDRIP:
BDR是谁
身份:
是否验证要不验证,要不都不验证
未节区域标记:
特殊区域的标识,到时候讲到的时候再说。
这个东西也需要一样。
打*的会影响到邻居的创建,必须一样。
邻居状态机:
也就是从两个路由器从开机到成功建立起邻接关系所经历的状态。
1.LAN上的路由器A启动后处于DOWN状态,因为它还没有与其他路由器交换信息,它首先从其OSPF接口向外发送hello分组,虽然它并不知道DR和任何其他路由器。
发送hello分组时,使用的组播地址224.0.0.5
2.所有运行OSPF的直连路由器都将收到A的hello分组,并将路由器A加入到邻居列表中。
这就是init状态
3.所有收到hello分组的路由都向路由器A发送一个单播应答分组,其中包含它们自己的相应信息。
4.路由器A收到这些hello分组后,将其中的路由器ID对应的路由器都加入到邻居表中。
这样,这些路由器都进入双向two-way状态。
至此,这些路由器就建立了双向通信关系,即彼此出现在对方的邻居列表中。
一旦two-way了,你就认为他们就是邻居了。
5.如果链路类型为广播网络,通常是LAN,如以太网,则接下来必须选举DR/BDR。
6.网络中的路由器定期地交换hello分组(默认10秒),以确保通信不中断。
Hello分组中包括DR/BDR和一个路由器列表,该列表中包含邻居路由器的ROUTER-ID.
7.一旦选举出DR/BDR之后,路由器进入exstart状态,这个阶段是来决定谁来启动交换这个时候比较ROUTER-ID,大的为主路由器,启动交换,小的就是从!
8.进行交换状态,交换LSDBexchange
9.进行FULL状态。
实验:
分析状态:
Debugipospfadj或packets或ev
Showipospfneighbor
少了一个状态:
ATTEMPT一般是点到点链路时才会有此状态:
实例:
检查ATTEMPT状态:
如图所示:
先配FR:
然后再启用
这个图的意思是说,如果路由器A发现有一个网络接口发现down了,那么就发一个LSU给谁,给DR,由DR再发给其他的路由器。
变化的信息是放在LSU里面的。
DR你就可以认为是一个领导。
1.LSA的序列号可以在LSDB中查看到
2.LSA序列号的范围,应该是0x80000001-ox8ffffff
3.30分钟同步一次,还是由原路由器发送。
60分钟无效
4.序列号是从0x800001开始,如果1小时没有更新,就老了
5.如果同时有两个LSA的时候,序列号高的更新鲜。
这里显示的是一个LSA的汇总,自己的RID哪些类型的LSA
不同类型的LSA,它的LINKID是不同的。
对于一类来说,就是自己的RID
ADV是通告路由器1类的话,ADV和link-id是一样的
age是年龄,表明最后一次更新发生在48秒之前再往后就是序列号还有校验和
每一行就是一个LSA,但是每一个LSA中有可能有多个条目,如这两个LSA分别有2个条目。
每个路由器的信息会通告给本区域的其他路由器
现在的序列号0x8000008
V:
代表版本T:
代表类型RID路由IDAID:
区域IDaut:
校验类型:
auh:
验证:
校验内容,,这里因为是0所以没有通过哪个接口收到的。
第三张PPT:
配置OSPF:
VRF:
是一个什么虚拟网络,一个隔离网络,用不到
进程号只有本地有效,一个是100,另一个路由器上是200,是没有问题的。
但一个路由器上有多个进程的话,一开始的话,学习的是一个进程,我就只能学习你这个进程,不能学习到其他进程!
如果想学习的话,就需要引入
Routerospf110
Redistributeospf100subnets
routerospf100
redistributeospf110subnets
然后再看一下,就行了
但路由和普通的不一样,多了一个OE1/OE2
ROUTER-ID一些问题和实验
其他在这里还有一个命令,手动设置ROUTER-ID0.0.0.1—255.255.255.255超过范围不能用。
但router-id一旦设定了,就不会再改变了。
但如果还没有和其他路由器建立邻居关系时就可以改了。
可以使用一个命令clearipospfprocess或者是重启
而且同一个路由器上多个进程的话,ROUTER-ID不能相同!
不论是否手工指定。
可以实验
不同路由器上可以相同,但会有问题,所以工作中肯定不能一样可以建立邻居关系,但路由会有问题。
也可以实验
查看ROUTER-ID区域号showipospf
查看正在运行的路由协议:
showipprotocol
可以多启几个ospf进程看一下,使用showipprotocol是可以看到的。
等价路由,默认4条,最多6条
显示接口信息等:
showipospfinterfacefa0/0网络类型类型是DR/BDR/DBOTHER优先级。
实验总结:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第01节课 配置OSPF 01 节课 配置 OSPF