From 2b101cd17760c8c3f423ce76d54aeef5872f7dc9 Mon Sep 17 00:00:00 2001 From: Adit Sarfaty Date: Mon, 30 Jul 2018 15:19:32 +0300 Subject: [PATCH] NSX|V3 exclude multicast addresses from NSX IPAM The NSX ipam (ip-pools) does not support multicast addresses. The IPAM driver should skip those subnets and fallback to the default (neutron) ipam implementation. Change-Id: If65ec19b267edb33088563db29ceee3b7d90a95e --- vmware_nsx/services/ipam/nsx_v3/driver.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/vmware_nsx/services/ipam/nsx_v3/driver.py b/vmware_nsx/services/ipam/nsx_v3/driver.py index c05ed8761f..d7cdbfeea4 100644 --- a/vmware_nsx/services/ipam/nsx_v3/driver.py +++ b/vmware_nsx/services/ipam/nsx_v3/driver.py @@ -57,6 +57,11 @@ class Nsxv3IpamDriver(common.NsxAbstractIpamDriver): ranges = [] return ranges + def _is_supported_net(self, subnet_request): + """This driver doesn't support multicast cidrs""" + net = netaddr.IPNetwork(subnet_request.subnet_cidr[0]) + return not net.is_multicast() + def allocate_backend_pool(self, subnet_request): """Create a pool on the NSX backend and return its ID""" # name/description length on backend is long, so there is no problem