08     IGRPOSPF

8.1   EIGRP介绍

8.1.1          EIGRP的特征

Cisco私有的高级距离矢量路由协议。是IGRP的增强型版本(Enhanced Interior Gateway Routing Protocol ,增强型内部网关路由协议 )

8.1.2          EIGRP

1           邻居表(Neighbors Table):
运行EIGRP路由协议并与这个路由器建立邻接(Adjacency)关系的直连路由器列表。存储用哪个接口连接的下一跳路由器。

2           拓扑表(Topology Table):
从每个EIGRP邻居学习到的所有路由列表。存储的通过每个邻居到达目标网络的FDAD值。

FDFeasible Distance,可行距离):从自己通过某个邻居到达目标网络的度量值总和。

ADAdvertised Distance,通告距离):邻居通告的从自己到达目标网络的度量值总和。

3           路由表(Routing Table):
EIGRP拓扑表或其他路由进程中得到的最佳路由列表。存储最佳路由。

 

8.1.3          EIGRP包类型

Hello
建立邻居关系(Establish neighbor relationships);

Update
发送路由更新(Send routing updates);

Query
向邻居询问相关路由信息(Ask neighbors about routing  information);

Reply
回复对查询的相关路由信息(Respond to query about routing information);

ACK
确认一个可靠的数据包(Acknowledge a reliable packet

8.1.4          EIGRP的度量值

1           EIGRP度量值的计算参数:默认使用带宽(Bandwidth)、延迟(Delay)。还可以使用可靠性、负载、MTU

2           EIGRP Metric=107/链路最低带宽(单位为Kbps+链路的总延迟/10*256

8.1.5          EIGRP的关键技术

8.1.6          邻居的发现和恢复

1           EIGRPHello包:

Hello包的目标地址为224.0.0.10Hello包中的K值和AS号不匹配将不能成为邻居。认证也必须要匹配。

8.1.7          EIGRPHello计时器

在大于等于1.544Mbps的链路上,默认Hello Time=5sHoldtime(保持时间)=15s

在小于1.544Mbps的链路上,默认Hello Time=60sHoldtime(保持时间)=180s

8.1.8          EIGRP建立邻接(Adjacency)的条件

Hello包必须通过接口的主地址(Primary Address)来传输;

Hello包中的AS号和K值必须匹配才能成为邻接;

认证的口令必须要匹配;

 

8.1.9          EIGRP可靠传输协议(Reliable Transport ProtocolRTP

1           EIGRP的可靠性

2           EIGRP的重传策略(Retransmission Policy

RTORetransmission Timeout,重传超时)=SRTT(平均往返时间)*6RTO<200ms,则RTO使用200msRTO>5000ms,则RTO使用5000ms

3           EIGRP的传输机制

EIGRP传输的Window=1,(Stop and wait,停等机制)

4           EIGRP邻居的重置

8.1.10      DUAL有限状态机制(Finite-State MachineFSM

1           DUAL术语

DUAL:弥散更新算法。用于在EIGRP拓扑表中计算最佳路由的路由算法。

2           DUAL有限状态机制的处理过程

3           EIGRPSuccessor
在所有通过邻居的路径中选择FD值最小的路径。

4           EIGRPFS
在所有非SUCCESSOR路径中选择AD值小于SUCCESSOR路径FD值的路径作为FS

8.1.11      DUAL实例

8.1.12      协议依赖模块(PDM

8.1.13      配置和检查EIGRP

8.1.14      配置EIGRP

Router(config)#router eigrp [AS(1-65535)]    (保证每个路由器上AS号相同)

Router(config-router)#network [网络号] [通配符掩码]

通配符掩码(Wildcard Mask):也称为反掩码。用0表示检查与之对应的地址位的值;用1表示忽略与之对应的地址位的值。

Route(config-router)#passive-interface [接口]           

如果在RIP路由进程中使用此命令此接口将不发送也不接收RIP信息如果在EIGRP进程中使用此接口将不发送EIGRP信息但可以接收EIGRP信息。

8.1.15      EIGRP检查命令

1     #show ip eigrp neighbors      (查看EIGRP的邻居表)

2     #show ip route eigrp             (D)

3     #show ip protocols

4     #show ip eigrp interface        (查看路由器上哪些接口运行了EIGRP进程)

5     #show ip eigrp topology        (查看路由器的拓扑表)

6     #show ip eigrp traffic           (查看EIGRP的流量)

7     #debup eigrp packet              (时事查看EIGRP数据包传递过程)

8.1.16      8.3.3  EIGRP的默认路由

1     先创建一个静态默认路由到ISP

2     把连接到ISP的网络地址通过EIGRP通告到其他路由器;

3     Router(config)#ip default-network [连接ISP的主网的网络地址]

8.1.17      8.3.4  EIGRP的路由汇总

1     自动汇总              router#auto-summary        (默认打开)

2     手工汇总:

       If)#ip summary-address eigrp [AS] [汇总的网络地址] [子网掩码]

8.1.18      EIGRP的认证

l  在全局模式下定义一个keychain
RouterX(config)#key chain [链名称]

l  指定一个Key-id
RouterX(config-keychain)#key [key-id]

l  指定认证口令:
RouterX(config-keychain-key)#key-string [口令]

l  在接口指定认证方式:
RouterX(config-if)#ip authentication mode eigrp [autonomous-system] md5

l  在接口指定认证的keychain

RouterX(config-if)#ip authentication key-chain eigrp [AS] [key chain名称]

8.2  OSPF介绍

1           链路状态路由协议:OSPFOpen Shortest Path First,开放的最短路径优先)协议是一个开放标准的,支持多厂商网络环境的链路状态路由协议。

链路状态路由协议的工作过程:

1)  每个运行链路状态路由协议的路由器学习关于自己的每个直连网络;

2)  每个路由器互送Hello包给直连网络上的邻居;

3)  每个路由器使用LSALink State Advertised,链路状态通告)建立每个直连链路的状态;

4)  每个路由器将自己创建的LSA泛洪(Flood)给所有的邻居,邻居把收到的LSA存储到链路状态数据库(Link State DataBaseLSDB);

5)  每个路由器使用LSDB来获得一个完整的拓扑图,并计算到达每个目标网络的最佳路径。

 

链路状态特点:

1)  链路状态路由协议能够比距离矢量路由协议识别到更多的网络信息;

2)  链路状态路由协议创建一个完整的拓扑图;所以能够精确匹配路由;

3)  CPU和内存的需求高。

 

 

2         链路和链路状态:

链路(Link):参与OSPF进程的路由器接口

链路状态(Link State, LS):运行OSPF路由协议的路由器接口的状态信息,包括网络地址、IP地址、网络类型、链路的成本、邻居信息。

链路状态通告(Link State AdvertisedLSA):发送链路状态的数据;

链路状态数据库(Link State DataBaseLSDB):接收到所有链路状态通告(LSA)的集合;也被称为拓扑数据库;

最短路径优先算法(Shortest Path FirstSPF算法):在LSDB中计算最佳路径的算法;

3         链路状态的数据结构

1)  邻居表:也叫邻接数据库(Adjacency Database

2)  拓扑表:也叫拓扑数据库;也叫链路状态数据库(Link-state DatabaseLSDB

3)  路由表:也叫转发数据库(Forward Database)。

4         链路状态路由协议的网络分层

       1)区域的等级:

主干区域(Backbone Area),还叫传输区域(Transit Area

标准区域:也叫非主干区域。

在区域内的路由器与路由器交换LSA,形成相同的LSDB;在区域之间交换路由信息,所以所有其他非主干区域必须通过物理链路或者逻辑链路(Virtual Link,虚链路)来连接到主干区域。

2OSPF区域的设计原则:

A、所有非主干区域必须直接连接到主干区域(Area 0

BOSPF区域的分界在路由器上,即同一物理链路必须属于同一区域。

       3OSPF区域化设计的优点:

A、最小化路由条目。因为区域与区域之间交换路由信息,所以非主干区域可以创建到主干区域的默认路由来最小化路由条目;可以通过将非主干区域配置为末节区域(Stub Area)实现到主干区域的默认路由。

B、区域内链路状态的改变只影响本地区域的路由器。区域内链路状态的改变是通过泛洪(FloodLSA来影响本地区域的路由器,区域内链路状态改变的LSA不会泛洪到其他区域,不会影响到其他区域的路由器。

4)区域的术语

       主干路由器:在区域0中的路由器;

       内部路由器:在标准区域中的路由器;

       区域边界路由器(Area Border RouterABR):负责将标准区域连接到主干区域的路由器。

       自治系统边界路由器(Autonomous System Border RouterASBR):将OSPF管理域连接到其他自治系统的路由器。

5         OSPF的邻接

(1)       在点到点的WAN链路上:两个邻居完全邻接(Full Adjacency

(2)       多路访问(Multiaccess)网络:邻居只与DRBDR建立完全邻接。

DRDesignated Router,指定路由器):负责在多路访问网络中与其他路由器建立邻接关系的路由器;

BDRBackup designated Router,备份指定路由器):对DR的备份。

DRother(其他路由器):除DRBDR之外的其他路由器,DRotherDRother之间不能形成邻接关系,形成是的邻居关系。

6         OSPF计算

SPF算法:

7         LSA的操作

LSALink-state Advertise,链路状态通告)

8         OSPF的包类型

类型1Hello

类型2DBD/DDP包(Database Description 数据库描述包):LSDB汇总摘要信息。

类型3LSR包(Link-state Request,链路状态请求包):

类型4LSU包(Link-state Update,链路状态更新包):

类型5LSAck:链路状态确认包。

9         OSPF数据包的头部格式:

Hello包头部格式:

1)  版本:OSPFv2

2)  包类型:Type 1

3)  包总长度:

4)  Router IDRID):表示发出数据包的路由器,使用所有逻辑接口的最高IP地址组成,如果没有逻辑接口则使用物理接口最高IP地址;

5)  Area ID:区域ID,指出发出数据包的接口所在的区域;

6)  Checksum:校验

7)  Authentication Type:认证类型,用0x0000表示不使用认证;用0x0001表示使用明文的认证;用0x0002表示使用MD5的认证;

8)  Authentication:认证的口令

2           邻居关系——Hello

Hello包的目标地址为224.0.0.5

Hello包的大小为50byte

默认为:Hello Time=10s            Dead Interval Time(死亡间隔时间)=40s

OSPF建立邻居关系的条件:

1Area ID必须一致;2Hello TimeDead Interval Time必须一致;3)认证的方式和口令必须一致;4Stub Flag(末节区标志必须一致);5)连接两台路由器的接口的OSPF网络类型必须一致。(以太网接口默认的OSPF网络类型为Broadcast;串行接口并采用默认封装的OSPF网络类型为Point to Point

3           建立双向通信(一阶段)

经过三个状态:

1)  Down state      (失效状态)

2)  Init State         (初始状态)

3)  2-way state (双向状态)

4           发现网络路由(二阶段)

4Exstart state      (预启动状态):选择主(Master/(Slave)路由器的状态,接口RID较大的作为Master路由器先发送DBD包;接口RID较小的作为Slave路由器后发送DBD包。

5Exchange state (交换状态):互送DBD包的过程。

5     增加链路状态的条目(三阶段)

       6Loading state (加载状态):

       7Full state         (完全邻接状态):LSDB完全同步的状态。

6     维护路由信息

       1)网络发生变化的时候,发生变化的路由器通过LSU用地址224.0.0.6发送DRBDRDR再将此LSU224.0.0.5发送给所有与自己建立了邻接关系的路由器。

       2)网络没有发生变化的时候,由产生LSA的源路由器每30分钟洪泛(Flood)到所有与自己建立了邻接关系的路由器。

8.6   配置OSPF路由协议

8.6.1       OSPF的基本配置

Router(config)#router ospf [process ID,进程号,1-65535]

Process Identifier(进程ID):本地有意义,和其他路由器的进程ID可以不一致;用于标识唯一一个OSPF数据库。

Router(config-router)#network [网络号/地址] [通配符掩码] area [0-232]

通配符掩码的使用:

0表示检查与之匹配的地址位的值;用1来表示忽略与之匹配的地址的值。

10    检查OSPF的配置

1           #show ip protocols

2           #show ip route ospf      (O)

OSPF不支持自动汇总,只支持手工汇总。

OSPF的度量值是用成本(COST)来表示的。Cisco IOS下,COST=108/带宽(单位为bps

3     #show ip ospf  interface [接口]   (查看接口运行OSPF的情况)

4     #show ip ospf        (查看路由器上OSPF的运行情况)

5     #show ip ospf neighbors        (查看OSPF的邻居信息)

6     #show ip ospf database          (查看OSPFLSDB

11    LSA的类型:共11

1)、Type 1 LSA:路由器LSARouter LSA),由区域内所有路由器发出;

2)、Type 2 LSA:网络LSANetwork LSA),由DR路由器发出;

3)、Type 3 LSA:汇总网络LSASummary Network LSA):由ABR(区域边界路由器)发出;

7     #debug ip ospf packets          (时事查看OSPF包的运行情况)

8     #debug ip ospf events           (时事查看OSPF的事件信息)

8.7   OSPF的网络类型

8.7.1       点到点网络(Point to point

              不选举DRBDR

8.7.2       广播多路访问网络(Broadcast Multiaccess

              需要选择DRBDR

              使用接口的优先级最高的路由器作为该网段的DR,运行OSPF进程的接口优先级默认为1,可以手动调整接口的优先级:

-if)#ip ospf priority [0~255]

优先级最高的路由器成为DR,次高的为BDR,其他路由器为DRother。优先级为0则永远不能当选为DRBDR

重启OSPF的路由进程:#clear ip ospf process

如果优先级完全一致,则选择RID最大的路由器作为DR,次大的为BDR,其他路由器为DRother

RIDRouter ID):由路由器逻辑接口的最高IP地址组成,如果没有逻辑接口则使用物理接口最高IP地址组成。

8.7.3          NBMANon-Broadcast Multiacess,非广播多路访问)

手工指定邻居、手工指定DRBDR

NBMA网络中的五种模式

8.8     OSPF的配置选项

8.8.1          指定OSPFRID

Router(config-rouer)#router-id [RID地址]

8.8.2          配置OSPF的默认路由

Router(config-router)#default-information originate [always]  [metric]