Перчень сетевых интерфейсов

09.03.2022, 23:05

В ОС 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

ifconfig выводит не только список сетевых интерфейсов, но и информацию о них, такую как состояние, IP адрес, MAC адрес и другие параметры. Для отображения всех интерфейсов достаточно выполнить программу без параметров:

$ ifconfig

Утилита IP

Программа ifconfig уже давно устарела и ее давно замена утилита ip. Она объединяет в себе функции таких программ, например ifconfig, route, brctl и других. Посмотреть список устройств с помощью ip можно выполнив команду

$ ip link show

Мы видим меньше информации, показывается только состояние устройства, MTU и ещё несколько параметров. Можно вывести информацию в более компактном виде, использовав опцию -br:

$ ip -br link show

В таком случае все данные отображаются в одну строчку, выводится состояние, MAC адрес и ещё несколько опций.

Программа NMCLI

Посмотреть информацию можно и с помощью консольной утилиты управлением брандмауэром - nmcli:

$ nmcli device status

Тут выводится подключение NetworkManager, связанное с конкретным устройством, а также его состояние.

Программа NETSTAT

Программа netstat тоже умеет показывать сетевые интерфейсы и статистику по переданным данным если ей передать опцию -i:

$ netstat-i

Файл /PROC/NET/DEV

В файле /proc/net/dev тоже содержится список всех сетевых интерфейсов, а также статистика их использования:

$ cat /proc/net/dev

На этом статья может считаться законченной.