学分高考 IT技术

过气的ifconfig,你还在用吗?

发布时间: 2022-03-17 21:12:01

过气的ifconfig,你还在用吗?

1

今天看到有人说ifconfig、route、arp等命令已经过气了,我心里一惊。这些东西,我才刚刚学会,咋能说过气就过气了呢?不成,我得看个究竟。

经过多方查找,在Debian的网站上,我还真找到net-tools作者Martin Ferrari的一封公开信,发布于2009年3月15日。他信中说,net-tools不能支持Linux内核中的诸多现代功能,在自动化中应用起来非常困难。而另一方面,自2007年以来,一直随Linux 2.2版发行的iproute的功能已经完成覆盖net-tools,且性能更优。特别是,net-tools中的ipmaddr中的代码来自iproute中的ip maddr;iptunnel,则来自iproute中的ip tunnel。总的来说,他觉得有必要放弃net-tools,号召大家使用iproute。

在Linux CentOS 7里,运行man route,就能看到,命令简介下有一行字:

This program is obsolete. For replacement,check for ip route.(本程序已经过期,请使用ip route命令)

我一一查询了ifconfig、ipmaddr、iptunnel、nameif、arp等命令,个个都是如此。两组工具的对照表如下:

net-tools中被iproute2替代、过气的工具对照表

过气的工具

iproute2工具

说明

ifconfig

ip addr,ip link,ip -s

地址及链接配置

route

ip route

路由表

arp

ip neigh

邻居

iptunnel

ip tunnel

通道

nameif

ifrename,ip link set name

网络接口更名

ipmaddr

ip maddr

多播

netstat

ip -s,ss,ip route

多种网络统计数据

mii-tool

ethtool

用mii与网卡自动协商工作状态

Wikipedia上,把netstat也算作net-tools,也在过气之列。但权威的Linux基金会网站上没有netstat。查询netstat的帮助信息,也没有讲这个命令要obsolete。

2

iproute2,也称作iproute,是一个用户空间的工具集,可用来管理、监控Linux内核中的网络功能,包括路由、网络接口、通道、流量控制,以及网络相关的设备驱动等等。iproute2与Linux内核之间,通过netlink协议通信。

iproute2是一个开源项目,以GNU GPL 2许可发行。它的开发,紧跟Linux内核网络组件的步伐。2013年12月,其代码库由Stephen Hemminger来管理。原来的作者Alexey Kuznetsov在负责Linux内核质量管理(QoS)工作。

iproute2包括以下命令行工具:

·ip

·ss

·bridge

·rtacct

·rtmon

·tc (traffic control,流量控制)

·ctstat

·lnstat

·nstat

·routef

·routel

·rtstat

·tipc

·arpd

·devlink

我现在还在使用ifconfig等命令。我们来试一试ip系列的命令:

·ip addr/ ip a #查看所有的网络设备

·ip addr show eth0 #查看eth0的详细信息

·ip route #查看所有的路由

·ip neigh #查看当前内核中记录的网络邻居,为ip neighbour的省略形式

·ip link set eth0 up #启动网络接口eth0

·ip link set br0 down #关闭网络接口br0

·ip addr add 192.168.1.5 dev eth1 #为eth1添加ip地址

·ip addr del 192.168.1.5/24 dev eth1 #删除eth1网卡的ip地址

·ip route add 172.25.250.0/24 via 192.168.1.100 dev eth0 #添加固定路由

·ip route del 172.25.250.0/24 #删除固定路由

·ip route add default via 192.168.1.1 #添加缺省网关

·ip route add default via 192.168.1.1 #删除固定网关

现在,也知道两组看似等效的命令之间有着很大的差别,以至于要被抛弃。这种差别具体又是什么?我也没有时间去深究。不过,要是你的工作跟这些相关,肯定会知道,在云计算等新兴的技术栈中,继续使用net-tools系列工具将不合时宜。必要的时候,还应该去阅读工具的源代码,以发现它们之间的区别。

3

意识到这个问题,我们应该尽可能不再发表跟哪些过气的命令相关的文章或博客,加速这些命令退出内核的步伐。那些拒不使用iproute之类新命令,仍然宣传如net-tool这类过气命令的人,是不是就成了技术领域内的保守力量?要知道,他们曾经也是很潮、很前卫的一群人。

最后,我要说的是:我竟然这么落伍,这么迟钝。那封信早在2009年就已经公开,而我在9年之后的2018年才读到。看来,我也有点过气了。

参考资料:

https://lists.debian.org/debian-devel/2009/03/msg00780.html

https://en.wikipedia.org/wiki/Iproute2

https://wiki.linuxfoundation.org/networking/net-tools

https://wiki.linuxfoundation.org/networking/iproute2

温馨提示:
本文【过气的ifconfig,你还在用吗?】由作者教培参考提供。该文观点仅代表作者本人,学分高考系信息发布平台,仅提供信息存储空间服务,若存在侵权问题,请及时联系管理员或作者进行删除。
我们采用的作品包括内容和图片部分来源于网络用户投稿,我们不确定投稿用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的权利,请联系我站将及时删除。
内容侵权、违法和不良信息举报
Copyright @ 2024 学分高考 All Rights Reserved 版权所有. 湘ICP备17021685号