fix: IP-Bereiche statt Prefixe automatisch verwalten
- nutzbare Hostbereiche aus der CIDR-Maske erzeugen - Netzwerk- und Broadcastadressen bei IPv4 ausschließen - Abgleich-Aktion in die IP-Bereichsliste verschieben - Gerät oder VM in der IP-Adressansicht anzeigen - Bestandsabgleich für IP-Bereiche ergänzen - Plugin-Version auf 1.2.0 erhöhen
This commit is contained in:
@@ -5,18 +5,17 @@ from django.dispatch import receiver
|
||||
from ipam.models import IPAddress
|
||||
from netbox.plugins import get_plugin_config
|
||||
|
||||
from .services import ensure_prefix_for_ip
|
||||
from .services import ensure_range_for_ip
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
@receiver(post_save, sender=IPAddress, dispatch_uid="netbox_better_ips.ensure_prefix")
|
||||
def ensure_ip_prefix(sender, instance, raw=False, **kwargs):
|
||||
if raw or not get_plugin_config("netbox_better_ips", "auto_create_prefix"):
|
||||
@receiver(post_save, sender=IPAddress, dispatch_uid="netbox_better_ips.ensure_range")
|
||||
def ensure_ip_range(sender, instance, raw=False, **kwargs):
|
||||
if raw or not get_plugin_config("netbox_better_ips", "auto_create_range"):
|
||||
return
|
||||
try:
|
||||
ensure_prefix_for_ip(instance)
|
||||
ensure_range_for_ip(instance)
|
||||
except Exception:
|
||||
# The IP save must not be rolled back by an optional convenience feature.
|
||||
logger.exception("Could not ensure a prefix for IP address %s", instance)
|
||||
|
||||
logger.exception("Could not ensure an IP range for IP address %s", instance)
|
||||
|
||||
Reference in New Issue
Block a user