2.1 路由器的基本原理及配置

网络层的网络互连设备(路由器、第3层交换机和网关)是根据目的地址转发数据包的。但是,路由器和第3层交换机不仅是简单地把数据包转发到不同的网段,还使用详细的路由表和复杂的软件来选择最有效的路径,从一个路由器到另一个路由器,从而穿过大型的网络。路由器工作在OSI模型的网络层。路由器操作数据包(数据报)并且以数据包报头中的网络地址作为选择路由的基础。

路由器的主要目的是为从源计算机发出的通过网络到达目标计算机的数据包寻找最佳路径。其功能在很大程度上依赖于其软件所支持的路由协议。路由表协议详细说明了路由器是如何通过网络来传递信息的。协议还决定了每个路由器是如何建立其路由表,以及如何通过这个表来为每个分组选择最佳路径的。

2.1.1 路由器的硬件构成原理

1.什么是路由

如图2-2所示,路由器可以实现将一个数据包从一个网络发送到另一个网络。路由就是指导IP数据包发送的路径信息。在互联网中进行路由选择要使用路由器,路由器根据所收到的数据报头的目的地址选择一个合适的路径(通过某一个网络),将数据包传送到下一个路由器,路径上最后的路由器负责将数据包送交目的主机。数据包在网络上的传输就好像体育运动中的接力赛一样,每一个路由器只负责自己本站数据包通过最佳路径转发到目的地,当然有时候由于实施一些路由策略数据包通过的路径并不一定是最佳路由。

图2-2 路由示意图

根据路由的目的地不同,可以划分为子网路由(目的地为子网)、主机路由(目的地为主机)。另外,根据目的地与该路由器是否直接相连,又可分为直接路由(目的地所在网络与路由器直接相连)、间接路由(目的地所在网络与路由器不直接相连)。

2.路由器组成

一般路由器由输入/输出接口、数据转发部分、路由管理部分、用户配置接口几部分构成。路由器是一种用于网络互连的计算机设备,它工作在OSI参考模型的第三层(网络层),为不同网络之间的报文寻径并存储转发。作为路由器,必须具备两个或两个以上的接口,用于连接不同的网络(在现实网络中,也存在只有一个接口的情况,这种方式的路由器称为独臂路由器,但应用不多);协议至少实现到网络层,只有理解网络层协议才能与网络层通信。路由器具有存储、转发、寻径功能:实现速率匹配与路径寻径;通常路由器还会支持两种以上的网络协议以支持异种网络互连,一般的路由器还会运行动态路由协议以实现动态寻径;路由器的主要目的是从源计算机发出的通过网络到目标计算机的数据包寻找最佳路径。路由器与交换机的比较如表2-1所示。

表2-1 路由器与交换机的比较

3.路由器工作流程

路由器建立并维护自己的路由表,并根据处理的每一个数据分组中的信息以及路由表中

的信息,为分组选择“旅途”的下一站。选择路由的方法有:静态路由(需要手动建立和修改路由器)和动态路由(路由器彼此交换路由表信息,自动建立和修改路由器)。

路由器中时刻维持着一张路由表,所有报文的发送和转发都通过查找路由表从相应端口发送。这张路由表可以是静态配置的,也可以是动态路由协议产生的。路由器工作流程如图2-3所示,物理层从路由器的一个端口收到一个报文,送到数据链路层。网络层首先看报文是否是送给本机的,如果是则去掉网络层封装,送给上层;如果不是则根据报文的目的地址查找路由表,找到路由后,将报文送给相应端口的数据链路层,数据链路层经封装后,发送报文。若找不到路由,则将报文丢弃。

图2-3 路由器工作流程

路由器根据路由表转发数据包。每个路由器中都保存着一张路由表,如表2-2所示,表中每条路由项都指明数据包到某子网或某主机应通过路由器的哪个物理端口发送,然后就可到达该路径的下一个路由器,或者不再经过其他路由器传送到直接相连的网络中的目的主机。路由表中包含下列关键项:

表2-2 查看路由表

  • 目的地址(Destination):用来标识IP包的目的地址或目的网络。
  • 网络掩码(Mask):与目的地址一起来标识目的主机或路由器所在网段的地址。将目的地址和网络掩码“逻辑与”后可得到目的主机或路由器所在网段的地址。例如:目的地址为8.0.0.0,掩码为255.0.0.0的主机或路由器所在网段的地址为8.0.0.0。掩码由若干个连续的“1”构成,既可以用点分十进制表示,也可以用掩码中连续“1”的个数来表示。
  • 转发接口(Interface):说明IP包将从该路由器哪个接口转发。
  • 下一跳IP地址(Nexthop):说明IP包所经由的下一个路由器的接口地址。在路由表中有一个Protocol字段,用来指明路由的来源,即路由是如何生成的。路由的来源主要有如下三种:

①链路层协议发现的路由(Direct)开销小,配置简单,无需人工维护,只能发现本接口所属网段拓扑的路由。

②手工配置静态路由(Static)是一种特殊的路由,由管理员手动配置而成。通过静态路由的配置可建立一个互通的网络,但这种配置问题在于:当一个网络故障发生后,静态路由不会自动修正,必须有管理员介入。静态路由无开销,配置简单,适合简单拓扑结构的网络。

③动态路由协议发现的路由(RIP、OSPF、…):当网络拓扑结构十分复杂时,手动配置静态路由工作量大而且容易出现错误,这时就可用动态路由协议,使其自动发现和修改路由,无需人工维护,但动态路由协议开销大,配置复杂。

到相同的目的地,不同的路由协议(包括静态路由)可能会发现不同的路由,但并非这些路由都是最优的。事实上,在某一时刻,到某一目的地的当前路由仅能由唯一的路由协议来决定。这样,各路由协议(包括静态路由)都被赋予了一个优先级,当存在多个路由信息源时,具有较高优先级(数值越小表明优先级越高)的路由协议发现的路由将成为最优路由,并被加入路由表中。

不同厂家的路由器对于各种路由协议优先级的规定各不相同。以华为路由器为例的默认优先级如表2-3所示。其中,0表示直接连接的路由,255表示任何来自不可信源端的路由。除了直接路由(DIRECT)外,各动态路由协议的优先级都可根据用户需求,手动进行配置。另外,每条静态路由的优先级都可以不相同。

路由的花费(metric)标识出了到达这条路由所指的目的地址的代价,通常路由的花费值会受到线路延迟、带宽、线路占有率、线路可信度、跳数、最大传输单元等因素的影响,不同的动态路由协议会选择其中的一种或几种因素来计算花费值(如RIP用“跳数”来计算花费值)。该花费值只在同一种路由协议内有比较意义,不同路由协议之间的路由花费值没有可比性,也不存在换算关系。

表2-3 华为路由器的默认优先级

2.1.2 路由器的配置

以华为系列路由器为例,可以通过五种方法来配置。

1.通过console口配置

如图2-4所示,通过console口配置路由器是最常用的一种配置模式,也是最基本的配置模式。步骤如下:

图2-4 通过console口配置

(1)连接配置电缆:先将路由器随机所带的配置电缆取出,再将RJ-45头一端接在路由器的console口上,最后将19针(或25针)RS-232接口一端接在计算机的串行口上。

(2)创建超级终端:以Windows 2000的“超级终端”为例,先单击“开始”→“程序”→“附件”→“超级终端”,最后进入“超级终端”目录后即可新建一个“超级终端”。

(3)选择串口的属性:为了顺利配置路由器,应正确配置计算机的串口属性,否则,在“超级终端”中将无任何内容,也就无法对路由器进行配置。具体参数为:速率为“9600”,数据位“8”位,奇偶校验为“无”,停止位为“1”,流控制为“没有”,如图2-5所示。

图2-5 配置具体参数

2.通过拨号远程配置

如图2-6所示,当需要对远端的路由器进行配置时,可以通过拨号线路连接到需要配置的路由器上。首先,在配置终端的空闲串口上连接一个Modem,确保能与其他计算机建立拨号连接,然后,将另一Modem通过“备份电缆”连接到路由器的console口或AUX口上。设置好路由器的相关属性并建立好连接后,就可以通过“超级终端”建立与远端路由器的拨号连接,并对该路由器进行配置。

图2-6 通过拨号线路远程配置路由器

3.通过telnet方式配置

在本地PC上输入路由器以太网口IP地址,与路由器建立连接,然后出现命令行提示符,如果出现用户太多的提示,则请稍后再连,还可以通过telnet在对方的路由器上进行配置。然而,这里有一个前提:即必须能与该路由器建立telnet连接,并拥有合法的用户名和口令。然后,就可以像telnet本地路由器一样,通过telnet窗口中输入对端路由器的以太网口地址或广域网地址,登录到对方的路由器进行配置。

如图2-7所示,首先在路由器上设置允许telnet服务并配置一个telnet用户,配置为:[Router]login telnet[Router]local-user huawei service-type exec-operator password simple quidway

图2-7 通过telnet配置本地路由器

4.通过哑终端方式配置

如图2-8所示,哑终端功能是在一种交互方式下通过异步专线直接登录到路由器的配置接口,提供除console口、telnet之外的另一种终端服务。哑终端方式扩展了路由器配置通道的选择,使得路由器同异步口中的备份口(AUX口)、异步串口通过一些简单的设置均能对路由器进行配置。设置为:[Quidway-Serial0]physical-mode async。

5.通过FTP方式传送配置文件

以华为系列路由器为例,它提供FTP服务器功能,该功能提供了另外一种更新配置文件或程序主体的途径。任何FTP客户均可连接到路由器上,在通过用户验证后,进行配置文件或程序主体的上传下载。

如图2-9所示,一般FTP方式配置步骤为:一是在路由器上启动FTP服务器,添加用户名、密码:如输入“user ftp password 0 123 service-type ftp”,表示用户名为“ftp”,密码为“123”。启动FTP服务器,输入“ftp-server enable”。经过以上操作,在路由器上已经启动了FTP服务器,并设置了用户,任何一个FTP客户端程序均可使用该用户名、密码登录FTP服务器。二是上传配置文件,配置路由器以太网口地址,使运行FTP客户端程序的主机与路由器的网络相通。使用已经在路由器设置好的用户名、密码登录FTP服务器。

图2-8 通过哑终端配置

图2-9 通过FTP配置

2.1.3 命令行模式

1.普通用户模式

以华为系列为例,路由器启动后将默认进入普通用户模式,如<Router>?

在普通用户模式中,只能对路由器进行一些基本的操作,如查看接口信息、版本信息(但不能查看配置文件),运行一些简单的测试程序,如ping、tracert等。在普通用户模式下,不能对路由器进行任何配置,也不能对路由器进行任何管理,在普通用户模式下,输入sys命令将进入特权用户模式。

2.系统用户模式

为了对路由器进行配置、管理,需要进入系统(特权)用户模式:[Router]?在系统用户模式下,能够完成对路由器的所有操作,包括对路由器的重新启动、删除所有的配置文件等操作。因此,在系统用户模式下,所有的操作都要经过仔细考虑,以免带来不可预料的损失。

3.接口配置模式

在系统用户模式下执行[Router]interface serial 0命令,

将进入接口模式[Router-Serial0]。在接口配置模式下,可以给接口配置IP地址、广域网协议等。

实训1 搭建路由器本地管理环境和远程Telnet管理环境

1.实验目的

(1)掌握通过console口进行路由器配置

(2)学会通过telnet方式进行路由器配置

2.实验步骤

通过console口进行路由器配置

一是连接配置电缆:________________________________

二是创建超级终端:________________________________

三是选择串口的属性:________________________________

进入普通用户模式:________________________________

进入系统(特权)模式:________________________________

进入接口配置模式:________________________________

通过telnet方式进行路由器配置

在路由器上设置允许telnet服务和配置一个telnet用户配置为:

[Router]login telnet[Router]local-user huawei service-type exec-operator password simple quidway

进入以太口配置模式:________________________________

配置IP地址[Router-E0] ip address 192.168.0.1 24

在PC上设置好IP地址,与路由器建立telnet连接。

进入普通用户模式:________________________________

进入系统(特权)模式:________________________________

进入接口配置模式:________________________________