# neutron_lib.exceptions package

## Submodules

- neutron_lib.exceptions.address_group module
  - `AddressGroupInUse`
    - `AddressGroupInUse.message`
  - `AddressGroupNotFound`
    - `AddressGroupNotFound.message`
  - `AddressesAlreadyExist`
    - `AddressesAlreadyExist.message`
  - `AddressesNotFound`
    - `AddressesNotFound.message`
- neutron_lib.exceptions.address_scope module
  - `AddressScopeInUse`
    - `AddressScopeInUse.message`
  - `AddressScopeNotFound`
    - `AddressScopeNotFound.message`
  - `AddressScopeUpdateError`
    - `AddressScopeUpdateError.message`
  - `NetworkAddressScopeAffinityError`
    - `NetworkAddressScopeAffinityError.message`
- neutron_lib.exceptions.agent module
  - `AgentNotFound`
    - `AgentNotFound.message`
  - `AgentNotFoundByTypeHost`
    - `AgentNotFoundByTypeHost.message`
  - `MultipleAgentFoundByTypeHost`
    - `MultipleAgentFoundByTypeHost.message`
- neutron_lib.exceptions.allowedaddresspairs module
  - `AddressPairAndPortSecurityRequired`
    - `AddressPairAndPortSecurityRequired.message`
  - `AllowedAddressPairExhausted`
    - `AllowedAddressPairExhausted.message`
  - `AllowedAddressPairsMissingIP`
    - `AllowedAddressPairsMissingIP.message`
  - `DuplicateAddressPairInRequest`
    - `DuplicateAddressPairInRequest.message`
- neutron_lib.exceptions.availability_zone module
  - `AvailabilityZoneNotFound`
    - `AvailabilityZoneNotFound.message`
- neutron_lib.exceptions.dhcpagentscheduler module
  - `InvalidDHCPAgent`
    - `InvalidDHCPAgent.message`
  - `NetworkHostedByDHCPAgent`
    - `NetworkHostedByDHCPAgent.message`
  - `NetworkNotHostedByDhcpAgent`
    - `NetworkNotHostedByDhcpAgent.message`
- neutron_lib.exceptions.dns module
  - `DNSDomainNotFound`
    - `DNSDomainNotFound.message`
  - `DuplicateRecordSet`
    - `DuplicateRecordSet.message`
  - `ExternalDNSDriverNotFound`
    - `ExternalDNSDriverNotFound.message`
  - `ExternalDNSOverQuota`
    - `ExternalDNSOverQuota.message`
- neutron_lib.exceptions.dvr module
  - `DVRMacAddressNotFound`
    - `DVRMacAddressNotFound.message`
- neutron_lib.exceptions.external_net module
  - `ExternalNetworkInUse`
    - `ExternalNetworkInUse.message`
- neutron_lib.exceptions.extraroute module
  - `InvalidRoutes`
    - `InvalidRoutes.message`
  - `RouterInterfaceInUseByRoute`
    - `RouterInterfaceInUseByRoute.message`
  - `RoutesExhausted`
    - `RoutesExhausted.message`
- neutron_lib.exceptions.firewall_v2 module
  - `FirewallGroupCannotRemoveDefault`
    - `FirewallGroupCannotRemoveDefault.message`
  - `FirewallGroupInPendingState`
    - `FirewallGroupInPendingState.message`
  - `FirewallGroupInUse`
    - `FirewallGroupInUse.message`
  - `FirewallGroupNotFound`
    - `FirewallGroupNotFound.message`
  - `FirewallGroupPortInUse`
    - `FirewallGroupPortInUse.message`
  - `FirewallGroupPortInvalid`
    - `FirewallGroupPortInvalid.message`
  - `FirewallGroupPortInvalidProject`
    - `FirewallGroupPortInvalidProject.message`
  - `FirewallGroupPortNotSupported`
    - `FirewallGroupPortNotSupported.message`
  - `FirewallInternalDriverError`
    - `FirewallInternalDriverError.message`
  - `FirewallIpAddressConflict`
    - `FirewallIpAddressConflict.message`
  - `FirewallPolicyConflict`
    - `FirewallPolicyConflict.message`
  - `FirewallPolicyInUse`
    - `FirewallPolicyInUse.message`
  - `FirewallPolicyNotFound`
    - `FirewallPolicyNotFound.message`
  - `FirewallPolicySharingConflict`
    - `FirewallPolicySharingConflict.message`
  - `FirewallRuleAlreadyAssociated`
    - `FirewallRuleAlreadyAssociated.message`
  - `FirewallRuleConflict`
    - `FirewallRuleConflict.message`
  - `FirewallRuleInUse`
    - `FirewallRuleInUse.message`
  - `FirewallRuleInfoMissing`
    - `FirewallRuleInfoMissing.message`
  - `FirewallRuleInvalidICMPParameter`
    - `FirewallRuleInvalidICMPParameter.message`
  - `FirewallRuleInvalidPortValue`
    - `FirewallRuleInvalidPortValue.message`
  - `FirewallRuleNotAssociatedWithPolicy`
    - `FirewallRuleNotAssociatedWithPolicy.message`
  - `FirewallRuleNotFound`
    - `FirewallRuleNotFound.message`
  - `FirewallRuleSharingConflict`
    - `FirewallRuleSharingConflict.message`
  - `FirewallRuleWithPortWithoutProtocolInvalid`
    - `FirewallRuleWithPortWithoutProtocolInvalid.message`
- neutron_lib.exceptions.flavors module
  - `FlavorDisabled`
    - `FlavorDisabled.message`
  - `FlavorInUse`
    - `FlavorInUse.message`
  - `FlavorNotFound`
    - `FlavorNotFound.message`
  - `FlavorServiceProfileBindingExists`
    - `FlavorServiceProfileBindingExists.message`
  - `FlavorServiceProfileBindingNotFound`
    - `FlavorServiceProfileBindingNotFound.message`
  - `ServiceProfileDisabled`
    - `ServiceProfileDisabled.message`
  - `ServiceProfileDriverNotFound`
    - `ServiceProfileDriverNotFound.message`
  - `ServiceProfileEmpty`
    - `ServiceProfileEmpty.message`
  - `ServiceProfileInUse`
    - `ServiceProfileInUse.message`
  - `ServiceProfileNotFound`
    - `ServiceProfileNotFound.message`
- neutron_lib.exceptions.l3 module
  - `AbortSyncRouters`
    - `AbortSyncRouters.message`
  - `ExternalGatewayForFloatingIPNotFound`
    - `ExternalGatewayForFloatingIPNotFound.message`
  - `FipAssociated`
    - `FipAssociated.message`
  - `FloatingIPNotFound`
    - `FloatingIPNotFound.message`
  - `FloatingIPPortAlreadyAssociated`
    - `FloatingIPPortAlreadyAssociated.message`
  - `FloatingIpSetupException`
  - `IpTablesApplyException`
  - `L3ExtensionException`
    - `L3ExtensionException.message`
  - `RouterExternalGatewayInUseByFloatingIp`
    - `RouterExternalGatewayInUseByFloatingIp.message`
  - `RouterInUse`
    - `RouterInUse.message`
  - `RouterInterfaceAttachmentConflict`
    - `RouterInterfaceAttachmentConflict.message`
  - `RouterInterfaceInUseByFloatingIP`
    - `RouterInterfaceInUseByFloatingIP.message`
  - `RouterInterfaceNotFound`
    - `RouterInterfaceNotFound.message`
  - `RouterInterfaceNotFoundForSubnet`
    - `RouterInterfaceNotFoundForSubnet.message`
  - `RouterNotCompatibleWithAgent`
    - `RouterNotCompatibleWithAgent.message`
  - `RouterNotFound`
    - `RouterNotFound.message`
  - `RouterNotFoundInRouterFactory`
    - `RouterNotFoundInRouterFactory.message`
- neutron_lib.exceptions.l3_ext_gw_multihoming module
  - `UnableToAddExtraGateways`
    - `UnableToAddExtraGateways.message`
  - `UnableToMatchGateways`
    - `UnableToMatchGateways.message`
  - `UnableToRemoveGateways`
    - `UnableToRemoveGateways.message`
- neutron_lib.exceptions.l3_ext_ha_mode module
  - `DuplicatedHANetwork`
    - `DuplicatedHANetwork.message`
  - `HAMaximumAgentsNumberNotValid`
    - `HAMaximumAgentsNumberNotValid.message`
  - `HANetworkCIDRNotValid`
    - `HANetworkCIDRNotValid.message`
  - `HANetworkConcurrentDeletion`
    - `HANetworkConcurrentDeletion.message`
  - `MaxVRIDAllocationTriesReached`
    - `MaxVRIDAllocationTriesReached.message`
  - `NoVRIDAvailable`
    - `NoVRIDAvailable.message`
- neutron_lib.exceptions.local_ip module
  - `LocalIPAssociationNotFound`
    - `LocalIPAssociationNotFound.message`
  - `LocalIPInUse`
    - `LocalIPInUse.message`
  - `LocalIPNoIP`
    - `LocalIPNoIP.message`
  - `LocalIPNoRequestedIP`
    - `LocalIPNoRequestedIP.message`
  - `LocalIPNotFound`
    - `LocalIPNotFound.message`
  - `LocalIPPortOrNetworkRequired`
    - `LocalIPPortOrNetworkRequired.message`
  - `LocalIPRequestedIPNotFound`
    - `LocalIPRequestedIPNotFound.message`
- neutron_lib.exceptions.metering module
  - `MeteringLabelNotFound`
    - `MeteringLabelNotFound.message`
  - `MeteringLabelRuleNotFound`
    - `MeteringLabelRuleNotFound.message`
  - `MeteringLabelRuleOverlaps`
    - `MeteringLabelRuleOverlaps.message`
- neutron_lib.exceptions.multiprovidernet module
  - `SegmentsContainDuplicateEntry`
    - `SegmentsContainDuplicateEntry.message`
  - `SegmentsSetInConjunctionWithProviders`
    - `SegmentsSetInConjunctionWithProviders.message`
- neutron_lib.exceptions.network_segment_range module
  - `NetworkSegmentRangeDefaultReadOnly`
    - `NetworkSegmentRangeDefaultReadOnly.message`
  - `NetworkSegmentRangeNetTypeNotSupported`
    - `NetworkSegmentRangeNetTypeNotSupported.message`
  - `NetworkSegmentRangeNotFound`
    - `NetworkSegmentRangeNotFound.message`
  - `NetworkSegmentRangeOverlaps`
    - `NetworkSegmentRangeOverlaps.message`
  - `NetworkSegmentRangeReferencedByProject`
    - `NetworkSegmentRangeReferencedByProject.message`
- neutron_lib.exceptions.placement module
  - `AmbiguousResponsibilityForResourceProvider`
    - `AmbiguousResponsibilityForResourceProvider.message`
  - `PlacementAPIVersionIncorrect`
    - `PlacementAPIVersionIncorrect.message`
  - `PlacementAggregateNotFound`
    - `PlacementAggregateNotFound.message`
  - `PlacementAllocationGenerationConflict`
    - `PlacementAllocationGenerationConflict.message`
  - `PlacementAllocationRemoved`
    - `PlacementAllocationRemoved.message`
  - `PlacementAllocationRpNotExists`
    - `PlacementAllocationRpNotExists.message`
  - `PlacementClientError`
    - `PlacementClientError.message`
  - `PlacementEndpointNotFound`
    - `PlacementEndpointNotFound.message`
  - `PlacementInventoryNotFound`
    - `PlacementInventoryNotFound.message`
  - `PlacementInventoryUpdateConflict`
    - `PlacementInventoryUpdateConflict.message`
  - `PlacementResourceClassNotFound`
    - `PlacementResourceClassNotFound.message`
  - `PlacementResourceNotFound`
    - `PlacementResourceNotFound.message`
  - `PlacementResourceProviderGenerationConflict`
    - `PlacementResourceProviderGenerationConflict.message`
  - `PlacementResourceProviderNameNotUnique`
    - `PlacementResourceProviderNameNotUnique.message`
  - `PlacementResourceProviderNotFound`
    - `PlacementResourceProviderNotFound.message`
  - `PlacementTraitNotFound`
    - `PlacementTraitNotFound.message`
  - `UnknownResourceProvider`
    - `UnknownResourceProvider.message`
- neutron_lib.exceptions.port_security module
  - `PortSecurityAndIPRequiredForSecurityGroups`
    - `PortSecurityAndIPRequiredForSecurityGroups.message`
  - `PortSecurityPortHasSecurityGroup`
    - `PortSecurityPortHasSecurityGroup.message`
- neutron_lib.exceptions.qos module
  - `FloatingIPQosBindingError`
    - `FloatingIPQosBindingError.message`
  - `FloatingIPQosBindingNotFound`
    - `FloatingIPQosBindingNotFound.message`
  - `NetworkQosBindingError`
    - `NetworkQosBindingError.message`
  - `NetworkQosBindingNotFound`
    - `NetworkQosBindingNotFound.message`
  - `PolicyRemoveAuthorizationError`
    - `PolicyRemoveAuthorizationError.message`
  - `PortQosBindingError`
    - `PortQosBindingError.message`
  - `PortQosBindingNotFound`
    - `PortQosBindingNotFound.message`
  - `QoSPolicyDefaultAlreadyExists`
    - `QoSPolicyDefaultAlreadyExists.message`
  - `QoSRuleParameterConflict`
    - `QoSRuleParameterConflict.message`
  - `QoSRulesConflict`
    - `QoSRulesConflict.message`
  - `QosPlacementAllocationConflict`
    - `QosPlacementAllocationConflict.message`
  - `QosPlacementAllocationUpdateConflict`
    - `QosPlacementAllocationUpdateConflict.message`
  - `QosPolicyInUse`
    - `QosPolicyInUse.message`
  - `QosPolicyNotFound`
    - `QosPolicyNotFound.message`
  - `QosRuleNotFound`
    - `QosRuleNotFound.message`
  - `QosRuleNotSupported`
    - `QosRuleNotSupported.message`
  - `QosRuleNotSupportedByNetwork`
    - `QosRuleNotSupportedByNetwork.message`
  - `RouterQosBindingError`
    - `RouterQosBindingError.message`
  - `RouterQosBindingNotFound`
    - `RouterQosBindingNotFound.message`
  - `TcLibQdiscNeededArguments`
    - `TcLibQdiscNeededArguments.message`
  - `TcLibQdiscTypeError`
    - `TcLibQdiscTypeError.message`
- neutron_lib.exceptions.security_group module
  - `SecurityGroupDefaultAlreadyExists`
    - `SecurityGroupDefaultAlreadyExists.message`
- neutron_lib.exceptions.taas module
  - `InvalidDestinationPort`
    - `InvalidDestinationPort.message`
  - `InvalidSourcePort`
    - `InvalidSourcePort.message`
  - `PortDoesNotBelongToProject`
    - `PortDoesNotBelongToProject.message`
  - `PortDoesNotBelongToTenant`
    - `PortDoesNotBelongToTenant.message`
  - `TapFlowNotFound`
    - `TapFlowNotFound.message`
  - `TapMirrorNotFound`
    - `TapMirrorNotFound.message`
  - `TapMirrorTunnelConflict`
    - `TapMirrorTunnelConflict.message`
  - `TapServiceLimitReached`
    - `TapServiceLimitReached.message`
  - `TapServiceNotBelongToProject`
    - `TapServiceNotBelongToProject.message`
  - `TapServiceNotBelongToTenant`
    - `TapServiceNotBelongToTenant.message`
  - `TapServiceNotFound`
    - `TapServiceNotFound.message`
- neutron_lib.exceptions.vlanqinq module
  - `VlanQinqDriverError`
    - `VlanQinqDriverError.message`
- neutron_lib.exceptions.vlantransparent module
  - `VlanTransparencyDriverError`
    - `VlanTransparencyDriverError.message`
- neutron_lib.exceptions.vpn module
  - `DeviceDriverImportError`
    - `DeviceDriverImportError.message`
  - `EndpointGroupInUse`
    - `EndpointGroupInUse.message`
  - `ExternalNetworkHasNoSubnet`
    - `ExternalNetworkHasNoSubnet.message`
  - `FlavorsPluginNotLoaded`
    - `FlavorsPluginNotLoaded.message`
  - `IKEPolicyInUse`
    - `IKEPolicyInUse.message`
  - `IKEPolicyNotFound`
    - `IKEPolicyNotFound.message`
  - `IPsecPolicyInUse`
    - `IPsecPolicyInUse.message`
  - `IPsecPolicyNotFound`
    - `IPsecPolicyNotFound.message`
  - `IPsecSiteConnectionDpdIntervalValueError`
    - `IPsecSiteConnectionDpdIntervalValueError.message`
  - `IPsecSiteConnectionMtuError`
    - `IPsecSiteConnectionMtuError.message`
  - `IPsecSiteConnectionNotFound`
    - `IPsecSiteConnectionNotFound.message`
  - `IPsecSiteConnectionPeerCidrError`
    - `IPsecSiteConnectionPeerCidrError.message`
  - `InvalidEndpointGroup`
    - `InvalidEndpointGroup.message`
  - `InvalidEndpointInEndpointGroup`
    - `InvalidEndpointInEndpointGroup.message`
  - `IpsecValidationFailure`
    - `IpsecValidationFailure.message`
  - `MissingEndpointForEndpointGroup`
    - `MissingEndpointForEndpointGroup.message`
  - `MissingPeerCidrs`
    - `MissingPeerCidrs.message`
  - `MissingRequiredEndpointGroup`
    - `MissingRequiredEndpointGroup.message`
  - `MixedIPVersionsForIPSecConnection`
    - `MixedIPVersionsForIPSecConnection.message`
  - `MixedIPVersionsForIPSecEndpoints`
    - `MixedIPVersionsForIPSecEndpoints.message`
  - `MixedIPVersionsForPeerCidrs`
    - `MixedIPVersionsForPeerCidrs.message`
  - `NoProviderFoundForFlavor`
    - `NoProviderFoundForFlavor.message`
  - `NonExistingSubnetInEndpointGroup`
    - `NonExistingSubnetInEndpointGroup.message`
  - `PeerCidrsInvalid`
    - `PeerCidrsInvalid.message`
  - `RouterIsNotExternal`
    - `RouterIsNotExternal.message`
  - `SubnetInUseByEndpointGroup`
    - `SubnetInUseByEndpointGroup.message`
  - `SubnetInUseByIPsecSiteConnection`
    - `SubnetInUseByIPsecSiteConnection.message`
  - `SubnetInUseByVPNService`
    - `SubnetInUseByVPNService.message`
  - `SubnetIsNotConnectedToRouter`
    - `SubnetIsNotConnectedToRouter.message`
  - `VPNEndpointGroupNotFound`
    - `VPNEndpointGroupNotFound.message`
  - `VPNPeerAddressNotResolved`
    - `VPNPeerAddressNotResolved.message`
  - `VPNServiceInUse`
    - `VPNServiceInUse.message`
  - `VPNServiceNotFound`
    - `VPNServiceNotFound.message`
  - `VPNStateInvalidToUpdate`
    - `VPNStateInvalidToUpdate.message`
  - `WrongEndpointGroupType`
    - `WrongEndpointGroupType.message`

## Module contents

Neutron base exception handling.

exception neutron_lib.exceptions.AddressScopePrefixConflict(**kwargs)

  Bases: `Conflict`

  message = 'Failed to associate address scope: subnetpools within an address scope must have unique prefixes.'

exception neutron_lib.exceptions.AdminRequired(**kwargs)

  Bases: `NotAuthorized`

  A not authorized exception indicating an admin is required.

  A specialization of the NotAuthorized exception that indicates and admin is required to carry out the operation or access a resource.

  Parameters:

    reason – A message indicating additional details on why admin is required for the operation access.

  message = 'User does not have admin privileges: %(reason)s.'

exception neutron_lib.exceptions.BadRequest(**kwargs)

  Bases: `NeutronException`

  An exception indicating a generic bad request for a said resource.

  A generic exception indicating a bad request for a specified resource.

  Parameters:

    - resource – The resource requested.

    - msg – A message indicating why the request is bad.

  message = 'Bad %(resource)s request: %(msg)s.'

exception neutron_lib.exceptions.BridgeDoesNotExist(**kwargs)

  Bases: `NeutronException`

  message = 'Bridge %(bridge)s does not exist.'

exception neutron_lib.exceptions.CTZoneExhaustedError(**kwargs)

  Bases: `NeutronException`

  message = 'IPtables conntrack zones exhausted, iptables rules cannot be applied.'

exception neutron_lib.exceptions.Conflict(**kwargs)

  Bases: `NeutronException`

  A generic conflict exception.

exception neutron_lib.exceptions.DNSNameServersExhausted(**kwargs)

  Bases: `BadRequest`

  message = 'Unable to complete operation for %(subnet_id)s. The number of DNS nameservers exceeds the limit %(quota)s.'

exception neutron_lib.exceptions.DeviceIDNotOwnedByProject(**kwargs)

  Bases: `Conflict`

  message = 'The following device_id %(device_id)s is not owned by your project or matches another project router.'

exception neutron_lib.exceptions.DeviceIDNotOwnedByTenant(**kwargs)

  Bases: `Conflict`

  message = 'The following device_id %(device_id)s is not owned by your project or matches another project router.'

exception neutron_lib.exceptions.DeviceNotFoundError(**kwargs)

  Bases: `NotFound`

  An exception for a requested device that’s not found.

  A specialization of the NotFound exception indicating a requested device could not be found.

  Parameters:

    device_name – The name of the (not found) device that was requested.

  message = "Device '%(device_name)s' does not exist."

exception neutron_lib.exceptions.DriverCallError(exc_list=None)

  Bases: `MultipleExceptions`

exception neutron_lib.exceptions.DuplicatedExtension(**kwargs)

  Bases: `NeutronException`

  message = 'Found duplicate extension: %(alias)s.'

exception neutron_lib.exceptions.EmptySubnetPoolPrefixList(**kwargs)

  Bases: `BadRequest`

  message = 'Empty subnet pool prefix list.'

exception neutron_lib.exceptions.ExtensionsNotFound(**kwargs)

  Bases: `NotFound`

  message = 'Extensions not found: %(extensions)s.'

exception neutron_lib.exceptions.ExternalIpAddressExhausted(**kwargs)

  Bases: `BadRequest`

  An error due to not finding IP addresses on an external network.

  A specialization of the BadRequest exception indicating no IP addresses can be found on a network.

  Parameters:

    net_id – The UUID of the network.

  message = 'Unable to find any IP address on external network %(net_id)s.'

exception neutron_lib.exceptions.FailToDropPrivilegesExit

  Bases: `SystemExit`

  Exit exception raised when a drop privileges action fails.

  code = 99

exception neutron_lib.exceptions.FailedToAddQdiscToDevice(**kwargs)

  Bases: `NeutronException`

  message = 'Failed to add %(direction)s qdisc to device %(device)s.'

exception neutron_lib.exceptions.FilterIDForIPNotFound(**kwargs)

  Bases: `NotFound`

  message = 'Filter ID for IP %(ip)s could not be found.'

exception neutron_lib.exceptions.FlatNetworkInUse(**kwargs)

  Bases: `InUse`

  message = 'Unable to create the flat network. Physical network %(physical_network)s is in use.'

exception neutron_lib.exceptions.GatewayConflictWithAllocationPools(**kwargs)

  Bases: `InUse`

  message = 'Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s.'

exception neutron_lib.exceptions.GatewayIpInUse(**kwargs)

  Bases: `InUse`

  message = 'Current gateway ip %(ip_address)s already in use by port %(port_id)s. Unable to update.'

exception neutron_lib.exceptions.HostMacAddressGenerationFailure(**kwargs)

  Bases: `ServiceUnavailable`

  MAC address generation failure for a host.

  Parameters:

    host – The host MAC address generation failed for.

  message = 'Unable to generate unique mac for host %(host)s.'

exception neutron_lib.exceptions.HostRoutesExhausted(**kwargs)

  Bases: `BadRequest`

  message = 'Unable to complete operation for %(subnet_id)s. The number of host routes exceeds the limit %(quota)s.'

exception neutron_lib.exceptions.IllegalSubnetPoolAssociationToAddressScope(**kwargs)

  Bases: `BadRequest`

  message = 'Illegal subnetpool association: subnetpool %(subnetpool_id)s cannot be associated with address scope %(address_scope_id)s.'

exception neutron_lib.exceptions.IllegalSubnetPoolIpVersionAssociationToAddressScope(**kwargs)

  Bases: `BadRequest`

  message = 'Illegal subnetpool association: subnetpool %(subnetpool_id)s cannot associate with address scope %(address_scope_id)s because subnetpool ip_version is not %(ip_version)s.'

exception neutron_lib.exceptions.IllegalSubnetPoolPrefixBounds(**kwargs)

  Bases: `BadRequest`

  message = 'Illegal prefix bounds: %(prefix_type)s=%(prefixlen)s, %(base_prefix_type)s=%(base_prefixlen)s.'

exception neutron_lib.exceptions.IllegalSubnetPoolPrefixUpdate(**kwargs)

  Bases: `BadRequest`

  message = 'Illegal update to prefixes: %(msg)s.'

exception neutron_lib.exceptions.IllegalSubnetPoolUpdate(**kwargs)

  Bases: `BadRequest`

  message = 'Illegal subnetpool update : %(reason)s.'

exception neutron_lib.exceptions.InUse(**kwargs)

  Bases: `NeutronException`

  A generic exception indicating a resource is already in use.

  message = 'The resource is in use.'

exception neutron_lib.exceptions.Invalid(message=None)

  Bases: `NeutronException`

  A generic base class for invalid errors.

exception neutron_lib.exceptions.InvalidAllocationPool(**kwargs)

  Bases: `BadRequest`

  message = 'The allocation pool %(pool)s is not valid.'

exception neutron_lib.exceptions.InvalidCIDR(**kwargs)

  Bases: `BadRequest`

  message = 'Invalid CIDR %(input)s given as IP prefix.'

exception neutron_lib.exceptions.InvalidConfigurationOption(**kwargs)

  Bases: `NeutronException`

  An error due to an invalid configuration option value.

  Parameters:

    - opt_name – The name of the configuration option that has an invalid value.

    - opt_value – The value that’s invalid for the configuration option.

  message = 'An invalid value was provided for %(opt_name)s: %(opt_value)s.'

exception neutron_lib.exceptions.InvalidContentType(**kwargs)

  Bases: `NeutronException`

  An error due to invalid content type.

  Parameters:

    content_type – The invalid content type.

  message = 'Invalid content type %(content_type)s.'

exception neutron_lib.exceptions.InvalidInput(**kwargs)

  Bases: `BadRequest`

  A bad request due to invalid input.

  A specialization of the BadRequest error indicating bad input was specified.

  Parameters:

    error_message – Details on the operation that failed due to bad input.

  message = 'Invalid input for operation: %(error_message)s.'

exception neutron_lib.exceptions.InvalidInputSubnetServiceType(**kwargs)

  Bases: `InvalidInput`

  message = 'Subnet service type %(service_type)s is not a string.'

exception neutron_lib.exceptions.InvalidIpForNetwork(**kwargs)

  Bases: `BadRequest`

  An exception indicating an invalid IP was specified for a network.

  A specialization of the BadRequest exception indicating a specified IP address is invalid for a network.

  Parameters:

    ip_address – The IP address that’s invalid on the network.

  message = 'IP address %(ip_address)s is not a valid IP for any of the subnets on the specified network.'

exception neutron_lib.exceptions.InvalidIpForSubnet(**kwargs)

  Bases: `BadRequest`

  An exception indicating an invalid IP was specified for a subnet.

  A specialization of the BadRequest exception indicating a specified IP address is invalid for a subnet.

  Parameters:

    ip_address – The IP address that’s invalid on the subnet.

  message = 'IP address %(ip_address)s is not a valid IP for the specified subnet.'

exception neutron_lib.exceptions.InvalidQuotaValue(**kwargs)

  Bases: `Conflict`

  message = 'Change would make usage less than 0 for the following resources: %(unders)s.'

exception neutron_lib.exceptions.InvalidServiceType(**kwargs)

  Bases: `InvalidInput`

  An error due to an invalid service type.

  Parameters:

    service_type – The service type that’s invalid.

  message = 'Invalid service type: %(service_type)s.'

exception neutron_lib.exceptions.InvalidSharedSetting(**kwargs)

  Bases: `Conflict`

  message = 'Unable to reconfigure sharing settings for network %(network)s. Multiple projects are using it.'

exception neutron_lib.exceptions.InvalidSubnetServiceType(**kwargs)

  Bases: `InvalidInput`

  message = 'Subnet service type %(service_type)s does not correspond to a valid device owner.'

exception neutron_lib.exceptions.IpAddressGenerationFailure(**kwargs)

  Bases: `Conflict`

  A conflict error due to no more IP addresses on a said network.

  Parameters:

    net_id – The UUID of the network that has no more IP addresses.

  message = 'No more IP addresses available on network %(net_id)s.'

exception neutron_lib.exceptions.IpAddressInUse(**kwargs)

  Bases: `InUse`

  An network operational error indicating an IP address is already in use.

  A specialization of the InUse exception indicating an operation can’t complete because an IP address is in use.

  Parameters:

    - net_id – The UUID of the network.

    - ip_address – The IP address that’s already in use on the network.

  message = 'Unable to complete operation for network %(net_id)s. The IP address %(ip_address)s is in use.'

exception neutron_lib.exceptions.MacAddressInUse(**kwargs)

  Bases: `InUse`

  An network operational error indicating a MAC address is already in use.

  A specialization of the InUse exception indicating an operation failed on a network because a specified MAC address is already in use on that network.

  Parameters:

    - net_id – The UUID of the network.

    - mac – The requested MAC address that’s already in use.

  message = 'Unable to complete operation for network %(net_id)s. The mac address %(mac)s is in use.'

exception neutron_lib.exceptions.MalformedRequestBody(**kwargs)

  Bases: `BadRequest`

  message = 'Malformed request body: %(reason)s.'

exception neutron_lib.exceptions.MaxPrefixSubnetAllocationError(**kwargs)

  Bases: `BadRequest`

  message = 'Unable to allocate subnet with prefix length %(prefixlen)s, maximum allowed prefix is %(max_prefixlen)s.'

exception neutron_lib.exceptions.MinPrefixSubnetAllocationError(**kwargs)

  Bases: `BadRequest`

  message = 'Unable to allocate subnet with prefix length %(prefixlen)s, minimum allowed prefix is %(min_prefixlen)s.'

exception neutron_lib.exceptions.MultipleExceptions(exceptions, *args, **kwargs)

  Bases: `Exception`

  Container for multiple exceptions encountered.

  The API layer of Neutron will automatically unpack, translate, filter, and combine the inner exceptions in any exception derived from this class.

exception neutron_lib.exceptions.MultipleFilterIDForIPFound(**kwargs)

  Bases: `Conflict`

  message = 'Multiple filter IDs for IP %(ip)s found.'

exception neutron_lib.exceptions.NetworkIdOrRouterIdRequiredError(**kwargs)

  Bases: `NeutronException`

  message = 'Both network_id and router_id are None. One must be provided.'

exception neutron_lib.exceptions.NetworkInUse(**kwargs)

  Bases: `InUse`

  An operational error indicating the network still has ports in use.

  A specialization of the InUse exception indicating a network operation was requested, but failed because there are still ports in use on the said network.

  Parameters:

    - net_id – The UUID of the network requested.

    - reason – Details on why the operation failed. If None, a default reason is used indicating one or more ports still in use on the network.

  message = 'Unable to complete operation on network %(net_id)s. %(reason)s.'

exception neutron_lib.exceptions.NetworkMTUSubnetConflict(**kwargs)

  Bases: `Conflict`

  A conflict error due to MTU being invalid on said network.

  Parameters:

    - net_id – The UUID of the network

    - mtu – The minimum MTU required by a subnet for the network

  message = 'MTU of %(net_id)s is not valid, subnet requires a minimum of %(mtu)s'

exception neutron_lib.exceptions.NetworkNotFound(**kwargs)

  Bases: `NotFound`

  An exception indicating a network was not found.

  A specialization of the NotFound exception indicating a requested network could not be found.

  Parameters:

    net_id – The UUID of the (not found) network requested.

  message = 'Network %(net_id)s could not be found.'

exception neutron_lib.exceptions.NetworkSubnetPoolAffinityError(**kwargs)

  Bases: `BadRequest`

  message = 'Subnets hosted on the same network must be allocated from the same subnet pool.'

exception neutron_lib.exceptions.NetworkTunnelRangeError(**kwargs)

  Bases: `NeutronException`

  An error due to an invalid network tunnel range.

  An exception indicating an invalid network tunnel range was specified.

  Parameters:

    - tunnel_range – The invalid tunnel range. If specified in the start:end’ format, they will be converted automatically.

    - error – Additional details on why the range is invalid.

  message = "Invalid network tunnel range: '%(tunnel_range)s' - %(error)s."

exception neutron_lib.exceptions.NetworkVlanRangeError(**kwargs)

  Bases: `NeutronException`

  message = "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'."

exception neutron_lib.exceptions.NetworkVxlanPortRangeError(**kwargs)

  Bases: `NeutronException`

  message = "Invalid network VXLAN port range: '%(vxlan_range)s'."

exception neutron_lib.exceptions.NeutronException(**kwargs)

  Bases: `Exception`

  Base Neutron Exception.

  To correctly use this class, inherit from it and define a ‘message’ property. That message will get printf’d with the keyword arguments provided to the constructor.

  message = 'An unknown exception occurred.'
  use_fatal_exceptions()

    Is the instance using fatal exceptions.

    Returns:

      Always returns False.

exception neutron_lib.exceptions.NoNetworkAvailable(**kwargs)

  Bases: `ResourceExhausted`

  A failure to create a network due to no project networks for allocation.

  A specialization of the ResourceExhausted exception indicating network creation failed because no project network are available for allocation.

  message = 'Unable to create the network. No project network is available for allocation.'

exception neutron_lib.exceptions.NoNetworkFoundInMaximumAllowedAttempts(**kwargs)

  Bases: `ServiceUnavailable`

  message = 'Unable to create the network. No available network found in maximum allowed attempts.'

exception neutron_lib.exceptions.NotAuthorized(**kwargs)

  Bases: `NeutronException`

  A generic not authorized exception.

  message = 'Not authorized.'

exception neutron_lib.exceptions.NotFound(**kwargs)

  Bases: `NeutronException`

  A generic not found exception.

exception neutron_lib.exceptions.ObjectActionError(**kwargs)

  Bases: `NeutronException`

  message = 'Object action %(action)s failed because: %(reason)s.'

exception neutron_lib.exceptions.ObjectNotFound(**kwargs)

  Bases: `NotFound`

  A not found exception indicating an identifiable object isn’t found.

  A specialization of the NotFound exception indicating an object with a said ID doesn’t exist.

  Parameters:

    id – The ID of the (not found) object.

  message = 'Object %(id)s not found.'

exception neutron_lib.exceptions.OutOfBoundsAllocationPool(**kwargs)

  Bases: `BadRequest`

  message = 'The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s.'

exception neutron_lib.exceptions.OverQuota(**kwargs)

  Bases: `Conflict`

  A error due to exceeding quota limits.

  A specialization of the Conflict exception indicating quota has been exceeded.

  Parameters:

    overs – The resources that have exceeded quota.

  message = 'Quota exceeded for resources: %(overs)s.'

exception neutron_lib.exceptions.OverlappingAllocationPools(**kwargs)

  Bases: `Conflict`

  message = 'Found overlapping allocation pools: %(pool_1)s %(pool_2)s for subnet %(subnet_cidr)s.'

exception neutron_lib.exceptions.PhysicalNetworkNameError(**kwargs)

  Bases: `NeutronException`

  message = 'Empty physical network name.'

exception neutron_lib.exceptions.PolicyCheckError(**kwargs)

  Bases: `NeutronException`

  An error due to a policy check failure.

  Parameters:

    - policy – The policy that failed to check.

    - reason – Additional details on the failure.

  message = 'Failed to check policy %(policy)s because %(reason)s.'

exception neutron_lib.exceptions.PolicyInitError(**kwargs)

  Bases: `NeutronException`

  An error due to policy initialization failure.

  Parameters:

    - policy – The policy that failed to initialize.

    - reason – Details on why the policy failed to initialize.

  message = 'Failed to initialize policy %(policy)s because %(reason)s.'

exception neutron_lib.exceptions.PortBindingAlreadyActive(**kwargs)

  Bases: `Conflict`

  message = 'Binding for port %(port_id)s on host %(host)s is already active.'

exception neutron_lib.exceptions.PortBindingAlreadyExists(**kwargs)

  Bases: `Conflict`

  message = 'Binding for port %(port_id)s on host %(host)s already exists.'

exception neutron_lib.exceptions.PortBindingError(**kwargs)

  Bases: `NeutronException`

  message = 'Binding for port %(port_id)s on host %(host)s could not be created or updated.'

exception neutron_lib.exceptions.PortBindingNotFound(**kwargs)

  Bases: `NotFound`

  message = 'Binding for port %(port_id)s for host %(host)s could not be found.'

exception neutron_lib.exceptions.PortBound(**kwargs)

  Bases: `InUse`

  An operational error indicating a port is already bound.

  A specialization of the InUse exception indicating an operation can’t complete because the port is already bound.

  Parameters:

    - port_id – The UUID of the port requested.

    - vif_type – The VIF type associated with the bound port.

    - old_mac – The old MAC address of the port.

    - net_mac – The new MAC address of the port.

  message = 'Unable to complete operation on port %(port_id)s, port is already bound, port type: %(vif_type)s, old_mac %(old_mac)s, new_mac %(new_mac)s.'

exception neutron_lib.exceptions.PortBoundNUMAAffinityPolicy(**kwargs)

  Bases: `InUse`

  An operational error indicating a port is already bound.

  NUMA affinity policy cannot be modified when the port is bound.

  Parameters:

    - port_id – The UUID of the port requested.

    - host_id – The host ID where the port is bound.

    - numa_affinity_policy – value passed to be updated.

  message = 'Unable to complete operation on port %(port_id)s, port is already bound to host %(host_id)s, numa_affinity_policy value given %(numa_affinity_policy)s.'

exception neutron_lib.exceptions.PortInUse(**kwargs)

  Bases: `InUse`

  An operational error indicating a requested port is already attached.

  A specialization of the InUse exception indicating an operation failed on a port because it already has an attached device.

  Parameters:

    - port_id – The UUID of the port requested.

    - net_id – The UUID of the requested port’s network.

    - device_id – The UUID of the device already attached to the port.

  message = 'Unable to complete operation on port %(port_id)s for network %(net_id)s. Port already has an attached device %(device_id)s.'

exception neutron_lib.exceptions.PortNotFound(**kwargs)

  Bases: `NotFound`

  An exception for a requested port that’s not found.

  A specialization of the NotFound exception indicating a requested port could not be found.

  Parameters:

    port_id – The UUID of the (not found) port that was requested.

  message = 'Port %(port_id)s could not be found.'

exception neutron_lib.exceptions.PortNotFoundOnNetwork(**kwargs)

  Bases: `NotFound`

  An exception for a requested port on a network that’s not found.

  A specialization of the NotFound exception that indicates a specified port on a specified network doesn’t exist.

  Parameters:

    - port_id – The UUID of the (not found) port that was requested.

    - net_id – The UUID of the network that was requested for the port.

  message = 'Port %(port_id)s could not be found on network %(net_id)s.'

exception neutron_lib.exceptions.PreexistingDeviceFailure(**kwargs)

  Bases: `NeutronException`

  A creation error due to an already existing device.

  An exception indication creation failed due to an already existing device.

  Parameters:

    dev_name – The device name that already exists.

  message = 'Creation failed. %(dev_name)s already exists.'

exception neutron_lib.exceptions.PrefixVersionMismatch(**kwargs)

  Bases: `BadRequest`

  message = 'Cannot mix IPv4 and IPv6 prefixes in a subnet pool.'

exception neutron_lib.exceptions.ProcessExecutionError(message, returncode)

  Bases: `RuntimeError`

exception neutron_lib.exceptions.ProjectQuotaNotFound(**kwargs)

  Bases: `NotFound`

  message = 'Quota for project %(project_id)s could not be found.'

exception neutron_lib.exceptions.QuotaMissingProject(**kwargs)

  Bases: `BadRequest`

  message = 'Project-id was missing from quota request.'

exception neutron_lib.exceptions.QuotaMissingTenant(**kwargs)

  Bases: `BadRequest`

  message = 'Tenant-id was missing from quota request.'

exception neutron_lib.exceptions.QuotaResourceUnknown(**kwargs)

  Bases: `NotFound`

  message = 'Unknown quota resources %(unknown)s.'

exception neutron_lib.exceptions.ResourceExhausted(**kwargs)

  Bases: `ServiceUnavailable`

  A service unavailable error indicating a resource is exhausted.

exception neutron_lib.exceptions.ServicePortInUse(**kwargs)

  Bases: `InUse`

  An error indicating a service port can’t be deleted.

  A specialization of the InUse exception indicating a requested service port can’t be deleted via the APIs.

  Parameters:

    - port_id – The UUID of the port requested.

    - reason – Details on why the operation failed.

  message = 'Port %(port_id)s cannot be deleted directly via the port API: %(reason)s.'

exception neutron_lib.exceptions.ServiceUnavailable(**kwargs)

  Bases: `NeutronException`

  A generic service unavailable exception.

  message = 'The service is unavailable.'

exception neutron_lib.exceptions.StateInvalid(**kwargs)

  Bases: `BadRequest`

  message = 'Unsupported port state: %(port_state)s.'

exception neutron_lib.exceptions.SubnetAllocationError(**kwargs)

  Bases: `NeutronException`

  message = 'Failed to allocate subnet: %(reason)s.'

exception neutron_lib.exceptions.SubnetInUse(**kwargs)

  Bases: `InUse`

  An operational error indicating a subnet is still in use.

  A specialization of the InUse exception indicating an operation failed on a subnet because the subnet is still in use.

  Parameters:

    - subnet_id – The UUID of the subnet requested.

    - reason – Details on why the operation failed. If None, a default reason is used indicating one or more ports still have IP allocations on the subnet.

  message = 'Unable to complete operation on subnet %(subnet_id)s: %(reason)s.'

exception neutron_lib.exceptions.SubnetMismatchForPort(**kwargs)

  Bases: `BadRequest`

  A bad request error indicating a specified subnet isn’t on a port.

  A specialization of the BadRequest exception indicating a subnet on a port doesn’t match a specified subnet.

  Parameters:

    - port_id – The UUID of the port.

    - subnet_id – The UUID of the requested subnet.

  message = 'Subnet on port %(port_id)s does not match the requested subnet %(subnet_id)s.'

exception neutron_lib.exceptions.SubnetNotFound(**kwargs)

  Bases: `NotFound`

  An exception for a requested subnet that’s not found.

  A specialization of the NotFound exception indicating a requested subnet could not be found.

  Parameters:

    subnet_id – The UUID of the (not found) subnet that was requested.

  message = 'Subnet %(subnet_id)s could not be found.'

exception neutron_lib.exceptions.SubnetPoolDeleteError(**kwargs)

  Bases: `BadRequest`

  message = 'Unable to delete subnet pool: %(reason)s.'

exception neutron_lib.exceptions.SubnetPoolInUse(**kwargs)

  Bases: `InUse`

  An operational error indicating a subnet pool is still in use.

  A specialization of the InUse exception indicating an operation failed on a subnet pool because it’s still in use.

  Parameters:

    - subnet_pool_id – The UUID of the subnet pool requested.

    - reason – Details on why the operation failed. If None a default reason is used indicating two or more concurrent subnets are allocated.

  message = 'Unable to complete operation on subnet pool %(subnet_pool_id)s. %(reason)s.'

exception neutron_lib.exceptions.SubnetPoolNotFound(**kwargs)

  Bases: `NotFound`

  message = 'Subnet pool %(subnetpool_id)s could not be found.'

exception neutron_lib.exceptions.SubnetPoolQuotaExceeded(**kwargs)

  Bases: `OverQuota`

  message = 'Per-project subnet pool prefix quota exceeded.'

exception neutron_lib.exceptions.TenantIdProjectIdFilterConflict(**kwargs)

  Bases: `BadRequest`

  message = 'Both tenant_id and project_id passed as filters.'

exception neutron_lib.exceptions.TenantQuotaNotFound(**kwargs)

  Bases: `NotFound`

  message = 'Quota for project %(tenant_id)s could not be found.'

exception neutron_lib.exceptions.TunnelIdInUse(**kwargs)

  Bases: `InUse`

  A network creation failure due to tunnel ID already in use.

  A specialization of the InUse exception indicating network creation failed because a said tunnel ID is already in use.

  Parameters:

    tunnel_id – The ID of the tunnel that’s already in use.

  message = 'Unable to create the network. The tunnel ID %(tunnel_id)s is in use.'

exception neutron_lib.exceptions.UnsupportedMinSubnetPoolPrefix(**kwargs)

  Bases: `BadRequest`

  message = "Prefix '%(prefix)s' not supported in IPv%(version)s pool."

exception neutron_lib.exceptions.UnsupportedPortDeviceOwner(**kwargs)

  Bases: `Conflict`

  message = 'Operation %(op)s is not supported for device_owner %(device_owner)s on port %(port_id)s.'

exception neutron_lib.exceptions.VlanIdInUse(**kwargs)

  Bases: `InUse`

  A network operational error indicating a VLAN ID is already in use.

  A specialization of the InUse exception indicating network creation failed because a specified VLAN is already in use on the physical network.

  Parameters:

    - vlan_id – The VLAN ID.

    - physical_network – The physical network.

  message = 'Unable to create the network. The VLAN %(vlan_id)s on physical network %(physical_network)s is in use.'

this page last updated: 2026-08-15 12:38:23

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.

found an error? report a bug