笔记整理 动态路由1.0 OSPF

OSPF(链路状态路由协议):Open Shortest Path First开放式最短路径优先协议

​ 是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。是对链路状态路由协议的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部。OSPF支持等开销负载均衡。

无类别链路状态IGP协议

​ 链路状态协议的更新量随着网络范围的扩展指数性的上升,因此ospf协议为了在中大型网络中工作,需要结构化的部署:区域划分、合理ip地址规划。

​ 周期更新(30min),触发更新;组播更新:224.0.0.5-all ospf 224.0.0.6-DR/BDR

​ 跨层封装3层报头

​ 协议号:89

​ SPF算法

​ 区域水平分割

​ 区域内传拓扑,区域间传路由。

版本区别:

​ OSPFv2用于IPv4,基于网络运行。

​ OSPFv3用于IPv6,基于链路的。

特点:

​ 无环路,收敛快,扩展性好,支持认证

OSPF的数据包类型:
OSPF数据包的头部类型:

Version Number:版本号

Type:类型

Packet Length:包长

Router ID:标识路由器号

Area ID:区域号

Checksum:校验位

Authentication Type:认证类型

Authentication:认证密码

Data:数据

工作原理:
相关名词:

​ LSA:链路状态通告;一条包含了路由及拓扑的信息,但它不是一个包,是被LSU包来携带。

​ LSA洪泛:OSPF的收敛行为,需要整个网络接收到同一条LSA。

​ LSDB:链路状态数据库;所有LSA的集合。

​ LSDB同步:OSPF的收敛行为,整个网络LSDB需要一致。

三张表:

​ 邻居表:主要记录形成邻居关系路由器。

​ 数据库表:记录链路状态信息。

​ 路由表:通过数据库表得出。

五种包:

​ Hello包:发现并建立邻居、邻接关系,周期保活;携带Router ID。Hello time:10s或30s,Dead time为Hello time的4倍。

​ DBD包:数据库描述包;本地数据库目录;发送链路状态头部信息。

​ LSR包:链路状态请求;把从DBD中找出需要的链路状态头部信息传给邻居,请求完整信息。

​ LSU包:链路状态更新;将LSA发给邻居。

​ LSACK包:链路状态确认;收到LSU报文后确认该报文。

七个状态机:

​ HELLO包

​ 1.Down:一旦接收到hello包,进入下一个状态机;没有启用OSPF的状态机,邻居失效后变为该状态。

​ 2.Init:初始化状态,一旦收到对端发来的hello包,存在本地的RID时,进入到下一个状态机。

​ 3.2-way:邻居状态,邻居关系建立的标志;相互间周期发送hello的状态(双向通讯)。

​ 关注条件:点到点网络类型直接进入下一个状态机

​ DBD包

​ 4.Exstart:预启动,交换信息的初始化状态;发送不携带目标信息的DBD包(包含本地的LSA的摘要信息),选举主从路由器利用hello包中的RID和优先权来进行选举,RID大为主,不允许抢占,DR没了,BDR才能上),然后进入下一个状态机;解决了目录共享时的无序。

​ 5.Exchange:准交换,交换信息的状态;使用携带目标信息的DBD包,共享本地数据库目录。

​ 6.Loading:加载状态(没有学习完的状态);查看完邻接的DBD信息后,对比本地,然后基于本地未知的LSA进行查询;使用LSR向对端查询,对端使用LSU来传输这些LSA信息,本地收到后需要LSACK来进去确认。

​ 7.Full:邻接状态(学习完的状态),邻接关系建立的标志;彼此的LSDB同步,即所有的LSA相同。

工作过程:

​ 启动配置完成后,邻居间开始收发hello包,hello包中将携带本地及本地所有已知邻居的Router ID,建立邻居关系,之后生成邻居表,邻居间需要关注是否可以成为邻接的条件。

​ 若不能建立为邻接,将保持为邻居关系,仅hello包周期保活即可。

​ 若可以建立邻接关系,将使用DBD进行本地数据库目录的对比,之后基于对比的结果,使用LSR/LSU/LSACK来获取本地未知的LSA信息,使邻接关系间数据库(LSDB)完成同步(一致),生成数据库表

​ 之后本地基于LSDB,使用spf算法,生成有向图->最短路径树->计算本地到达所有未知网段的最短路径,将其加载到路由表中,收敛完成。

​ 收敛完成后,邻居和邻接关系间均hello每10s保活,每30min一次邻接关系间周期数据库比对,保障一致。

结构突变:

​ 1.新增网段:直连新增网段的设备,直接使用更新包告知本地的所有的邻接。

​ 2.断开网段:直连断开网段的设备,直接使用更新包告知本地的所有的邻接

​ 3.无法沟通:dead time为hello time的4倍即在4次周期内未收到对端的hello包,将断开与其的邻居关系,删除通过该邻居计算所得路由。

基础配置:

​ [R1]ospf 1 router-id 1.1.1.1 启动时可以定义进程号、routerD,默认进程1;Router ID格式为IPV4地址,全网唯一;取Router ID顺序:手工配置->环回接口最大数值->物理接口最大数值

​ 宣告:1.划分区域 2.共享拓扑 3.建立邻居

​ ospf在宣告时,需要使用反掩码,来匹配宣告的地址范围

​ [R1-ospf-1]

​ [R1-ospf-1]area 0

​ [R1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0 精确宣告

​ [R1-ospf-1-area-0.0.0.0]network 12.1.1.0 0.0.0.255 范围宣告

区域划分规则:

​ 1、星型结构:中心到站点,编号0为骨干区域(中心),大于0为非骨干区域(分支);非骨干区域必须直连骨干区域。

​ 2、必须存在ABR:区域边界路由器,两个区域间互联的设备。

启动配置完成后,邻居间收发hello包,建立邻居关系,生成邻居表

​ [R2]display ospf peer 查看邻居关系

​ [R2]display ospf peer brief 查看邻居简表

邻居间在进行邻居关系建立时,hello包有几个参数必须完全一致,否则无法建立邻居关系:

​ Hello and dead intervals

​ Area ID(ABR)

​ Authentication password认证字段

​ Stub area flag末梢区域标记

华为设备还要求邻居间建立邻居的接口ip地址子网掩码必须一致。

邻居关系建立后,进行条件匹配;匹配失败将保持为邻居关系,仅hello包周期保活;匹配成功可以建立为邻接(毗邻)关系;邻接关系间,将使用DBD进行主从关系选举,再使用DBD进行数据目录的交互,通过LSR/LSU/LSACK来获取本地未知的LSA信息,最终实现所有设备的LSDB一致,生成数据库表

​ 关于DBD几个参数:

​ 1.MTU:OSPF协议会在DBD包中携带与邻居直连接口的MTU值,要求邻居的MTU值必须完全一致,否则将卡在exstart状态机,默认华为设备间不检测这个MTU值。

​ [R1]int g0/0/1

​ [R1-g0/0/1]ospf mtu-enable 在于邻居间直连的接口上开启MTU检测,若一端开启,另一端也必须开启

​ 2.隐形确认:一台设备使用和另一台设备一样的序列号来确认对端的数据,OSPF中从向主进行隐性确认。

​ 3.描述字段:I为1标识本地发出的第一个DBD,M为0本地发出的最后一个DBD,MS 为1代表主,S为0代表从。

​ [R2]display ospf lsdb 查看完整的本地的LSDB(数据库表)

当数据库同步完成后,OSPF将基于本地的LSDB进行SPF算法,生成有向图->最短路径树->计算本地到达所有未知网段的最短路径,将其加载到路由表中。

​ display ip routing-table protocol ospf 查看ospf路由

​ display ospf routing 查看本地所有与OSPF相关的路由,发出+接收的度量为cost

​ 华为设备优先级默认10,度量为cost值,cost值=开销值

​ ospf cost = 参考带宽/接口带宽 默认参考带宽为100M

​ ospf优选cost值之和最小,为最佳路径;若两条链路cost值之和相同,等开销负载均衡;

若接口带宽大于参考带宽,cost为1,将可能导致选路不佳,建议修改默认的参考带宽。切记:若修改参考带宽,全网需修改的一致。

​ [R1]ospf 1

​ [R1-ospf-1]bandwidth-reference ?

​ INTEGER<1-2147483648> The reference bandwidth (Mbits/s)

​ [R1-ospf-1]bandwidth-reference 1000

​ 路由表的加表规则:

​ 当学习到多条路由条目时,先比较优先级,优先级值越小(优先级越大)优先加表,如果优先级一致,比较cost值,cost值小的优先加表,如果cost也相同,则同时加表 等开销负载均衡。

扩展配置:
1.DR/BDR选举 减少网络更新量 非抢占型选举

​ 邻居成为邻接关系的条件,与网络类型有关。

OSPF从邻居关系建立为邻接关系的条件:

​ 点到点网络:邻居关系必然成为邻接关系。

​ MA网络: 由于OSPF不支持接口的水平分割,故若两两设备间均为邻接关系,将导致大量的重复更新,因此必须进行DR/BDR选举,DR/BDR使用组播224.0.0.6;在一个网段中仅DR/BDR与其他路由器为邻接关系;非DR/BDR之间为邻居关系。

​ 选举规则:

​ 1.先比较该网段所有参选设备接口的优先级,越大越优;默认优先级为1;取值范围0-255,0标识不参选。

​ 2.若所有参选者优先级相同,比较参选设备的Router ID,数值大优。

​ 干涉选举:

​ 1.DR优先级最大,BDR次大 注意:ospf的选举是非抢占性的,故在修改完优先级后,需要所有路由器重启OSPF进程。

​ [R1]interface GigabitEthernet 0/0/1

​ [R1-GigabitEthernet0/0/0]ospf dr-priority 2 修改接口优先级

​ reset ospf process DR选举为非抢占行为,故修改优先级需要重启ospf进程

​ Warning: The OSPF process will be reset. Continue? [Y/N]:y

​ 2.DR优先级修改为最大,BDR次大;其他设备修改为0,退出选举;无需重启进程。

OSPF接口网络类型:

​ OSPF协议在不同网络类型接口上不同的工作方式。

​ [R1]display ospf interface GigabitEthernet 0/0/1 查看OSPF协议在该接口的工作方式。

​ 环回:显示P2P,实际为环回专用工作方式 无hello包 32位主机路由传递

​ 点到点(串线、HDLC、PPP):P2P hello time 10s 不选DR 自建立邻居关系

​ BMA(以太网):Broadcast hello time 10s 选DR/BDR(40s)

​ NBMA(MGRE):默认接口工作方式为p2p,该工作方式仅允许建立一个邻居关系,导致在MGRE环境中无法建立所有的邻居关系。

​ 可以通过修改接口的工作方式来解决:

​ 注意:在MGRE环境下,若一个网段的部分接口修改为broadcast,其他依然为点到点。由于建邻的条件匹配,故可以建立邻居关系,但Broadcast需要DR,点到点不需要,所以最终不能正常收敛,需要该网段所有节点均为Broadcast。

​ [R1]int t0/0/0

​ [R1-Tunnel0/0/0]ospf network-type broadcast 修改接口工作方式为Broadcast

​ 拓扑结构:

​ 中心到站点(轴辐状-星型结构):DR必须定在中心站点,没有BDR 接口全改为Broadcast 三个路由,两个路由只有中心站点路由为邻居,两路由之间不为邻居

​ 全连网状结构:DR/BDR选举正常 接口全为Broadcast 固定ip 路由间均能发送伪广播即三个路由间均为邻居

​ 部分网状结构:基于实际环境关注是否固定DR

2.区域汇总

​ OSPF协议不支持接口汇总,只能在ABR上将a区域拓扑计算所得路由,共享给B区域时进行汇总。

​ [R2]ospf 1

​ [R2-ospf-1]area 0

​ [R2-ospf-1-area-0.0.0.0]abr-summary 1.1.0.0 255.252.0.0

​ R2为一台连接区域0和其他区域的ABR;以上操作为:R2将通过区域0学习到的拓扑计算所得的路由,传递给其他区域时进行汇总,汇总网段为1.1.0.0/22。

3.被动接口(沉默接口)

​ 仅接收不发送路由协议信息;用于连接用户终端的接口,不得用于连接邻居路由器的接口,否则无法建立邻居关系。

​ [R2]ospf 1

​ [R2-ospf-1]silent-interface GigabitEthernet 0/0/0

4.认证

​ 接口认证在直连邻居或邻接的接口上配置,保障更新的安全。

​ [R1-GigabitEthernet0/0/1]ospf authentication-mode md5 1 cipher 123456 模式、编号、密码要求邻居间一致

5.加快收敛

​ 邻居间计时器:10s hello time 40s dead time

​ 邻居间,修改本端的hello time,本端的dead time自动4倍关系匹配,但ospf中邻居间的hello time和dead time必须完全一致,否则无法建立邻居关系。

​ [R1]interface GigabitEthernet 0/0/0

​ [R1-GigabitEthernet0/0/0]ospf timer hello 5

6.缺省路由

​ 边界路由器上配置后,将自动向内网下放一条缺省路由,之后内网设备将自动生成缺省路由指向边界。

​ [R4]ospf 1

​ [R4-ospf-1]default-route-advertise always

​ 如果边界路由器已经存在缺省

​ [R4]ospf 1

​ [R4-ospf-1]default-route-advertise

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值