Where is the statement of deprecation of ifconfig (on linux)?

Solution 1:

The official statement regarding the plans to obsolete net-tools was made on the debian-devel mailing list in early 2009 by one of the net-tools maintainers. True to their statement, net-tools has been hardly maintained at all since that time.

Luk Claes and me, as the current maintainers of net-tools, we've been thinking about it's future. Net-tools has been a core part of Debian and any other linux based distro for many years, but it's showing its age.

It doesnt support many of the modern features of the linux kernel, the interface is far from optimal and difficult to use in automatisation, and also, it hasn't got much love in the last years.

On the other side, the iproute suite, introduced around the 2.2 kernel line, has both a much better and consistent interface, is more powerful, and is almost ten years old, so nobody would say it's untested.

Hence, our plans are to replace net-tools completely with iproute, maybe leading the route for other distributions to follow. Of course, most people and tools use and remember the venerable old interface, so the first step would be to write wrappers, trying to be compatible with net-tools.

At the same time, we believe that most packages using net-tools should be patched to use iproute instead, while others can continue using the wrappers for some time. The ifupdown package is obviously the first candidate, but it seems that a version using iproute has been available in experimental since 2007.

The idea to write wrappers was eventually abandoned as unworkable, and nearly all Linux distributions have switched to iproute2 since then.

Solution 2:

The man page of ifconfig says:

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.

The Arch Linux news page says:

Deprecation of net-tools

2011-06-08 - Tom Gundersen

This April marked the ten year anniversary of the last net-tools release. We decided to look at this as an opportunity to deprecate net-tools and provide alternative, and better maintained, solutions for net-tools functionality. This has a few consequences, but most people should not notice.

net-tools will continue to be in the repositories, so scripts relying on it should still work.

And Linux Foundation says much the same thing:

net-tools
By Linux Foundatio... - November 19, 2009 - 10:23am

networking

Overview

A collection of programs that form the base set of the NET-3 networking distribution for the Linux operating system. This package includes arp(8), hostname(1), ifconfig(8), ipmaddr, iptunnel, mii-tool(8), nameif(8), netstat(8), plipconfig(8), rarp(8), route(8) and slattach(8).

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

Please keep in mind that most net-tools programs are obsolete now:

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

You would probably want to review iproute2 page.

I am not sure why Ubuntu doesn't carry the note on deprecation though.


Solution 3:

This is a distro-specific issue. net-tools has been deprecated by just about every major distro (or distro upstream), though, so in effect the entire community is switching from ifconfig to ip -- but the change is slow, as some distros have an extremely long shelf-life (RHEL,for example).

You are less likely to find a deprecation announcement than an item in the release notes of a major release for a distro stating something like "As of FooLinux v2.0 net-tools has been deprecated in favor of the 'ip' command". (If the distro has major releases, that is. Gentoo and Arch being interesting exceptions which handle this sort of thing through news announcements that appear as admin notices within the system and sometimes on their websites: https://www.archlinux.org/news/deprecation-of-net-tools/.)

You can find plenty of chatter about net-tools' (slow) demise in bug trackers and dev roadmaps, also:

  • 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

It is entirely possible that a distro somewhere may decide to stick with net-tools and adopt maintenance of it as their pet project, but this is unlikely since the end result would be expending substantial effort maintaining a set of tools nobody writes other software against. Unless that distro is owned by Apple, of course. ;-)

In the end, the real lesson is to read your release notes. Linux is a moving target, especially if you are managing more than a single distro at once, so don't disregard the docs or assume something in release X is the same as it was in X-1.


Solution 4:

ifconfig isn't part of Linux. It's a tool that's available under most Linux based distributions. You will have to refer to distribution specific documentation to find out why it's being deprecated.