Изменение MAC-адреса в Linux
Содержание
- Этап 1: Получение адреса и имени адаптера
- Этап 2: Изменение MAC-адреса
- Вариант 1: ip link
- Вариант 2: ifconfig
- Вариант 3: macchanger
- Вопросы и ответы
Этап 1: Получение адреса и имени адаптера
Прежде чем изменить существующий МАК, следует узнать его текущее значение. Как и большинство других системных операций, рассматриваемая выполняется посредством терминала.
Второй и более предпочтительный – воспользоваться сочетанием клавиш, по умолчанию это Alt+Ctrl+T.
ip link show
Это отобразит адреса всех сетевых адаптеров, распознанных операционной системой. Нужные значения представляют собой последовательность после строки link/show, а в начале находится конкретный идентификатор того или иного адаптера.
sudo apt install net-tools
При первом применении с аргументом sudo нужно ввести пароль от учётной записи.
Далее, когда нужные пакеты будут загружены и установлены, введите следующее:
ifconfig | grep ether
Здесь обратите внимание на значения после последовательности ether – это и есть искомое.
Этап 2: Изменение MAC-адреса
Дальше у нас есть несколько вариантов решения рассматриваемой задачи: использовать ip link, уже инсталлированные на предыдущем этапе net-tools или воспользоваться загружаемой утилитой macchanger.
Вариант 1: ip link
Для смены MAC с помощью этих средств потребуется выполнить следующие действия:
sudo ip link set dev *интерфейс* down
Важно! Если через этот интерфейс происходит подключение к интернету, соединение пропадёт!
sudo ip link set dev *интерфейс* address *XX:XX:XX:XX:XX:XX*
Вместо *XX:XX:XX:XX:XX:XX* нужно вписать новый адрес, заменяя символы XX на пары битов и убрав звёздочки.
sudo ip link set dev *интерфейс* up
Сетевые утилиты ip link присутствуют в большинстве дистрибутивов Linux по умолчанию, поэтому их можно считать системными средствами.
Вариант 2: ifconfig
Данное средство является частью пакета net-tools и уже достаточно давно не используется в дистрибутивах Linux как инструмент управления сетями, однако с его помощью также можно решить рассматриваемую задачу.
sudo ifconfig *интерфейс* down
Замените *интерфейс* именем требуемого сетевого устройства.
sudo ifconfig *интерфейс* hw ether *XX:XX:XX:XX:XX:XX*
Не забудьте заменить вставки на идентификатор адаптера и новый MAC соответственно.
sudo ifconfig *интерфейс* up
Средство ifconfig работает точно так же, как и ip link, что пригодится пользователям старых дистрибутивов.
Вариант 3: macchanger
Последним способом решения рассматриваемой задачи будет очередная консольная программа, именуемая macchanger.
sudo apt-get install macchanger
Префикс sudo потребует ввода пароля учётной записи.
ip addr
Ознакомьтесь с перечнем – как правило, обычно имеются два устройства, одно из которых отвечает за соединение по кабелю, второе – за коннектор Wi-Fi. Ориентируйтесь на вид названия – имена беспроводных адаптеров начинаются с букв wl, кабельных – с e либо enp.
macchanger -r *интерфейс*
Вместо *интерфейс* напечатайте значение, полученное на шаге 2.
Если вы получили ошибку, это значит, что команду нужно вводить с префиксом sudo.
macchanger —mac=*XX:XX:XX:XX:XX:XX* *интерфейс*
Как и в предыдущем случае, вместо вставок со звёздочками впишите идентификатор сетевого адаптера и желаемое значение МАК. Замечание о необходимости sudo для этой команды также справедливо.
macchanger -p enp0s8
Данная утилита не требует особых навыков и доступна для других дистрибутивов на ядре Linux.