- How can I find available network interfaces?
- How to list network interfaces in Ubuntu
- Method 1: How to list network interfaces in Ubuntu using ip command
- Method 2: How to list network interfaces in Ubuntu using nmcli command
- Method 3: How to list network interfaces in Ubuntu using netstat command
- Method 4: How to list network interfaces in Ubuntu using ifconfig command
- Method 5: How to list network interfaces in Ubuntu using the “/sys/class/net/” file
- Conclusion
- About the author
- Sharqa Hameed
- Список сетевых интерфейсов Linux
- Список сетевых интерфейсов Linux
- 1. Файловая система
- 2. Утилита ifconfig
- 3. Утилита ip
- 4. Утилита nmcli
- 5. Утилита netstat
- 6. Файл /proc/net/dev
- Выводы
How can I find available network interfaces?
This is in regard to linux, but if anyone knows of a general *nix method that would be good. I booted a system yesterday with an ethernet cable plugged in. «NetworkManager» is not installed, so once it started I went to look for the name of the ethernet interface with ifconfig to start a DHCP client manually, but it did not show anything other than lo . The NIC was listed via lspci , and the appropriate kernel driver was loaded. The system normally uses wifi, and I could remember the interface name for that was wlan0 . When I tried ifconfig wlan0 up , wlan0 appeared. But the only ethernet interface names I could remember were eth[N] and em[N] — neither of which worked. This document refers to «predictable interface names» but does not do a good job of explaining what they might be in simple terms. It does refer to a piece of source code which implies the name in this case might be deduced from the the PCI bus and slot numbers, which seems like an unnecessarily complicated hassle. Other searching around led me to believe that this might be determined by systemd in conjunction with udev , but there are almost 100 files in /usr/lib/udev/rules.d and spending an hour trying to determine where (and if) there’s a systemd config file for this also seems ridiculous. It would also be nice to know for certain that they are available, not just how they might be named if they are, so I can rule out hardware problems, etc. Isn’t there a simple way to find the names of available network interfaces on linux?
In the question you state that you used ip link but then you accept an answer that suggests ip link show which does the exactly same thing. Why?
The manual pages for iproute2 are quite good nowadays, I guess you’re using and older version of the package.
How to list network interfaces in Ubuntu
A network interface is a software interface for the networking hardware. In Linux-based systems like Ubuntu, network interfaces are of two types: virtual and physical network interfaces. A simple network hardware device, such as a network interface controller, comes under the category of the physical network interface. Ethernet network card or eth0 is an example of it. On the other hand, a virtual network interface does not have a physical existence but is associated with any physical device. VLANs, bridges, Loopback are examples of virtual network interfaces.
In Ubuntu, you can configure network interfaces at the installation time or after the complete setup of the operating system, whether it is a physical or virtual network interface. To configure network settings via the Ubuntu command line, you must first know how many network interfaces exist on the
machine. This article will show you how to list network interfaces in Ubuntu using five different methods. So let’s get started!
Method 1: How to list network interfaces in Ubuntu using ip command
Linux administrators are familiar with the “ip” command, which is a powerful tool for configuring network interfaces. The “ip” stands for Internet protocol. In Ubuntu, the “ip” command can be utilized to assign and delete addresses and routes, put up or down interfaces, control ARP cache, and more. On all modern network interfaces, “iproute” is the package that contains the “ip” utility.
Now, we will see how we can use the “ip” command for listing the network interface in Ubuntu. For this, we will utilize the “link” option with the “ip” command. This option is used to list out and modify network interfaces:
In the “ip” command, there is another option that can be used for the same purpose. Adding the “address” option in the “ip” command will also show you the list of network interfaces and their IP addresses in the Ubuntu terminal:
Method 2: How to list network interfaces in Ubuntu using nmcli command
The “nmcli” stands for Network Manager Command-Line Tool. In Ubuntu, network status is reported, and the Network Manager is controlled using nmcli. You can also utilize this tool as an alternative to nm-applet and other graphical clients. This command is also used for creating, viewing, deleting, activating, and deactivating network connections.
By using “nmcli”, if you want to list out network interfaces in Ubuntu, then write out the below-given command in your terminal:
Here “device” option will list out the network interfaces, and the “status” will display their current status on the system:
To view the profile of the network interfaces, utilize this command in your terminal:
This command will retrieve the profile information of the network interface from the “/etc/sysconfig/network-scripts” file, comprising connection name as “NAME”, Universal Unique Identifier as “UUID“, network interface type as “TYPE”, and lastly, device name as “DEVICE”:
Method 3: How to list network interfaces in Ubuntu using netstat command
Network statistics or “netstat” is another utility used in Ubuntu to display network interface statistics, routing tables and monitor incoming and outgoing network connections. This command-line tool is essential for Linux-based systems and network administrators for resolving network-related issues and determining traffic performance.
In the netstat command, the “-i” option is added to list all network interface packet transactions. Execution of the below-given will also you the active network interfaces on your Ubuntu system:
Method 4: How to list network interfaces in Ubuntu using ifconfig command
The kernel-resident network interfaces are configured with the help of “ifconfig” or interface configuration command. This utility is used for setting up the interfaces as needed at boot time. After that, it is typically used only when system tuning or debugging is required. You can also use “ipconfig” command for the assignment of an IP address and netmask to an interface and to enable or disable it.
The below-given command will list out all the network interfaces of your Ubuntu system even if they are not active:
You can also utilize the below-given command for the same purpose:
Method 5: How to list network interfaces in Ubuntu using the “/sys/class/net/” file
The “/sys/class/net/” file contains the names of network interfaces or the network cards on your system. Utilize the “ls” command to list out the network interfaces present in this file:
Conclusion
When you operate as a Linux administrator, you are responsible for managing the system’s network configuration. Both physical and virtual network interfaces can be configured at installation or after setting up the whole Ubuntu system. To make any required changes in the network interface, you must know the information related to network interfaces. This article demonstrated how to list network interfaces in Ubuntu using five different methods. All of the discussed utilities are simple and easy to implement. Try any of them for getting a list of your network interfaces.
About the author
Sharqa Hameed
I am a Linux enthusiast, I love to read Every Linux blog on the internet. I hold masters degree in computer science and am passionate about learning and teaching.
Список сетевых интерфейсов Linux
В операционной системе Linux не только жесткие и SSD диски представлены файлами в специальной файловой системе, но и сетевые интерфейсы. Существует несколько способов посмотреть список сетевых интерфейсов Linux, но самый простой из них — это просто посмотреть содержимое папки в файловой системе.
В этой небольшой статье мы рассмотрим все основные способы выполнить эту задачу в терминале или графическом интерфейсе.
Список сетевых интерфейсов Linux
Сетевые интерфейсы проводного интернета Ethernet обычно имеют имя, начинающиеся с символов enp, например, enp3s0. Такое именование используется только если ваш дистрибутив использует systemd, иначе будет применена старая система именования, при которой имена начинаются с символов eth, например eth0. Беспроводные сетевые интерфейсы, обычно называются wlp или wlx при использовании systemd, например, wlp3s0. Без использования systemd имя беспроводного интерфейса будет начинаться с wlan, например wlan0. Все остальные интерфейсы обычно виртуальные. Один из самых основных виртуальных интерфейсов — lo. Это локальный интерфейс, который позволяет программам обращаться к этому компьютеру. А теперь рассмотрим несколько способов посмотреть их список.
1. Файловая система
Все файлы устройств сетевых интерфейсов находятся в папке /sys/class/net. Поэтому вы можете посмотреть её содержимое:
2. Утилита ifconfig
Утилита ifconfig выводит не только список сетевых интерфейсов, но и информацию о них, такую как состояние, IP адрес, MAC адрес и другие параметры. Для отображения всех интерфейсов достаточно выполнить программу без параметров:
3. Утилита ip
Программа ifconfig устарела и ей на смену пришла утилита ip. Она объединяет в себе функции нескольких программ, например ifconfig, route, brctl и других. Посмотреть список устройств с помощью ip можно выполнив команду:
Здесь информации намного меньше, показывается только состояние устройства, MTU и ещё несколько параметров. Можно вывести информацию в более компактном виде, использовав опцию -br:
В таком случае все данные отображаются в одну строчку, выводится состояние, MAC адрес и ещё несколько опций.
4. Утилита nmcli
Посмотреть всю нужную информацию можно и с помощью консольной утилиты управлением брандмауэром — nmcli:
Здесь выводится подключение NetworkManager, связанное с конкретным устройством, а также его состояние.
5. Утилита netstat
Программа netstat тоже умеет показывать сетевые интерфейсы и статистику по переданным данным если ей передать опцию -i:
6. Файл /proc/net/dev
В файле /proc/net/dev тоже содержится список всех сетевых интерфейсов, а также статистика их использования:
Выводы
Теперь вы знаете как посмотреть сетевые интерфейсы в Linux, как видите, это очень просто сделать. Если у вас остались вопросы, спрашивайте в комментариях!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.