Ваш вопрос делится на две части: как изменить MAC-адрес и как рассчитать время определенного процесса.
Изменить MAC-адрес
Поскольку вы не можете установить хорошие утилиты, такие как macchanger
, вам придется делать это вручную.
Узнайте название вашего сетевого интерфейса. Во многих случаях это eth0
. Обязательно найдите название интерфейса, который вы действительно хотите изменить (WAN или LAN, VLAN ...). В этом примере я буду использовать eth0
Проверьте ваш текущий MAC-адрес, ip link show eth0
. Это может показать что-то вроде link/ether 00:11:22:33:44:55
Сними свой интерфейс: ip link set dev eth0 down
. Это большой недостаток этого решения, потому что оно разрушает всю сеть во время процесса. Будьте уверены, что вы действительно хотите, чтобы это произошло.
Установите новый MAC-адрес: ip link set dev eth0 address AA:BB:CC:DD:EE:FF
Поднимите ваш интерфейс снова: ip link set dev eth0 up
Сделайте сценарий из этого
В скрипте это может выглядеть так:
#!/bin/bash
IF=eth0
# Create a Random MAC, inspired by http://superuser.com/a/218372/475723
# MAC might not be valid since it's completely random. Use the linked answer to add a prefix like 00:60:2F
hexchars="0123456789ABCDEF"
MAC=$(for i in {1..12} ; do echo -n ${hexchars:$(( $RANDOM % 16 )):1} ; done | sed -e 's/\(..\)/\1:/g;s/:$//')
ip link set dev $IF down
ip link set dev $IF address $MAC
ip link set dev $IF up
Сохраните этот скрипт в подходящем месте (предположим, /root/mac.sh
) и сделайте его исполняемым с помощью chmod +x /root/mac.sh
.
Вы можете проверить ваш скрипт, выполнив /root/mac.sh
.
Время запуска процессов cron
С cron
вы можете запускать процессы на регулярной основе, например, один раз в день.
Отредактируйте свой файл cron с помощью crontab -e
Вставьте строку с необходимой информацией: когда и что. Например, 0 1 * * * /root/mac.sh
. Это будет выполнять команду каждый день, месяц, год в 01:00. Пожалуйста, проверьте справочные страницы cron для получения информации о том, как установить его на различные интервалы.
Пожалуйста, не забудьте отредактировать файл crontab как root.