157

I've just installed Ubuntu 18.04 and selected "minimal install". I then tried to run ifconfig in the terminal and got the following message

-bash: ifconfig: command not found

How come the net-tools package is not installed by default any more?

Seth
  • 58,122
JiiB
  • 1,673

4 Answers4

222

ifconfig is deprecated, and has been so for quite a number of years. The new kid in town is the ip command, which can configure IP's, routes, and everything associated with networks.

You can install ifconfig with sudo apt install net-tools, if you absolutely need to have it. If not, start learning ip.

In short, it is removed because you should not use it. It has mediocre IPv6 support, the ip command is a better replacement. I find sources saying ifconfig was deprecated back in 2012, so I'm not surprised it's finally removed.

You may be able to install it on 18.04, but on future releases it may disappear entirely. I would consider it not being installed by default as a warning shot: learn ip.

Thus ifconfig is probably in a special class. In previous versions of Ubuntu it was included in minimal installs. It is now being phased out, and you explicitly have to install it. This can not be taken to indicate that any other packages are missing.

vidarlo
  • 22,691
  • 19
    To further clarify, the command ip is included in the minimal installation of Ubuntu 18.04, no need to install anything additional. – 64pi0r May 03 '18 at 17:37
  • 4
    You may find ifconfig installed, if you install one of the various packages which still haven't been updated to use ip, or if you upgraded from an older release of Ubuntu. But you should be aware that ifconfig may not be present on modern systems, and should not rely on it. And actually ifconfig was deprecated in 2009. – Michael Hampton May 04 '18 at 04:03
  • 54
    Use ip -c a to highlight the IP addresses with colors. – jingyu9575 May 04 '18 at 14:16
  • 5
    @jingyu9575 you changed my life – I'm here for Winter Hats May 04 '18 at 15:36
  • I find it rather disturbing that ip a for me still has some color in it even without a -c. Admittedly not of recent vintage, still... – infixed May 04 '18 at 18:01
  • on further examination the color I saw is some side effect in mobaxterm magically trying to help – infixed May 04 '18 at 18:10
  • 10
    Minimalist Docker installs may not have ip installed, do apt install -y iproute2 in those cases. – Terry Brown Oct 28 '19 at 19:51
  • Is the ipv6 reason the only one to justify deprecation of ifconfig? Because henostly, ipv6 is not that much used and I doubt sys admin use it every day as we do with ipv4. – Itération 122442 Dec 04 '19 at 09:52
  • @FlorianCastelain IPv6 adoption is a rather bad excuse; it is happening, it's gaining momentum, and everyone agree that we have to do it. Poor tools will not make adaption faster, so if tools change to aid adaption to IPv6, it's good - not bad... – vidarlo Dec 04 '19 at 11:47
  • more better way to see ip -c -o -f inet add – Satish Dec 17 '20 at 05:53
  • A more concise/readable option, surprisingly, is to check the routes (ip -c r). – mwfearnley Oct 16 '23 at 11:04
41

as addition to @vidarlo answer, you can put alias ifconfig='ip -c a' to .bash_aliases if you have typing habit.

abu_bua
  • 10,783
Brend
  • 511
  • 4
  • 3
11

This makes the copying of IP addies simpler:

alias ifconfig="ip -c a | sed -e 's/\// \//g'"

(otherwise that subnet slash prevents doubleclick->select of only the IP)

Red Pill
  • 241
  • 2
  • 3
1

I had to do:

sudo apt-get install net-tools
sudo apt autoremove

I guess that the second line be optional.

My runtime system:
   Operating System: Ubuntu 18.04

Cloud Cho
  • 633
  • 7
  • 11