1
0
mirror of https://github.com/CumulusNetworks/ifupdown2.git synced 2024-05-06 15:54:50 +00:00

addons: addressvirtual: vrrp: base macvlan prefix on parent ifindex

Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
This commit is contained in:
Julien Fortin
2019-02-26 18:30:25 +01:00
parent 8fb6dd67b2
commit 68c8d699db

View File

@ -93,8 +93,8 @@ class addressvirtual(moduleBase):
return '%s-v' %ifaceobj.name[0:13].replace('.', '-')
@staticmethod
def get_vrr_prefix(ifname, family):
return "%s-%sv" % (ifname[0:10].replace(".", "-"), family)
def get_vrrp_prefix(ifname, family):
return "vrrp%s-if%s-v" % (family, netlink.get_iface_index(ifname))
def _add_addresses_to_bridge(self, ifaceobj, hwaddress):
# XXX: batch the addresses
@ -253,8 +253,8 @@ class addressvirtual(moduleBase):
self.ipcmd.batch_start()
for macvlan_prefix in [
self._get_macvlan_prefix(ifaceobj),
self.get_vrr_prefix(ifaceobj.name, "4"),
self.get_vrr_prefix(ifaceobj.name, "6")
self.get_vrrp_prefix(ifaceobj.name, "4"),
self.get_vrrp_prefix(ifaceobj.name, "6")
]:
for macvlan_ifacename in glob.glob("/sys/class/net/%s*" % macvlan_prefix):
macvlan_ifacename = os.path.basename(macvlan_ifacename)
@ -568,8 +568,8 @@ class addressvirtual(moduleBase):
else:
ip4.append(ip_addr)
macvlan_ip4_ifname = "%s%s" % (self.get_vrr_prefix(ifname, "4"), index)
macvlan_ip6_ifname = "%s%s" % (self.get_vrr_prefix(ifname, "6"), index)
macvlan_ip4_ifname = "%s%s" % (self.get_vrrp_prefix(ifname, "4"), index)
macvlan_ip6_ifname = "%s%s" % (self.get_vrrp_prefix(ifname, "6"), index)
merged_with_existing_obj = False
# if the vrr config is defined in different lines for the same ID
@ -674,7 +674,7 @@ class addressvirtual(moduleBase):
#### VRR
hwaddress = []
self.ipcmd.batch_start()
for vrr_prefix in [self.get_vrr_prefix(ifaceobj.name, "4"), self.get_vrr_prefix(ifaceobj.name, "6")]:
for vrr_prefix in [self.get_vrrp_prefix(ifaceobj.name, "4"), self.get_vrrp_prefix(ifaceobj.name, "6")]:
for macvlan_ifacename in glob.glob("/sys/class/net/%s*" % vrr_prefix):
macvlan_ifacename = os.path.basename(macvlan_ifacename)
if not self.ipcmd.link_exists(macvlan_ifacename):