Loopback接口的作用

 Loopback接口是虚拟接口,是一种纯软件性质的虚拟接口。任何送到该接口的网络数据报文都会被认为是送往设备自身的。大多数平台都支持使用这种接口来模拟真正的接口。这样做的好处是虚拟接口不会像物理接口那样因为各种因素的影响而导致接口被关闭。事实上,将Loopback接口和其他物理接口相比较,可以发现Loopback接口有以下几条优点:
    1.Loopback接口状态永远是up的,即使没有配置地址。这是它的一个非常重要的特性。
    2.Loopback接口可以配置地址,而且可以配置全1的掩码,可以节省宝贵的地址空间。
    3.Loopback接口不能封装任何链路层协议。

对于目的地址不是loopback口,下一跳接口是loopback口的报文,路由器会将其丢弃。对于CISCO路由器来说,可以配置[no] ip unreachable命令,来设置是[否]发送icmp不可达报文,对于VRP来说,没有这条命令,缺省不发送icmp不可达报文 。

二、Loopback接口的应用
基于以上所述,决定了Loopback接口可以广泛应用在各个方面。其中最主要的应用就是:路由器使用loopback接口地址作为该路由器产生的所有IP包的源地址,这样使过滤通信量变得非常简单。

1.在Router ID中的应用
如果loopback接口存在、有IP地址,在路由协议中就会将其用作Router ID,这样比较稳定--loopback接口一直都是up的。
如果loopback接口不存在、或者没有IP地址,Router ID就是最高的IP地址,这样就比较危险--只要是物理地址就有可能down掉。
对于CISCO来说,Router ID是不能配置的,对于VRP来说,Router ID可以配置,那麽我们也可以将Loopback接口地址配成Router ID。
配置BGP
在IBGP配置中使用loopback接口,可以使会话一直进行,即使通往外部的接口关闭了也不会停止。配置举例:
interface loopback 0
ip address 215.17.1.34 255.255.255.255
router bgp 200
neighbor 215.17.1.35 remote-as 200
neighbor update-source loopback 0


  2.在远程访问中的应用
使用telnet实现远程访问。
配置telnet,使从该路由器始发的报文使用的源地址是loopback地址。配置命令如下:
       ip telnet source-interface Loopback0
使用RCMD实现远程访问。
配置RCMD,使从该路由器始发的报文使用的源地址是loopback地址。配置命令如下:
   ip rcmd source-interface Loopback0


  3.在安全方面的应用
在TACACS+中的应用。
   配置TACACS+,使从该路由器始发的报文使用的源地址是loopback地址。配置命令如下:
      ip tacacs source-interface Loopback0
      tacacs-server host 215.17.1.1
可以通过过滤来保护TACACS+服务器--只允许从LOOPBACK地址访问TACACS+端口,从而使读/写日志变得简单,TACACS+日志纪录中只有loopback口的地址,而没有出接口的地址。


  4.在RADIUS用户验证中的应用。
配置RADIUS, 使从该路由器始发的报文使用的源地址是loopback地址。配置命令如下:
ip radius source-interface Loopback0
radius-server host 215.17.1.1
auth-port 1645 acct-port 1646
这样配置是从服务器的安全角度考虑的,可以通过过滤来保护 RADIUS服务器和代理--只允许从LOOPBACK地址访问RADIUS端口,从而使读/写日志变得简单,RADIUS日志纪录中只有loopback口的地址,而没有出接口的地址。


  5.在纪录信息方面的应用,输出网络流量纪录。
配置网络流量输出,使从该路由器始发的报文使用的源地址是loopback地址。配置命令如下:
ip flow-export source Loopback0
Exporting NetFlow records Exporting NetFlow 
这样配置是从服务器的安全角度考虑的,可以通过过滤来保护 网络流量收集--只允许从LOOPBACK地址访问指定的流量端口。


  6.在日志信息方面的应用。
发送日志信息到Unix或者Windows SYSLOG 服务器。路由器发出的日志报文源地址是loopback接口,配置命令如下:
logging source-interface loopback0
这样配置是从服务器的安全角度考虑的,可以通过过滤来保护 SYSLOG服务器和代理--只允许从LOOPBACK地址访问syslog端口,从而使读/写日志变得简单,SYSLOG日志纪录中只有loopback口的地址作为源地址,而不是出接口的地址。


  7.在NTP中的应用
用NTP(网络时间协议)使所有设备的时间取得同步,所有源于该路由器的NTP包都把Loopback地址作为源地址。配置如下:
ntp source loopback0
ntp server 169.223.1.1 source loopback 1
这样做是从NTP的安全角度着想,可以通过过滤来保护NTP系统--只允许从loopback地址来访问NTP端口。NTP将Loopback接口地址作为源地址,而不是出口地址。


  8.在SNMP中的应用
如果使用SNMP(简单网络管理协议),发送traps时将loopback地址作为源地址。配置命令:
snmp-server trap-source Loopback0
snmp-server host 169.223.1.1 community
这样做是为了保障服务器的安全,可以通过过滤来保护SNMP的管理系统--只允许从Loopback接口来访问SNMP端口。从而使得读/写trap信息变得简单。SNMPtraps将loopback接口地址作为源地址,而不是出口地址。


  9.在Core Dumps中的应用
如果系统崩溃,有Core dump特性的路由器能够将内存的映像上传到指定的FTP服务器。配置Core dumps使用loopback地址作为源地址。配置命令如下:
ip ftp source-interface loopback 0
exception protocol ftp
exception dump 169.223.32.1
这样的做的好处是保证了Core Dump FTP 服务器的安全,通过过滤能够保护用于core dumps的FTP服务器--只允许从loopback地址访问FTP端口。
这个FTP服务器必须是不可见的。


  10.在TFTP中的应用
通过TFTP从TFTP服务器配置路由器,可以将路由器的配置保存在TFTP服务器,配置TFTP,将loopback地址作为源于该路由器的包的源地址。配置命令如下:
ip tftp source-interface Loopback0
这样做对TFTP服务器的安全是很有好处的:通过过滤来保护存储配置和IOS映像的TFTP服务器--只允许从loopback地址来访问TFTP端口,TFTP服务器必须是不可见的。


  11.在IP unnumbered中的应用
应用IP Unnumbered在点到点链路上就不需要再配置地址了。配置举例:
interface loopback 0
ip address 215.17.3.1 255.255.255.255
interface Serial 5/0
ip unnumbered loopback 0
ip route 215.34.10.0 255.255.252.0 Serial 5/0

(1)Loopback接口的主要作用

 Loopback是路由器里面的一个逻辑接口。逻辑接口是指能够实现数据交换功能,但是物理上不存在、需要通过配置建立的接口。Loopback接口一旦被创建,其物理状态和链路协议状态永远是Up,即使该接口上没有配置IP地址。正是因为这个特性,Loopback接口具有特殊的用途。下面介绍Loopback接口的常见应用场景。

一、提高可靠性
1、在IP地址借用中的应用
       当某接口不是长期使用IP地址时,为了节省IP地址,可以配置该接口借用其他接口的IP地址。通常配置为借用Loopback接口的地址,以保持接口的稳定性。
 
2、在Router ID中的应用
       一些动态路由协议要求路由器必须有Router ID,它是一台路由器在自治系统中的唯一标识。
       例如,OSPF和BGP在没有手工配置Router ID时,系统需要从本地接口的IP地址中选一个最大的IP地址作为Router ID。如果选择的是物理接口的IP地址,当这个物理接口状态变为Down时,系统也不会重新选择Router ID,除非这个被选择的IP地址被删除。
       因此建议使用Loopback接口的IP地址作为路由器的Router ID。因为Loopback接口稳定,它一直都处于Up状态。
 
3、在BGP中的应用
       为了使BGP会话不受物理接口故障的影响,可将发送BGP报文的源接口配置成Loopback接口。
       在使用Loopback接口作为BGP报文的源接口时,必须注意以下事项:
       确认BGP对等体的Loopback接口的地址是可达的。
       如果是EBGP连接,还要允许EBGP通过非直连建立邻居关系。
 
4、在MPLS LDP中的应用
       在MPLS LDP中,为了保持网络的稳定性,通常使用Loopback接口的IP地址作为传输地址。这个Loopback接口的IP地址可能是公网地址。
 
5、在VPN中的应用
       在L2TP中,建议用户指定LAC端发起隧道请求时使用的隧道源接口类型是Loopback接口。这样是为了当LAC访问LNS时,提高LAC与LNS通信的可靠性。
       在配置GRE和IPv6 over IPv4隧道时,需要创建Tunnel接口。同时可配置该隧道接口的源IP地址或源接口。即,指定该隧道的承载协议的源IP地址或源接口。此时一般选用的也是Loopback接口的IP地址或Loopback接口。
 
二、对信息分类
1、在SNMP中的应用
       如果使用简单网络管理协议SNMP(Simple Network Management Protocol),可以设置发送trap报文时的源IP地址是Loopback接口的IP地址。
       为了保障服务器的安全,SNMP trap将Loopback接口的IP地址作为源IP地址,而不是出接口的IP地址。这样可以使用过滤来保护SNMP的管理系统。系统只允许来自Loopback接口IP地址的报文访问SNMP端口,从而使得读写trap信息变得简单。
 
2、在NTP中的应用
       网络时间协议NTP(Network Time Protocol)可以使所有设备的时间取得同步。NTP可以把Loopback接口的IP地址作为所有从本路由器发出的NTP报文的源地址。
       出于对NTP的安全考虑,NTP将Loopback接口的IP地址(而不是出接口的IP地址)作为源地址。系统只允许Loopback接口地址的报文访问NTP端口。这样可以使用过滤来保护NTP系统。
 
3、在记录信息方面的应用
       输出网络流量记录时,可以配置网络流量输出时的源IP地址是Loopback接口的IP地址。
       这是从服务器的安全角度考虑的。这样可以使用过滤来保护网络流量收集,因为只允许Loopback接口地址的报文访问指定的端口。
 
4、在安全方面的应用
       在用户日志服务器端,通过识别日志的源IP地址,可以迅速定位日志信息的来源。建议配置Loopback地址作为日志报文的源IP地址。
 
5、在HWTACACS中的应用
       配置HWTACACS,使从该路由器始发的报文使用的源地址是Loopback地址。这样可以使用过滤来保护HWTACACS服务器。
       因为这样只允许从Loopback接口的地址发送的报文访问HWTACACS服务器,从而使读写日志变得简单。HWTACACS日志记录中只有Loopback接口的地址,而没有出接口的地址。
 
6、在RADIUS用户验证中的应用
       配置RADIUS服务器时,使从该路由器始发的报文使用的源IP地址是Loopback接口的IP地址。

       和在HWTACACS中的应用类似,这样配置是从服务器的安全角度考虑的。它可以使用过滤来保护RADIUS服务器和代理。这样只允许Loopback接口地址的报文访问RADIUS服务器的端口,从而使读写日志变得简单。RADIUS日志记录中只有Loopback接口的地址,而没有出接口的地址。

 (2)loopback接口的用法

此类接口是应用最为广泛的一种虚接口,几乎在每台路由器上都会使用。常见于如下用途。 
  1 作为一台路由器的管理地址 
  系统管理员完成网络规划之后,为了方便管理,会为每一台路由器创建一个loopback 接口,并在该接口上单独指定一个IP 地址作为管理地址,管理员会使用该地址对路由器远程登录(telnet ),该地址实际上起到了类似设备名称一类的功能。 
  但是通常每台路由器上存在众多接口和地址,为何不从当中随便挑选一个呢? 
  原因如下:由于telnet 命令使用TCP 报文,会存在如下情况:路由器的某一个接口由于故障down 掉了,但是其他的接口却仍旧可以telnet ,也就是说,到达这台路由器的TCP 连接依旧存在。所以选择的telnet 地址必须是永远也不会 
  down 掉的,而虚接口恰好满足此类要求。由于此类接口没有与对端互联互通的需求,所以为了节约地址资源,loopback 接口的地址通常指定为32 位掩码。 
  2 使用该接口地址作为动态路由协议OSPF 、BGP 的router id动态路由协议OSPF 、BGP 在运行过程中需要为该协议指定一个Router id ,作为此路由器的唯一标识,并要求在整个自治系统内唯一。由于router id 是一个32 位的无符号整数,这一点与IP 地址十分相像。而且IP 地址是不会出现重复现象的,所以通常将路由器的router id 指定为与该设备上的某个接口的地址相同。由于loopback 接口的IP 地址通常被视为路由器的标识,所以也就成了router id 的最佳选择。 
  3、使用该接口地址作为BGP 建立TCP 连接的源地址在BGP 协议中,两个运行BGP 的路由器之间建立邻居关系是通过TCP 建立连接完成的。 
  在配置邻居时通常指定loopback 接口为建立TCP 连接的源地址(通常只用于IBGP ,原因同2.1 ,都是为了增强TCP 连接的健壮性) 
  配置命令如下: 
  router id 61.235.66.1 
  interface loopback 0 
  ip address 61.235.66.1 255.255.255.255 
  router bgp 100 
  neighbor 61.235.66.7 remote-as 200 

  neighbor 61.235.66.7 update-source LoopBack0

配置逻辑端口
逻辑端口是相对物理端口而言的,它是指能够实现数据交换功能但在物理上不存在、需要通过配置来建立的端口。路由器通常提供5类逻辑端口:Loopback(回环)端口,NULL(空)端口,Tunnel(隧道)端口,Dialer(拨号)端口以及子端口。
12.3.1  Loopback端口配置
Loopback(回环)端口是完全软件模拟的路由器本地端口,它永远都处于UP状态。发往Loopback端口的数据包将会在路由器本地处理,包括路由信息。Loopback端口的IP地址可以用来作为OSPF路由协议的路由器标识、实施发向 Telnet或者作为远程Telnet访问的网络端口等。配置一个Loopback端口类似于配置一个以太网端口,可以把它看作一个虚拟的以太网端口。
设置Loopback端口。创建指定端口号的Loopback后,就可以像配置以太网口一样配置Loopback端口的通信参数(譬如IP地址等)了。
Router(config)#interface loopback loopback-interface-number
删除Loopback端口。由于Loopback是虚拟的端口,它只在逻辑意义上存在,可以在需要的时候使用no命令删除指定的Loopback端口。
Router(config)#no interface loopback loopback-interface-number
显示Loopback端口状态。
 Router#show interfaces loopback loopback-interface-number
 
NULL端口配置
路由器还提供NULL(空)的虚拟端口。该虚拟端口仅仅相当于一个可用的系统设备。NULL(空)永远都处于UP状态并且永远不会主动发送或者接受网络数据,任何发往NULL端口的数据包都会被丢弃,在NULL端口上任何链路层协议封装的企图都不会成功。
进入NULL端口配置。
 
Router(config)#interface null 0
允许NULL端口发送ICMP的unreachable消息。
Router(config-if)#ip unreachables
禁止NULL端口发送ICMP的unreachable消息。
 Router(config-if)#no ip unreachables
NULL端口更多地用于网络数据流的过滤。如果使用空端口,可以通过将不希望处理的网络数据流路由给NULL端口,而不必使用访问列表,例如:
Router(config)#ip route 127.0.0.0 255.0.0.0 null 0
由于NULL端口在功能上是一个“空”的系统设备,它不会像以太网或者其他端口一样可显示(例如,使用命令show running-config是无法看见它的)。同时,作为系统设备是无法使用no interface null命令来删除NULL端口的。

原文地址:https://www.cnblogs.com/klb561/p/9142579.html