summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2026-02-22 20:27:59 +0100
committerChristian Breunig <christian@breunig.cc>2026-02-22 20:32:35 +0100
commit167c8c7a2f9220c55462d6ff7b076a0f72b2a1de (patch)
treec553979b0d330a09a6ec6750743db36cda7ef65d /src
parentea8aa399c520e129f0a4e7e88b6eedad2cef55c9 (diff)
downloadvyos-1x-167c8c7a2f9220c55462d6ff7b076a0f72b2a1de.tar.gz
vyos-1x-167c8c7a2f9220c55462d6ff7b076a0f72b2a1de.zip
igmp-proxy: T8295: provide native systemd unit to enable restart/backoff
The igmpproxy service was started via a SysV init script, causing systemd-sysv-generator to create a transient unit without restart policies. When igmpproxy failed on first start, systemd did not retry, leading to intermittent service availability. This change replaces the auto‑generated unit with a native systemd service file that defines proper restart settings.
Diffstat (limited to 'src')
-rwxr-xr-xsrc/conf_mode/protocols_igmp-proxy.py3
-rw-r--r--src/systemd/igmpproxy.service10
2 files changed, 12 insertions, 1 deletions
diff --git a/src/conf_mode/protocols_igmp-proxy.py b/src/conf_mode/protocols_igmp-proxy.py
index 67ff8a3f0..7f53882b0 100755
--- a/src/conf_mode/protocols_igmp-proxy.py
+++ b/src/conf_mode/protocols_igmp-proxy.py
@@ -21,6 +21,7 @@ from sys import exit
from vyos.base import Warning
from vyos.config import Config
from vyos.configverify import verify_interface_exists
+from vyos.defaults import config_files
from vyos.template import render
from vyos.utils.process import call
from vyos.utils.dict import dict_search
@@ -28,7 +29,7 @@ from vyos import ConfigError
from vyos import airbag
airbag.enable()
-config_file = r'/etc/igmpproxy.conf'
+config_file = config_files['igmp_proxy']
def get_config(config=None):
if config:
diff --git a/src/systemd/igmpproxy.service b/src/systemd/igmpproxy.service
new file mode 100644
index 000000000..55ab14beb
--- /dev/null
+++ b/src/systemd/igmpproxy.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=IGMP multicast proxy
+After=vyos-router.service
+ConditionPathExists=/run/igmpproxy/igmpproxy.conf
+
+[Service]
+Type=simple
+Restart=on-failure
+RestartSec=10
+ExecStart=/usr/sbin/igmpproxy -n /run/igmpproxy/igmpproxy.conf