OSPF(Open Shortest Path First)是一个内部网关协议(Interior Gateway Protocol,简称IGP)。与RIP相对,OSPF是链路状态路有协议,而RIP是距离向量路由协议。 链路是路由器接口的另一种说法,因此OSPF也称为接口状态路由协议。OSPF通过路由器之间通告网络接口的状态来建立链路状态数据库,生成最短路径树,每个OSPF路由器使用这些最短路径构造路由表。
OSPF分为OSPFv2和OSPFv3两个版本,其中OSPFv2用在IPv4网络,OSPFv3用在IPv6网络。可用于大型网络。
怎么区分rip和ospf呢? 有个转自知乎的回答https://www.zhihu.com/question/62872429,非常形象:
RIP
RIP协议是基于谣言的消息传播:
宫廷戏经常有这样的场景,正襟危坐的皇上老大,对下边的太监小弟说:宣隔壁老王觐见!
太监小弟尖着阳气不足的喉咙喊:宣隔壁老王觐见!(娘娘腔…)
大厅外的宣令官A听到,丝毫不敢怠慢,用雄厚的男中音喊:宣隔壁老王觐见!
经过多轮的消息传播,最后消息被宣令官H接收到,然后宣令官喊最后一嗓子:宣隔壁老王觐见!
于是,诚惶诚恐的隔壁老王被带进了皇宫…
这是典型的谣言传播的场景,这里的出场人物除了皇上本人、太监,谁都不知道皇上到底说没说“宣隔壁老王觐见”,宣令官遵守的原则是:盲目相信比自己更靠近皇上的宣令官,并将消息传播出去,这就够了。
如果中途宣令官E打瞌睡,没有听到D的喊声,消息传播就断了,游戏就没法玩了。
OSPF
OSPF协议,类似车载导航系统,将每条道路都收集到自己的数据库里。当计算上海到北京的最短路径时,有以下选择:
(1)沈海高速—长深高速—荣乌高速—京沪高速
(2)京沪高速—滨莱高速—荣乌高速
(3)京沪高速—泰新高速—京台高速—廊沧高速
第一条路径最短,优先选择。如果遇到中途“荣乌高速”严重堵车,可以提前切换到京沪高速,提高通行的效率。
OSPF比RIP强大的地方是,OSPF对整网的拓扑结构了如指掌,一旦某一条路径断了,可以及时选择备份链路,对通信的影响小。
RIP是基于谣言,对整网的拓扑结构没有概念,只知道有几个邻居,至于更远的邻居是什么样子,对不起,不知道!
这样的后果是,当不和自己直连的邻居down掉了、或物理链路down掉了,自己却浑然不知,依然将流量发给自己的直连邻居,直连邻居暗暗叫苦:我的邻居已经down了,让我发给鬼啊? 没办法,丢了丢了…
经过一段相对漫长的时间,down掉的路由器或链路终于被大家发现了,因为自己的邻居不再散播这条谣言了,于是路由器纷纷使用更优的谣言来转发流量!
单区域OSPF路由器交换机只运行在一个区域中(area0)
如果你是从零开始,可以看一下某位老哥的博客https://blog.csdn.net/qq_41745698/article/details/83715437#commentsedit
不过他示例中用的是三层交换机(具有部分路由功能)所以他给三层交换机也配置了ospf,
而我使用的都是二层交换机,不用配置这玩意,只给路由器配置ospf就可以了
注意:我的这个拓扑图是已经配置过RIP的
R1(config)#router ospf 1
R1(config-router)#network 10.10.20.0 255.255.255.0 area 0
R1(config-router)#network 192.168.1.0 255.255.255.0 area 0
R1(config-router)#network 10.1.1.0 255.255.255.0 area 0
R1(config-router)#network 172.16.1.0 255.255.255.0 area 0
R2(config)#router ospf 1
R2(config-router)#network 10.1.1.0 255.255.255.0 area 0
R2(config-router)#network 10.2.2.0 255.255.255.0 area 0
R3(config)#router ospf 1
R3(config-router)#network 172.16.2.0 255.255.255.0 area 0
R3(config-router)#network 10.2.2.0 255.255.255.0 area 0
R3(config-router)#network 192.168.2.0 255.255.255.0 area 0
R4(config)#router ospf 1
R4(config-router)#network 172.16.1.0 255.255.255.0 area 0
R4(config-router)#network 172.16.2.0 255.255.255.0 area 0
R6(config)#router ospf 1
R6(config-router)#network 10.10.10.0 255.255.255.0 area 0
R6(config-router)#network 10.10.20.0 255.255.255.0 area 0
再复述一遍:我的这个拓扑图是已经配置过RIP的
而且:已经在R1上为192.168.2.0网络配置浮动静态路由,权值为119,所走路径为R1-R4-R3Cisco Packet Tracer(路由控制/浮动静态路由)
查看路由表show ip route
C:表示直连网络
R:通过RIP学习的路由信息,rip的管理距离是120
O:通过OSPF学习的路由信息,ospf的管理距离是110
OSPF的认证有2种类型(确切说是3种),其中type0表示无认证,type1表示明文认证,type2表示MD5认证。明文认证发送密码进行认证,而MD5认证发送的是报文摘要。
OSPF的认证可以在链路上进行,也可以在整个区域内进行认证。另外虚链路同样也可以进行认证。
三种配置方式,可以看看某位老哥的博客https://blog.51cto.com/crystals/281423
我就在R1和R2的串行链路上做一个明文认证:
R1(config)#int s1/1
R1(config-if)#ip ospf authentication //(启用认证)
R1(config-if)#ip ospf authentication-key cisco //(配置密码)
R2(config)#int s1/1
R2(config-if)#ip ospf authentication //(启用认证)
R2(config-if)#ip ospf authentication-key cisco //(配置密码)
(以下截图自百度文库https://wenku.baidu.com/view/176bb95176c66137ee0619f3.html?from=search)
R4(config)#router ospf 1
R4(config-router)#default-information originat