什么是路由器?为什么需要路由器?

路由表

路由表(Routing table)是存储在路由器中的数据表,就如一张地图,其中存储了指向特定目的网络地址的路径信息。路由表中有许多条目,每个条目可以被称为一条路由,每条路由都对应一个网络中的目的地。示意图如下。

当路由设备收到一个IP数据包时,会先查看数据包包头的目的地址,并在自己的路由表中进行查找。如果查找结果中有匹配的表项,那么便依据此表项所指示的出接口和下一跳进行转发;如果没有匹配的表项,就去检查是否存在默认路由;如果默认路由也不存在,这个IP数据包会被丢弃,同时路由设备会向数据包的源端设备发送ICMP(Internet Control Message Protocol,因特网控制消息协议)报错消息,报告该目的地址或网络不可达。

每台路由器中都至少保存着一张本地核心路由表,用来保存各种路由协议发现的路由并决策优选路由。路由条目的来源主要有:

直连路由(Direct Route):路由器本地接口所在的网段,由路由器自行发现并写入路由表中;

静态路由(Static Route):网络管理员手工配置的路由;

动态路由(Dynamic Route):路由器通过动态路由协议发现的路由。动态路由协议包括BGP(Border Gateway Protocol,边界网关协议)、IS-IS(Intermediate System to Intermediate System,中间系统到中间系统)、OSPF(Open Shortest Path First,开放式最短路径优先)、RIP(Routing Information Protocol,路由信息协议)等。

除了按来源划分,依据目的地(目的地址范围)的不同,路由可以划分为:

主机路由:目的地为单一主机,数据包发送至唯一目的地主机;

网段路由:目的地为一个网段,数据包发送至一个网络段中的所有主机。

对于NetEngine系列路由器,可以通过display ip routing-table命令查看路由器的路由表信息,如:

display ip routing-table

Route Flags: R - relay, D - download to fib, T - to vpn-instance, B - black hole route

------------------------------------------------------------------------------

Routing Table: Public

Destinations : 8 Routes : 8

Destination/Mask Proto Pre Cost Flags NextHop Interface

0.0.0.0/0 Static 60 0 D 10.1.4.2 GigabitEthernet1/0/0

10.1.4.0/30 OSPF 10 0 D 10.1.4.1 GigabitEthernet1/0/0

10.1.4.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0

10.1.4.2/32 OSPF 10 0 D 10.1.4.2 GigabitEthernet1/0/0

127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0

127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0

127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0

255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0

路由表中包含了下列关键概念:

Destination:目的地址。用来标识路由的目的地址或目的网络。

Mask:网络掩码。与目的地址一起来标识目的主机或路由器所在的网段的地址。将目的地址和网络掩码“逻辑与”后可得到目的主机或路由器所在网段的地址。例如:目的地址为1.1.1.1,掩码为255.255.255.0的主机或路由器所在网段的地址为1.1.1.0。

Proto:路由协议名称,代表这条路由是通过什么路由协议获取到的,如Direct代表直连路由、Static代表静态路由等。

Pre:本条路由加入IP路由表的优先级。针对同一目的地,可能存在不同下一跳/出接口等的若干条路由,这些不同的路由可能是由不同的路由协议发现的,也可以是手工配置的静态路由。优先级高(数值小)者将成为当前的最优路由。

Cost:路由开销。当到达同一目的地的多条路由具有相同的优先级(Pre相同)时,开销最小的将成为当前的最优路由。路由开销是用来评估路由路径优劣的一个数值,也被成为路由度量(Route Metric),它表示从源节点到目的节点所经过的路由路径的代价,代价的大小取决于网络拓扑、带宽、延迟、可靠性、安全性等多种因素。

Flags:路由标记。一种路由器在转发数据包时使用的标记,用于标识数据包的来源和目的地,以及路由器对数据包的处理方式等。

NextHop:下一跳IP地址。

Interface:输出接口。说明IP包将从该路由器哪个接口转发。

在下图所示的网络中,路由器A与三个网络相连,因此有三个IP地址和三个出接口,其路由表如图所示。

路由表示意图

Top