Raspberry Pi のSDカードを複製して、2台起動したらMACアドレスが衝突した。eth0は衝突しないんだけど、macvlan が衝突した
machine-id の変更
rm -f /etc/machine-id dbus-uuidgen --ensure=/etc/machine-id reboot
machine-id を変更したら衝突がなくなった。
dd によるclone後にやっておくべきだったかもしれない。
systemd-firstboot --root=/mnt --setup-machine-id
確認方法
次のように行って、マシンのIDを確認しておく。
hostnamectl Static hostname: pi4-ubuntu Icon name: computer Machine ID: 50078343ec98aa8a7392aac963e35ec6 Boot ID: dfe88d213c74429fb56afcf16383a54a Operating System: Ubuntu 22.04.1 LTS Kernel: Linux 5.15.0-1023-raspi Architecture: arm64
reboot なしで行うには、次のように行えるが、machine-idから生成されるっぽいmacvlan のMAC ADDRを考慮すると再起動したほうが良いかもしれない。
rm /etc/machine-id rm /var/lib/dbus/machine-id dbus-uuidgen --ensure systemd-machine-id-setup cat /etc/machine-id hostnamectl
ちゃんとおぼえてないけど、cloud-init が走る ubuntu の場合、ssh のホストキーも変更されたような。
参考資料
https://unix.stackexchange.com/questions/402999/is-it-ok-to-change-etc-machine-id