Ecco la soluzione con cui alla fine ho risolto il mio problema:
while ! ip link show eth0 | grep -q 'state UP'; do
sleep 1
done
ip link add macvlan0 link eth0 type macvlan mode bridge
ip addr add 192.168.0.240/32 dev macvlan0
ip link set macvlan0 up
ip route add 192.168.0.240/28 dev macvlan0
Tuttavia, avevo 2 attività pianificate di "avvio" sulla mia Synology e ricevevo alcuni errori all'avvio. Per risolvere questo problema, configuro questa attività per avere l'altra come pre-attività. In altre parole, le attività eseguite in sequenza, aspettando che l'attività precedente finisca prima di iniziare quella nuova.
Controlla lo stato di eth0
da /sys/class/net/eth0/operstate
e attendi che l'interfaccia di rete sia attiva:
while ! [ "$(cat /sys/class/net/eth0/operstate)" = "up" ]
do
echo "waiting for eth0 to be up"
sleep 2
done
ip link add macvlan0 link eth0 type macvlan mode bridge
ip addr add 192.168.0.240/32 dev macvlan0
ip link set macvlan0 up
ip route add 192.168.0.240/28 dev macvlan0