Как случайным образом изменить MAC на каждой начальной загрузке в 16,04

На предыдущем Ubuntus это было легко достигнуто с macchanger, но это, кажется, не работает над 16,04. MAC просто, кажется, сбрасывает к значению по умолчанию, как только соединение с Интернетом восстановлено. Да, теперь это может быть сделано в администраторе сети GIU, но это удалило автоматизацию наличия сценария, делают это и также удалил случайную установку генерации MAC macchanger.

Я вижу другие вопросы, которые указывают на решение как на использование GUI для изменения его вручную, но я не вижу никого, который может сделать это случайным образом из командной строки, как был бы необходим для сценария начальной загрузки.

1
задан 12 May 2017 в 11:52

1 ответ

Как это сделать

Без какого-либо стороннего приложения мы можем просто использовать инструмент CliM NetworkManager nmcli для изменения MAC-адреса в терминале, сценариях и т. Д.

nmcli connection modify enp3s0 802-3-ethernet.cloned-mac-address 02:7d:xx:xx:...
  • Измените enp3s0 на нужное имя подключения, например: Дом, Офис Wi-Fi и т. Д.

Если вы пытаетесь клонировать соединение Wi-Fi, используйте 802-11-wireless.cloned-mac-address вместо 802-3-ethernet.cloned-mac-address.

Также нам нужен способ генерации случайного MAC. Вот простое решение для создания полностью случайного MAC-адреса ( Базовый источник ):

echo $RANDOM | md5sum | sed\
 's/^\(..\)\(..\)\(..\)\(..\)\(..\)\(..\).*$/\1:\2:\3:\4:\5:\6/'

Окончательное решение

Наконец, в вашем скрипте используйте что-то вроде этого:

mac=$(echo $RANDOM | md5sum | sed 's/^\(..\)\(..\)\(..\)\(..\)\(..\)\(..\).*$/\1:\2:\3:\4:\5:\6/')
nmcli connection modify enp3s0 802-3-ethernet.cloned-mac-address $mac

Также может возникнуть необходимость перезагрузить соединение:

nmcli connection down enp3s0
nmcli connection up enp3s0

Вы можете поместить его в .profile или в любое другое место.


Создайте случайный mac с действительным OUI

Если вы не хотите использовать совершенно случайный MAC-адрес, загрузите этот из репозитория GNU MAC Changer GitHub.

Затем используйте эту строку для генерации mac-адресов:

shuf -n1 OUI.list | cut -f1-3 -d' ' | tr ' ' ':' | xargs -I company echo\
 company:`echo $RANDOM|md5sum|sed 's/^\(..\)\(..\)\(..\).*$/\1:\2:\3/'`
  • shuf -n1 OUI.list: выбирает случайную строку из этого файла.
  • cut -f1-3 -d' ' обрезает три обязательных поля
  • tr ' ' ':' преобразует его в нужную нам форму
  • xargs ... создает три другие случайные части и объединяет результат.
4
ответ дан 3 December 2019 в 06:54

Другие вопросы по тегам:

Похожие вопросы: