summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2023-02-21 15:34:06 +0100
committerGitHub <noreply@github.com>2023-02-21 15:34:06 +0100
commit4c6860d259cf7109de909d893b497c5b47c11064 (patch)
tree420e20988ccba4ec9411e39869fa184ea6505d0f
parentb16d8769e2cf1bfd565b5ad9e3850b3d30b5fed1 (diff)
parentac821d0d1764e9623015e04c5158a06c00ab370b (diff)
downloadvyos-1x-4c6860d259cf7109de909d893b497c5b47c11064.tar.gz
vyos-1x-4c6860d259cf7109de909d893b497c5b47c11064.zip
Merge pull request #1834 from sever-sever/T5007
T5007: Fix multicast implementation for the tunnel interfaces
-rw-r--r--python/vyos/ifconfig/tunnel.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/python/vyos/ifconfig/tunnel.py b/python/vyos/ifconfig/tunnel.py
index 5258a2cb1..f776240a1 100644
--- a/python/vyos/ifconfig/tunnel.py
+++ b/python/vyos/ifconfig/tunnel.py
@@ -162,6 +162,15 @@ class TunnelIf(Interface):
""" Get a synthetic MAC address. """
return self.get_mac_synthetic()
+ def set_multicast(self):
+ """ Set multicast """
+ if self.config.get('multicast', 'disable') == 'enable':
+ cmd = 'ip link set dev {ifname} multicast on'
+ else:
+ cmd = 'ip link set dev {ifname} multicast off'
+
+ self._cmd(cmd.format(**self.config))
+
def update(self, config):
""" General helper function which works on a dictionary retrived by
get_config_dict(). It's main intention is to consolidate the scattered
@@ -170,5 +179,8 @@ class TunnelIf(Interface):
# Adjust iproute2 tunnel parameters if necessary
self._change_options()
+ # Add multicast
+ self.set_multicast()
+
# call base class first
super().update(config)