From ffb757bc51d6095335b7d46e363381c1e80e5cb3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A5kon=20Solbj=C3=B8rg?= Date: Thu, 6 Apr 2023 21:39:01 +0200 Subject: fix(netbox2gondul): Don't (try to) send non-global IPv6 addresses to Gondul --- tools/netbox/scripts/netbox2gondul/netbox2gondul.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'tools/netbox/scripts/netbox2gondul/netbox2gondul.py') diff --git a/tools/netbox/scripts/netbox2gondul/netbox2gondul.py b/tools/netbox/scripts/netbox2gondul/netbox2gondul.py index 64d57d9..c78110f 100644 --- a/tools/netbox/scripts/netbox2gondul/netbox2gondul.py +++ b/tools/netbox/scripts/netbox2gondul/netbox2gondul.py @@ -7,6 +7,7 @@ from django.utils.text import slugify from dcim.choices import DeviceStatusChoices, InterfaceModeChoices, InterfaceTypeChoices, SiteStatusChoices from dcim.models import Cable, CableTermination, Device, DeviceRole, DeviceType, Interface, Manufacturer, Site from extras.scripts import * +from ipaddress import IPv6Address from ipam.models import IPAddress, Prefix, VLAN from ipam.lookups import NetHostContained @@ -243,11 +244,11 @@ class Netbox2Gondul(Script): continue prefix_v6: Prefix = None - if device.primary_ip6: + if device.primary_ip6 and IPv6Address(str(device.primary_ip6)).is_global: prefix_v6 = Prefix.objects.get(NetHostContained(F('prefix'), str(device.primary_ip6))) vlan = prefix_v6.vlan else: - self.log_warning(f'Device {device.name} is missing primary IPv6 address. Skipping.') + self.log_warning(f'Device {device.name} is missing global primary IPv6 address. Skipping.') continue if not vlan: -- cgit v1.2.3