01-IP路由基础配置
本章节下载: 01-IP路由基础配置 (257.77 KB)
在网络中路由器根据所收到的报文的目的地址选择一条合适的路径,并将报文转发到下一个路由器。路径中最后一个路由器负责将报文转发给目的主机。
路由就是报文在转发过程中的路径信息,用来指导报文转发。
根据路由目的地的不同,路由可划分为:
· 网段路由:目的地为网段,子网掩码长度小于32位。
· 主机路由:目的地为主机,子网掩码长度为32位。
另外,根据目的地与该路由器是否直接相连,路由又可划分为:
· 直接路由:目的地所在网络与路由器直接相连。
· 间接路由:目的地所在网络与路由器非直接相连。
RIB(Routing Information Base,路由信息库),是一个集中管理路由信息的数据库,包含路由表信息以及路由周边信息(路由迭代信息、路由共享信息以及路由扩展信息)等。
路由器通过对路由表进行优选,把优选路由下发到FIB(Forwarding Information Base,转发信息库)表中,通过FIB表指导报文转发。
路由表中保存了各种路由协议发现的路由,根据来源不同,通常分为以下三类:
· 直连路由:链路层协议发现的路由,也称为接口路由。
· 静态路由:网络管理员手工配置的路由。静态路由配置方便,对系统要求低,适用于拓扑结构简单并且稳定的小型网络。其缺点是每当网络拓扑结构发生变化,都需要手工重新配置,不能自动适应。
· 动态路由:路由协议发现的路由。
FIB表中每条转发项都指明了要到达某子网或某主机的报文应通过路由器的哪个物理接口发送,就可以到达该路径的下一个路由器,或者不需再经过别的路由器便可传送到直接相连的网络中的目的主机。FIB表的具体内容,请参见“三层技术-IP业务配置指导”中的“IP转发基础”。
通过命令display ip routing-table可以显示路由表的摘要信息,例如:
<Sysname> display ip routing-table
Destinations : 19 Routes : 19
Destination/Mask Proto Pre Cost NextHop Interface
0.0.0.0/32 Direct 0 0 127.0.0.1 InLoop0
1.1.1.0/24 Direct 0 0 1.1.1.1 GE3/0/1
1.1.1.0/32 Direct 0 0 1.1.1.1 GE3/0/1
1.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
1.1.1.255/32 Direct 0 0 1.1.1.1 GE3/0/1
2.2.2.0/24 Static 60 0 12.2.2.2 GE3/0/2
80.1.1.0/24 OSPF 10 2 80.1.1.1 GE3/0/3
......(省略部分显示信息)
路由表中包含了下列关键项:
· Destination:目的地址。用来标识IP报文的目的地址或目的网络。
· Mask:网络掩码。与目的地址一起来标识目的主机或路由器所在的网段的地址。将目的地址和网络掩码“逻辑与”后可得到目的主机或路由器所在网段的地址。例如:目的地址为129.102.8.10、掩码为255.255.0.0的主机或路由器所在网段的地址为129.102.0.0。掩码由若干个连续“1”构成,既可以用点分十进制法表示,也可以用掩码中连续“1”的个数来表示。
· Pre:路由优先级。对于同一目的地,可能存在若干条不同下一跳的路由,这些不同的路由可能是由不同的路由协议发现的,也可能是手工配置的静态路由。优先级高(数值小)的路由将成为当前的最优路由。
· Cost:路由的度量值。当到达同一目的地的多条路由具有相同的优先级时,路由的度量值越小的路由将成为当前的最优路由。
· NextHop:下一跳地址。此路由的下一跳IP地址。
· Interface:出接口。指明IP报文将从该路由器哪个接口转发。
路由协议有自己的路由算法,能够自动适应网络拓扑的变化,适用于具有一定规模的网络拓扑。其缺点是配置比较复杂,对系统的要求高于静态路由,并占用一定的网络资源。
对路由协议的分类可采用以下不同标准。
· IGP(Interior Gateway Protocol,内部网关协议):在一个自治系统内部运行,常见的IGP协议包括RIP、OSPF和IS-IS。
· EGP(Exterior Gateway Protocol,外部网关协议):运行于不同自治系统之间,BGP是目前最常用的EGP。
AS(Autonomous System,自治系统)是拥有同一选路策略,并在同一技术管理部门下运行的一组路由器。
· 距离矢量(Distance-Vector)协议:包括RIP和BGP。其中,BGP也被称为路径矢量协议(Path-Vector)。
· 链路状态(Link-State)协议:包括OSPF和IS-IS。
· 单播路由协议:包括RIP、OSPF、BGP和IS-IS等。
· 组播路由协议:包括PIM-SM、PIM-DM等。
本手册仅介绍单播路由协议,组播路由协议请参见“IP组播配置指导”。
· IPv4路由协议:包括RIP、OSPF、BGP和IS-IS等。
· IPv6路由协议:包括RIPng、OSPFv3、IPv6 BGP和IPv6 IS-IS等。
对于相同的目的地,不同的路由协议、直连路由和静态路由可能会发现不同的路由,但这些路由并不都是最优的。为了判断最优路由,各路由协议、直连路由和静态路由都被赋予了一个优先级,具有较高优先级的路由协议发现的路由将成为最优路由。
除直连路由外,各路由协议的优先级都可由用户手工进行配置。另外,每条静态路由的优先级都可以不相同。缺省的路由优先级如表1-1所示,数值越小表明优先级越高。
路由协议或路由种类 |
缺省的路由优先级 |
DIRECT(直连路由) |
0 |
组播静态路由 |
1 |
OSPF |
10 |
IS-IS |
15 |
单播静态路由 |
60 |
RIP |
100 |
OSPF ASE |
150 |
OSPF NSSA |
150 |
IBGP |
255 |
EBGP |
255 |
UNKNOWN(来自不可信源端的路由) |
256 |
对同一路由协议来说,允许配置多条目的地相同且开销也相同的路由。当到同一目的地的路由中,没有更高优先级的路由时,这几条路由都被采纳,在转发去往该目的地的报文时,依次通过各条路径发送,从而实现网络的负载分担。
目前支持负载分担有静态路由/IPv6静态路由、RIP/RIPng、OSPF/OSPFv3、BGP/IPv6 BGP和IS-IS/IPv6 IS-IS。
使用路由备份可以提高网络的可靠性。用户可根据实际情况,配置到同一目的地的多条路由,其中优先级最高的一条路由作为主路由,其余优先级较低的路由作为备份路由。
正常情况下,路由器采用主路由转发数据。
(1) 当链路出现故障时,主路由变为非激活状态,路由器选择备份路由中优先级最高的转发数据。这样,也就实现了从主路由到备份路由的切换。
(2) 当链路恢复正常时,路由器重新选择路由。由于主路由的优先级最高,路由器选择主路由来发送数据。这就是从备份路由到主路由的切换。
对于BGP路由(直连EBGP路由除外)和静态路由(配置了下一跳)以及多跳RIP路由而言,其所携带的下一跳信息可能并不是直接可达,需要找到到达下一跳的直连出接口。路由迭代的过程就是通过路由的下一跳信息来找到直连出接口的过程。
而对于OSPF和IS-IS等链路状态路由协议而言,其下一跳是直接在路由计算时得到的,不需要进行路由迭代。
路由迭代信息记录并保存路由迭代的结果,包括依赖路由的概要信息、迭代路径、迭代深度等。
由于各路由协议采用的路由算法不同,不同的路由协议可能会发现不同的路由。如果网络规模较大,当使用多种路由协议时,往往需要在不同的路由协议间能够共享各自发现的路由。
各路由协议都可以引入其它路由协议的路由、直连路由和静态路由,具体内容请参见本手册中各路由协议模块有关引入外部路由的描述。
路由共享信息记录了路由协议之间的引入关系。
路由扩展属性主要是指BGP路由的扩展团体属性以及OSPF路由的区域ID、路由类型和Router ID等。同路由共享一样,路由协议可以引入其它路由协议的路由扩展属性。
路由扩展信息记录了各路由协议的路由扩展属性以及路由协议扩展属性之间的引入关系。
当协议路由表项较多或协议GR时间较长时,由于协议收敛速度较慢,可能会出现协议路由表项提前老化的问题。通过调节路由和标签在RIB中的最大存活时间,可以解决上面的问题。
该配置在下一次协议进程倒换或者RIB进程倒换时才生效。
表1-2 配置IPv4路由和标签在RIB中的最大存活时间
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RIB视图 |
rib |
- |
创建RIB IPv4地址族,并进入RIB IPv4地址族视图 |
address-family ipv4 |
缺省情况下,没有创建RIB IPv4地址族 |
配置IPv4路由和标签在RIB中的最大存活时间 |
protocol protocol lifetime seconds |
缺省情况下,IPv4路由和标签在RIB中的最大存活时间为480秒 |
该配置在下一次协议进程倒换或者RIB进程倒换时才生效。
表1-3 配置IPv6路由和标签在RIB中的最大存活时间
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RIB视图 |
rib |
- |
创建RIB IPv6地址族,并进入RIB IPv6地址族视图 |
address-family ipv6 |
缺省情况下,没有创建RIB IPv6地址族 |
配置IPv6路由和标签在RIB中的最大存活时间 |
protocol protocol lifetime seconds |
缺省情况下,IPv6路由和标签在RIB中的最大存活时间为480秒 |
当协议进程倒换或RIB进程倒换后,如果协议进程没有配置GR或NSR,需要多保留一段时间FIB表项;如果协议进程配置了GR或NSR,需要立刻删除FIB表项,避免FIB表项长时间存在导致问题。通过调节路由在FIB中的最大存活时间,可以解决上面的问题。
表1-4 配置IPv4路由在FIB中的最大存活时间
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RIB视图 |
rib |
- |
创建RIB IPv4地址族,并进入RIB IPv4地址族视图 |
address-family ipv4 |
缺省情况下,没有创建RIB IPv4地址族 |
配置IPv4路由在FIB中的最大存活时间 |
fib lifetime seconds |
缺省情况下,IPv4路由在FIB中的最大存活时间为600秒 |
表1-5 配置IPv6路由在FIB中的最大存活时间
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入RIB视图 |
rib |
- |
创建RIB IPv6地址族,并进入RIB IPv6地址族视图 |
address-family ipv6 |
缺省情况下,没有创建RIB IPv6地址族 |
配置IPv6路由在FIB中的最大存活时间 |
fib lifetime seconds |
缺省情况下,IPv6路由在FIB中的最大存活时间为600秒 |
在任意视图下执行display命令可以显示路由表信息。在用户视图下执行reset命令可以清除路由表的统计信息。
操作 |
命令 |
显示路由表的信息 |
display ip routing-table [ vpn-instance vpn-instance-name ] [ verbose ] |
显示通过指定基本访问控制列表过滤的路由信息 |
display ip routing-table [ vpn-instance vpn-instance-name ] acl acl-number [ verbose ] |
显示指定目的地址的路由 |
display ip routing-table [ vpn-instance vpn-instance-name ] ip-address [ mask | mask-length ] [ longer-match ] [ verbose ] |
显示指定目的地址范围内的路由 |
display ip routing-table [ vpn-instance vpn-instance-name ] ip-address1 to ip-address2 [ verbose ] |
显示通过指定前缀列表过滤的路由信息 |
display ip routing-table [ vpn-instance vpn-instance-name ] prefix-list prefix-list-name [ verbose ] |
显示指定协议生成或发现的路由信息 |
display ip routing-table [ vpn-instance vpn-instance-name ] protocol protocol [ inactive | verbose ] |
显示路由表中的综合路由统计信息 |
display ip routing-table [ vpn-instance vpn-instance-name ] statistics |
显示路由表的摘要信息 |
display ip routing-table [ vpn-instance vpn-instance-name ] summary |
显示RIB的路由属性信息 |
display rib attribute [ attribute-id ] |
显示RIB的GR状态信息 |
display rib graceful-restart |
显示RIB的下一跳信息 |
display rib nib [ self-originated ] [ nib-id ] [ verbose ] display rib nib protocol protocol-name [ verbose ] |
显示直连路由下一跳信息 |
display route-direct nib [ nib-id ] [ verbose ] |
清除路由表中的综合路由统计信息 |
reset ip routing-table statistics protocol [ vpn-instance vpn-instance-name ] { protocol | all } |
显示IPv6路由表的信息 |
display ipv6 routing-table [ vpn-instance vpn-instance-name ] [ verbose ] |
显示指定目的地址的IPv6路由信息 |
display ipv6 routing-table [ vpn-instance vpn-instance-name ] ipv6-address [ prefix-length ] [ longer-match ] [ verbose ] |
显示通过指定基本IPv6 ACL过滤的IPv6路由信息 |
display ipv6 routing-table [ vpn-instance vpn-instance-name ] acl acl6-number [ verbose ] |
显示指定目的地址范围内的IPv6路由信息 |
display ipv6 routing-table [ vpn-instance vpn-instance-name ] ipv6-address1 to ipv6-address2 [ verbose ] |
显示通过指定前缀列表过滤的IPv6路由信息 |
display ipv6 routing-table [ vpn-instance vpn-instance-name ] prefix-list prefix-list-name [ verbose ] |
显示指定协议生成或发现的IPv6路由信息 |
display ipv6 routing-table [ vpn-instance vpn-instance-name ] protocol protocol [ inactive | verbose ] |
显示IPv6路由表中的综合路由统计信息 |
display ipv6 routing-table [ vpn-instance vpn-instance-name ] statistics |
显示IPv6路由表的摘要信息 |
display ipv6 routing-table [ vpn-instance vpn-instance-name ] summary |
显示IPv6 RIB的路由属性信息 |
display ipv6 rib attribute [ attribute-id ] |
显示IPv6 RIB的GR状态信息 |
display ipv6 rib graceful-restart |
显示IPv6 RIB的下一跳信息 |
display ipv6 rib nib [ self-originated ] [ nib-id ] [ verbose ] display ipv6 rib nib protocol protocol-name [ verbose ] |
显示IPv6直连路由下一跳信息 |
display ipv6 route-direct nib [ nib-id ] [ verbose ] |
清除IPv6路由表中的综合路由统计信息 |
reset ipv6 routing-table statistics protocol [ vpn-instance vpn-instance-name ] { protocol | all } |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!