假装网络工程师3——ospf的邻居建立条件与虚连接

一、背景说明

ospf作为IGP两大协议之一,有很多值得深挖的地方,仅通过一篇文章远远不够,后续还将通过多章篇幅进行说明。

二、ospf建立邻居的条件

尽管ospf作为一种链路状态协议,每一台路由器是通过lsa报文(其中包含其他路由器直连网段)在本地计算后形成以自己为根的路由表,但出于安全或其他方面的考虑ospf不是会和任意一台路由器建立邻居关系,ospf建立邻居有下面几个前提条件:
1. 直连路由的接口要宣告进同一个区域中(area)
2. 认证类型和认证密码要一致,查看命令

[R1]display ospf brief   

3. 直连路由器的route id冲突不能建立起邻居,route id要求在同一域中唯一, 查看命令

[R1]display ospf routing  

4. hello/dead时间间隔要一致,查看命令

[R1]display ospf routing
[R1-GigabitEthernet0/0/0]ospf timer hello/dead   

5. 处于同一广播域的路由器接口网络类型要保持一致,查看命令,接口类型可修改

[R1]display ospf brief
[R1-GigabitEthernet0/0/0]ospf network-type broadcast/p2p   

6. MA网络(以太网)中物理接口的子网掩码位数要一致,p2p网络(串口)中可以不一致

如上图所示,R1跟R2之间处于同一广播域的路由器接口尽管物理地址掩码不一致,但由于是p2p网络,仍然能建立邻居关系。R2与R3由于是MA网络同一广播域的路由器接口尽管物理地址掩码不一致则无法建立邻居。将R2,R3的网络类型改为p2p后,邻居建立成功。

三、路由器之间lsa报文传递

前文得知,每一台路由器会将自己直连网段的信息通过lsa发送,这样假设同一广播域中有n太路由器,就会有n*(n-1)/2个发送通道,造成了带宽的浪费。

所以规定了只有dr和bdr跟所有的路由器是full状态

其他drother角色的路由器之间2way状态,不传递lsa

所有路由器都通过224.0.0.5地址传递hello信息

只有dr和bdr角色通过224.0.0.6地址来接收lsa

四、ospf的area与虚链路

为了进一步降低带宽消耗,又可将ospf一个域划分为多个区域(area),每个路由器的1、2类lsa只能在本area中传播,area id取值范围在0-4294967295,规定只有area 0为骨干区域,所有非0的area为非骨干区域,连接骨干区域与非骨干区域的路由器则称为ABR(area border router),area 0在一个域中有且只有一个。

上图中R2为ABR,连接了area0与area1,所有该路由器通过3类lsa将不同area之间的路由相互注入

配置命令为:

[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip add 12.0.0.1 24
[R1-GigabitEthernet0/0/0]q
[R1]ospf 1 router-id 1.1.1.1
[R1-ospf-1]area 0
[R1-ospf-1-area-0.0.0.0]network 12.0.0.1 0.0.0.0  
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip add 12.0.0.2 24
[R2-GigabitEthernet0/0/0]int g0/0/1
[R2-GigabitEthernet0/0/1]ip add 23.0.0.2 24
[R2-GigabitEthernet0/0/1]q
[R2]ospf 1 router-id 2.2.2.2
[R2-ospf-1]area 0
[R2-ospf-1-area-0.0.0.0]network 12.0.0.2 0.0.0.0
[R2-ospf-1-area-0.0.0.0]q
[R2-ospf-1]area 1
[R2-ospf-1-area-0.0.0.1]network 23.0.0.2 0.0.0.0  
[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]ip add 23.0.0.3 24
[R3-GigabitEthernet0/0/0]q
[R3]ospf 1 router-id 3.3.3.3
[R3-ospf-1]area 1
[R3-ospf-1-area-0.0.0.1]network 23.0.0.3 0.0.0.0  

五、ospf的虚链路

有时候可能因为特殊原因,非骨干区域没有跟area 0直接相连

由于ospf本身的防环机制,不同area之间的路由必须通过area 0来发布,所以此时area 2中路由信息就无法通过1、2类lsa传递给area 0并通过area 0向其他区域发布

此时就需要用到虚链路,虚链路本质上是一种隧道技术,他逻辑上扩大了area 0的范围

上文中说道area 2的1、2类lsa无法传递给area 0,拓扑中能看出area 0与area 2之间相隔了一个area 1,所以就需要在area 1的两台路由器之间建立隧道
R2路由器配置:

[R2]ospf 1
[R2-ospf-1]area 1
[R2-ospf-1-area-0.0.0.1]vlink-peer 3.3.3.3  #3.3.3为要与R2路由建立虚连接的路由route id值

R3路由器配置:

[R3]ospf 1
[R3-ospf-1]area 1
[R3-ospf-1-area-0.0.0.1]vlink-peer 2.2.2.2  

再到R2上看,此时已经学习到4.4.4.0/24网段的路由了。

尽管已经相互学习到路由,但R2上无法直接通过邻居接口

需要通过ospf虚拟连接命令查看

六、虚链路的使用场景

上面介绍了在特殊情况下没有直接连接area 0的区域可以使用虚链路通过隧道进行连接,但虚链路不是为这种场景设计,虚链路多用于路由的备份。
如下图所示,此时如果R1与R2之间的连线故障

则拓扑结构就变为

尽管area 1与每个area 0都相连,但一个域中只能存在一个area 0,所以此时给R3与R4之间加一条虚链路能防止这种情况的发生。

原文地址:https://blog.51cto.com/arkling/2445791

时间: 2024-10-13 19:53:40

假装网络工程师3——ospf的邻居建立条件与虚连接的相关文章

假装网络工程师11——ospf路径选取详解

一.背景介绍 提到路由,就一定会涉及选路,ospf与其他路由协议一样,同样存在选路,除了对比cost(metric)值,ospf协议还会对比表项,并且表项的优先级高于cost值,本文详细说明ospf协议的路径选取原则. 二.实验拓扑 本次实验拓扑如上图所示,R2,R3环回接口模拟外部网络,通过import-route导入,每条路径的cost如标注所示 三.ospf选路详解 1.cost值比较 此时将基础配置按照上图配置好,外部路由直接使用import-route direct导入,未设置接口co

假装网络工程师9——ospf中的1,2,3类lsa详解

一.前期回顾 之前讲过运行ospf的路由器之间是通过lsa进行消息传递,且建立邻接关系时,两端接口的网络类型必须一致,如果在MA类型网络中接口的掩码也要一致,p2p网络掩码可以不一致,只有MA网络中才有DR与BDR角色等约束条件,之所以有这些要求,从另一个维度讲都是因为lsa需要满足这些条件,本章就来详细介绍下ospf中的lsa种类及作用. 二.拓扑介绍 area1是一个MA网络类型,area0是p2p网络类型,R1,R2,R3处于一个广播域,交换机上未作任何设备,只当一个纯二层设备,R3的g0

假装网络工程师12——ospf中的特殊区域及6,7类lsa详解

一.背景介绍 假设有一个大型企业,各省市都有分公司,总路由与运营网络之间跑bgp,总路由与各省路由器在area 0,每个省的不同地市处在不同的area, 其网络拓扑如下所示,: 以area 1中的R5为例,当配置完ospf之后,R5上除了本区域的1,2类lsa外,还会通过3类lsa学习到area 2的路由,然后还会通过4,5类lsa学习到外部网络的路由及asbr条目,这样R5的路由表就会变得异常庞大,而路由表是存放在路由器的内存中,大量的lsa除了会造成带宽浪费,也会造成本地设备性能下降,基于此

假装网络工程师5——STP二层防环机制详解

[toc] 一.背景介绍 在网络架构设计中,防环是一个很重要的因素,环路的潜在隐患不再赘述,所以无论是三层还是二层都非常注意防环的机制,在三层中无论是ttl值还是ospf这种倒状树结构其目的都是为了避免环路,在二层中防环的机制则为生成树协议(spanning tree protocol),以及优化后的rstp和mstp,本章重点介绍stp生成树协议. 二.STP协议的端口状态 stp协议是通过计算后在实际产生环路的物理链路上逻辑的阻塞一个端口,只有当链路发生变化时被阻塞的端口才有可能从新参与计算

假装网络工程师1——TCP/IP上下层接口与静态路由

一.背景介绍 总所周知,公有云最难理解的部分在于网络,从事了公有云之后才发现自己的网络差的还很远,干脆从头回炉修炼,既然是从头修炼就从最基础的开始,当然也只是补充以前理解不透彻的地方,闲言少叙,言归正传. 二.TCP/IP模型 所有关于TCP/IP模型的书上都会提到下层为上层服务,此处重点介绍上下层之间的接口.以ip地址为例,网络层如何知道物理层传递过来的究竟是ipv4还是ipv6,此时就需要用到网络层与物理层之间的类型进行区分,0X0800表示需要网络层处理的地址为ipv4,0X86DD则表示

假装网络工程师4——多VLAN间通信

一.背景介绍 交换是疏通领域另一个知识块,与路由一样有着举足轻重的地方,本片就通过不同vlan间通信的三个实现方式来讲解交换的通信过程. 二.不同vlan间通信实现方法 1.使用二层设备实现 如下图所示,两个交换机之间使用端口绑定的方式以trunk连接,下联2台同网段的pc,但不属于同一个vlan,大部分的案例都是不同的vlan属于不同网段通过子接口进行通信,本示例则以纯二层网络设备进行通信,顺便说明通信的过程. (1)创建vlan2,并将连接pc的端口加入vlan2 [SW1]vlan 2 [

假装网络工程师6——vrrp使用场景介绍

一.背景介绍 vrrp作为一种常见的虚拟路由冗余协议,工作在应用层,协议号为112,该协议普遍用于各种生产环境中,其工作原理是隐藏多个实际提供服务的网元地址,取而代之使用一个虚拟的地址进行反向代理,所有终端指向反向代理地址,这样即使一台或多台网元故障,反向代理地址依然生效,网元之间通过一个特定的组播地址进行通信 本章就以2个网元对外提供统一网关地址为例,介绍vrrp的使用. 二.实验拓扑 PC1和PC2属于vlan和vlan20,SW3为接入层交换机,SW1和SW2是三层交换机与二层交换机SW3

假装网络工程师8——NAT使用场景介绍

一.背景介绍 NAT地址转换是生产环境中用的最多的一种技术,除了能缓解ipv4地址不够外,还能有效保护内网真实服务器的地址,nat从流向的角度可以分为snat和dnat,本章对以下几种情况分别进行说明,拓扑如下图所示: 二.SNAT使用地址池方式 此种方式是定义一个地址池,内网地址访问外网时在网关接口进行源地址转换,转换后的源地址为地址池中的地址,同时可以通过no-pat选项决定是否开启端口复用 先进行基础配置 [R1]int g0/0/0 [R1-GigabitEthernet0/0/0]ip

3.2【OSPF】NP十二班第二天-OSPF邻居状态机及邻居建立1

OSPF邻居状态机及邻居建立 控制层面:RIB表 转发层面:FIB表 Hello报文的作用:发现建立和维护邻居关系 \\Hello报文里的字段 option选项在哪些报文中存在? 1.Hello    2.DBD   3.LSA OPtion选项: DN比特位 DN比特位(宕比特位)置位如何防环 运营商和客户路由重分发造成环路 把OSPF重分发进BGP很可能造成环路 通过DN位解决,如果DN位置位了,这条路由本地是不能做选路的,同时也不会重分发进其他的协议 DC位 按虚电路:需要的时候才建立虚电