华为路由器的虚拟接口

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

华为路由器中常用的虚接口简介

本文介绍了在路由器配置中经常会使用到的各种虚接口,以及它们的原理和配置方法。

1. 虚接口概述

通常,在路由器中执行show running 命令查看配置时,会发现配置中存在各种类型的接口,例如ethernet 、ATM 、Serial 、POS 等等,这些接口都是与实际的物理接口是一一对应的(如果存在子接口,则可能会使多个接口名称对应同一个物理接口)。但在路由器中还存在着另外一类完全不同的接口类型,例如:loopback 、null 、tunnel 、virtual-te mplate 等等,这一类接口有如下几个共同点:

1.不存在与该接口对应的真实物理接口;虽然有时会存在一定的“映射”关系;

2.由于第一条的原因,此类接口不会依据物理接口自动生成,必须根据实际需要手工创建。

3.接口的状态永远是UP 的(包括物理状态UP 和协议状态UP ),不会DOWN 掉,其中Tunnel 接口除外,该接口的物理状态永远UP ,但协议状态视实际运行状况而定。

由于具有以上几点共性,此类接口被统称为“虚接口”,不同的虚接口各自有不同的用法,下文将分别介绍。

2. loopback 接口的用法

此类接口是应用最为广泛的一种虚接口,几乎在每台路由器上都会使用。常见于如下用途。

作为一台路由器的管理地址

系统管理员完成网络规划之后,为了方便管理,会为每一台路由器创建一个loopbac k 接口,并在该接口上单独指定一个IP 地址作为管理地址,管理员会使用该地址对路由器远程登录(telnet),该地址实际上起到了类似设备名称一类的功能。

但是通常每台路由器上存在众多接口和地址,为何不从当中随便挑选一个呢?原因如下:由于telnet命令使用TCP报文,会存在如下情况:路由器的某一个接口由于故障do wn 掉了,但是其他的接口却仍旧可以telnet,也就是说,到达这台路由器的TCP连接依旧存在。所以选择的telnet地址必须是永远也不会down掉的,而虚接口恰好满足此类要求。由于此类接口没有与对端互联互通的需求,所以为了节约地址资源,loopback 接口的地址通常指定为32 位掩码。

使用该接口地址作为动态路由协议OSPF、BGP的router id。

动态路由协议OSPF、BGP在运行过程中需要为该协议指定一个Router id,作为此路由器的唯一标识,并要求在整个自治系统内唯一。由于router id是一个32位的无符号整数,这一点与IP地址十分相像。而且IP地址是不会出现重复现象的,所以通常将路由器的router id指定为与该设备上的某个接口的地址相同。由于loopback接口的IP地址通常被视为路由器的标识,所以也就成了router id的最佳选择。

3. NULL接口的用法

通常任何接口都会分配一个IP地址,但是NULL接口却是一个例外,你无法在NUL L接口上配置IP地址,路由器会提示配置非法。一个没有IP地址的接口能够做什么用呢?此类接口单独使用没有意义,但是如果将配置的静态路由下一跳指向NULL接口,则会有很大的用处。

用来取悦BGP

BGP路由协议向外发布路由的一种方法是使用命令:

network ip-address [mask mask]

但是此命令正确生效有一个前提:在路由表中必须存在一条与ip-address mask 完全相同的路由。由于BGP发布路由时都是经过聚合之后的,这样的路由路由表中并没有,所以要使用命令:

ip route ip-address mask null0

配置这样一条假静态路由来“取悦”BGP。

相关配置命令:

interface NULL0 /*创建null0接口*/

router bgp 100

network 118.1.0.0 255.255.0.0 /*BGP要向外发布118.1.0.0/16的路由*/

ip route 118.1.0.0 255.255.0.0 NULL 0 /*配置一条假静态路由取悦BGP*/

执行命令show ip route查看路由表信息,

Quidway(config)#show ip route

Routing Tables:

Destination/Mask Proto Pre Metric Nexthop Interface

118.1.0.0/16 Static 60 0 0.0.0.0 NULL0

由于这样的路由只用来取悦BGP,而不会指导真正的报文发送,也就不需要一个IP地址作为路由的下一跳(这样可以节省一个IP地址),所以此处使用NULL0接口。

用来配置黑洞路由

上图是一种常见组网,RTD下面连接了很多台小路由器,由于这些小路由器的路由很有规律,恰好可以聚合成一条10.1.0.0/16的路由,于是RTD将此聚合后的路由发送到上一级路由器RTE,同理,RTE上必定存在一条相同的路由10.1.0.0/16指回到路由器R TD。由于RTD的路由表有限,且网络出口唯一,所以RTD上同时还存在一条缺省路由指向RTE。

上述组网在正常情况下可以很好的运行,但如果出现如下情况时:

RTC到RTD之间的链路由于故障中断了,所以在RTD上将不存在去10.1.3.0/24的指向RTC的路由。此时,如果RTA下的一个用户发送报文,目的地址为10.1.3.1,则,

RTA将此报文发送到RTD,由于RTD上已不存在去10.1.3.0/24的路由,所以选择缺省路由,将报文发送给RTE,RTE查询路由表后发现该条路由匹配10.1.0.0/16,于是又将该报文发送给RTD。同理,RTD会再次将报文发给RTE,此时,在RTD和RTE上就会产生路由自环。

解决上述问题的最佳方案就是,在RTD上配置一条黑洞路由:

ip route 10.1.0.0 255.255.0.0 NULL 0,

这样,如果再发生上述情况时,RTD就会查找路由表,并将报文发送到NULL0接口(实际上就是丢弃此报文),从而避免环路的产生。

4. tunnel接口的用法

tunnel接口的用法比较单一,此类型的接口实际上是GRE协议专用的接口。GRE (G eneric Routing Encapsulation)是一种三层隧道协议,最常用的方式为使用IP报文承载GRE报文,而GRE报文的载荷仍旧是IP报文。

interface Tunnel0 /*创建tunnel接口*/

ip address 10.33.255.2 255.255.255.252 /* 自己tunnel口的地址*/

tunnel source 211.138.94.199 /*建立隧道后,发送报文实际使用的源地址*/

tunnel destination 211.138.94.197 /*建立隧道后,发送报文实际使用的目的地址*/

对于tunnel source、tunnel destination 两个地址,通常仍旧选用本端loopbac k接口和对端的loopback接口的地址(原因见2.1)。

相关文档
最新文档