Welcome to the Linux Foundation Forum!

Chapter 35 - Notes on ip utility

Just noticed that the numbering of the lines in the output of ip link show bears no relation to the device names/locations on the bus. Whereas, lspci uses the bus location and ifconfig just displays the device name (which includes the bus location).

This could be confusing considering that the lesson discusses the benefits of the newer approach (naming according to location on bus) over the old, random method.

My outputs on a Linux Mint 19 (Ubuntu 18.04) machine:

ifconfig | grep -e enp -e wlp
enp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
wlp4s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500

lspci | grep -e Ethernet -e Wireless
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 0c)
04:00.0 Network controller: Qualcomm Atheros QCA9565 / AR9565 Wireless Network Adapter (rev 01)

ip link show | grep -e enp -e wlp
2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
3: wlp4s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DORMANT group default qlen 1000


  • coop
    coop Posts: 835

    you are stepping into a holy war -- ip vs ifconfig. I use ifconfig every day because for simple operations I find the output much easier to read for a human. Many distributions no longer install ifconfig by default, however. ip is indeed more capable in that it can perform operations ifconfig can't and is also a swiss army knife as it can also handling other tasks such as those involving routing. I have seen examples of one line ip commands that would take a number of steps otherwise.


Upcoming Training