任务:当接口启动时生成随机 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 个是预先准备的,(谢谢 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'`