Hier ist die Lösung, mit der ich mein Problem schließlich gelöst habe:
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
Ich hatte jedoch 2 geplante "Boot-Up"-Tasks auf meiner Synology und ich bekam einige Fehler beim Booten. Um dieses Problem zu lösen, konfiguriere ich diese Aufgabe so, dass die andere als Voraufgabe verwendet wird. Mit anderen Worten, die Aufgaben werden nacheinander ausgeführt und warten darauf, dass die vorherige Aufgabe beendet wird, bevor die neue gestartet wird.
Überprüfen Sie den Status von eth0
ab /sys/class/net/eth0/operstate
und warten Sie, bis die Netzwerkschnittstelle aktiv ist:
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