很多人说这个ifconfig
命令已经被弃用,而建议使用这个命令ip
(至少在 Linux 上)。
ifconfig
这通常被用作从切换到的论据ip
(参见一些评论和回答我是否应该停止使用 Ifconfig?)。
我们可以在哪里找到有关该内容的声明(即哪里声明ifconfig
将来不会受到支持)?
答案1
这官方声明关于淘汰 net-tools 的计划,一位 net-tools 维护者于 2009 年初在 debian-devel 邮件列表中提出了这一建议。正如他们所说,从那时起,net-tools 几乎没有得到任何维护。
作为 net-tools 的现任维护者,Luk Claes 和我一直在思考它的未来。Net-tools 多年来一直是 Debian 和任何其他基于 Linux 的发行版的核心部分,但它已经显露出了它的年龄。
它不支持 Linux 内核的许多现代功能,界面远非最佳且难以用于自动化,而且在过去几年中也没有得到太多的青睐。
另一方面,在 2.2 内核版本中引入的 iproute 套件具有更好、更一致的界面,功能更强大,而且已有近十年的历史,因此没有人会说它未经测试。
因此,我们的计划是用 iproute 完全取代 net-tools,也许这将成为其他发行版效仿的路线。当然,大多数人和工具都使用并记住了这个古老的接口,因此第一步是编写包装器,尝试与 net-tools 兼容。
同时,我们认为大多数使用 net-tools 的软件包应该改用 iproute,而其他软件包可以继续使用包装器一段时间。ifupdown 软件包显然是第一个候选者,但似乎自 2007 年以来,使用 iproute 的实验版本已经可用。
编写包装器的想法最终被放弃,因为不可行,从那时起几乎所有的 Linux 发行版都已切换到 iproute2。
答案2
这手册页说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新闻页面显示:
弃用 net-tools
2011-06-08 - 汤姆·冈德森
今年 4 月是 net-tools 上一次发布的十周年纪念日。我们决定借此机会弃用 net-tools,并为 net-tools 功能提供替代且维护更好的解决方案。这会带来一些后果,但大多数人不会注意到。
net-tools 将继续存在于存储库中,因此依赖它的脚本仍然可以工作。
和Linux基金会说了同样的话:
net-tools
由 Linux 基金会发布... - 2009 年 11 月 19 日 - 上午 10:23networking
概述
构成 Linux 操作系统 NET-3 网络发行版基础集的程序集合。此软件包包括 arp(8)、hostname(1)、ifconfig(8)、ipmaddr、iptunnel、mii-tool(8)、nameif(8)、netstat(8)、plipconfig(8)、rarp(8)、route(8) 和 slattach(8)。
Maintainers: Bernd Eckenfels, Phil Blundell Current Version: net-tools 1.60 (see upstream git for updates)
请记住,大多数 net-tools 程序现在已经过时了:
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 没有附带弃用说明。
答案3
这是发行版特有的问题。但是,几乎每个主要发行版(或发行版上游)都已弃用 net-tools,因此实际上整个社区都在从 ifconfig 切换到 ip —— 但这种变化很慢,因为某些发行版的保质期非常长(例如 RHEL)。
您不太可能找到弃用公告,而是在发行版主要版本的发行说明中找到类似“从 FooLinux v2.0 开始,net-tools 已被弃用,取而代之的是 'ip' 命令”的内容。(如果发行版有主要版本的话。Gentoo 和 Arch 是例外,它们通过新闻公告来处理这类事情,这些新闻公告作为系统内的管理通知出现,有时也出现在它们的网站上:https://www.archlinux.org/news/deprecation-of-net-tools/。
您还可以在错误跟踪器和开发路线图中找到大量有关 net-tools (缓慢) 消亡的讨论,此外:
- https://bugs.gentoo.org/show_bug.cgi?id=189149
- https://bugzilla.redhat.com/show_bug.cgi?id=687920
- https://wiki.debian.org/NetToolsDeprecation
- https://bugs.archlinux.org/task/26117
完全有可能某个发行版决定继续使用 net-tools 并将其维护作为他们的宠物项目,但这不太可能,因为最终结果是花费大量精力维护一套没有人针对其编写软件的工具。当然,除非该发行版归 Apple 所有。 ;-)
最后,真正的教训是阅读您的发行说明。Linux 是一个移动的目标,特别是当您同时管理多个发行版时,所以不要忽视文档或假设版本 X 中的某些内容与 X-1 中的相同。
答案4
ifconfig
不是 Linux 的一部分。它是大多数基于 Linux 的发行版下可用的工具。您必须参考发行版特定的文档才能了解它被弃用的原因。