Direkt zum Hauptinhalt

LXC Conatiner - Routen beim start setzten,da post in interfaces nicht geht

Beschreibung:

leider unterstützen LCX keine einträge in der /etc/interfaces weil die bei jedem Start wieder gelöscht werden.
Abhilfe mit einem Systemd service

Einrichtung

Ein script erstellen was die route anlegt:

nano /usr/local/bin/set-routes.sh

Inhalt

route add route add <zieladresse oder netz> gw <gateway> dev <netzwerkkarte>
route add 185.26.156.118 gw 222.222.0.7 dev eth1

bei einem netz sähe das so aus

bei einem 28er netz
route add 185.26.156.0/28 gw 222.222.0.7 dev eth1
bei einem 24 netz
route add 185.26.156.24 gw 222.222.0.7 dev eth1

also nun das script


#!/bin/bash
route add route add <zieladresse oder netz> gw <gateway> dev <netzwerkkarte>



Script ausführbar machen

chmod +x /usr/local/bin/set-routes.sh

Nun einen Systemd Service Datei anlegen

nano /etc/systemd/system/set-routes.service

Inhalt:

 

[Unit]
Description=Set custom routes after network is up
After=network.target

[Service]
Type=oneshot
ExecStart=/usr/local/bin/set-routes.sh
RemainAfterExit=true

[Install]
WantedBy=multi-user.target

Nun den systemctl neuladen den Dienst aktivieren und starten

systemctl daemon-reload
systemctl enable set-routes.service
systemctl start set-routes.service

Fertig