当前位置: 首页 > news >正文

OSPF路由协议在CISCO路由器上的应用

1.启动OSPF协议

  在CISCO路由器上启动OSPF路由协议,一般需要两个步骤:

  (1)启动OSPF协议进程:

  Router(config)#router ospf <process-id>

  (2) 定义路由器所在的网络:

  Router(config- router)#network <network address> <mask> area <area-id>

  OSPF协议通过Router ospf命令来启动,OSPF协议进程号(Process-id)是只与当前路由器有关的一个数值,与网络中的其他路由器没有任何关系。一个路由器可以运行一个OSPF进程,也可以运行多个OSPF进程,每一个OSPF进程维护一个数据库,所以尽可能只运行一个OSPF进程,减轻路由器的负荷。

  Network命令定义路由器所处的网络,指定路由器端口所处的网络域。掩码定义了网络的大小,其数值与端口的掩码相反,例如0.0.0.255掩码定义了前三个字节为网络号,标识此网络的大小。网络域标识号(area-id)标识此端口所属的网络域,其取值一般为整数,也可以以IP地址的形式表达。

  配置命令如下:

Router#
Interface ethernet 0
Ip address 200.2.2.1 255.255.255.0
Interface serial 0
Ip address 200.8.8.1 255.255.255.0
Router ospf 108
Network 200.2.2.0 0.0.0.255 area 0
Network 200.8.8.0 0.0.0.255 area 1

 

 上述第一段配置了以太口0的IP地址,第二段配置了串口0的IP地址,第三段启动OSPF路由协议,网络200.2.2.0和200.8.8.0分别置于不同的网络域中。

  2. 配置OSPF接口参数

  OSPF协议网络接口参数都有其默认取值,同时允许用户根据网络实际需要来配置一些接口参数,以充分优化网络。

  (1) HELLO 间隔

  OSPF路由器定期向邻接路由器发送HELLO数据包,以探寻相邻路由器的状态。其探寻间隔可以进行设置。(HELLO间隔是以秒为单位)

  Router(config-if)#ip ospf hello-interval seconds

  (2) 链路权值

  通常OSPF是根据链路带宽计算权值,用户可以根据需要对链路权值进行设定。

  Router(config-if)#ip ospf cost cost

  (3) 传输时延

  传输时延是指在OSPF链路接口之间,传输一个链路状态更新包需要的时间。

  Router(config-if)#ip ospf transmit-delay seconds

  (4) 重传间隔

  重传间隔是指链路状态的重传间隔时间。如果一个路由器向相邻路由器发送一个新的链路状态包,在没有收到对端的确认包时,将发生重传。

  Router(config-if)#ip ospf retransmit-interval seconds

3. 路由归约

  路由归约是将多条路由合并成一条路由,可以大大减轻路由器的负荷。通常是在域边界路由器上进行路由归约,特别是直接与骨干域相连的域边界路由器(因为路由最终是由骨干域向其他网络域进行广播的)。有两种类型的路由归约,一种为域间路由归约,一种为外部路由归约

  (1)域间路由归约

  域间路由归约是在域边界路由器上进行配置的,适应于自治域内部进行路由归约,但不适合外部路由通过再广播注入 OSPF内的路由。为了充分利用路由归约,网络域的网号尽可能连续,这样多个网络为了可以归约成一个网络,多条路由也就归约成一条路由,在CISCO系列路由器上,需要配置的命令为:

  area area-id range address mask

  “area-id”(域标识号)是需要进行路由归约的网络域的标识号,“address”(地址)和“mask”(掩码)将域内网络地址归约成一段地址。

  例如,路由器B把网络域1中的地址从202.102.0.0到202.102.15.0归约到一块地址段中:202.102.0.0 255.255.240.0,同样路由器C把网络域2 中的地址归约为:128.1.16.0 255.255.240.0.在路由器C上的命令为:

  RouterC#

  Router ospf 102

  Area 2 range 128.1.16.0 255.255.240.0

  (2) 外部路由归约

  外部路由归约是指通过再广播注入OSPF的多条路由归约成一条路由,同样外部路由的地址必须连续。路由归约通过“router ospf”下的子命令来完成,而且此命令仅在自治域边界路由器上有效:

  summary-address ip-address mask

  例如,路由器B注入了外部路由到OSPF域,注入的子网范围为126.1.96-127.为了进行路由归约,需要在路由器B上进行的操作为:

  RouterB#

  Router ospf 102

  Summary-address 126.1.96.0 255.255.224.0

  Redistribute bgp 20 metric 100 subnets

  上述命令使路由器B产生一条外部路由126.1.96.0 255.255.224.0,对BGP协议广播来的路由进行了归约。

  4. 广播外部路由到OSPF

  广播外部路由协议到OSPF是指从静态路由协议或其他动态路由协议中将路由广播到OSPF,变为OSPF的外部路由。为了广播路由到OSPF,在CISCO路由器需要执行的命令为:

  redistribute protocol [process-id] [metric value] [metric-type value] [subnets]

  "protocol"(协议)和 "process-id"(进程号)是指将要把路由广播到OSPF去的路由协议及其进程号。如果没有定义权值(metric),OSPF对由BGP广播来的路由,权值定义为1,其他路由协议广播来的路由,权值定义为20.如果子网(subnets)关键字没有指定,进行子网划分的路由将发生丢失。

  权值类型(metric-type)分为两种,外部类型1和外部类型2,其区别在于二者在一条路径上计算权值的方法不同:类型2中路由到达终点路由器的路径上权值不变;类型1 其权值不断累加,权值类型的默认值为2.

  例如,路由器A广播了两条外部路由到OSPF,路由R1以类型1广播,路由R2以类型2广播,到达路由器C时,路由R1的权值为X+Y+Z,而路由 R2的权值为X.两条静态路由12.28.110.0/24和128.10.0.0/16通过以太口E0进入路由器A,再广播到路由器B上。

  在CISCO路由器上需要进行的配置为:

RouterA# interface ethernet 0
Ip address 202.102.16.2 255.255.255.0
Interface serial 1
Ip address 202.102.18.1 255.255.255.0
Router ospf 102
Redistribute static metric 30 subnets
Redistribute connect subnets
Network 202.102.16.0 0.0.0.255 area 1
Network 202.102.18.0 0.0.0.255 area 0
Ip route 12.28.110.0 255.255.255.0 202.102.16.2
Ip route 128.10.0.0 255.255.0.0 202.102.16.2
RouterB# interface serial 0
Ip address 202.102.18.2 255.255.255.0
Router ospf 102
Network 202.102.18.0 0.0.0.255 area 0

  路由器A把两条静态路由广播给路由器B,命令“Redistribute static metric 30 subnets”中,权值30可以省略,OSPF广播的默认权值为20,但是关键字“subnets”不能省略,否则“Ip route 12.28.110.0 255.255.255.0 202.102.16.2”不能广播,因为其中有子网划分。

相关文章:

  • wpcomments post.php,垃圾评论带来的流量流失
  • H3C基本命令学习
  • Linux下oracle em安装,手动安装em(redhat 5/oracle 11g)
  • 马宁的Windows Mobile开发培训概述
  • oracle非归档恢复,非归档模式恢复数据库__oracle_ORA_DISK_channel_dbf_PROD__169IT.COM
  • 错误:文件被数字签名策略拒绝(File was rejected by digital signature policy)
  • Oracle数据所属表分区,oracle数据库表分区
  • 推荐两个免费下载Smartphone桌面主题的网站
  • matlab中产生对角阵,关于matlab中的diag函数(矩阵对角元素的提取和创建对角阵)
  • 找回“显示桌面” 图标 显示图标.scf
  • 查询oracle物化视图日志,oracle物化视图日志系列(一)
  • 使用Windows Mobile Test Framework进行Windows Mobile程序的自动化测试 - (2) 小试牛刀
  • linux cc脚本,LINUX:CentOS防CC攻击脚本
  • linux系统实用脚本,常用linux系统命令及简单小脚本
  • 调用JNI的程序 生成JAR包后的部署问题
  • 【跃迁之路】【735天】程序员高效学习方法论探索系列(实验阶段492-2019.2.25)...
  • css的样式优先级
  • ES10 特性的完整指南
  • Git同步原始仓库到Fork仓库中
  • node.js
  • SSH 免密登录
  • ucore操作系统实验笔记 - 重新理解中断
  • 关于springcloud Gateway中的限流
  • 力扣(LeetCode)21
  • 那些被忽略的 JavaScript 数组方法细节
  • 前端存储 - localStorage
  • 前端知识点整理(待续)
  • 使用 @font-face
  • 微信支付JSAPI,实测!终极方案
  • # Swust 12th acm 邀请赛# [ K ] 三角形判定 [题解]
  • (差分)胡桃爱原石
  • (初研) Sentence-embedding fine-tune notebook
  • (二)Linux——Linux常用指令
  • (附源码)springboot助农电商系统 毕业设计 081919
  • (九十四)函数和二维数组
  • (六)激光线扫描-三维重建
  • (五)MySQL的备份及恢复
  • (一)【Jmeter】JDK及Jmeter的安装部署及简单配置
  • (转)jQuery 基础
  • (转)德国人的记事本
  • (转)甲方乙方——赵民谈找工作
  • (转)如何上传第三方jar包至Maven私服让maven项目可以使用第三方jar包
  • .cfg\.dat\.mak(持续补充)
  • .form文件_SSM框架文件上传篇
  • .NET BackgroundWorker
  • .Net CF下精确的计时器
  • .Net的C#语言取月份数值对应的MonthName值
  • .NET性能优化(文摘)
  • @JSONField或@JsonProperty注解使用
  • [Android]RecyclerView添加HeaderView出现宽度问题
  • [bzoj 3124][sdoi 2013 省选] 直径
  • [C++]——带你学习类和对象
  • [C++随笔录] 红黑树
  • [Dxperience.8.*]报表预览控件PrintControl设置
  • [Electron]ipcMain.on和ipcMain.handle的区别