I come, I see, I conquer

                    —Gaius Julius Caesar

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

 

一、路由器接口

  • 管理端口

     路由器包含用于管理路由器的物理接口。这些接口也称为管理端口。与以太网接口和串行接口不同,管理端口不用于转发数据包。最常见的管理端口是控制台端口。控制台端口用于连接终端(多数情况是运行终端模拟器软件的 PC),从而在无需通过网络访问路由器的情况下配置路由器。对路由器进行初始配置时,必须使用控制台端口。

     另一种管理端口是辅助端口。并非所有路由器都有辅助端口。有时,辅助端口的使用方式与控制台端口类似,此外,此端口也可用于连接调制解调器。本课程不会涉及辅助端口。

     右图中显示了路由器上的控制台端口和 AUX(辅助)端口。

  • 路由器接口

     接口一词在 Cisco 路由器中表示主要负责接收和转发数据包的路由器物理接口。路由器有多个接口,用于连接多个网络。通常,这些接口连接到多种类型的网络,也就是说需要各种不同类型的介质和接口。路由器一般需要具备不同类型的接口。例如,路由器一般具有快速以太网接口,用于连接不同的 LAN;还具有各种类型的 WAN 接口,用于连接多种串行链路(其中包括 T1、DSL 和 ISDN)。右图中显示了路由器上的快速以太网接口和串行接口。

     与 PC 上的接口一样,路由器的端口和接口也位于路由器的外部。这样的位置对于连接相应的网络电缆和接口非常方便。

  • 接口分属不同的网络

    如下图所示,路由器上的每个接口都是不同 IP 网络的成员或主机。每个接口必须配置一个 IP 地址以及对应网络的子网掩码。Cisco IOS 不允许同一路由器上的两个活动接口属于同一网络。

     路由器接口主要可分为两组:
     LAN 接口 - 如以太网接口和快速以太网接口
     WAN 接口 - 如串行接口、ISDN 接口和帧中继接口

  • LAN 接口

     顾名思义,LAN 接口用于将路由器连接到 LAN,如同 PC 的以太网网卡用于将 PC 连接到以太网 LAN 一样。类似于 PC 以太网网卡,路由器以太网接口也有第 2 层 MAC 地址,且其加入以太网 LAN 的方式与该 LAN 中任何其它主机相同。例如,路由器以太网接口会参与该 LAN 的 ARP 过程。路由器会为对应接口提供 ARP 缓存、在需要时发送 ARP 请求,以及根据要求以 ARP 回复作为响应。

     路由器以太网接口通常使用支持非屏蔽双绞线 (UTP) 网线的 RJ-45 接口。当路由器与交换机连接时,使用直通电缆。当两台路由器直接通过以太网接口连接,或 PC 网卡与路由器以太网接口连接时,使用交叉电缆。

  • WAN 接口

     WAN 接口用于连接路由器与外部网络,这些网络通常分布在距离较为遥远的地方。WAN 接口的第 2 层封装可以是不同的类型,如 PPP、帧中继和 HDLC(高级数据链路控制)。与 LAN 接口一样,每个 WAN 接口都有自己的 IP 地址和子网掩码,这些可将接口标识为特定网络的成员。

     注:MAC 地址用在 LAN 接口(如以太网接口)上,而不用在 WAN 接口上。但是,WAN 接口使用自己的第 2 层地址(视技术而定)。第 2 层 WAN 封装类型和地址将在后续课程介绍。

  • 路由器接口

     如下图所示的路由器有四个接口。每个接口都有第 3 层 IP 地址和子网掩码,表示该接口属于特定的网络。以太网接口还会有第 2 层以太网 MAC 地址。

     WAN 接口使用多种不同的第 2 层封装。Serial 0/0/0 使用的是 HDLC,而 Serial /0/1 使用的是 PPP。将 IP 数据包封装到数据链路帧中时,对于第 2 层目的地址,这两个串行点对点协议都会使用广播地址。

     在实验室环境中,可用于实验操作的 LAN 和 WAN 接口数量会受到限制。而在 Packet Tracer 中,则可以灵活地创建更为复杂的网络设计。


 

、路由器和网络层

  • 路由器和网络层

     路由器的主要用途是连接多个网络,并将数据包转发到自身的网络或其它网络。由于路由器的主要转发决定是根据第 3 层 IP 数据包(即根据目的 IP 地址)做出的,因此路由器被视为第 3 层设备。作出决定的过程称为路由。

     路由器在收到数据包时会检查其目的 IP 地址。如果目的 IP 地址不属于路由器直连的任何网络,则路由器会将该数据包转发到另一路由器。每个路由器在收到数据包后,都会搜索自身的路由表,寻找数据包目的 IP 地址与路由表中网络地址的最佳匹配。如果找到匹配项,就将数据包封装到对应外发接口的第 2 层数据链路帧中。数据链路封装的类型取决于接口的类型,如以太网接口或 HDLC 接口。

     最后,数据包到达与目的 IP 地址相匹配的网络中的路由器。

  • 路由器工作在第 1、第 2 和第 3 层

     路由器在第 3 层做出主要转发决定,但正如我们前面所见,它也参与第 1 和第 2 层的过程。路由器检查完数据包的 IP 地址,并通过查询路由表做出转发决定后,它可以将该数据包从相应接口朝着其目的地转发出去。路由器会将第 3 层 IP 数据包封装到对应送出接口的第 2 层数据链路帧的数据部分。帧的类型可以是以太网、HDLC 或其它第 2 层封装 - 即对应特定接口上所使用的封装类型。第 2 层帧会编码成第 1 层物理信号,这些信号用于表示物理链路上传输的位。

 

 

三、配置和编址

     在设计新网络或规划现有网络时,请将网络记录下来。至少要绘制一幅指示物理连接的拓扑图,以及一张列出以下信息的地址表:
     设备名称
     设计中用到的接口
     IP 地址和子网掩码
     终端设备(如 PC)的默认网关地址

  • 填写地址表

     下图中显示了一个网络拓扑,其中的设备相互连接且配置有 IP 地址。该拓扑下面是一张用于记录网络的表。表中已填写了部分用于记录网络的数据(设备、IP 地址、子网掩码和接口)。

     路由器 R1 和主机 PC1 的记录已填好。请将表格下方的 IP 地址拖至对应的空白位置,从而将表格和图补充完整。

 

 

四、构建路由表

  • 路由表简介

     路由器的主要功能是将数据包转发到目的网络,即转发到数据包目的 IP 地址。为此,路由器需要搜索存储在路由表中的路由信息。

     路由表是保存在 RAM 中的数据文件,其中存储了与直连网络以及远程网络相关的信息。路由表包含网络与下一跳的关联信息。这些关联告知路由器:要以最佳方式到达某一目的地,可以将数据包发送到特定路由器(即在到达最终目的地的途中的“下一跳”)。下一跳也可以关联到通向最终目的地的外发或送出接口。

     网络/送出接口关联还可以表示 IP 数据包的目的网络地址。这种关联发生在与路由器直连的网络。

     直连网络就是直连到路由器某一接口的网络。当路由器接口配置有 IP 地址和子网掩码时,此接口即成为该相连网络的主机。接口的网络地址和子网掩码以及接口类型和编号都将直接输入路由表,用于表示直连网络。路由器若要将数据包转发到某一主机(如 Web 服务器),则该主机所在的网络应该是路由器的直连网络。

     远程网络就是间接连接到路由器的网络。换言之,远程网络就是必须通过将数据包发送到其它路由器才能到达的网络。要将远程网络添加到路由表中,可以使用动态路由协议,也可以通过配置静态路由来实现。动态路由是路由器通过动态路由协议自动获知的远程网络路由。静态路由是网络管理员手动配置的网络路由。

     以下比喻可能会有助于您理解直连路由、静态路由和动态路由:
     直连路由 - 要拜访您的邻居,只需沿着您居住的街道向前走。这一过程与直连路由类似,因为通过“相连的接口”(街道)即可直接到达“目的地”。
     静态路由 - 对于指定的路线,火车每次都沿用相同的轨道行进。这一过程与静态路由类似,因为到达目的地的路径总是相同的。
     动态路由 - 驾车时,您可以根据交通、天气或其它状况“动态地”选择不同路线。这一过程与动态路由类似,因为在到达目的地的过程中,您可以在许多不同点选择新的路线。

     show ip route 命令

     如下图所示,使用 show ip route 命令可以显示路由表。此时还没有配置任何静态路由,也没有启用任何动态路由协议。因此,R1 的路由表仅显示与该路由器直连的网络。对于路由表中列出的每个网络,您均可看到以下信息:
     C - 此列中的信息指示路由信息的来源是直连网络、动态路由还是动态路由协议。C 表示直连路由。
     192.168.1.0/24 - 这是直连网络或远程网络的网络地址和子网掩码。在本例中,路由表的两个条目 192.168.1.0/24 和 192.168.2.0/24 都是直连网络。
     FastEthernet 0/0 - 路由条目末尾的信息,表示送出接口和(或)下一跳路由器的 IP 地址。在本例中,FastEthernet0/0 和 Serial0/0/0 都是用于到达这些网络的送出接口。

     当路由表包含远程网络的路由条目时,还会包括额外的信息,如路由度量和管理距离。路由度量、管理距离。PC 也有路由表。在下图中,您可以看到 route print 命令的输出。此命令会显示所配置或获得的网关、相连网络、回环网络、组播网络和广播网络。本课程不会分析 route print 命令的输出。此处举例的目的是强调所有配置了 IP 的设备都应该有路由表。


 

 

  • 直连路由

     将连接的网络添加到路由表

     如前一节所述,当路由器接口配置有 IP 地址和子网掩码时,此接口即成为该网络上的主机。例如,当右图中 R1 的 FastEthernet 0/0 接口配置有 IP 地址 192.168.1.1 和子网掩码 255.255.255.0 时,FastEthernet 0/0 接口即成为 192.168.1.0/24 网络的一员。连接到同一 LAN 的主机(如 PC1)也配置有属于 192.168.1.0/24 网络的 IP 地址。

     当 PC 配置了主机 IP 地址和子网掩码后,该 PC 使用子网掩码来确定其当前所属的网络。这一过程是由操作系统通过将 IP 地址和子网掩码执行 AND 运算实现的。对于配置了接口的路由器,也是使用相同的逻辑运算来达到这一目的。

     PC 通常配置单一的主机 IP 地址,因为它只有一个网络接口(一般是以太网网卡)。路由器则有多个接口,每个接口必须是不同网络的一员。在右图中,R1 属于两个不同的网络:192.168.1.0/24 和 192.168.2.0/24。路由器 R2 也属于两个不同网络:192.168.2.0/24 和 192.168.3.0/24。

     配置路由器的接口并使用 no shutdown 命令将其激活后,该接口必须收到来自其它设备(路由器、交换机、集线器等)的载波信号,其状态才能视为“up”(开启)。一旦接口为“up”(开启)状态,该接口所在的网络就会作为直连网络而加入路由表。

     在路由器上配置静态或动态路由之前,路由器只知道与自己直连的网络。这些网络是在配置静态或动态路由之前唯一显示在路由表中的网络。直连网络对于路由决定起着重要作用。如果路由器没有直连网络,也就不会有静态和动态路由的存在。如果路由器接口未启用 IP 地址和子网掩码,路由器就不能从该接口将数据包发送出去,正如在以太网接口未配置 IP 地址和子网掩码的情况下,PC 也不能将 IP 数据包从该接口发送出去。

     注:配置路由器接口以及向路由表添加网络地址的过程将在下章讨论。

  • 静态路由

     通过配置静态路由或启用动态路由协议,可以将远程网络添加至路由表。当 IOS 获知远程网络及用于到达远程网络的接口时,只要送出接口为启用状态,它便会将该路由添加到路由表中。

     静态路由包括远程网络的网络地址和子网掩码,以及下一跳路由器或送出接口的 IP 地址。如图所示,静态路由在路由表中以代码 S 表示。我们将在下一章详细讨论静态路由。

     何时使用静态路由

     在以下情况中应使用静态路由:
     a) 网络中仅包含几台路由器。在这种情况下,使用动态路由协议并没有任何实际好处。相反,动态路由可能会增加额外的管理负担。
     b) 网络仅通过单个 ISP 接入 Internet。因为该 ISP 就是唯一的 Internet 出口点,所以不需要在此链路间使用动态路由协议。
     c) 以集中星型拓扑结构配置的大型网络。集中星型拓扑结构由一个中央位置(中心点)和多个分支位置(分散点)组成,其中每个分散点仅有一条到中心点的连接。因为每个分支仅有一条路径通过中央位置到达目的地,所以不需要使用动态路由。

     通常,大多数路由表中同时含有静态路由和动态路由。但是,如前所述,路由表必须首先包含用于访问远程网络的直连网络,然后才能使用任何静态或动态路由。


  • 动态路由

     使用动态路由协议也可将远程网络添加到路由表中。如图所示,R1 已经通过动态路由协议 RIP(路由信息协议)从 R2 自动获知 192.168.4.0/24 网络。RIP 是最早的 IP 路由协议之一,我们将在稍后的章节中再详细讨论。

     注:图中 R1 的路由表显示,R1 已获知两个远程网络:其中一条路由通过 RIP 动态获得,另一条静态路由为手动配置。此例子显示了路由表是如何同时包含动态获知的路由以及静态配置的路由,但它并不代表这种方法是该网络的最佳配置方法。

     路由器使用动态路由协议共享有关远程网络连通性和状态的信息。动态路由协议的功能包括:
     a) 网络发现
     b) 更新和维护路由表

     c) 自动网络发现

     网络发现是路由协议的一项功能,通过此功能路由器能够与使用相同路由协议的其它路由器共享网络信息。动态路由协议使路由器能够自动地从其它路由器获知远程网络,这样便无需在每台路由器上配置指向这些远程网络的静态路由。这些网络 — 以及到达每个网络的最佳路径 — 将添加到路由器的路由表中,并被标记为通过特定动态路由协议获知的网络。

     维护路由表

     在初次网络发现后,动态路由协议将更新并维护其路由表中的网络。动态路由协议不仅会确定通往各个网络的最佳路径,同时还会在初始路径不可用(或者拓扑结构发生变化)时确定新的最佳路径。因此,动态路由协议比静态路由更具优势。如果使用动态路由协议,则路由器无需网络管理员的参与,即可自动与其它路由器共享路由信息并对拓扑结构的变化作出反应。

     IP 路由协议

     用于 IP 的动态路由协议有很多种。以下是一些路由 IP 数据包时常用的动态路由协议:
     RIP(路由信息协议)
     IGRP(内部网关路由协议)
     EIGRP(增强型内部网关路由协议)
     OSPF(开放最短路径优先)
     IS-IS(中间系统到中间系统)
     BGP(边界网关协议)

     注:本课程将讨论 RIP(版本 1 和版本 2)、EIGRP 和 OSPF。EIGRP、OSPF 以及 IS-IS 和 BGP 将在 CCNP 课程中详细介绍。IGRP 是早期的路由协议,已经被 EIGRP 所取代。IGRP 和 EIGRP 是 Cisco 专有的路由协议,此处列出的所有其它路由协议都是标准的非专有协议。

     再次强调,在大多数情况下路由器的路由表中同时包含静态路由和动态路由。动态路由协议将在第 3 章“动态路由协议简介”中详细讨论。

 

五、路由表原理

     在本课程中,您会不时看到有关路由表的三大原理。我们引入这些原理的目的是帮助您理解、配置和排查路由问题。这些原理来自于 Alex Zinin 的著作 Cisco IP Routing(Cisco IP 路由)。

     1. 每台路由器根据其自身路由表中的信息独立作出决策。

     2. 一台路由器的路由表中包含某些信息并不表示其它路由器也包含相同的信息。

     3. 有关两个网络之间路径的路由信息并不能提供反向路径(即返回路径)的路由信息。

     这些原理有什么作用?让我们一起观察图中的示例。

     1. 做出路由决定后,路由器 R1 将流向 PC2 的数据包转发至路由器 R2。R1 仅了解其自身路由表中的信息,该信息表明路由器 R2 是下一跳路由器。R1 并不知道 R2 是否确实具有到达目的网络的路由。

     2. 网络管理员负责确保其所管理的所有路由器都具备完整准确的路由信息,以便数据包能够在任意两个网络间进行转发。这可通过使用静态路由、动态路由协议或两者的综合运用来实现。

     3. 路由器 R2 能够将数据包转发至 PC2 所在的目的网络。但是,从 PC2 到 PC1 的数据包会被 R2 丢弃。尽管 R2 的路由表中包含有关 PC2 所在目的网络的信息,但我们不知道它是否包含返回 PC1 所在网络的路径信息。

     非对称路由

     因为各个路由器的路由表中保存的信息不尽相同,所以数据包可以沿网络中的一条路径传送,而通过另一条路径返回。这称为非对称路由。相对于大多数内部网络,非对称路由在使用 BGP 路由协议的 Internet 中更为常见。

     本示例表明当设计和排除网络故障时,网络管理员应检查以下路由信息:
     从源到目的地的路径是否双向可用?
     往返路径是否相同?(非对称路由并不罕见,但有时会造成其它问题。)

 

六、路径决定和交换功能

  • 路径决定

    数据包转发涉及两项操作:
    1)路径决定
    2)交换

    路径决定是指路由器在转发数据包时决定路径的这一过程。为决定最佳路径,路由器需要在其路由表中搜索能够匹配数据包目的 IP 地址的网络地址。

    通过该搜索过程,可得到以下三种路径决定结果中的一种:

    直连网络 — 如果数据包目的 IP 地址属于与路由器接口直连的网络中的设备,则该数据包将直接转发至该设备。这表示数据包的目的 IP 地址是与该路由器接口处于同一网络中的主机地址。

    远程网络 — 如果数据包的目的 IP 地址属于远程网络,则该数据包将转发至另一台路由器。只有将数据包转发至另一台路由器才能到达远程网络。

    无法决定路由 — 如果数据包的目的 IP 地址即不属于直连网络也不属于远程网络,并且路由器没有默认路由,则该数据包将被丢弃。路由器会向该数据包的源 IP 地址发送 ICMP 不可达消息。

    在前两种结果中,路由器将 IP 数据包重新封装成送出接口的第 2 层数据链路帧格式。第 2 层封装的类型由接口类型决定。例如,如果送出接口是快速以太网,则数据包将封装成以太网帧。如果送出接口被配置为使用 PPP 的串行接口,则 IP 数据包将封装成 PPP 帧。

  • 交换功能

    当路由器通过路径决定功能确定送出接口之后,便需要将数据包封装成送出接口的数据链路帧。

    交换功能是指路由器在一个接口接收数据包并将其从另一个接口转发出去的过程。交换功能的重要责任是将数据包封装成适用于传出数据链路的正确数据帧类型。

    对于从一个网络传入,以另一个网络为目的地的数据包,路由器会进行哪些处理?路由器主要执行以下三个步骤:

    1. 通过删除第 2 层帧报头和报尾来解封第 3 层数据包。

    2. 检查 IP 数据包的目的 IP 地址以便从路由表中选择最佳路径。

    3. 将第 3 层数据包封装成新的第 2 层帧,并将该帧从送出接口转发出去。

 

七、检查路由器接口

     show interfaces 命令会显示接口状态,并给出路由器上所有接口的详细说明。如您所见,该命令的输出可能相当的长。如果要针对某一特定接口(例如 FastEthernet 0/0)查看这些信息,请使用 show interfaces 命令,并带上一个指定接口的参数。例如:

     R1#show interfaces fastethernet 0/0
     FastEthernet0/0 is administratively down, line protocol is down

     注意,该接口为 administratively down(因管理原因关闭),并且 line protocol is down(线路协议已关闭)。因管理原因关闭表示该接口目前处于 shutdown 模式(即已关闭)。线路协议已关闭表示在此情况下,接口不会从交换机或集线器接收载波信号。此外,如果接口处于 shutdown 模式,也可能出现此情况。

  • 配置串行接口

     接下来学习配置路由器 R1 上的串行接口 Serial 0/0/0。该接口位于 172.16.2.0/24 网络,其 IP 地址和子网掩码为 172.16.2.1/24。我们配置串行接口 0/0/0 的过程与先前配置           FastEthernet 0/0 接口的过程类似。

     R1(config)#interface serial 0/0/0
     R1(config-if)#ip address 172.16.2.1 255.255.255.0
     R1(config-if)#no shutdown

     输入以上命令后,根据 WAN 连接的类型,串行接口的状态可能也会有所不同。此问题将在后面的课程中详加讨论。本课程中,我们探讨两台路由器之间的专用串行点对点连接。只有串行链路另一端经正确配置后,串行接口这一端才会是 up 状态。我们可以使用 show interfaces serial 0/0/0 命令来显示串行接口 0/0/0 的当前状态,如右图所示。

     您可以看到,链路仍然为 down 状态。链路为 down 状态的原因是,我们还没有配置和启用串行链路的另一端。

     R1#show interfaces serial 0/0/0
     Serial0/0/0 is administratively down, line protocol is down

     现在,我们将配置该链路的另一端,即路由器 R2 的 Serial 0/0/0 接口。

     注:串行链路的两端并不需要使用相同的接口(本例中为 Serial 0/0/0)。但是,由于两者都属于同一个网络,因此都必须拥有属于 172.16.2.0/24 网络的 IP 地址。(术语网络和子网在此情况下可以互换使用。)R2 的 Serial 0/0/0 接口配置的 IP 地址和子网掩码为 172.16.2.2/24。

     R2(config)#interface serial 0/0/0
     R2(config-if)#ip address 172.16.2.2 255.255.255.0
     R2(config-if)#no shutdown

     如果我们现在对以上任一路由器发出 show interfaces serial 0/0/0 命令,我们仍会看到链路为 up/down 状态。

     R2#show interfaces serial 0/0/0
     Serial0/0/0 is up, line protocol is down
     <省略输出>

     R1 和 R2 之间的物理链路为 up 的原因是,串行链路的两端都已正确配置 IP 地址/掩码,并已通过 no shutdown 命令启用。但是,线路协议仍为 down。这是因为接口没有收到时钟信号。所以我们还需要在 DCE 电缆端的路由器上输入一个命令,即 clock rate 命令。clock rate 命令会为链路设置时钟信号。我们将在下一节讨论如何配置时钟信号。

  • WAN 接口的物理连接

     WAN 物理层描述了数据终端设备 (DTE) 与数据电路终端设备 (DCE) 之间的接口。通常,DCE 是服务提供者,DTE 是连接的设备。在这种情况下,为 DTE 提供的服务是通过调制解调器或 CSU/DSU 来实现的。

     一般情况下,路由器是作为 DTE 设备连接到 CSU/DSU(即 DCE 设备)。CSU/DSU(DCE 设备)用于将来自路由器(DTE 设备)的数据转换为 WAN 服务提供者可接受的格式。CSU/DSU(DCE 设备)还负责将来自 WAN 服务提供者的数据转换为路由器(DTE 设备)可接受的格式。路由器一般通过串行 DTE 电缆连接到 CSU/DSU,如右图所示。

     串行接口需要时钟信号来控制通信的时序。在大多数环境中,服务提供者(DCE 设备,例如 CSU/DSU)会提供时钟信号。默认情况下,Cisco 路由器为 DTE 设备。但是在实验室环境中,我们不会采用任何 CSU/DSU,当然也就不会有 WAN 服务提供者。

 

 

  • 在实验室环境中配置串行链路

 

     对于直接互连的串行链路(例如在实验室环境中),连接的其中一端必须作为 DCE 并提供时钟信号。尽管默认情况下 Cisco 串行接口为 DTE 设备,但也可将它们配置为 DCE 设备。
     要将路由器配置为 DCE 设备:
     1. 将电缆的 DCE 端连接到串行接口。
     2. 使用 clock rate 命令配置串行接口上的时钟信号。
     实验室中使用的串行电缆通常属于以下两类。
     DTE/DCE 交叉电缆,一端为 DTE,另一端为 DCE
     连接到 DCE 电缆的 DTE 电缆
     在我们的实验室拓扑结构中,R1 上的 Serial 0/0/0 接口连接到电缆的 DCE 端,R2 上的 Serial 0/0/0 接口连接到电缆的 DTE 端。电缆上应标记 DTE 或 DCE。
     您也可以通过查看两条电缆间的连接器来区分 DTE 和 DCE。DTE 电缆的连接器为插头型,而 DCE 电缆的连接器为插孔型。
     如果电缆连接的是两台路由器,可使用 show controllers 命令来确定路由器接口连接的是电缆的哪一端。在下面的命令输出中,我们可以看到 R1 的串行接口 0/0/0 连接的是 DCE 电缆端,并且未设置时钟频率。
     R1#show controllers serial 0/0/0
     Interface Serial0/0/0
     Hardware is PowerQUICC MPC860
     DCE V.35, no clock
     <省略输出>
     连接上电缆后,即可使用 clock rate 命令来设置时钟。可用的时钟频率(位/秒)包括:1200、2400、9600、19200、38400、56000、64000、72000、125000、148000、500000、800000、1000000、1300000、2000000 以及 4000000。其中,有些比特率在某些串行接口上不受支持。因为 R1 上的 Serial 0/0/0 接口连接的是 DCE 电缆,因此我们需要为该接口配置时钟频率。
     R1(config)#interface serial 0/0
     R1(config-if)#clock rate 64000
     01:10:28: %LINEPROTO-5-UPDOWN:Line protocol on Interface Serial0/0, changed state to up
     注:如果使用 clock rate 命令配置连接到 DTE 电缆的路由器接口,则此命令会被 IOS 忽略,同时不会产生任何负面影响。

 

  • 观察路由如何添加到路由表中
现在,我们进一步学习怎样在路由表添加以及删除直连路由。相对于 show 命令,debug 命令可以对路由器操作进行实时监视。使用 debug ip routing 命令,我们可以查看当添加或删除路由时路由器发生的变化。接下来,我们将配置 R2 上的接口,并研究这一过程。
首先,我们使用 debug ip routing 命令启用调试功能,如此才能在向路由表添加直连网络时,观察到这些网络。
R2#debug ip routing
IP routing debugging is on
1)  配置 IP 地址和子网掩码
下一步我们将配置 R2 上 FastEthernet 0/0 接口的 IP 地址和子网掩码,并运行 no shutdown 命令。由于该快速以太网接口连接到 172.16.1.0/24 网络,因此必须为其配置属于该网络的主机 IP 地址。
R2(config)#interface fastethernet 0/0
R2(config-if)#ip address 172.16.1.1 255.255.255.0
R2(config-if)#no shutdown
IOS 会返回以下消息:
02:35:30: %LINK-3-UPDOWN:Interface FastEthernet0/0, changed state to up
02:35:31: %LINEPROTO-5-UPDOWN:Line protocol on Interface FastEthernet0/0, changed state to up
输入 no shutdown 命令并且路由器判定接口和线路协议为 up 和 up 状态后,debug 输出显示 R2 已将该直连网络添加到路由表。
02:35:30: RT:add 172.16.1.0/24 via 0.0.0.0, connected metric [0/0]
02:35:30: RT:interface FastEthernet0/0 added to routing table
debug ip routing 命令会显示所有路由的路由表过程,无论该路由是直连网络、静态路由,还是动态路由。
可以使用 undebug ip routing 或 undebug all 命令来禁用 debug ip routing。
2)  更改 IP 地址
要更改接口的 IP 地址或子网掩码,请重新为该接口配置 IP 地址和子网掩码。更改后,会覆盖以前的输入。可以为单个接口配置多个 IP 地址,前提是每个地址要位于不同的子网。此主题将在后面的课程中讨论。
要从路由器中删除直连网络,可以使用以下两个命令:shutdown 和 no ip address。
shutdown 命令用于禁用接口。如果要保留接口上的 IP地址/掩码配置,但又要暂时将接口关闭,可单独使用此命令。在我们的示例中,此命令会禁用 R2 的 FastEtherent 接口。但是,IP 地址仍会保留在配置文件 running-config 中。
使用 shutdown命令后,您可以删除该接口的 IP 地址和子网掩码。以上两个命令的执行顺序并不重要。
现在我们将删除 R2 上 FastEthernet 0/0 接口的配置,在此期间我们利用 debug ip routing 来观察路由表过程。
R2(config)#interface fastethernet 0/0
R2(config-if)#shutdown
我们可以看到路由表过程将该直连路由从路由表中删除。
02:53:58: RT:interface FastEthernet0/0 removed from routing table
02:53:58: RT:del 172.16.1.0/24 via 0.0.0.0, connected metric [0/0]
02:53:58: RT:delete subnet route to 172.16.1.0/24
IOS 指出接口和线路协议现在的状态为 down:
02:54:00: %LINK-5-CHANGED:Interface FastEthernet0/0, changed state to administratively down
02:54:01: %LINEPROTO-5-UPDOWN:Line protocol on Interface FastEthernet0/0, changed state to down
现在,我们将删除接口上的 IP 地址。
R2(config-if)#no ip address
禁用调试:
R2#undebug all
All possible debugging has been turned off
重新配置接口以继续学习本章内容
为继续学习本章接下来的内容,我们假定未删除 FastEthernet 0/0 的地址。要重新配置接口,只需再次输入以下命令:
R2(config)#interface fastethernet 0/0
R2(config-if)#ip address 172.16.1.1 255.255.255.0
R2(config-if)#no shutdown
警告:调试命令,尤其是 debug all 命令应谨慎使用。这些命令会干扰路由器操作。调试命令在配置网络或排除网络故障时非常有用;但是这些命令也会大量消耗 CPU 和内存资源。建议尽量少用调试过程,并在不需要时立即禁用。由于调试命令会影响设备性能,因此在生产网络中应小心使用。 
  • 访问直连网络上的设备

 

 

为回到我们在示例拓扑结构中的配置,我们现在假设所有三台路由器均已配置好所有的直连网络。右图中显示了路由器 R2 和 R3 的其余配置。
配置网络的关键一步是确认所有接口均为“up”和“up”状态,并且路由表完整。无论您最终要配置何种路由方案 - 静态、动态或两者结合 - 在进行更为复杂的配置之前,都需要使用 show ip interface brief 命令和 show ip route 命令确认您的初始网络配置。
如果一台路由器只配置了接口,并且路由表中只含直连网络、没有其它路由,则只可以到达那些直连网络上的设备。
R1 可与 172.16.3.0/24 和 172.16.2.0/24 网络上的设备通信。
R2 可与 172.16.1.0/24、172.16.2.0/24 和 192.168.1.0/24 网络上的设备通信。
R3 可与 192.168.1.0/24 和 192.168.2.0/24 网络上的设备通信。
由于这些路由器只知道与其直连的网络,因此这些路由器只能与直连的 LAN 和串行网络上的设备通信。
例如,拓扑结构中的 PC1 配置了 IP 地址 172.16.3.10 和子网掩码 255.255.255.0。PC1 还配置了默认网关 IP 地址 172.16.3.1(这是路由器上 FastEtherent 0/0 接口的 IP 地址)。由于 R1 只知道与其直连的网络,因此它可以将来自 PC1 的数据包转发到 172.16.2.0/24 网络上的设备,如 172.16.2.1 和 172.16.2.2。如果来自 PC1 的数据包有其它目的 IP 地址(例如地址为 172.16.1.10 的 PC2),则 R1 会将该数据包丢弃。
让我们一起观察图中 R2 的路由表。R2 只知道三个直连的网络。想象一下,如果我们 ping 其它某台路由器上的某个快速以太网接口,会发生什么情况。

 


八、带下一跳地址的静态路由 

 

  • 递归路由查找
在路由器转发任何数据包之前,路由表过程必须确定用于转发数据包的送出接口。我们将此过程称为路由解析。下面,我们将以图中的 R1 路由表为例来学习这一过程。R1 有到达远程网络 192.168.2.0/24 的静态路由,该路由会将所有数据包转发至下一跳 IP 地址 172.16.2.2。
S 192.168.2.0/24 [1/0] via 172.16.2.2
查找路由只是查询过程的第一步。R1 必须确定如何到达下一跳 IP 地址 172.16.2.2。它将进行第二次搜索,以查找与 172.16.2.2 匹配的路由。在本例中,IP 地址 172.16.2.2 与直连网络 17216.2.0/24 的路由相匹配。
C 172.16.2.0 is directly connected, Serial0/0/0
172.16.2.0 路由是一个直连网络,送出接口为 Serial 0/0/0。此次查找告知路由表过程数据包将从此接口转发出去。因此,将任何数据包转发到 192.168.2.0/24 网络实际上经过了两次路由表查找过程。如果路由器在转发数据包前需要执行多次路由表查找,那么它的查找过程就是一种递归查找。在本例中:
1. 数据包的目的 IP 地址与静态路由 192.168.2.0/24 匹配,下一跳 IP 地址是 172.16.2.2。
2. 静态路由的下一跳 IP 地址(172.16.2.2)与直连网络 172.16.2.0/24 匹配,送出接口为 Serial 0/0/0。
对于只具有下一跳 IP 地址而且没有指定送出接口的每一条路由,都必须使用路由表中有送出接口的另一条路由来解析下一跳 IP 地址。
通常,这些路由将解析为路由表中直连网络的路由,因为这些条目始终包含送出接口。我们将在下一节学习如何为静态路由配置送出接口。如此一来,便不需要使用另一条路由条目来再次进行解析。

 

 

 

 

  • 送出接口关闭
让我们考虑一下如果送出接口关闭会发生什么情况。假设 R1 的 Serial 0/0/0 接口关闭,R1 中指向 192.16.2.0/24 的静态路由会发生什么情况?如果静态路由无法解析到送出接口(本例中为 Serial 0/0/0),则该静态路由会从路由表中删除。
如图所示,在 R1 上输入 debug ip routing,然后将 Serial 0/0/0 配置为 shutdown,观察屏幕输出。
请注意,从 debug 命令的输出可以看出,当 Serial 0/0/0 接口关闭后,所有三条静态路由都被删除,因为所有三条静态路由都被解析到 Serial 0/0/0。但是,这些静态路由仍保留在 R1 的运行配置内。如果该接口重新开启(通过 no shutdown 再次启用),则 IOS 路由表过程将把这些静态路由重新安装到路由表中。 



  • 静态路由和送出接口
现在我们重新配置该静态路由,使用送出接口来取代下一跳 IP 地址。首先删除当前的静态路由。可以通过 no ip route 命令完成这一操作,如图所示。
接下来,为 R1 配置指向 192.168.2.0/24 的静态路由,将送出接口配置为 Serial 0/0/0。
然后,使用 show ip route 命令检查路由表的变化。您将看到路由表中的这一条目不再使用下一跳 IP 地址,而是直接指向送出接口。此送出接口与该静态路由使用下一跳 IP 地址时最终解析出的送出接口相同。
S 192.168.2.0/24 is directly connected, Serial0/0/0
现在,当路由表过程发现数据包与该静态路由匹配时,它查找一次便能将路由解析到送出接口。从图中可以看出,另外两条静态路由仍然必须经过两步处理才能解析到相同的 Serial 0/0/0 接口。
注:该静态路由条目中,此路由显示为直连。您必须记住,这并不表示该路由是直连网络或直连路由。该路由仍是静态路由。我们将在下一章讨论管理距离时进一步阐述这一点的重要性。我们将了解到这种类型的静态路由的管理距离为“1”。现在,只需要注意该路由仍然是管理距离为“1”的静态路由,而不是直连网络。
  • 静态路由和点对点网络
使用送出接口而不是下一跳 IP 地址配置的静态路由是大多数串行点对点网络的理想选择。使用如 HDLC 和 PPP 之类协议的点对点网络在数据包转发过程中不使用下一跳 IP 地址。路由后的 IP 数据包被封装成目的地址为第 2 层广播地址的 HDLC 第 2 层帧。
这种类型的点对点串行链路类似于管道。管道只有两个端点。从一端进入的数据只有一个目的地,即管道的另一端。同样,任何通过 R1 的 Serial 0/0/0 接口发送的数据包都只能到达一个目的地:R2 的 Serial 0/0/0 接口。R2 的串行接口 IP 地址恰好为 172.16.2.2。
注:在某些特定情况下,网络管理员希望在静态路由中使用下一跳 IP 地址,而不是送出接口。这类情况已超出本课程范围,但仍需注意。

 

九、带以太网接口的静态路由  

 

  • 以太网接口和 ARP
有时送出接口是以太网络。
假设 R1 和 R2 之间的网络链路为以太网链路,并且 R1 的 FastEthernet 0/1 接口连接到该网络,如图。我们可以使用以下命令设置一条到 192.168.2.0/24 网络的静态路由(该路由使用下一跳 IP 地址):
R1(config)#ip route 192.168.2.0 255.255.255.0 172.16.2.2
我们在之前的章节“配置以太网接口”中已介绍过,IP 数据包必须封装成带以太网目的 MAC 地址的以太网帧。如果数据包应该发送到下一跳路由器,则目的 MAC 地址将是下一跳路由器的以太网接口地址。在此情况下,以太网目的 MAC 地址必须与下一跳 IP 地址 172.16.2.2 匹配。R1 会在自己的 FastEthernet 0/1 ARP 表中查找 172.16.2.2,并据此获得相应的 MAC 地址。
发送 ARP 请求
如果该条目不在 ARP 表中,R1 会通过 FastEthernet 0/1 接口发出一个 ARP 请求。第 2 层广播请求 IP 地址为 172.16.2.2 的设备告知其 MAC 地址。因为 R2 的 FastEthernet 0/1 接口的 IP 地址为 172.16.2.2,所以它会发送包含该接口 MAC 地址的 ARP 应答。
R1 收到该 ARP 应答,随后将 IP 地址 172.16.2.2 及其关联的 MAC 地址添加到自身的 ARP 表中。接着,R1 使用 ARP 表中找到的目的 MAC 地址将 IP 数据包封装成以太网帧。封装有数据包的以太网帧随后从 FastEthernet 0/1 接口发送到路由器 R2。

 

 

  • 静态路由和以太网送出接口
在本节中,我们将把静态路由配置为使用以太网送出接口,而不是下一跳 IP 地址。使用以下命令将 192.168.2.0/24 的静态路由更改为使用送出接口:
R1(config)#ip route 192.168.2.0 255.255.255.0 fastethernet 0/1
以太网络和点对点串行网络之间的区别在于,点对点网络只有一台其它设备位于网络中,即链路另一端的路由器。而对于以太网络,可能会有许多不同的设备共享相同的多路访问网络,包括主机甚至多台路由器。如果仅仅在静态路由中指定以太网送出接口,路由器就没有充足的信息来决定哪台设备是下一跳设备。
R1 知道数据包需要封装成以太网帧并从 FastEthernet 0/1 接口发送出去。但是,R1 不知道下一跳的 IP 地址,因此它无法决定该以太网帧的目的 MAC 地址。
根据拓扑结构和其它路由器上的配置,该静态路由或许能正常工作,也或许不能。这里我们不再深入讨论,但建议当送出接口是以太网络时,不要在静态路由中仅使用送出接口。
也许有人会问:是否能够在以太网中配置这样一条静态路由,使它不必通过递归查找获得下一跳 IP 地址?可以 — 这可通过在静态路由中同时包含送出接口和下一跳 IP 地址来实现。
如图所示,送出接口应该是 FastEthernet 0/1,而下一跳 IP 地址应该是 172.16.2.2。
R1(config)#ip route 192.168.2.0 255.255.255.0 fastethernet 0/1 172.16.2.2
该路由的路由表条目应该是:
S 192.168.2.0/24 [1/0] via 172.16.2.2 FastEthernet0/1
路由表过程仅需要执行一次查找就可以同时获得送出接口和下一跳 IP 地址。
  • 在静态路由中使用送出接口的好处
对于串行点对点网络和以太网出站网络来说,在静态路由中使用送出接口都比较有利。路由表过程只需要执行一次查找就可以找到送出接口,不必为了解析下一跳地址再次进行查找。
对于使用出站点对点串行网络的静态路由,最好只配置送出接口。对于点对点串行接口,数据包传送程序从不使用路由表中的下一跳地址,因此不需要配置该地址。
对于使用出站以太网络的静态路由,最好同时使用下一跳地址和送出接口来配置。
注:对于仅使用以太网或 FastEthernet 送出接口配置的静态路由,有关可能发生的问题的详细信息,请参见 Alex Zinin 的所作的 Cisco IP Routing。

 

  • 配置总结路由
要使用总结路由,我们必须首先删除当前的三条静态路由:
R3(config)#no ip route 172.16.1.0 255.255.255.0 serial0/0/1
R3(config)#no ip route 172.16.2.0 255.255.255.0 serial0/0/1
R3(config)#no ip route 172.16.3.0 255.255.255.0 serial0/0/1
接下来,我们将配置总结静态路由:
R3(config)#ip route 172.16.0.0 255.255.252.0 serial0/0/1
单击图中的“总结路由的效果”。
要校验新的静态路由,使用 show ip route 命令检查 R3 的路由表,如图所示:
172.16.0.0/22 is subnetted, 1 subnets
S 172.16.0.0 is directly connected, Serial0/0/1
通过这条总结路由,数据包的目的 IP 地址仅需要与 172.16.0.0 网络地址最左侧的 22 位匹配。目的 IP 地址属于 172.16.1.0/24、172.16.2.0/24 或 172.16.3.0/24 网络的所有数据包都与这条总结路由匹配。
单击图中的“检验总结路由”。
如图所示,我们可以使用 ping 命令测试新配置。通过检验我们发现整个网络连通性正常。
注:截至 2007 年 3 月,Internet 核心路由器上的路由条数已超过 200,000 条,其中大多数为总结路由。

 

 

  • 静态默认路由

 

最精确匹配
数据包的目的 IP 地址可能会与路由表中的多条路由匹配。例如,假设路由表中有以下两条静态路由:
172.16.0.0/24 is subnetted, 3 subnets
S 172.16.1.0 is directly connected, Serial0/0/0 and
S 172.16.0.0/16 is directly connected, Serial0/0/1
考虑目的 IP 地址为 172.16.1.10 的数据包。该 IP 地址同时与这两条路由匹配。路由表查找过程将使用最精确匹配。因为 172.16.1.0/24 路由有 24 位匹配,而 172.16.0.0/16 路由仅有 16 位匹配,所以将使用有 24 位匹配的静态路由。即最长匹配。随后,数据包被封装成第 2 层帧并通过 Serial 0/0/0 接口发送出去。请记住,路由条目中的子网掩码决定数据包的目的 IP 地址必须有多少位匹配才能使用这条路由。
注:此过程对于路由表中的所有路由(包括静态路由、通过路由协议获知的路由以及直连网络)均相同。我们将在后面的章节中更加详细地解释路由表查找过程。
默认静态路由与所有的数据包都匹配
默认静态路由是与所有数据包都匹配的路由。出现以下情况时,便会用到默认静态路由:
路由表中没有其它路由与数据包的目的 IP 地址匹配。也就是说,路由表中不存在更为精确的匹配。在公司网络中,连接到 ISP 网络的边缘路由器上往往会配置默认静态路由。
如果一台路由器仅有另外一台路由器与之相连,该路由器即称为末节路由器。
配置默认静态路由
配置默认静态路由的语法类似于配置其它静态路由,但网络地址和子网掩码均为 0.0.0.0:
Router(config)#ip route 0.0.0.0 0.0.0.0 [exit-interface | ip-address ]
0.0.0.0 0.0.0.0 网络地址和掩码也称为“全零”路由。
R1 是末节路由器。它仅连接到 R2。目前 R1 有三条静态路由,这些路由用于到达我们拓扑结构中的所有远程网络。所有三条静态路由的送出接口都是 Serial 0/0/0,并且都将数据包转发至下一跳路由器 R2。
R1 上的三条静态路由分别是:
ip route 172.16.1.0 255.255.255.0 serial 0/0/0
ip route 192.168.1.0 255.255.255.0 serial 0/0/0
ip route 192.168.2.0 255.255.255.0 serial 0/0/0
R1 非常适合进行路由总结,在 R1 上我们可以用一条默认路由来取代所有静态路由。首先,删除三条静态路由:
R1(config)#no ip route 172.16.1.0 255.255.255.0 serial 0/0/0
R1(config)#no ip route 192.168.1.0 255.255.255.0 serial 0/0/0
R1(config)#no ip route 192.168.2.0 255.255.255.0 serial 0/0/0
接下来,使用与之前三条静态路由相同的送出接口 Serial 0/0/0 配置一条默认静态路由:
R1(config)#ip route 0.0.0.0 0.0.0.0 serial 0/0/0


 

 

 

 

posted on 2012-05-22 11:49  jcsu  阅读(1067)  评论(0)    收藏  举报