
MAC адрес – это уникальный идентификатор сетевого интерфейса, который используется для обмена данными на уровне локальной сети. В Linux его можно определить через терминал или через графические настройки сети, что позволяет быстро получать информацию о подключениях и управлять сетевыми устройствами.
Через терминал можно использовать команды ifconfig, ip link или просматривать содержимое файлов в каталоге /sys/class/net/. Каждая команда возвращает MAC адрес интерфейса в формате шести пар шестнадцатеричных чисел, разделённых двоеточиями, что позволяет точно идентифицировать устройство.
В графическом интерфейсе Linux, например через NetworkManager, MAC адрес отображается в свойствах сетевого подключения. Это удобно, когда нужно сверить адрес без использования командной строки или подготовить данные для настройки маршрутизатора и фильтров доступа по MAC.
Знание MAC адреса важно для настройки сетевой безопасности, управления разрешениями подключения и диагностики проблем с сетью. В статье рассматриваются конкретные методы получения MAC адреса для проводных и беспроводных интерфейсов с пошаговыми примерами команд и действий в настройках системы.
Как узнать MAC адрес в Linux через терминал и настройки сети

Пример использования команды ifconfig:
| Команда | Описание |
|---|
Использование ip link:
| Команда | Описание |
|---|---|
| ip link show | Показывает все сетевые интерфейсы с MAC адресами в поле link/ether. Удобно для быстрого поиска нужного интерфейса. |
Просмотр файловой системы для получения MAC адреса:
| Файл | Описание |
|---|
В графическом интерфейсе через NetworkManager MAC адрес отображается в свойствах сетевого подключения. В разделе «Сведения о соединении» ищите поле «MAC адрес» для проводного или беспроводного адаптера. Это позволяет сверить данные с терминалом и использовать их для настройки фильтров или маршрутизатора.
Проверка MAC адреса командой ifconfig

Команда ifconfig позволяет получить подробную информацию о сетевых интерфейсах Linux, включая MAC адрес.
ifconfig
В результате вы увидите список интерфейсов. MAC адрес отображается в поле ether или HWaddr (в зависимости от версии системы):
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.10 netmask 255.255.255.0 broadcast 192.168.1.255 ether 00:1a:2b:3c:4d:5e txqueuelen 1000 (Ethernet)
Пошаговая проверка MAC адреса:
- Откройте терминал.
- Введите команду
ifconfigи нажмите Enter. - Найдите нужный интерфейс (например,
eth0для проводного подключения илиwlan0для Wi-Fi). - В строке
etherилиHWaddrскопируйте MAC адрес, состоящий из 6 пар шестнадцатеричных чисел, разделённых двоеточиями.
ifconfig eth0 | grep -Po 'ether \K[\da-f:]{17}'
Эта команда отфильтрует только значение MAC, исключив остальную информацию.
Если интерфейс не отображается, убедитесь, что он активен командой:
ip link show
MAC адрес в Linux не зависит от IP и остаётся постоянным для конкретного сетевого адаптера, пока не применяется ручная замена через macchanger или настройки драйвера.
Использование команды ip link для отображения MAC адреса

Команда ip link показывает состояние всех сетевых интерфейсов и их MAC адреса.
Для отображения данных выполните:
ip link show
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether 00:1a:2b:3c:4d:5e brd ff:ff:ff:ff:ff:ff 3: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000 link/ether 11:22:33:44:55:66 brd ff:ff:ff:ff:ff:ff
Пошаговая инструкция для конкретного интерфейса:
- Откройте терминал.
- Введите
ip link show eth0, заменивeth0на нужный интерфейс. - Найдите строку
link/ether– это MAC адрес интерфейса.
ip link show eth0 | awk '/link\/ether/ {print $2}'
Этот способ эффективен для скриптов и быстрого получения MAC адреса без лишней информации о состоянии интерфейса.
Получение MAC адреса через команду cat /sys/class/net

Каждый сетевой интерфейс Linux имеет файл /sys/class/net/<имя_интерфейса>/address, содержащий его MAC адрес.
Для просмотра MAC адреса конкретного интерфейса выполните:
cat /sys/class/net/eth0/address
Результат будет выглядеть так:
00:1a:2b:3c:4d:5e
Пошаговая инструкция:
- Откройте терминал.
- Определите имя интерфейса с помощью
ls /sys/class/net/– обычноeth0для проводного иwlan0для Wi-Fi. - Введите команду
cat /sys/class/net/<имя_интерфейса>/address.
Для отображения MAC адресов всех интерфейсов используйте цикл:
for iface in /sys/class/net/*; do
echo "$(basename $iface): $(cat $iface/address)"
done
Этот метод не требует дополнительных утилит и позволяет точно определить аппаратный адрес любого сетевого адаптера.
Просмотр MAC адреса сетевого интерфейса в NetworkManager

NetworkManager управляет сетевыми соединениями и позволяет получить MAC адрес через утилиту nmcli.
Для просмотра всех интерфейсов выполните:
nmcli device show
GENERAL.DEVICE: eth0 GENERAL.TYPE: ethernet GENERAL.HWADDR: 00:1A:2B:3C:4D:5E
Пошаговая инструкция для конкретного интерфейса:
- Откройте терминал.
- Введите
nmcli device show wlan0, заменивwlan0на нужный интерфейс. - Найдите строку
GENERAL.HWADDR– это MAC адрес интерфейса.
nmcli -g GENERAL.HWADDR device show eth0
Этот способ подходит для скриптов и быстрого контроля сетевых адаптеров без обращения к системным файлам.
Определение MAC адреса для Wi-Fi адаптера
Для Wi-Fi адаптера MAC адрес можно получить с помощью стандартных инструментов Linux.
Через ip link:
ip link show wlan0
В строке link/ether отображается MAC адрес адаптера.
Через ifconfig:
ifconfig wlan0
Поле ether содержит MAC адрес.
Через NetworkManager:
nmcli device show wlan0 | grep GENERAL.HWADDR
Отображает аппаратный адрес интерфейса.
Для прямого чтения из системных файлов:
cat /sys/class/net/wlan0/address
Для быстрого отображения всех Wi-Fi интерфейсов используйте:
for iface in /sys/class/net/wlan*; do
echo "$(basename $iface): $(cat $iface/address)"
done
MAC адрес Wi-Fi адаптера постоянен для данного устройства, пока не применяется программная замена через утилиты вроде macchanger.
Сравнение MAC адреса в терминале и настройках системы

MAC адрес, отображаемый в терминале через ifconfig, ip link или cat /sys/class/net, соответствует аппаратному адресу сетевого интерфейса.
В настройках системы, например через NetworkManager или графические утилиты, MAC адрес может отображаться в том же формате, но иногда показывается с заменой (маскирование) для безопасности в публичных сетях.
Пошаговое сравнение:
- В терминале выполните
ip link show wlan0и зафиксируйте значениеlink/ether. - Откройте настройки сети или NetworkManager и найдите MAC адрес того же интерфейса.
- Сравните оба значения. Они должны совпадать, если не используется временное изменение MAC.
Если MAC адресы отличаются, проверьте:
- Включена ли опция случайного MAC в настройках Wi-Fi.
- Не применялся ли
macchangerили аналогичная утилита. - Корректно ли выбран интерфейс для проверки.
Сравнение помогает убедиться в точности данных и выявить программные изменения MAC адреса, которые влияют на идентификацию устройства в сети.
Сохранение и копирование MAC адреса для дальнейшего использования

MAC адрес можно сохранить для настройки сети, фильтров доступа или документации. Существует несколько способов.
Копирование напрямую из терминала:
- Выведите MAC адрес командой
ip link show wlan0илиcat /sys/class/net/wlan0/address. - Выделите значение
00:1a:2b:3c:4d:5eи скопируйте его комбинациейCtrl+Shift+C.
Сохранение в текстовый файл:
ip link show wlan0 | awk '/link\/ether/ {print $2}' > ~/mac_address.txt
Файл mac_address.txt будет содержать только MAC адрес.
Копирование для последующего использования в скриптах:
MAC=$(cat /sys/class/net/wlan0/address)
echo $MAC
Рекомендации:
- Использовать отдельный файл или переменную для каждого интерфейса.
- Проверять корректность MAC перед использованием в настройках сети.
- Не публиковать MAC адрес в открытых источниках без необходимости, чтобы избежать идентификации устройства.
Вопрос-ответ:
Как узнать MAC адрес моего проводного сетевого интерфейса в Linux через терминал?
Для проводного интерфейса используйте команду ip link show или ifconfig. Найдите строку с именем интерфейса, например eth0, и значение link/ether или ether — это и есть MAC адрес. Можно вывести только MAC адрес командой: ip link show eth0 | awk '/link\/ether/ {print $2}'.
Можно ли посмотреть MAC адрес Wi-Fi адаптера без использования графических программ?
Да, для Wi-Fi интерфейса (например, wlan0) используйте команду ip link show wlan0 или cat /sys/class/net/wlan0/address. В терминале вы увидите MAC адрес в формате шести пар шестнадцатеричных чисел, разделённых двоеточиями.
MAC адрес в терминале отличается от того, что показывает NetworkManager. Почему?
Различие может возникнуть, если включено случайное изменение MAC адреса для Wi-Fi или использовалась утилита macchanger. В терминале отображается фактический аппаратный адрес интерфейса, а в настройках может быть показан временно изменённый адрес.
Как сохранить MAC адрес для последующего использования в скриптах или настройках сети?
Выведите MAC адрес командой cat /sys/class/net/eth0/address и сохраните в переменную: MAC=$(cat /sys/class/net/eth0/address). Для записи в файл используйте: ip link show eth0 | awk '/link\/ether/ {print $2}' > ~/mac_address.txt. Файл или переменная будут содержать только MAC адрес.
