分享

路由器------逻辑端口

 舟客 2012-02-14

路由器除了我们平常所熟悉并且可以见到的各种物理端口之外,还有一些我们无法见到的由软件来定义的逻辑上的端口。它们每一种接口都具有特殊的含义和用途,灵活地掌握和使用这些逻辑端口,将对路由器的配置和调试起到很大的作用。本文就是介绍路由器上的各种逻辑端口的含义和主要的功能。

以下就是路由器所支持的逻辑端口的类型与名称对照表如下:

接口类型    Type名称    Type简称

回环接口    Loopback    L

空接口    Null    N

隧道接口    Tunnel    T

拨号接口    Dialer    D

多重连接接口    Multilink    M

虚拟端口    Virtual-templateVirtual-access    V

E1的信道化端口    controller    :

子端口    Sub-interface    .

1.    逻辑端口的功能

1.1  Loopback

它是一个完全以软件指定的逻辑上的一个端口,它最大的特点就是可以支持所有的平台,并且状态始终UP,根据它的这个特点,我们把它应用在许多地方。例如:

n    作为路由器的ID标识

在OSPF等协议中,协议规定根据RouterID来选择指派路由器和备份指派路由器,因为Loopback端口始终有效,因此我们通常创建一个Loopback端口并封装IP地址作为路由器的ID,协议会首先比较Loopback端口的IP地址大小进行指派路由器的选择。

n    作为路由器的非直连网段

在Loopback端口配上路由器与别的设备的直连网段之外的网段地址,可以在设备之间测试路由,这也是非常有效和方便的一种做法。

n    作为终端访问的地址

由于Loopback端口永远不会DOWN,因此用它的端口地址作为别的终端和设备进行TELNET访问的地址是比较常用的一种方式。

n    作为“黑洞”处理

因为路由到Loopback的包,会被重新路由回路由器的Loopback口,并不会被真正地转发,因此也可以被作为一个路由的“黑洞”,就是我们后来要介绍的Null端口来使用。

例子:

Router#debug ip pack

Router_config#show run

interface Loopback0

ip address 1.1.1.1 255.255.255.255

no ip directed-broadcast

!

ip route 172.16.10.0 255.255.255.0 Loopback0

Router_config#ping 172.16.10.1 –n 1

PING 172.16.10.1 (172.16.10.1): 56 data bytes

2000-1-1 05:18:02 IP: s=1.1.1.1 (local), d=172.16.10.1 (Loopback0), g=172.16.10.1, len=84, sending

命令格式

在config状态下,输入interface Loopback Num.即可。

1.2  NULL

空端口也是由软件定义的一个逻辑上的端口。这个端口的特点是状态始终有效UP,而且从不转发或者接收任何数据,如果数据被路由到Null端口,它会自动地 发ICMP的unreachable报文给源地址(目前路由器没有实现);无法进行任何封装,唯一的配置命令就是你可以关闭Null端口发ICMP的 unreachable报文。

利用Null端口的特点,我们可以将需要滤掉的数据扔给Null端口,这样能够避免使用大量的访问列表,并且使我们对于过滤数据包,有了除使用访问列表之外的另一选择。

命令格式

在config状态下,输入interface Null Num.即可。

在端口状态下,配置ip unreachable或no ip unreachable(缺省情况下是要发ICMP报文)注:目前路由器这条命令实际没有效果。

例子:

Router_config#show run

interface Loopback0

ip address 1.1.1.1 255.255.255.255

no ip directed-broadcast

!

interface Null0

!

ip route 172.16.10.0 255.255.255.0 Null0

Router#debug ip pack

Router_config#ping 172.16.10.1 –n 1

PING 172.16.10.1 (172.16.10.1): 56 data bytes

2000-1-1 05:20:58 IP:s=1.1.1.1(local), d=172.16.10.1 (Null0), g=172.16.10.1, len=84, sending

1.3  Tunnel

隧道端口是配合隧道技术使用的。隧道技术又称为tunneling,主要是利用协议的封装来实现用一种网络协议来传输另外一种网络协议。也就是说,在本地 网关把第二种协议报文包含在第一种协议报文中,然后按照第一种协议来传输,等报文到达对端网关时,由该网关从第一种协议报文中解析出第二种协议报文,这是 一个基本的隧道技术的实现过程。例如L2TP、  GRE、DVMRP等协议都是采用了隧道的技术。目前路由器中只有GRE协议用到Tunnel 端口,因此要了解Tunnel端口的功能,需要先将GRE简单地介绍一下。具体的关于GRE的内容见GRE一章。

隧道技术可分为两种:一种是运行于链路层的隧道,以此来构建的VPN主要是Access VPN;另外一种运行于网络层的隧道,用它可以构建Intranet VPN和Extranet VPN。GRE即属于运行于网络层的隧道协议。它的运行过程通常是这样的(如下图):当路由器接收了一个需要封装的上层协议数据报文,首先这个报文按照 GRE协议的规则被封装在GRE协议报文中,而后再交给IP层,由IP层再封装成IP协议报文便于网络的传输,等到达对端的GRE协议处理网关时,按照相 反的过程处理,就可以得到所需的上层协议的数据报文了。

GRE的优点为网络的互联提供了一些解决手段,它可以解决数据在多协议网络中传输的困难,可以将无法连续的子网连接起来,同时还可以扩大某些类型网络的工作直径。

Tunnel端口的设置正是完成了GRE协议的功能。

而以上我们所介绍的GRE协议的功能就是通过路由器中Tunnel端口的设置来实现的,我们通过定义Tunnel端口形成一个逻辑上的隧道,把数据包通过隧道进行传输,就像一辆汽车通过一艘船运载渡江一般,到了河的对岸,船将卸下汽车,汽车再继续自己前行。

Tunneling技术是一个点到点的封装协议,因此要为每一条链接单独地建立一条隧道。

命令格式

tunnel命令仅存在于Tunnel类型接口中,若要使一个Tunnel类型接口协议能够运行(protocal up),必须配置以下几个参数:

n    接口的IP地址:形成到Tunnel的路由

n    Tunnel的源地址:对方报文返回的目的地

n    Tunnel的目的地址:指定如何到对方

同时要确保有达到Tunnel目的地址的有效路由。

例子:

interface Ethernet1/1

ip address 10.1.1.1 255.255.255.0

!

interface Tunnel100

ip address 192.168.20.202 255.255.255.0  //路由到Tunnel 端口的地址

tunnel source Ethernet1/1  //本路由器上隧道的起点地址,该地址是对方报文返回的目的地

tunnel destination 10.1.1.2  //本路由器上隧道的终点地址,该地址指定如何到对方

!

由于Tunnel类型接口缺省封装协议为GRE/IP,所以在下面例子中的恢复Tunnel类型接口缺省封装协议命令和配置GRE/IP封装协议命令等效:

router_config#interface Tunnel100

router_config_t100#no tunnel mode

等效于

router_config#interface Tunnel100

router_config_t100#tunnel mode gre ip

注意事项

n    在因为安全问题而设置了访问列表的路由器上,要使用不是访问列表所限制的源、目的地址设置一个隧道

n    会影响某些以跳数作为判断路由优先级的路由协议的路由选择。因为隧道是一个点到点的链路,因此对于路由协议来说是作为一跳来看待,因此它被认为是代价低的路由,但实际上代价可能比多链路的更大

。。。。。。。。。。未完

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多