В ОС Linux представлены файлами в специальной файловой системе не только сетевые интерфейсы, но и жесткие и SSD диски. Есть несколько способов посмотреть список сетевых интерфейсов Linux, наиболее простой - посмотреть содержимое папки в файловой системе. Дальше рассмотрим все основные способы выполнить эту задачу в терминале или графическом интерфейсе.
Сетевые интерфейсы Ethernet обычно имеют имя, которое начинается символов enp, например, enp3s0. Такое имя используется в том случае, если ваш дистрибутив использует systemd, в противном случае будет использована старая система именования, при которой имена начинаются с символов eth, например eth0. Беспроводные сетевые интерфейсы в большинстве случаев начинаются с wlp или wlx при использовании systemd, например, wlp3s0. Без использования systemd имя беспроводного интерфейса будет начинаться с wlan, например wlan0. Все остальные интерфейсы обычно виртуальные. Один из самых основных виртуальных интерфейсов - lo. Это локальный интерфейс, который позволяет программам обращаться к этому компьютеру. А теперь рассмотрим несколько способов посмотреть их список.
Все файлы устройств сетевых интерфейсов находятся в папке /sys/class/net. Поэтому вы можете посмотреть её содержимое:
$ ls /sys/class/net
ifconfig выводит не только список сетевых интерфейсов, но и информацию о них, такую как состояние, IP адрес, MAC адрес и другие параметры. Для отображения всех интерфейсов достаточно выполнить программу без параметров:
$ ifconfig
Программа ifconfig уже давно устарела и ее давно замена утилита ip. Она объединяет в себе функции таких программ, например ifconfig, route, brctl и других. Посмотреть список устройств с помощью ip можно выполнив команду
$ ip link show
Мы видим меньше информации, показывается только состояние устройства, MTU и ещё несколько параметров. Можно вывести информацию в более компактном виде, использовав опцию -br:
$ ip -br link show
В таком случае все данные отображаются в одну строчку, выводится состояние, MAC адрес и ещё несколько опций.
Посмотреть информацию можно и с помощью консольной утилиты управлением брандмауэром - nmcli:
$ nmcli device status
Тут выводится подключение NetworkManager, связанное с конкретным устройством, а также его состояние.
Программа netstat тоже умеет показывать сетевые интерфейсы и статистику по переданным данным если ей передать опцию -i:
$ netstat-i
В файле /proc/net/dev тоже содержится список всех сетевых интерфейсов, а также статистика их использования:
$ cat /proc/net/dev
На этом статья может считаться законченной.