2021-2022-1数据通信技术

周玮、段恒利

目录

  • 1 应用型示范课程材料
    • 1.1 省级示范性课程申报书
    • 1.2 省级示范性课程中期材料
    • 1.3 数据通信技术课程大纲
    • 1.4 数据通信技术授课计划
    • 1.5 数据通信技术教案
  • 2 第一单元初识计算机网络
    • 2.1 1.1认知计算机网络
    • 2.2 1.2了解网络基础知识
  • 3 第二单元解构网络协议框架
    • 3.1 2.1 初识OSI参考模型
    • 3.2 2.2TCP/IP协议簇探究
  • 4 第三单元IPv4地址规划
    • 4.1 3.1初识IPv4地址
    • 4.2 3.2带子网划分的编址
  • 5 第四单元网络基础设备操作
    • 5.1 4.1 交换机的工作原理
    • 5.2 4.2路由器工作原理
  • 6 第五单元 搭建局域网
    • 6.1 5.1 玩转vlan技术(vlan的配置及应用)
    • 6.2 5.2打造无环的交换网络
    • 6.3 5.3链路聚合的配置及应用
  • 7 第六单元 如何实现网络间互联
    • 7.1 6.1 初识路由技术
    • 7.2 6.2 VLAN间路由调试
    • 7.3 6.3部署RIP
    • 7.4 6.4 深入研究OSPF协议
  • 8 第七单元 常用网络技术研究
    • 8.1 7.1 ACL技术的应用
    • 8.2 7.2NAT技术的实施
    • 8.3 7.3 DHCP的配置及应用
6.4 深入研究OSPF协议


项目6  如何实现网络间互联(6.4)OSPF协议的配置及应用

教学目的与要求:

1、           熟悉OSPF协议原理。

2、           熟悉OSPF邻居关系的建立过程。

3、           掌握OSPF协议的配置过程。

教学基本内容:

1、           OSPF协议的工作原理、基本特征。

2、           OSPF协议邻居关系的建立过程。

3、           OSPF协议的配置。

教学重点、难点:

1、           重点:OSPF协议的工作原理、邻居关系建立过程。

2、           难点:OSPF协议的报文类型、配置过程、路由条目的查看。

教学方法:多媒体讲授法、讨论法、信息化教学、上机操作

         

 

教学过程:

 

【回顾】:动态路由协议的分类?RIP协议的工作原理?配置过程?最大跳数hi多大?如何解决环路?

 

6.4任务四:深入研究OSPF协议

 

6.4.1  预备知识

 

(1)OSPF协议概述

 

OSPF协议是链路状态路由协议,在 IP 网络上,它通过收集和传递自治系统的链路状态来动态地发现并传播路由。当前OSPF协议使用的是第二版,最新的RFC是2328。

 

其特点如下:

 

u  适应范围 ——  OSPF 支持各种规模的网络,最多可支持几百台路由器。

 

u  区域划分 ——  OSPF 协议允许自治系统的网络被划分成区域来管理,区域间传送的路由信息被进一步抽象,从而减少了占用网络的带宽。

 

u  快速收敛 —— 如果网络的拓扑结构发生变化,OSPF 立即发送更新报文,使这一变化在自治系统中同步。

 

u  组播发送 ——  OSPF在有组播发送能力的链路层上以组播地址发送协议报文,即达到了广播的作用,又最大程度的减少了对其他网络设备的干扰。

 

u  子网掩码 —— 由于  OSPF 在描述路由时携带网段的掩码信息,所以OSPF协议不受自然掩码的限制,对VLSM 提供很好的支持。

 

u  路由分级 ——  OSPF 使用 4 类不同的路由,按优先顺序来说分别是:区域内路由、区域间路由、第一类外部路由、第二类外部路由。

 

u  无自环 —— 由于  OSPF 通过收集到的链路状态用最短路径树算法计算路由,故从算法本身保证了不会生成自环路由。

 

u  等值路由 ——  OSPF 支持到同一目的地址的多条等值路由。

 

u  支持验证 —— 它支持基于接口的报文验证以保证路由计算的安全性。

 

(2) OSPF的基本概念

 

u  Router ID

 

OSPF协议使用一个被称为Router ID的32位无符号整数来唯一标识一台路由器。基于这个目的,每一台运行OSPF的路由器都需要一个Router ID。这个Router ID一般无需手工配置,系统支持自动从当前所有接口的IP地址自动选举一个IP地址作为Router ID。但是,我们建议在网络规划完成之后,对所有的OSPF的router ID也进行规划。

 

u  协议号

 

OSPF 协议用IP 报文直接封装协议报文,协议号是89。

 

u  接口

 

运行OSPF协议的接口;周期性的发送协议报文(Hello包),查找发现邻居。

 

u   指定路由器(DR)和备份指定路由器(BDR)

 

   广播网络中为了减少OSPF同步链路状态信息的流量,根据接口优先级自动选举一个DR和BDR来代表这个网络。

 

u  链接状态数据库(Link State Database)

 

      包含了网络中所有路由器的链接状态。它表示着整个网络的拓扑结构。

 

u  Neighboring Routers(邻居路由器)

 

      直连网络中的OSPF路由器根据hello包自动形成邻居关系。

 

u  Adjacency(邻接关系)

 

     在邻居关系的基础上,同步链路状态信息数据库后形成邻接关系。

 

(3)OSPF的报文类型

 

OSPF的报文类型一共有五种:

 

u  HELLO报文(Hello  Packet):最常用的一种报文,周期性的发送给本路由器的邻居。内容包括一些定时器的数值,DR,BDR,以及自己已知的邻居。

 

u  DDP报文(Database  Description Packet):两台路由器进行数据库同步时,用DD报文来描述自己的LSDB,内容包括LSDB中每一条LSA的摘要(摘要是指LSA的HEAD,通过该HEAD可以唯一标识一条LSA)。这样做是为了减少路由器之间传递信息的量,因为LSA的HEAD只占一条LSA的整个数据量的一小部分,根据HEAD,对端路由器就可以判断出是否已经有了这条LSA。

 

u  LSR报文(Link  State Request Packet):两台路由器互相交换过DD报文之后,知道对端的路由器有哪些LSA是本地的LSDB所缺少的或是对端更新的LSA,这时需要发送LSR报文向对方请求所需的LSA。内容包括所需要的LSA的摘要。

 

u  LSU报文(Link  State Update Packet):用来向对端路由器发送所需要的LSA,内容是多条LSA(全部内容)的集合。

 

u  LSAck 报文(Link  State Acknowledgment Packet):用来对接收到的LSU报文进行确认。内容是需要确认的LSA的HEAD(一个报文可对多个LSA进行确认)。

 

(4)OSPF的“分层路由”

 

OSPF协议引入“分层路由”的概念,将网络分割成一个“主干”连接的一组相互独立的部分,这些相互独立的部分被称为“区域” (Area),“主干”的部分称为“主干区域”。每个区域就如同一个独立的网络,该区域的OSPF路由器只保存该区域的链路状态。每个路由器的链路状态数据库都可以保持合理的大小,路由计算的时间、报文数量都不会过大。

 

(5) OSPF的工作过程(1)

 

       运行OSPF协议,发现邻居;

 

       交互链路状态信息(LSA),同步链路状态数据库(LSDB),建立邻接关系;

 

       运用SPF算法,计算最短路径树,生成路由。

 

(6)OSPF的工作过程(2)

 

 

A、OSPF的工作过程

 

B、邻居的发现过程

 

u  DR、BDR的选举

 

u  建立邻接关系

 

u  LSA更新

 

u  计算最优路由

 

C、邻居关系

 

u  运行OSPF的接口周期性发送

 

D、OSPF的邻居表的建立过程

  

E、广播网络里的LSA同步问题

 

广播网络中,每个邻居之间都发送LSA,会造成不必要的浪费(网络带宽、CPU资源等)。

 

F、DR 和 BDR作用

 

为了减少在局域网上的OSPF协议报文的流量,每个网段都会选出DR和BDR来代表这个网络。每个Router都会和DR,BDR同步LSA,建立邻接关系。

 

G、DR and BDR的选举

 

n  网络中最先启动的路由器被选举为DR;

 

n  同时启动、或重新选举时,则看接口优先级(0-255),优先级最高的被选举为DR;

 

n  如果前两者相同,最后看路由器ID,路由器ID最高的被选举成DR ;

 

n  DR选举是非抢占的,除非重启OSPF进程。

 

H、OSPF的邻接的建立过程 (1)

 

I、OSPF的邻接的建立过程 (2)

 

J、Flooding(洪泛)过程(1)

 

点对点链路状态发生变化路由器用224.0.0.5将拓扑改变消息通告给邻居

 

K、Flooding(洪泛)过程(2)

 

广播类型链路状态发生变化:路由器A用224.0.0.6通告给DR,DR用224.0.0.5通告给其他路由器

 

(7)OSPF协议计算过程

  

 

 

6.4.2 OSPF协议的配置

 

(1)OSPF配置步骤(1)

 

n   启动OSPF协议

 

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

 

n   配置路由器的router-id

 

ZXR10(config-router)# router-id <  ip-address>

 

建议使用loopback地址作为路由器的Router-ID;

 

为了确保router-id生效,建议重启进程,clear ip ospf process < process-id>

 

n   配置运行OSPF的接口及所在区域

 

ZXR10(config-router)# network < ip-address>  < wildcard-mask> area < area-id>

 

n   重分发其他路由协议

 

ZXR10(config-router)# redistribute < protocol>connected,static,RIP,bgp-ext,bgp-int,IS-IS

 

n   通告OSPF缺省路由

 

ZXR10(config-router)# notify default route [  always] [ metric <metric-value> ] [ metric-type< type> ] [  route-map < map-tag> ]

 

 

 

【思考】:不通告会怎样呢?请同学们试试,从实验得出结论……

 

当本路由器通过其他协议或配置静态路由方式获得一条缺省路由时,需要将其通告。

 

(2) OSPF配置步骤(2)

 

n   配置OSPF的区域类型

 

ZXR10(config-router)# area < area-id>  stub

 

ZXR10(config-router)#area  < area-id> stub no-summary

 

A、配置区域间的路由聚合(只能在ABR上做路由聚合)

 

ZXR10(config-router)#area < area-id>  range < ip-address> < net-mask> [advertise  |not-advertise]

 

B、配置路由重分发时的路由聚合

 

ZXR10(config-router)# summary-address <  ip-address> <net-mask>

 

C、配置多路径负载分担

 

ZXR10(config-router)#maximum-paths  < number>

 

n   OSPF的查询命令

 

A、查看OSPF邻居

 

ZXR10(config)# show ip ospf neighbor

 

B、查看OSPF接口

 

ZXR10(config-)# show ip ospf   interface

 

C、查看OSPF数据库

 

ZXR10(config)# show ip ospf   database

 

D、查看OSPF路由表

 

ZXR10(config)# show ip route ospf

 

(3)OSPF单区域配置实例

 


 

要求:R1\R2\R3运行OSPF协议,且所有接口都在area 0中。

 

u  R1配置

 

R1(config)#interface fei_1/1

 

R1(config-if)# ip address 30.0.0.1 255.255.255.252

 

R1(config-if)# exit

 

R1(config)# router ospf 10

 

R1(config-router)# network 30.0.0.0 0.0.0.3 area 0

 

R1(config-router)# exit

 

R1(config)# show ip ospf

 

OSPF 10 Router ID 30.0.0.1 enable

 

Enabled for 00:00:21,Debug on

 

Number of areas 1, Stub 0, Transit 0

 

Number of interfaces 1

 

……

 

Area 0.0.0.0 enable

 

Enabled for 00:00:05

 

Area has no authentication

 

Times spf has been run 1

 

Number of interfaces 1. Up 1

 

 

 

u  R2配置

 

配置R2,以loopback地址建立OSPF连接,首先必须配置一个loopback地址,然后再启动OSPF进程

 

R2(config)# interface loopback1

 

R2(config-if)# ip adderss 1.1.1.2 255.255.255.255

 

R2(config-if)# exit

 

R2(config)# interface fei_1/1

 

R2(config-if)# ip address 30.0.0.2 255.255.255.252

 

R2(config-if)# exit

 

R2(config)# interface fei_1/2

 

R2(config-if)# ip address 30.0.1.2 255.255.255.252

 

R2(config-if)# exit

 

R2(config)# router ospf 10

 

R2(config-router)# network 30.0.0.0 0.0.0.3 area 0

 

R2(config-router)# network 30.0.1.0 0.0.0.3 area 0

 

R2(config-router)# exit

 

R2# show ip ospf neighbor             

 

 OSPF  Router with ID(1.1.1.2) (Process ID 1)

 

Neighbor 30.0.0.1

 

      In the  area 0.0.0.0

 

      via  interface fei_1/1 30.0.0.2

 

       neighbor is BDR

 

      State  FULL, priority 1, Cost 1

 

      Queue  count : Retransmit 0, DD 0, LS Req 0

 

      Dead  time: 00:00:37 Options:0x42

 

      In  Full State for 00:08:12

 

 

 

u  R3配置

 

R3(config)# interface loopback1

 

R3(config-if)# ip adderss 1.1.1.3  255.255.255.255

 

R3(config-if)# exit

 

R3(config)# interface fei_1/1

 

R3(config-if)# ip address 30.0.1.1  255.255.255.252

 

R3(config-if)# exit

 

R3(config)# router ospf 10

 

R3(config-router)# network 30.0.1.0 0.0.0.3  area 0

 

R3(config-router)# exit

 

R3(config)# show ip route

 

IPv4 Routing Table:

 

Dest      Mask                  Gw      Interface Owner pri metric

 

1.1.1.3  255.255.255.255 1.1.1.3 loopback1 address 0 0

 

30.0.0.0  255.255.255.252 30.0.1.2 fei_1/1   ospf  110 2

 

30.0.1.0  255.255.255.252 30.0.1.1 fei_1/1    direct 0 0

 

30.0.1.1    255.255.255.255 30.0.1.1 fei_1/1   address 0 0

 

 

 

(4)OSPF区域划分的解决方案

 

A、OSPF区域划分的原则

 

1、      区域内的详细拓扑信息不向其他区域发送,区域间传递抽象的路由信息,而不是详细的描述拓扑结构的链路状态信息。

 

2、      每个区域都有自己的LSDB ,不同区域的LSDB是不同的;

 

3、      路由器为每一个自己所连接的区域维护一个单独的LSDB,详细链路状态信息不发布到区域以外,因此LSDB的规模大大缩小了。

 

4、      非骨干区域之间不允许直接相互发布区域间路由信息;

 

5、      骨干区域负责在非骨干区域之间发布由区域边界路由器汇总的路由信息

 

6、      非骨干区域需要直接连接到骨干区域,否则就要建立虚链路。

 

B、会识别四种路由器

 

u  ABR: 区域边界路由器,它是指连接到多个区域的路由器,并且至少有一个接口在骨干区域。

 

u  BBR:骨干路由器,它是指至少有一个端口连接到骨干区域的路由器,包括所有的ABR和所有端口都在骨干区域的路由器。

 

u  IAR:内部路由器,它是指所有接口都在一个区域的路由器

 

u  ASBR:自治系统边界路由器,它是指和其他AS中的路由器交换路由信息的路由器。

 

(5) OSPF多区域与重分发举例

 

 

【要求】:

 

1、SW1、SW4为3层交换机,各区域的area编号如图所示;

 

2、要求通过在交换机和路由器上部署OSPF协议,使得SW1能够以源地址代替11.11.11.11 ping通SW4上的loopback地址44.44.44.44;SW4能够以源地址代替44.44.44.44 ping通SW4上的loopback地址11.11.11.11;

 

3、SW1、SW4的loopback地址重发布进OSPF进程。

 

【参考代码】:

 

(1)SW1配置

 

hostname SW1 

 

vlan list 12 

 

interface loopback1

 

ip address 11.11.11.11 255.255.255.255 

 

interface vlan 12

 

ip address 10.0.12.1 255.255.255.0 

 

interface fei_1/1

 

switchport access vlan 12

 

router ospf 1 router-id 1.1.1.1

 

network 10.0.12.0 0.0.0.255 area 12

 

redistribute connected

 

(2)R2配置

 

hostname R2

 

int gei_0/1

 

ip add 10.0.12.2 255.255.255.0

 

int gei_0/2

 

ip add 10.0.23.2 255.255.255.0

 

router ospf 1

 

network 10.0.12.0  0.0.0.255 area 12

 

network 10.0.23.0  0.0.0.255 area 0

 

(3)R3 配置与R2大体相同,修改ip即可

 

(4)SW4 配置

 

hostname SW4

 

vlan list 34

 

int loopback1

 

ip add 44.44.44.44 255.255.255.255

 

int vlan 34

 

ip add 10.0.34.4 255.255.255.0

 

int fei_1/1

 

switchport access vlan 34

 

router ospf 1

 

router-id 4.4.4.4

 

network 10.0.34.0  0.0.0.255  area 34

 

redistribute connected

 

(5)SW1 路由信息

 

show ip route/show ip route ospf

 

(6)R2 邻居和接口信息

 

show ip ospf neighbor/ show ip ospf interface

 

(7)R2的路由信息

 

show ip route ospf

 

(8)R3 路由信息

 

show ip route

 

6.4.3 任务拓展

 

完成P132图6-39,在4台路由器上都配置OSPF协议,完成其互通。

 

 

 

 

 

 
 

 

 

课程思政元素引入:最优算法的选择,就比如我们遇到问题,首先要罗列出几种可能的结果,然后利用各自的知识找出适合问题解决的最优的方法,方法对了,磨刀不费砍柴功,这样做事也会事半功倍。

 

DR和BDR的选举:团体中必须要有领头羊。以一个班级管理为例,如果每个路由器就像班级的同学,学校发通知,通过两两交互,那可能会造成资源和时间的浪费。那怎么办?所以这个时候必须选出来班长和副班长,由上一级的通知下达到班里以后,就可以通过班长和副班长下达到班上的同学,与同学之间形成LSA关系,不需要同学之间两两相互转达,减少资源浪费。这里的班长和副班长同DR和BDR的作用时类似的。对于一个网络来说,对于一个团体来说,通过民主选举找出能代表这个团队的人物来负责。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 
 

思考题、讨论、作业、技能操作:

 

1、完成“思考与练习”第8-9题。

 

2上机完成 “任务拓展”项目图6-39。

 

3、上机完成课题例题的验证。

 

4、下次课预习:项目7  常用网络技术的研究

 

 

 
 

参考资料(含参考书籍、文献、网络资料):

 

1、许圳彬,王田甜,《IP网络技术》,北京:人民邮电出版社,2012.8

 

2、张俊星,黄成哲,《数据通信技术》,人民邮电出版社,2019.7

 
 

教学小结:

 

本节课学习了OSPF协议的基本原理、邻居关系建立过程、基本配置、使用的条件和原则、配置命令及其过程。

 

1、             OSPF协议的原理。

 

2、             OSPF协议的配置过程。

 

教学后记:

 

 OSPF协议相对于rip来说,是针对rip的劣势而产生的内部网关协议。