Как (или это возможно) запустить код внутри /etc/network/interfaces?

Задача: генерировать случайный mac при появлении интерфейса.

#this does work to generate a random mac
echo '00 60 2f'$(od -An -N3 -t xC /dev/urandom) | sed -e 's/ /:/g'

внутри /etc/network/interfaces:

auto eth0
iface eth0 inet dhcp
    #This works:
    hw-mac-address aa:bb:cc:dd:ee:ff
    #while this does not when I ifup eth0:
    hw-mac-address $(echo '00 60 2f'$(od -An -N3 -t xC /dev/urandom) | sed -e 's/ /:/g')

Есть мысли или предложения?

1 ответ

Решение

Я нашел несколько решений. 1 из них с подготовкой, (Thansk fkraiem)

Это требует, чтобы Macchanger был установлен. /etc/network/interfaces выглядит следующим образом:

auto eth0
iface eth0 inet dhcp
pre-up macchanger -m `echo '00 60 2f'$(od -An -N3 -t xC /dev/urandom) | sed -e 's/ /:/g'` $IFACE

Второе решение - исправление моей изначально неверной конфигурации.
Это решение не требует установки Macchanger

auto eth0
iface eth0 inet dhcp
hwaddress ether `echo '00 60 2f'$(od -An -N3 -t xC /dev/urandom) | sed -e 's/ /:/g'`
Другие вопросы по тегам