Изменить MAC-адрес навсегда в /etc/network/interfaces

Изменить MAC-адрес навсегда в /etc/network/interfaces

ВОПРОС:

Как я могу изменить MAC-адрес конкретноenp3s0иwlp2s0интерфейсы через/etc/сеть/интерфейсыфайл? Какой код мне нужно включить внутрь? Я пытаюсь уже некоторое время, но безуспешно, как ни печально.


РАЗРАБОТКА:

Итак, я нашел в Интернете замечательную статью, объясняющую, как изменить MAC-адрес навсегда с помощью/etc/сеть/интерфейсыфайл на моем Ubuntu.

В статье говорится:

В Debian, Ubuntu и подобных системах поместите следующее в соответствующий раздел /etc/network/interfaces (в строфу iface, например, сразу после строки шлюза), чтобы MAC-адрес устанавливался при запуске сетевого устройства:

hwaddress эфир 02:01:02:03:04:08

Источник:https://en.wikibooks.org/wiki/Изменение_вашего_MAC_адреса/Linux

Теперь, когда я использую следующий код:

cat /etc/network/interfaces

Я получаю следующий вывод

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

А когда я выполняю ifconfig на моем Ubuntu, я получаю 3 разных интерфейса:

  • enp3s0

  • вот

  • wlp2s0

Я хотел бы изменить MAC-адреса всех моих интерфейсов (enp3s0, wlp2s0) (lo — это петля, поэтому в этом нет необходимости), но я не знаком с командами в/etc/сеть/интерфейсыфайл. Я просматривал руководства в Интернете, но, похоже, у меня ничего не получается, и мой компьютер даже несколько раз после этого начинал вести себя очень странно.

решение1

Используйте hwaddress etherвнутри вашего блока конфигурации интерфейса. Пример:

auto enp3s0
iface enp3s0 inet static
    address 192.0.2.7
    netmask 255.255.255.0
    gateway 192.0.2.254
    hwaddress ether 00:11:22:33:44:55

или, если dhcp:

allow-hotplug enp3s0
iface enp3s0 inet dhcp
    hwaddress ether 00:11:22:33:44:55

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

Похожие материалы: Хорошее подробное объяснение синтаксиса /etc/network/interfaces?

Однако, если у вас возникли проблемы при смене Mac, network/interfacesвы можете сделать это черезudev

метод udev -Создайте файл etc/udev/rules.d/75-mac-spoof.rulesсо следующим содержимым:

ACTION=="add", SUBSYSTEM=="net", ATTR{address}=="XX:XX:XX:XX:XX:XX", RUN+="/usr/bin/ip link set dev %k address YY:YY:YY:YY:YY:YY"

Вы также можете сделать это с помощью модулей systemd, как описано здесь:Изменение mac с помощью модулей systemd. Но в конце концов, они также являются лишь оболочками для выполнения ip link setи macchanger.

решение2

Чтобы навсегда изменить свой MAC-адрес, добавьте следующую строку в свой файл /etc/network/interfaces:

pre-up ifconfig <interface> hw ether xx:xx:xx:yy:yy:yy

NetworkManager сбросит ваш MAC-адрес во время сканирования Wi-Fi. Чтобы отключить это, вы можете изменить свой /etc/NetworkManager/NetworkManager.confследующим образом:

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false

[device]
wifi.scan-rand-mac-address=no

[keyfile]

Затем перезагрузите компьютер.

На сайте есть полезная информация о рандомизации MAC-адресов во время сканирования Wi-Fi.АрхВики:

Настройка рандомизации MAC-адресов

Начиная с версии 1.4.0, NetworkManager поддерживает два типа рандомизации MAC-адресов: рандомизация во время сканирования и стабильная рандомизация. Оба режима можно настроить, изменив/etc/NetworkManager/NetworkManager.conf

Рандомизация во время сканирования Wi-Fi включена по умолчанию, начиная с версии 1.2.0, и ее можно отключить, добавив следующие строки /etc/NetworkManager/NetworkManager.conf:

[device] wifi.scan-rand-mac-address=no

решение3

MAC-адрес зарегистрирован в его устройстве Wi-Fi, и обычно он не может быть изменен на другой MAC-адрес.
Поэтому, если вы меняете MAC-адрес, вам неизбежно придется использовать другое устройство Wi-Fi.
Как вы упомянули в комментарии, что повторное появление того же MAC-адреса после
перезагрузки, ОС просто считывает MAC-адрес с устройства Wi-Fi.
Это нормальное поведение.

Кстати, в виртуальной среде вы можете свободно настраивать MAC-адрес.

Связанный контент