如何判断释放接口loopbackk接口的大小

loopback接口是Linux系统中特殊的虚拟接口,通常不需要对地址和掩码进行特殊设置。由于项目特殊需求,需要使用此网段地址作(127.x.0.0/16)作为设备内部板卡间通信管理地址使用,因此需要对loopback接口的地址和掩码进行修改。本文在Ubuntu系统中进行方案的验证。
loopback接口简介
TCP/IP协议中Lookback接口是一个通过软件实现的虚拟网络接口,它不与任何硬件相关联。
RFC2606中明确指出了loopback地址的标准域名为localhost。在IPv4中,其对应的IP地址一直是127.0.0.1;理论上,整个127 IP段(127.0.0.0~127.255.255.255)的IP地址都为loopback地址,与localhost对应。在IPv6中,localhost对应的IP地址为0:0:0:0:0:0:0:1,一般写作::1。
[root@localhost ~]# ifconfig lo
Link encap:Local Loopback
inet addr:127.0.0.1
Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b)
TX bytes:0 (0.0 b)
[root@localhost ~]# cat /etc/hosts
localhost localhost.localdomain localhost4 localhost4.localdomain4
localhost localhost.localdomain localhost6 localhost6.localdomain6
loopback地址和掩码修改
IP协议规定loopback数据包是不允许在网络中传输的,网络网络接口必须丢弃接收到的loopback数据包。要想改变此缺省规则,需要对loopback地址的判断规则进行修改,对内核进行修改和定制:
diff --git a/include/linux/in.h b/include/linux/in.h
index d60122a..32d52db 100644
--- a/include/linux/in.h
+++ b/include/linux/in.h
@@ -238,7 +238,7 @@ struct sockaddr_in {
/* Address to loopback in software to local host.
#define INADDR_LOOPBACK
0x7f000001 /* 127.0.0.1
-#define IN_LOOPBACK(a)
((((long int) (a)) & 0xff000000) == 0x7f000000)
+#define IN_LOOPBACK(a)
((((long int) (a)) & 0xffff0000) == 0x7f000000)
/* Defines for Multicast INADDR */
#define INADDR_UNSPEC_GROUP
0xe0000000U /* 224.0.0.0
@@ -254,7 +254,7 @@ struct sockaddr_in {
static inline bool ipv4_is_loopback(__be32 addr)
- return (addr & htonl(0xff000000)) == htonl(0x7f000000);
+ return (addr & htonl(0xffff0000)) == htonl(0x7f000000);
static inline bool ipv4_is_multicast(__be32 addr)
在内核的include/linux/in.h中对loopback地址的掩码进行修改,并修改了loopback地址的判断。按照上述修改,仅127.0.0.0-127.0.255.255为loopback地址,其余127.1.0.0-127.255.255.255均可作为正常接口地址使用。
配置修改完需要对内核进行重新编译与安装。新内核启动后,可以对loopback地址掩码进行修改:
[root@localhost ~]# ifconfig lo netmask 255.255.0.0
[root@localhost ~]# ifconfig lo
Link encap:Local Loopback
inet addr:127.0.0.1
Mask:255.255.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING
RX packets:4812 errors:0 dropped:0 overruns:0 frame:0
TX packets:4812 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:.3 MB)
TX bytes:.3 MB)
配置VLAN子接口
添加VLAN子接口需要安装VLAN包:
[root@localhost ~]# apt-get install vlan
在当前的eth1接口上添加vlan11的子接口,并配置127.11.x.x网段地址。
[root@localhost ~]# vconfig add eth1 11
[root@localhost ~]# ifconfig eth1.11 127.11.254.1 netmask 255.255.0.0
[root@localhost ~]# ifconfig vlan11
Link encap:Ethernet
HWaddr 00:0c:29:22:cf:ac
inet addr:127.11.254.1
Bcast:127.11.255.255
Mask:255.255.0.0
inet6 addr: fe80::20c:29ff:fe22:cfac/64 Scope:Link
UP BROADCAST RUNNING MULTICAST
RX packets:246546 errors:0 dropped:0 overruns:0 frame:0
TX packets:933262 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:.8 MB)
TX bytes: (3.7 GB)
在虚拟化环境下,我们可以通过virtual switch来连接两个Linux系统,验证此vlan11接口之间的通信。
接口配置文件
根据上述对loopback接口的修改,最终相关的接口配置文件如下:
[root@localhost ~]# cat /etc/network/interfaces
iface lo inet loopback
address 127.0.0.1
netmask 255.255.0.0
network 127.0.0.0
broadcast 127.0.255.255
auto vlan11
iface vlan11 inet static
address 127.11.254.1
netmask 255.255.0.0
network 127.11.0.0
broadcast 127.11.255.255
vlan_raw_device eth1
进行到这里,系统已经开始支持127.x.x.x/16的接口地址,相关的报文可以通过网口发出。
loopback接口掩码加载问题的规避
在实际测试中,发现系统重启后,loopback地址掩码并不能正常加载,仍为255.0.0.0。这应该是由于NetworkManager加载/etc/network/interfaces配置时,忽略了用户的配置导致。为规避这个问题,可以在/etc/rc.local中对loopback地址的掩码进行配置,在/etc/rc.local中追加下面的语句:
ifconfig lo netmask 255.255.0.0
Loopback接口的主要作用及Loopback端口配置
Loopback是路由器里面的一个逻辑接口。逻辑接口是指能够实现数据交换功能,但是物理上不存在、需要通过配置建立的接口。Loopback接口一旦被创建,其物理状态和链路协议状态永远是Up,即使该接口...
关于Linux 环回接口lo的IP地址修改
在一些应用中,我们通常需要修改本地的loopback接口地址。
但linux lo接口的IP地址修改有些特殊。
一般接口比如eth0, 我们可以采用vi /etc/sysconfig/networ...
linux interfaces配置文件详解
linux interfaces配置文件详解配置文件基本格式一个基本的配置大概是下面这个样子:  1 auto lo
  2 iface lo inet loopback
  4 # The ...
linux loop device介绍
在Linux中,有一种特殊的块设备叫loop device,这种loop device设备是通过影射操作系统上的正常的文件而形成的虚拟块设备。因为这种设备的存在,就为我们提供了一种创建一个存在于...
回环接口(loop-back/loopback)
Loopback接口是一个专业的虚拟网络接口,在不同的领域,其含义也大不一样。
TCP/IP协议栈中的loopback接口
在TCP/IP中回环设备是一个通过软件实现的虚拟网络接口,它不与任何硬件...
loopback具体作用是什么?怎么用?
loopback就是回环(自己发,自己收),有两种实现方法,一是逻辑回环,另一个是物理回环。前者是用interfaceloopback 0 命令创建一个回环接口,后者就是接口做自己的发送和自己的接收端...
在Linux中创建回环设备(loopback device)的方法
你有没有想过在Linux的文件管理系统中再创建一个文件系统,就像在Windows中创建一个新的磁盘分区那样(但其实并不必非得直接那么做)。这时你就需要用到回环设备(loop device)。在Linu...
回环接口(loopback)
最近搭建web集群环境,采用了LVS+Keepalived+Nginx+Tomcat的框架。在Realserver端需要用到回环接口(loopbak)。这里就简单介绍一下Linux和win...
Linux和windows的Loopback接口
什么接口是loopback?先看一个linux下面的配置:
[root@ZhouTianzuo ~]# ifconfig lo
Link encap:Local Loopback ...
关于Linux LOOPBACK网口抓包的一个细节
这个问题其实是我几个月前碰到,只是那时好像还在回忆着什么,心系上海,还没有完全适应这个新环境,加上这个问题也不是什么太深奥的问题,觉得太简单了,就搁置了。今天周末闲来无事就顺便写来来了。加上深圳经常下...
没有更多推荐了,
(window.slotbydup=window.slotbydup || []).push({
id: "5865577",
container: s,
size: "300,250",
display: "inlay-fix"怎样正确理解LOOPBACK接口_百度知道
怎样正确理解LOOPBACK接口
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
来自电脑网络类芝麻团
采纳数:21347
获赞数:13460
参与团队:
loopback接口是一种纯软件性质的虚拟接口。loopback接口创建后物理层状态和链路层协议永远处于up状态。loopback接口可以配置ip地址,为了节约ip地址,系统会自动给loopback接口的ip地址配置32位的子网掩码。loopback接口下也可以使能路由协议,可以收发路由协议报文。
为你推荐:
其他类似问题
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。回环接口在我们做试验的过程有典型的应用,几乎可以离不开它,一个虚拟的接口,给我带来了很大的方便,有了回环接口,你可以不用为你的PC,来添加第二块物理网卡,就可以完成VM,服务器搭建,群集,VPN等试验,虚拟机桥接等
如下是我举例,我们通过这些例子,来讲述回环接口的作用。。
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
阅读(...) 评论()Loopback的配置_百度文库
您的浏览器Javascript被禁用,需开启后体验完整功能,
享专业文档下载特权
&赠共享文档下载特权
&100W篇文档免费专享
&每天抽奖多种福利
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
Loopback的配置
&&使用PT做的接入广域网实验
阅读已结束,下载本文到电脑
定制HR最喜欢的简历
你可能喜欢Loopback口和Null0接口揭秘_百度文库
您的浏览器Javascript被禁用,需开启后体验完整功能,
享专业文档下载特权
&赠共享文档下载特权
&100W篇文档免费专享
&每天抽奖多种福利
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
Loopback口和Null0接口揭秘
&&Loopback口和Null0接口揭秘
阅读已结束,下载本文需要
定制HR最喜欢的简历
下载文档到电脑,同时保存到云知识,更方便管理
加入VIP
还剩2页未读,
定制HR最喜欢的简历
你可能喜欢

我要回帖

更多关于 loopback接口的作用 的文章

 

随机推荐