Verwendet man ein zusätzliches privates Netzwerk und möchte nebenbei den Verkehr über eine selbst installierte Firewall (OPNsense) bei Hetzner schicken, muss man neben der Routingtabelle bei Hetzner selbst auch die Routingtabelle der VM ändern. Diese wird bei jedem Neustart mit den Hetzner Einstellungen überschrieben. Daher habe ich folgendes Script bei mir installiert:
/root/set_default_route.sh
#!/bin/bash
LOGFILE="/var/log/set-route.log"
echo "=== Start: $(date) ===" >> "$LOGFILE"
# 1. kurze Wartezeit, damit das Netzwerk startet
sleep 5
# 2. alte default route löschen (ignoriert Fehler, falls keine existiert)
ip route del default 2>>"$LOGFILE"
# 3. neue default route setzen
ip route add default via 192.168.8.1 2>>"$LOGFILE"
# 4. Ergebnis loggen
echo "Routing table after change:" >> "$LOGFILE"
ip route show >> "$LOGFILE"
echo "=== Ende ===" >> "$LOGFILE"
echo "" >> "$LOGFILE"
Zum Schluss wird es dann noch in der crontab eingebunden.
crontab -e
@reboot /root/set_default_route.sh