在Linux上弃用ifconfig的语句在哪里?


41

许多人指出,ifconfig不推荐使用该命令,而推荐使用该命令ip(至少在Linux上如此)。

这通常用作从切换ifconfig到的论点ip(请参阅有关是否应该使用Ifconfig退出的注释和答案)。

我们在哪里可以找到有关此声明的声明(即在哪里声明ifconfig将来将不再支持)?


15
手册页,一本。
迈克尔·汉普顿

5
像我一样...只要可以就使用ipconfig ...直到不能为止。IPv6同样!
ewwhite 2014年

3
@ewwhite 默认情况下,RHEL 7甚至没有安装网络工具。祝你好运。
迈克尔·汉普顿

4
@MichaelHampton不在我的man页面上
Izkata 2014年

3
@ewwhite:您使用Windows吗?
slebetman

Answers:


30

其中一位网络工具维护者于2009年初在debian-devel邮件列表中发表了有关淘汰网络工具计划的正式声明。就像他们的说法一样,自那时以来,几乎没有维护过net-tools。

Luk Claes和我,作为当前网络工具的维护者,我们一直在思考它的未来。多年来,Net-tools一直是Debian和任何其他基于Linux的发行版的核心部分,但是它正在显示其时代。

它不支持linux内核的许多现代功能,该接口远非最佳且难以在自动化中使用,而且,最近几年它并没有引起人们的广泛关注。

另一方面,围绕2.2内核系列推出的iproute套件具有更好和一致的界面,功能更强大,并且已有近十年的历史,因此没有人会说它未经测试。

因此,我们的计划是用iproute完全替代net-tools,也许可以引领其他发行版的发展。当然,大多数人和工具都使用并记住古老的旧界面,因此第一步是编写包装器,尝试与网络工具兼容。

同时,我们认为大多数使用net-tools的软件包都应打补丁以改用iproute,而其他软件包可以继续使用包装器一段时间。ifupdown软件包显然是第一个候选者,但是自2007年以来,似乎已经在实验中使用iproute版本。

编写包装器的想法最终因不可行而被放弃,从那时起,几乎所有Linux发行版都已切换到iproute2。


21

手册页ifconfig说:

IFCONFIG(8)           Linux System Administrator's Manual          IFCONFIG(8)

NAME
       ifconfig - configure a network interface

SYNOPSIS
       ifconfig [-v] [-a] [-s] [interface]
       ifconfig [-v] interface [aftype] options | address ...

NOTE
       This  program  is obsolete!  For replacement check ip addr and ip link.
       For statistics use ip -s link.

Arch Linux的新闻页面称:

弃用网络工具

2011-06-08-汤姆·冈德森

今年四月是最后一个网络工具发行十周年。我们决定以此为契机,弃用网络工具,并为网络工具功能提供替代性且维护更好的解决方案。这会带来一些后果,但大多数人不会注意到。

net-tools将继续存在于存储库中,因此依赖于它的脚本仍然可以运行。

Linux基金会说,很多类似的话:

net-tools
由Linux Foundation ...-2009年11月19日-10:23 am

networking

总览

程序的集合,这些程序形成Linux操作系统的NET-3网络分发的基础集。该软件包包括arp(8),主机名(1),ifconfig(8),ipmaddr,iptunnel,mii-tool(8),nameif(8),netstat(8),plipconfig(8),rarp(8),路由(8)和slattach(8)。

Maintainers: Bernd Eckenfels, Phil Blundell
Current Version: net-tools 1.60 (see upstream git for updates)

请记住,大多数网络工具程序现在已过时:

program   obsoleted by
arp       ip neigh
ifconfig  ip addr
ipmaddr   ip maddr
iptunnel  ip tunnel
route     ip route
nameif    ifrename
mii-tool  ethtool

您可能需要查看iproute2页面。

我不确定Ubuntu为什么不附带弃用说明。


你不说什么发行版。Ubuntu仍然有iconfig的实际手册页。
安德鲁·舒尔曼

@AndrewSchulman,通过指向手册页的链接更新了我的答案。
2014年

1
不过,它已在上游不推荐使用。不知道什么时候最终将在管理上解决问题。几年来,某些子系统更新似乎已经取代了默认窗口管理器(Unity)的变更,而奇怪的是,我个人认识的使用零个人(包括我自己)的人数恰好为零。但是最终网络工具将消失。没有针对其库编写任何新内容。
2014年

@AndrewSchulman,我已经回滚了您在Ubuntu上的声明,因为那不是我想要说的。
2014年

10

这是发行版特定的问题。但是,几乎每个主要发行版(或上游发行版)都已弃用net-tools,因此实际上整个社区都从ifconfig切换到ip,但是更改很慢,因为某些发行版的保存期限非常长(例如RHEL)。

与主要发行版本的发行说明中的​​某个项目相比,您不太可能找到不推荐使用的公告,该发行说明中指出诸如“自FooLinux v2.0开始,net-tools已弃用,而支持'ip'命令”。(如果发行版具有主要发行版本,那就是。Gentoo和Arch是有趣的异常,它们通过新闻公告来处理此类事情,这些新闻公告在系统中以及有时在其网站上以管理员通知的形式出现:https : //www.archlinux.org/新闻/网络工具弃用/。)

您可以在错误跟踪器和开发路线图中找到很多关于网络工具(缓慢的)消亡的闲话,此外:

某个地方的发行版很可能会决定坚持使用网络工具并将其维护作为他们的宠物项目,但这是不可能的,因为最终结果将花费大量的精力来维护一套工具,而这些工具是没有人编写其他软件的。当然,除非该发行版归苹果所有。;-)

最后,真正的课程是阅读发行说明。Linux是一个不断发展的目标,特别是如果您要同时管理多个发行版时,请不要忽略文档,也不要假设X发行版中的内容与X-1相同。


1
@BrianKnoblauch不要太想这件事。政治,商业和(实际)技术原因复杂地结合在一起,某些事情变化如此之快,而另一些事情则如此之慢。只是必须接受事情会定期炸毁我们,并要经常注意发布说明。:-)
zxq9 2014年

1
@R维护总是至少包含与发行版所包含的任何核心实用程序相对应的打包程序(这最终意味着要移植或修补其他不相关的上游程序包,您还应包括这些程序包以便在包含过时内容的系统的约束下工作)–更不用说安全补丁程序了(考虑苹果不断增长的困境)。随着时间的流逝,旧的包装会变成tartaries,尤其是您最不希望的包装。巴斯蒂亚特在可见与不可见之间的区分在这里具有启发性,就像海因莱因(Heinlein)的主张“没有免费的午餐”一样。
zxq9 2014年

2
这是不正确的:任何使用当前维护的内核的发行版都可以设置不与ifconfig一起使用的网络接口
mikemaccana

1
@ zxq9我知道您提到这是发行版特定的问题。我证明这不是发行版特定的问题;所有Linux发行版都使用相同的内核,而没有一个发行版会使用可以表达其所有网络概念的内核,从而ifconfig将正确显示已配置的网络接口。
mikemaccana

1
@ zxq9所有Linux发行版都使用Linux内核,在该内核ioctl中实现网络。您误解了,以为我的意思是内核版本。维护的所有Linux发行版(例如,使用小于10年的内核)都存在问题,ifconfig无法表示(例如,绑定NIC的VLAN上的虚拟ip)(这比您想象的要流行)。由于它再次影响所有维护的Linux发行版,因此它不是发行版特定的问题。
mikemaccana 2015年

2

ifconfig不是Linux的一部分。这是大多数基于Linux的发行版中都可用的工具。您将必须参考特定于发行版的文档,以了解为什么不推荐使用它。


4
这不是Linux的一部分,现在。当Linux使用BSD IP堆栈(ifconfig是BSD IP堆栈的一部分)时,它开始于Linux中。Linux大约在2001年编写了自己的IP堆栈,并编写了自己的ifconfig作为net-tools兼容性的一部分。
克里斯·S
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.