loopback(基于Node.js的开源的API框架)

2023-05-07 30阅读

温馨提示:这篇文章已超过381天没有更新,请注意相关的内容是否还可用!

loopback

基于Node.js的开源的API框架

回环(loopback)指将电子信号、数据流等原样送回发送者的行为。它主要用于对通信功能的测试。

它可以是仅具有一个通信端点的通信信道。由这样的信道发送的任何消息立即并且仅由该相同信道接收。

在电信设备安装中,环回设备对来自服务交换中心的接入线路进行传输测试,这通常不需要所服务终端的人员的协助。

环绕是一种在不一定相邻的站之间测试的方法,其中使用两条线,测试在一个站完成,两条线在远端站互连。

当手动或自动,远程或本地应用时,跳线也可以用作环回,便于环回测试。

中文名 回环
外文名 loopback address
亦称 回送地址
使用 接口地址作为OSPF
采用 127.0.0.1作为本地环回地址

环回地址

在Windows系统中,采用127.0.0.1作为本地环回地址。

BGP Update-Source

BGP Update-Source

因为Loopback口只要Router还健在,则它就会一直保持Active,这样,只要BGP的Peer的Loopback口之间满足路由可达,就可以建立BGP 会话,总之BGP中使用loopback口可以提高网络的健壮性。

neighbor 215.17.1.35 update-source loopback

Router ID

使用该接口地址作为OSPF、BGP的Router-ID,作为此路由器的唯一标识,并要求在整个自治系统内唯一,在Ipv6中的BGP/OSPF的Router-ID仍然是32位的IP地址。

在OSPF中的路由器优先级是在接口下手动设置的,接着才是比较OSPF的Router-ID(Router-ID的选举在这里就不多说了。

PS:一台路由器启动OSPF路由协议后,将选取物理接口的最大IP地址作为其RouterID,但是如果配置Loopback接口,则从Loopback中选取IP地址最大者为RouterID。

另外一旦选取RouterID,OSPF为了保证稳定性,不会轻易更改,除非作为RouterID的IP地址被删除或者OSPF被重新启动),在OSPF和BGP中的Router-ID都是可以手动在路由配置模式下设置的。

OSPF: Router-ID *.*.*.*

BGP:BGP Router-ID *.*.*.*

IP Unnumbered Interfaces

无编号地址可以借用强壮的loopback口地址,来节约网络IP地址的分配。

例子:

interface loopback 0

ip address 215.17.3.1 255.255.255.255

!

interface Serial 5/0

bandwidth 128

ip unnumbered loopback

0Exception Dumps by FTP

当Router 宕机,系统内存中的文件还保留着一份软件内核的备份,CISCO路由器可以被配置为向一台FTP服务器进行内核导出,作为路由器诊断和调试处理过程的一部分。

可是,这种内核导出功能必须导向一台没有运行公共FTP服务器软件的系统,而是一台通过ACLS过滤(TCP地址欺骗)被重点保护的只允许路由器访问的FTP服务器。

如果Loopback口地址作为Router的源地址,并且是相应地址块的一部分,ACLS的过滤功能很容易配置。

Sample IOS configuration:

ip ftp source-interface Loopback0

ip ftp username cisco

ip ftp password 7 045802150C2E

exception protocol ftp

exception dump 169.223.32.1

TFTP-SERVER Access

对于TFTP的安全意味着应该经常对IP源地址进行安全方面的配置,CISCO IOS软件允许TFTP服务器被配置为使用特殊的IP接口地址,基于Router的固定IP地址,将运行TFTP服务器配置固定的ACLS.

ip tftp source-interface

Loopback0 SNMP-SERVER Access

路由器的Loopback口一样可以被用来对访问安全进行控制,如果从一个路由器送出的SNMP网管数据起源于Loopback口,则很容易在网络管理中心对SNMP服务器进行保护

Sample IOS configuration:

access-list 98 permit 215.17.34.1

access-list 98 permit 215.17.1.1

access-list 98 deny any

!

snmp-server community 5nmc02m RO 98

snmp-server trap-source Loopback0

snmp-server trap-authentication

snmp-server host 215.17.34.1 5nmc02m

snmp-server host 215.17.1.1 5nmc02m.Wednesday, June 06, 2001

TACACS/RADIUS-Server Source Interface

当采用TACACS/RADIUS协议,无论是用户管理性的接入Router还是对拨号用户进行认证,Router都是被配置为将Loopback口作为Router发送TACACS/RADIUS数据包的源地址,提高安全性。

TACACS

aaa new-model

aaa authentication login default tacacs+ enable

aaa authentication enable default tacacs+ enable

aaa accounting execstart-stoptacacs+

!

ip tacacs source-interface Loopback0

tacacs-server host 215.17.1.2

tacacs-server host 215.17.34.10

tacacs-server key CKr3t#

!

RADIUS

radius-server host 215.17.1.2 auth-port 1645 acct-port 1646

radius-server host 215.17.34.10 auth-port 1645 acct-port 1646

ip radius source-interface Loopback0

!

NetFlow Flow-Export

从一个路由器向NetFlow采集器传送流量数据,以实现流量分析和计费目的,将路由器的Router的Loopback地址作为路由器所有输出流量统计数据包的源地址,可以在服务器或者是服务器外围提供更精确,成本更低的过滤配置。

ip flow-export destination 215.17.13.1 9996

ip flow-export source Loopback0

ip flow-export version 5 origin-as

!

interface Fddi0/0/0

description FDDI link to IXP

ip address 215.18.1.10 255.255.255.0

ip route-cache flow

ip route-cache distributed

no keepalive

!

FDDDI 0/0/0 接口被配置成为进行流量采集。路由器被配置为输出第五版本类型的流量信息到IP地址为215.17.13.1的主机上,采用UDP协议,端口号9996,统计数据包的源地址采用Router的Loopback地址。

NTP Source Interface

NTP用来保证一个网络内所有Rdouter的时钟同步,确保误差在几毫秒之内,如果在NTP的Speaker之间采用Loopback地址作为路由器的源地址,会使得地址过滤和认证在某种程度上容易维护和实现。

许多ISP希望他们的客户只与ISP自己的而不是世界上其他地方的时间服务器同步。

clock timezone SST 8

!

access-list 5 permit 192.36.143.150

access-list 5 permit 169.223.50.14

!.Cisco ISP Essentials

39

ntp authentication-key 1234 md5 104D000A0618 7

ntp authenticate

ntp trusted-key 1234

ntp source Loopback0

ntp access-group peer 5

ntp update-calendar

ntp peer 192.36.143.150

ntp peer 169.223.50.14

!

SYSLOG Source Interface

系统日志服务器同样也需要在ISP骨干网络中被妥善保护。许多ISP只希望采集他们自己的而不是外面网络发送来的昔日日志信息。

对系统日志服务器的DDOS攻击并不是不知道,如果系统信息数据包的源地址来自于被很好规划了的地址空间,例如,采用路由器的Loopback口地址,对系统日志服务器的安全配置同样会更容易。

A configuration example:

logging buffered 16384

logging trap debugging

logging source-interface Loopback0

logging facility local7

logging 169.223.32.1

!

Telnet to the Router

远程路由器才用Loopback口做远程接入的目标接口,这个一方面提高网络的健壮性,另一方面,如果在DNS服务器做了Router的DNS映射条目,则可以在世界上任何路由可达的地方Telnet到这台Router,ISP会不断扩展,增加新的设备

由于telnet命令使用TCP报文,会存在如下情况:路由器的某一个接口由于故障down了,但是其他的接口却仍旧可以telnet,也就是说,到达这台路由器的TCP连接依旧存在。

所以选择的telnet地址必须是永远也不会down掉的,而虚接口恰好满足此类要求。由于此类接口没有与对端互联互通的需求,所以为了节约地址资源,loopback接口的地址通常指定为32位掩码。

DNS前向和反向转发区域文件的例子:

; net.galaxy zone file

net.galaxy. IN SOA ns.net.galaxy. hostmaster.net.galaxy. (

1998072901 ; version == date(YYYYMMDD)+serial

10800 ; Refresh (3 hours)

900 ; Retry (15 minutes)

172800 ; Expire (48 hours)

43200 ) ; Mimimum (12 hours)

IN NS ns0.net.galaxy.

IN NS ns1.net.galaxy.

IN MX 10 mail0.net.galaxy.

IN MX 20 mail1.net.galaxy.

;

localhost IN A127.0.0.1

gateway1 IN A 215.17.1.1

gateway2 IN A 215.17.1.2

gateway3 IN A 215.17.1.3

;

;etc etc

; 1.17.215.in-addr.arpa zone file

;

1.17.215.in-addr.arpa. IN SOA ns.net.galaxy. hostmaster.net.galaxy. (

1998072901 ; version == date(YYYYMMDD)+serial

10800 ; Refresh (3 hours)

900 ; Retry (15 minutes)

172800 ; Expire (48 hours)

43200 ) ; Mimimum (12 hours)

IN NS ns0.net.galaxy.

IN NS ns1.net.galaxy.

1 IN PTR gateway1.net.galaxy.

2 IN PTR gateway2.net.galaxy..Wednesday, June 06, 2001

3 IN PTR gateway3.net.galaxy.

;

;etc etc

On the router, set the telnet source to the loopback interface:

ip telnet source-interface Loopback0

RCMD to the router

RCMD要求网络管理员拥有UNIX的rlogin/rsh客户端来访问路由器。某些ISP采用RCMD来捕获接口统计信息,上载或下载路由器配置文件,或者获取Router路由选择表的简易信息。

Router可以被配置采用Loopback地址作为源地址,使得路由器发送的所有数据包的源地址都采用Loopback地址来建立RCMD连接:

ip rcmd source-interface Loopback0

名词解释

又叫本地环回接口。

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

常见于如下用途:

1、作为一台路由器的管理地址系统管理员完成网络规划之后,为了方便管理,会为每一台路由器创建一个loopback接口,并在该接口上单独指定一个IP地址作为管理地址。

管理员会使用该地址对路由器远程登录(telnet),该地址实际上起到了类似设备名称一类的功能。

但是通常每台路由器上存在众多接口和地址,为何不从当中随便挑选一个呢?

原因如下:由于telnet命令使用TCP报文,会存在如下情况:路由器的某一个接口由于故障down掉了,但是其他的接口却仍旧可以telnet,也就是说,到达这台路由器的TCP连接依旧存在。

所以选择的telnet地址必须是永远也不会down掉的,而虚接口恰好满足此类要求。由于此类接口没有与对端互联互通的需求,所以为了节约地址资源,loopback接口的地址通常指定为32位掩码。

2、使用该接口地址作为动态路由协议OSPF、BGP的router i 动态路由协议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

4、在Windows系统中,采用127.0.0.1作为本地环回地址。

网口上的IPv6地址

Loopback网卡,它一般的用途有三个:

用于网络软件发布前的测试。

用于协议栈本身的测试。

用于配置一些可以标识主机的IP地址以供管理和接入(比如Linux LVS)。

相关实验

实验说明:

1、配置IP地址,每一个路由器上配置一个Loopabck0接口为X.X.X.X/32,如R1为1.1.1.1/32。

2、AS300内运行OSPF进程1区域0,通告R2,R3,R4之间互联网段以及他们的Loopback0接口。

3、R1和R2之间通过直连接口建立EBGP邻居关系,R1和R5分别属于AS 100、200。

4、R4和R5之间通过Loopback 0接口建立EBGP邻居关系。

5、R2和R4之间通过Loopback 0接口建立IBGP邻居关系。

6、将R1的Loopback 0和R5的Loopback 1通过network的方式通告进BGP中,保证能够互访。

7、在R2上将OSPF路由通过import的方式引入BGP。

8、验证:display bgp route //查看BGP路由

参考资料

1.闲谈IPv6-Loopback网口上的IPv6地址·腾讯云

2.【实验】BGP路由通告·腾讯云

目录[+]