cat > /etc/systemd/network/00_fm1-mac3.network << "EOF" [Match] Name=fm1-mac3 [Network] DHCP=ipv4 Address=10.88.88.88/24 EOF cat > /usr/bin/set_mac << "EOF" #!/bin/bash IFACE_INVERTORY="fm1-mac3 fm1-mac9 fm1-mac10 wlP2p1s0f0 wlP2p1s0f1" SYSTEMD_DIR="/etc/systemd/network/" x=00 for i in ${IFACE_INVERTORY}; do FLAG_FILE=${SYSTEMD_DIR}${x}-${i}.link if [[ ! -f "$FLAG_FILE" ]]; then MAC=$(printf '02:%02X:%02X:%02X:%02X:%02X' $((RANDOM%256)) $((RANDOM%256)) $((RANDOM%256)) $((RANDOM%256)) $((RANDOM%256))) if [[ "${i}" == "wlP2p1s0f0" ]] ; then c=wlan elif [[ "${i}" == "wlP2p1s0f1" ]] ; then c=wlan else c=ether fi cat << EOFF > ${FLAG_FILE} [Match] OriginalName=${i} [Link] Name=${i} MACAddress=$MAC EOFF fi ((x=x+10)) done EOF cat > /etc/systemd/system/set_mac.service << "EOF" [Unit] Description=Change MAC address of network interface After=network.target [Service] ExecStart=/usr/bin/set_mac Type=oneshot RemainAfterExit=yes [Install] WantedBy=default.target EOF systemctl disable dhcpcd.service chmod u+x /usr/bin/set_mac systemctl daemon-reload systemctl enable set_mac set_mac