0800-31-0700 для новых абонентов
0800-31-0800 техническая поддержка

Как узнать и изменить MAC-адрес в Linux

Главная /

Блог

/

Как узнать и изменить MAC-адрес в Linux

Как узнать и изменить MAC-адрес в Linux

02.03.2025

Интернет

1107

Ранее мы уже рассказывали вам о MAC-адресе, а также о том, как узнать и изменить его в Windows. Из этой статьи вы узнаете, как это сделать различными способами, если на вашем компьютере установлена ОС Linux.

Как найти MAC-адрес в командной строке

С помощью команды ip

Команда ip в Linux позволяет добавлять или удалять сетевой интерфейс, назначать или удалять IP-адреса, отображать состояние сетевых интерфейсов и выполнять другие полезные задачи. Узнать MAC-адрес своей системы можно с помощью следующей команды ip:

 ip link show

Эта команда показывает сведения обо всех сетевых интерфейсах, включая их MAC-адреса, кроме метки link/ether, как показано ниже:


Команда ip link show также поможет вам узнать MAC-адрес определенного сетевого интерфейса.

С помощью команды ifconfig

Команда ifconfig в Linux позволяет настраивать и отображать состояние сетевых интерфейсов. Также ее использование делает возможным активацию и деактивацию сетевого интерфейса.

Чтобы узнать MAC-адреса всех доступных сетевых интерфейсов (даже деактивированных), используйте команду ifconfig с параметром -a таким образом:

 ifconfig -a

Чтобы узнать MAC-адрес конкретного сетевого интерфейса, укажите его имя как аргумент:

 ifconfig interface_name

Чтобы узнать MAC-адреса всех активных сетевых интерфейсов, используйте команду ifconfig без любых параметров:

 ifconfig

В исходных данных вы можете найти MAC-адрес вашего интерфейса, как показано ниже:


С помощью утилиты ethtool

ethtool — это утилита Linux, которая позволяет запрашивать и настраивать сетевые драйвера и параметры сетевой карты. С помощью утилиты ethtool также можно запросить у сетевого интерфейса его MAC-адрес.

Вот команда для этого:

ethtool -P interface_name

Как получить MAC-адрес из каталога /sys/class/net

Каталог /sys/class/net содержит информацию о сетевых устройствах, подключенных к системе. В этом каталоге есть отдельный подкаталог каждого из сетевых интерфейсов, например /sys/class/net/enp0s3і /sys/class/net/ens37.

Каждый подкаталог содержит различные файлы для каждого сетевого атрибута: MAC-адреса, рабочего состояния сетевого устройства, его дуплекса, MTU и др. Информация о MAC-адресе хранится в файле address.

Получить список интерфейсов, подключенных к вашей системе, можно с помощью такой команды:

ls /sys/class/net

Найти MAC-адрес определенного сетевого интерфейса можно, используя следующий синтаксис команды:

cat /sys/class/net/

Например, чтобы найти MAC-адрес сетевого интерфейса (пусть это будет enp0s3), команда будет выглядеть так:

cat /sys/class/net/enp0s3/address

Как найти MAC-адрес с помощью графического интерфейса

Если вы отдаете предпочтение графическому интерфейсу, то можете найти свой MAC-адрес графически с помощью сетевого менеджера, который поставляется вместе с дистрибутивом. Для этого:

  1. Откройте “Настройки” (“Settings”) в дистрибутиве Linux, клацнув правой кнопкой мыши на рабочем столе или в меню приложений.  
  2. На левой панели перейдите на вкладку “Сеть” (“Network”). Вы увидите все сетевые интерфейсы, подключенные к вашей системе.
  3. Чтобы узнать MAC-адрес сетевого интерфейса, нажмите на “Cog” (значок шестеренки) перед ним.

  4. Откроется новое окно с детальной информацией о вашем сетевом интерфейсе. Здесь рядом с отметкой “Аппаратный адрес” вы найдете MAC-адрес.

Как найти MAC-адрес другой системы в локальной сети

Подобно процедуре поиска вашего собственного MAC-адреса вы также можете найти MAC-адреса других систем в локальной сети.

С помощью команды arp

Чтобы узнать MAC-адрес для данного IP-адреса, вы можете использовать ARP (Address Resolution Protocol) или протокол разрешения адресов. Чтобы найти MAC-адрес другой системы в локальной сети, пропингуйте ее IP-адрес с помощью следующей команды:

ping -c1 <IP address>

Команда ping будет использовать ARP для получения MAC-адреса удаленной системы. Полученная информация будет храниться в таблице ARP, которую можно просмотреть, используя команду ниже:

arp -n | grep <IP address>


С помощью утилиты arping

Утилита arping помогает обнаруживать и проверять локальные системы в сети. Она функционирует аналогично утилите ping, но в отличие от нее работает на втором уровне модели OSI и использует протокол ARP.

Вы можете установить arping, используя следующие команды:

  • в дистрибутивах на основе Debian:
     sudo apt install arping
  • в дистрибутивах на основе RHEL:
     sudo yum install arping

После установки найдите MAC-адрес другой системы в сети, указав ее IP-адрес с помощью следующей команды:

 sudo arping -c 1 <IP address>

Если в вашей системе несколько сетевых адаптеров, вы можете указать, с какого интерфейса должен быть отправлен запрос, используя параметр -I (заглавная “i”), за которым следует имя интерфейса:

 sudo arping -c 1 -I interface_name <IP address>

Например, следующая команда пришлет один запрос ARP со своего интерфейса enp0s3 на IP-адрес удаленной системы 10.0.2.2.

 sudo arping -c 1 -I enp0s3 10.0.2.2

На выходе вы получите ответ ARP от целевой системы, которая содержит ее MAC-адрес.


Теперь, зная о различных способах поиска MAC-адреса в Linux, вы можете выбрать и воспользоваться любым удобным для вас.

Комментарии

0

Еще комментарии