Skip to main content

Schema Library Documentation

Base​

namedescription
dcimBasic DCIM schema to capture devices, racks, interfaces, and related information.
ipamBasic IPAM schema to capture IP addresses, subnets, and related information.
locationBasic Location schema to capture locations, sites, and related information.
organizationBasic Organization schema to capture organizations, vendors, and related information.

Extensions​

namedescription
cableThis schema extension contains a basic Cable model allowing you to connect two endpoints.
circuitThis schema extension contains Circuits and ways to connect them with your infrastructure! The circuit could be a fiber connecting two sites, you would then have two endpoints, one on each site.
clusterThis schema extension contains the foundations to capture clusters. With this one in place you can unlock various clusters flavors (hosting cluster able to host VMs, firewall clusters built with specific appliances ...)
computeWith this schema extension in place you will be able to capture all your physical servers. It also gives you the baseline to build virtualization. You might consider HostingCluster extension to go with!
cross_connectThis extension contains schema to capture Cross Connect. You can see it as "a cable operated by a provider". You will be able to attach it to a location and then connect endpoints to it (e.g. rear interface of a patch panel, circuit endpoint ...)
dwdmThis schema extension contains models for OADM (Optical Add Drop Multiplexer) supporting various WDM (Wavelength Division Multiplexing) technologies such as DWDM (Dense Wavelength Division Multiplexing) or CWDM (Coarse Wavelength Division Multiplexing). With some vendors, the tunable optics are not configured via the channel number but via the wavelength and/or the frequency. This model provides a unique entry in Infrahub for those.
firewall_policerThis schema extension contains models for VMs. You might consider Cluster or/and Hypervisor extension to go with!
hosting_clusterA rather generic cluster built with compute units (e.g. servers) and able to host VMs.
interface_breakoutThis schema extension introduces relationships to support breakout interfaces, enabling you to document the breakout of a physical interface into smaller physical interfaces.
lagThis schema extension includes models for Link Aggregation Groups (LAGs), enabling you to link physical interfaces as building blocs of your LAG interface. It can be used in standard networking environments as well as in compute scenarios, such as capturing bond interfaces.
location_minimalThis schema extension is minimal but will provide you with basic items to store location related data.
modulesThis schema extension allows you to capture Device Modules related information like the serial number or the status. You can insert the Module into a Dcim Physical Device. NOTE: This extension doesn't contain any Nodes, you can use the extension module_linecards or modules_routing_engine to use it
patch_panelThis schema extension allows you to capture patch panel related information like rear/front interfaces and mapping between them. You can insert the patch panel into a rack and leverage the device type model. Finally you can also capture information about potential modules you would insert into your patch panel. NOTE: This extension is compatible with all sort of connectors, meaning you can plug cable, circuits, cross-connect to front & rear interfaces!
peering_ixpThis schema extension contains all you need to model anything revolving around internet peering (Exchange points ...)!
physical_diskSimple schema allowing you to capture physical disks information for the sake of inventory and lifecycle management. NOTE: This extension is compatible with all sort of device. You can apply the generic "DeviceWithPhysicalDisks" to particular model to enable disks tracking. You might also link that schema to location for instance to capture spares.
qinqThis schema extension brings extensions to VLAN model in order to support QinQ.
routingThis schema extension contains generics to create Routing Protocol "Instance". The idea is to create one Routing Protocol instance per IpamVRF + DcimDevice pair.
routing_aggregateThis schema extension contains all you need to model the Aggregate Routing Protocol.
routing_bgpThis schema extension contains all you need to model your BGP platform.
routing_bgp_communityThis schema extension adds the BGP Communities models.
routing_bgp_rrThis schema extension extend the BGP extension to add BGP Route Reflector Clustering.
routing_ospfThis schema extension contains all you need to model the OSPF Routing Protocol.
routing_pimThis schema extension contains all you need to model the PIM Protocol.
routing_policiesThis schema extension contains a generic to create Routing Policies. This Generic can be extend for each Routing Protocols you may want to use.
routing_policies_aggregateThis extension is using the Routing Policies extensions and the Routing Aggregate one together.
routing_policies_bgpThis extension is using the Routing Policies extensions and the Routing BGP one together.
routing_policies_ospfThis extension is using the Routing Policies extensions and the Routing OSPF one together.
routing_policies_pimThis schema inherits the RoutingPolicy schema and removes import_policies and export_policies attributes. However it adds a number of relationships to RoutingPIM.
sfpThis schema extension gives you all the models you need to document Small Form-factor Pluggable (SFP). You can either plug it into an interface or attach it to a location (e.g. it's a spare SFP stored in a rack). Improvements: - As of now there is no verification with type / form factor / protocol / distance ... - You could plug any SFP into any equipment interface (e.g. a virtual interface ...) - You could link a SFP to an interface AND a location ...
snmpThis schema extension contains models for SNMP Communities and SNMP Clients. As you can see this extension is not linked to Tenancy or Device, as you could decide to link the Community to different models based on your use case.
topologyThis schema extension introduces abstract network pods and services running in the pods, such as MPLS and EVPN.
usersThis schema extension contains models for account management.
vlanThis schema extension contains models to support VLANs in you network.
vrfThis schema extension contains models to support VRF in your network.
vrrpThis schema extension contains models for VRRP.

Experimental​

namedescription
azureThis schema extension introduces cloud support for Microsoft Azure.
circuit_serviceThis schema extension contains model coming on top of circuit to capture a single service shared across multiple circuits. For example you have a MPLS network supported by a provider connecting multiple locations: - One single CircuitService would be needed to store MPLS related information (e.g. service id, provider ...) - On each site we would create a circuit connecting on one side our device and the CircuitService on the other side
infinibandThis schema extension adds support for InfiniBand switches.
location_extendedThis schema extension is the most detailed when it comes to location, you'll find all the layers you can think of.
modules_linecardsThis schema extension allows you to capture Linecard related information like the version. You can insert the Linecard into a Dcim Physical Device and leverage the Linecard type model. The Linecard can accept PIC to help configure PORT information like breakout-capabilities and configurations.
modules_routing_engineThis schema extension allows you to capture Routing Engine related information like the version. You can insert the Routing Engine into a Dcim Physical Device and leverage the Routing Engine type model.
qosThis schema extension contains models for Quality of Service (QoS)
securityThis schema extension contains models for implementing detailed security.
tenancyThis schema extension introduces tenancy for some of the schema nodes (circuits...)
topologyA schema for defining and managing network topology, strategies, and services.
vlan-translationThis schema extension is based on Juniper VLAN MAP, and not yet test out for other vendors.

DCIM​

Basic DCIM schema to capture devices, racks, interfaces, and related information.

  • Version: 1.0

Generics​

GenericDevice​

  • Description: Generic Device object.
  • Label: Device
  • Icon: mdi:server
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinduniqueorder_weightoptional
nameTextTrue1000
descriptionText2000True
os_versionText2200True

Relationships​

namepeeroptionalcardinalityidentifierkindorder_weightlabel
interfacesDcimInterfaceTruemanydevice__interfaceComponent
tagsBuiltinTagTruemanyAttribute2000
primary_addressIpamIPAddressTrueoneAttribute1700Primary IP Address
platformDcimPlatformTrueoneAttribute1250

PhysicalDevice​

  • Description: Generic holding attributes and relationships relevant for physical device.
  • Include in Menu: ❌
Attributes​
namelabeldescriptionkindoptionalorder_weightdefault_valuechoices
positionPosition (U)Lowest unit.NumberTrue1500``
serialTextTrue1500``
rack_faceRack FaceOn which face of the rack the device is mounted.DropdownFalse1515front`front, rear`

Relationships​

namepeeroptionalcardinalitykindorder_weightlabel
device_typeDcimDeviceTypeTrueoneAttribute1200
locationLocationHostingFalseoneAttribute1500Location

Endpoint​

  • Description: Generic Endpoint to receive a connector.
  • Include in Menu: ❌

Relationships​

namepeeroptionalcardinalityorder_weightkind
connectorDcimConnectorTrueone1500Attribute

Connector​

  • Description: Generic Connector to link two endpoints together.
  • Include in Menu: ❌

Relationships​

namepeeroptionalcardinalityorder_weightkind
connected_endpointsDcimEndpointTruemany1500Generic

Interface​

  • Description: Generic Network Interface
  • Label: Interface
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**device__name__value, name__value
  • **Uniqueness Constraints:**device + name__value
Attributes​
namekinddescriptionorder_weightoptionallabeldefault_valuechoices
nameTextName of the interface1000``
descriptionTextA brief description of the interface1100True``
mtuNumber1300MTU1514``
statusDropdownThe status of the interface1200active`provisioning, free, active, maintenance, disabled, deleted, outage`
roleDropdownThe role of the interface in the network1250True`lag, core, cust, access, management, peering, upstream`

Relationships​

namepeeridentifieroptionalcardinalitykindorder_weight
deviceDcimGenericDevicedevice__interfaceFalseoneParent1025
tagsBuiltinTagTruemanyAttribute3000

Layer2​

  • Description: Layer 2 specific attributes for network interfaces
  • Label: Layer 2 Interface
  • Include in Menu: ❌
Attributes​
namelabelkindoptionalchoicesdescriptionorder_weight
l2_modeLayer2 ModeDropdownTrue`access, trunk, trunk_all`Layer 2 mode of the interface1500

Layer3​

  • Description: Layer 3 specific attributes for network interfaces
  • Label: Layer 3 Interface
  • Include in Menu: ❌
Attributes​
namelabelkinddescriptionorder_weightoptional
dot1q_idVLAN ID (dot1q)NumberDot1Q VLAN ID1600True
mac_addressMac AddressText1550True

Relationships​

namelabelpeercardinalitykindoptionaldescriptionorder_weight
ip_addressesIP AddressesIpamIPAddressmanyAttributeTrueList of IP addresses associated with the interface1150

HasSubInterface​

  • Description: A generic interface that can have sub-interfaces
  • Include in Menu: ❌

Relationships​

namelabelpeeridentifieroptionalcardinalitykinddescriptionorder_weight
sub_interfacesSub-interface(s)InterfaceVirtualsub__interfaceTruemanyAttributeSub-interfaces of this interface1750

Nodes​

DeviceType​

  • Description: A model of device
  • Label: Device Type
  • Icon: mdi:poll
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**manufacturer__name__value, name__value
  • **Uniqueness Constraints:**manufacturer + name__value
Attributes​
namekinduniqueorder_weightoptionallabeldefault_value
nameTextTrue1000
descriptionText1100True
part_numberText1200TruePart Number
heightNumber1400FalseHeight (U)1
full_depthBoolean1500Full DepthTrue
weightNumber1600TrueWeight (kg)

Relationships​

namepeercardinalitykindorder_weightoptional
platformDcimPlatformoneAttribute1300
manufacturerOrganizationManufactureroneAttribute1250False
tagsBuiltinTagmanyAttribute2000True

Platform​

  • Description: A Platform represent the type of software running on a device.
  • Label: Platform
  • Icon: mdi:application-cog-outline
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**manufacturer__name__value, name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekinduniqueorder_weightoptional
nameTextTrue1000
descriptionText1200True
nornir_platformText1500True
napalm_driverText1600True
netmiko_device_typeText1700True
ansible_network_osText1800True
containerlab_osText1900True

Relationships​

namepeeroptionalcardinalityorder_weightkind
devicesDcimGenericDeviceTruemany1350
manufacturerOrganizationManufacturerone1300Attribute

Device​

  • Description: A configurable network device for managing and directing data traffic, including routers, switches...
  • Label: Network Device
  • Icon: clarity:network-switch-solid
  • Include in Menu: ❌
Attributes​
namekindoptionalorder_weightchoices
statusDropdownFalse1100`active, provisioning, maintenance, drained`
roleDropdownTrue1400`core, edge, cpe, spine, leaf, tor`

Physical​

  • Description: Physical network port on a device
  • Label: Physical Interface
  • Include in Menu: ❌

Virtual​

  • Description: Virtual interface like VLAN or Loopback
  • Label: Virtual Interface
  • Include in Menu: ❌

Relationships​

namepeercardinalitykindidentifierdescription
parent_interfaceInterfaceHasSubInterfaceoneAttributesub__interfaceParent interface to which this sub-interface belongs
  • Version: 1.0

Generics​

Generic​

  • Description: An organization represent a legal entity, a company.
  • Label: Organization
  • Icon: mdi:domain
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinduniqueorder_weightoptional
nameTextTrue1000
descriptionText1200True

Relationships​

namepeercardinalitykindoptionalorder_weight
tagsBuiltinTagmanyAttributeTrue3000

Nodes​

Manufacturer​

  • Description: Device Manufacturer
  • Icon: mdi:domain
  • Menu Placement: OrganizationGeneric
  • Include in Menu: ✅

Relationships​

namepeercardinalityoptional
device_typeDcimDeviceTypemanyTrue
platformDcimPlatformmanyTrue

Provider​

  • Description: Circuit or Location Provider

  • Icon: mdi:domain

  • Menu Placement: OrganizationGeneric

  • Include in Menu: ✅

  • Version: 1.0

Generics​

Generic​

  • Description: Generic Location, could be a country, city ...
  • Label: Location
  • Icon: mingcute:location-line
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindorder_weightuniqueoptional
nameText1000
shortnameText1100True
descriptionText1200True

Relationships​

namepeerkindoptionalcardinality
tagsBuiltinTagAttributeTruemany

Hosting​

  • Description: Location directly hosting device and services.
  • Include in Menu: ❌

Relationships​

namelabelpeercardinalityoptional
prefixesPrefixesIpamPrefixmanyTrue
devicesDevicesDcimPhysicalDevicemanyTrue
  • Version: 1.0

Nodes​

IPAddress​

  • Description: IP Address
  • Label: IP Address
  • Icon: mdi:ip
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**address__value
  • **Uniqueness Constraints:**ip_namespace + address__value
Attributes​
namelabelkindoptionalregex
fqdnFQDNTextTrue(?=^.253$)(^(((?!-)[a-zA-Z0-9-]63(?<!-))|((?!-)[a-zA-Z0-9-]63(?<!-)\.)+[a-zA-Z]63)$)

Relationships​

namepeeroptionalcardinality
interfaceInterfaceLayer3Trueone

Prefix​

  • Description: IPv4 or IPv6 network (with mask)
  • Label: Prefix
  • Icon: mdi:ip-network
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**prefix__value
  • **Uniqueness Constraints:**ip_namespace + prefix__value
Attributes​
namekindchoicesoptional
statusDropdown`active, deprecated, reserved`
roleDropdown`loopback, management, public, server, supernet, technical, loopback-vtep`True

Relationships​

namepeeroptionalcardinalitykindorder_weightlabelidentifier
organizationOrganizationGenericTrueoneAttribute1200
locationLocationHostingTrueoneAttribute1300
gatewayIpamIPAddressTrueoneAttribute1500L3 Gatewayprefix__gateway

IPAM​

Basic IPAM schema to capture IP addresses, subnets, and related information.

  • Version: 1.0

Generics​

GenericDevice​

  • Description: Generic Device object.
  • Label: Device
  • Icon: mdi:server
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinduniqueorder_weightoptional
nameTextTrue1000
descriptionText2000True
os_versionText2200True

Relationships​

namepeeroptionalcardinalityidentifierkindorder_weightlabel
interfacesDcimInterfaceTruemanydevice__interfaceComponent
tagsBuiltinTagTruemanyAttribute2000
primary_addressIpamIPAddressTrueoneAttribute1700Primary IP Address
platformDcimPlatformTrueoneAttribute1250

PhysicalDevice​

  • Description: Generic holding attributes and relationships relevant for physical device.
  • Include in Menu: ❌
Attributes​
namelabeldescriptionkindoptionalorder_weightdefault_valuechoices
positionPosition (U)Lowest unit.NumberTrue1500``
serialTextTrue1500``
rack_faceRack FaceOn which face of the rack the device is mounted.DropdownFalse1515front`front, rear`

Relationships​

namepeeroptionalcardinalitykindorder_weightlabel
device_typeDcimDeviceTypeTrueoneAttribute1200
locationLocationHostingFalseoneAttribute1500Location

Endpoint​

  • Description: Generic Endpoint to receive a connector.
  • Include in Menu: ❌

Relationships​

namepeeroptionalcardinalityorder_weightkind
connectorDcimConnectorTrueone1500Attribute

Connector​

  • Description: Generic Connector to link two endpoints together.
  • Include in Menu: ❌

Relationships​

namepeeroptionalcardinalityorder_weightkind
connected_endpointsDcimEndpointTruemany1500Generic

Interface​

  • Description: Generic Network Interface
  • Label: Interface
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**device__name__value, name__value
  • **Uniqueness Constraints:**device + name__value
Attributes​
namekinddescriptionorder_weightoptionallabeldefault_valuechoices
nameTextName of the interface1000``
descriptionTextA brief description of the interface1100True``
mtuNumber1300MTU1514``
statusDropdownThe status of the interface1200active`provisioning, free, active, maintenance, disabled, deleted, outage`
roleDropdownThe role of the interface in the network1250True`lag, core, cust, access, management, peering, upstream`

Relationships​

namepeeridentifieroptionalcardinalitykindorder_weight
deviceDcimGenericDevicedevice__interfaceFalseoneParent1025
tagsBuiltinTagTruemanyAttribute3000

Layer2​

  • Description: Layer 2 specific attributes for network interfaces
  • Label: Layer 2 Interface
  • Include in Menu: ❌
Attributes​
namelabelkindoptionalchoicesdescriptionorder_weight
l2_modeLayer2 ModeDropdownTrue`access, trunk, trunk_all`Layer 2 mode of the interface1500

Layer3​

  • Description: Layer 3 specific attributes for network interfaces
  • Label: Layer 3 Interface
  • Include in Menu: ❌
Attributes​
namelabelkinddescriptionorder_weightoptional
dot1q_idVLAN ID (dot1q)NumberDot1Q VLAN ID1600True
mac_addressMac AddressText1550True

Relationships​

namelabelpeercardinalitykindoptionaldescriptionorder_weight
ip_addressesIP AddressesIpamIPAddressmanyAttributeTrueList of IP addresses associated with the interface1150

HasSubInterface​

  • Description: A generic interface that can have sub-interfaces
  • Include in Menu: ❌

Relationships​

namelabelpeeridentifieroptionalcardinalitykinddescriptionorder_weight
sub_interfacesSub-interface(s)InterfaceVirtualsub__interfaceTruemanyAttributeSub-interfaces of this interface1750

Nodes​

DeviceType​

  • Description: A model of device
  • Label: Device Type
  • Icon: mdi:poll
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**manufacturer__name__value, name__value
  • **Uniqueness Constraints:**manufacturer + name__value
Attributes​
namekinduniqueorder_weightoptionallabeldefault_value
nameTextTrue1000
descriptionText1100True
part_numberText1200TruePart Number
heightNumber1400FalseHeight (U)1
full_depthBoolean1500Full DepthTrue
weightNumber1600TrueWeight (kg)

Relationships​

namepeercardinalitykindorder_weightoptional
platformDcimPlatformoneAttribute1300
manufacturerOrganizationManufactureroneAttribute1250False
tagsBuiltinTagmanyAttribute2000True

Platform​

  • Description: A Platform represent the type of software running on a device.
  • Label: Platform
  • Icon: mdi:application-cog-outline
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**manufacturer__name__value, name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekinduniqueorder_weightoptional
nameTextTrue1000
descriptionText1200True
nornir_platformText1500True
napalm_driverText1600True
netmiko_device_typeText1700True
ansible_network_osText1800True
containerlab_osText1900True

Relationships​

namepeeroptionalcardinalityorder_weightkind
devicesDcimGenericDeviceTruemany1350
manufacturerOrganizationManufacturerone1300Attribute

Device​

  • Description: A configurable network device for managing and directing data traffic, including routers, switches...
  • Label: Network Device
  • Icon: clarity:network-switch-solid
  • Include in Menu: ❌
Attributes​
namekindoptionalorder_weightchoices
statusDropdownFalse1100`active, provisioning, maintenance, drained`
roleDropdownTrue1400`core, edge, cpe, spine, leaf, tor`

Physical​

  • Description: Physical network port on a device
  • Label: Physical Interface
  • Include in Menu: ❌

Virtual​

  • Description: Virtual interface like VLAN or Loopback
  • Label: Virtual Interface
  • Include in Menu: ❌

Relationships​

namepeercardinalitykindidentifierdescription
parent_interfaceInterfaceHasSubInterfaceoneAttributesub__interfaceParent interface to which this sub-interface belongs
  • Version: 1.0

Generics​

Generic​

  • Description: An organization represent a legal entity, a company.
  • Label: Organization
  • Icon: mdi:domain
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinduniqueorder_weightoptional
nameTextTrue1000
descriptionText1200True

Relationships​

namepeercardinalitykindoptionalorder_weight
tagsBuiltinTagmanyAttributeTrue3000

Nodes​

Manufacturer​

  • Description: Device Manufacturer
  • Icon: mdi:domain
  • Menu Placement: OrganizationGeneric
  • Include in Menu: ✅

Relationships​

namepeercardinalityoptional
device_typeDcimDeviceTypemanyTrue
platformDcimPlatformmanyTrue

Provider​

  • Description: Circuit or Location Provider

  • Icon: mdi:domain

  • Menu Placement: OrganizationGeneric

  • Include in Menu: ✅

  • Version: 1.0

Generics​

Generic​

  • Description: Generic Location, could be a country, city ...
  • Label: Location
  • Icon: mingcute:location-line
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindorder_weightuniqueoptional
nameText1000
shortnameText1100True
descriptionText1200True

Relationships​

namepeerkindoptionalcardinality
tagsBuiltinTagAttributeTruemany

Hosting​

  • Description: Location directly hosting device and services.
  • Include in Menu: ❌

Relationships​

namelabelpeercardinalityoptional
prefixesPrefixesIpamPrefixmanyTrue
devicesDevicesDcimPhysicalDevicemanyTrue
  • Version: 1.0

Nodes​

IPAddress​

  • Description: IP Address
  • Label: IP Address
  • Icon: mdi:ip
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**address__value
  • **Uniqueness Constraints:**ip_namespace + address__value
Attributes​
namelabelkindoptionalregex
fqdnFQDNTextTrue(?=^.253$)(^(((?!-)[a-zA-Z0-9-]63(?<!-))|((?!-)[a-zA-Z0-9-]63(?<!-)\.)+[a-zA-Z]63)$)

Relationships​

namepeeroptionalcardinality
interfaceInterfaceLayer3Trueone

Prefix​

  • Description: IPv4 or IPv6 network (with mask)
  • Label: Prefix
  • Icon: mdi:ip-network
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**prefix__value
  • **Uniqueness Constraints:**ip_namespace + prefix__value
Attributes​
namekindchoicesoptional
statusDropdown`active, deprecated, reserved`
roleDropdown`loopback, management, public, server, supernet, technical, loopback-vtep`True

Relationships​

namepeeroptionalcardinalitykindorder_weightlabelidentifier
organizationOrganizationGenericTrueoneAttribute1200
locationLocationHostingTrueoneAttribute1300
gatewayIpamIPAddressTrueoneAttribute1500L3 Gatewayprefix__gateway

Locations​

Basic Location schema to capture locations, sites, and related information.

  • Version: 1.0

Generics​

GenericDevice​

  • Description: Generic Device object.
  • Label: Device
  • Icon: mdi:server
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinduniqueorder_weightoptional
nameTextTrue1000
descriptionText2000True
os_versionText2200True

Relationships​

namepeeroptionalcardinalityidentifierkindorder_weightlabel
interfacesDcimInterfaceTruemanydevice__interfaceComponent
tagsBuiltinTagTruemanyAttribute2000
primary_addressIpamIPAddressTrueoneAttribute1700Primary IP Address
platformDcimPlatformTrueoneAttribute1250

PhysicalDevice​

  • Description: Generic holding attributes and relationships relevant for physical device.
  • Include in Menu: ❌
Attributes​
namelabeldescriptionkindoptionalorder_weightdefault_valuechoices
positionPosition (U)Lowest unit.NumberTrue1500``
serialTextTrue1500``
rack_faceRack FaceOn which face of the rack the device is mounted.DropdownFalse1515front`front, rear`

Relationships​

namepeeroptionalcardinalitykindorder_weightlabel
device_typeDcimDeviceTypeTrueoneAttribute1200
locationLocationHostingFalseoneAttribute1500Location

Endpoint​

  • Description: Generic Endpoint to receive a connector.
  • Include in Menu: ❌

Relationships​

namepeeroptionalcardinalityorder_weightkind
connectorDcimConnectorTrueone1500Attribute

Connector​

  • Description: Generic Connector to link two endpoints together.
  • Include in Menu: ❌

Relationships​

namepeeroptionalcardinalityorder_weightkind
connected_endpointsDcimEndpointTruemany1500Generic

Interface​

  • Description: Generic Network Interface
  • Label: Interface
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**device__name__value, name__value
  • **Uniqueness Constraints:**device + name__value
Attributes​
namekinddescriptionorder_weightoptionallabeldefault_valuechoices
nameTextName of the interface1000``
descriptionTextA brief description of the interface1100True``
mtuNumber1300MTU1514``
statusDropdownThe status of the interface1200active`provisioning, free, active, maintenance, disabled, deleted, outage`
roleDropdownThe role of the interface in the network1250True`lag, core, cust, access, management, peering, upstream`

Relationships​

namepeeridentifieroptionalcardinalitykindorder_weight
deviceDcimGenericDevicedevice__interfaceFalseoneParent1025
tagsBuiltinTagTruemanyAttribute3000

Layer2​

  • Description: Layer 2 specific attributes for network interfaces
  • Label: Layer 2 Interface
  • Include in Menu: ❌
Attributes​
namelabelkindoptionalchoicesdescriptionorder_weight
l2_modeLayer2 ModeDropdownTrue`access, trunk, trunk_all`Layer 2 mode of the interface1500

Layer3​

  • Description: Layer 3 specific attributes for network interfaces
  • Label: Layer 3 Interface
  • Include in Menu: ❌
Attributes​
namelabelkinddescriptionorder_weightoptional
dot1q_idVLAN ID (dot1q)NumberDot1Q VLAN ID1600True
mac_addressMac AddressText1550True

Relationships​

namelabelpeercardinalitykindoptionaldescriptionorder_weight
ip_addressesIP AddressesIpamIPAddressmanyAttributeTrueList of IP addresses associated with the interface1150

HasSubInterface​

  • Description: A generic interface that can have sub-interfaces
  • Include in Menu: ❌

Relationships​

namelabelpeeridentifieroptionalcardinalitykinddescriptionorder_weight
sub_interfacesSub-interface(s)InterfaceVirtualsub__interfaceTruemanyAttributeSub-interfaces of this interface1750

Nodes​

DeviceType​

  • Description: A model of device
  • Label: Device Type
  • Icon: mdi:poll
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**manufacturer__name__value, name__value
  • **Uniqueness Constraints:**manufacturer + name__value
Attributes​
namekinduniqueorder_weightoptionallabeldefault_value
nameTextTrue1000
descriptionText1100True
part_numberText1200TruePart Number
heightNumber1400FalseHeight (U)1
full_depthBoolean1500Full DepthTrue
weightNumber1600TrueWeight (kg)

Relationships​

namepeercardinalitykindorder_weightoptional
platformDcimPlatformoneAttribute1300
manufacturerOrganizationManufactureroneAttribute1250False
tagsBuiltinTagmanyAttribute2000True

Platform​

  • Description: A Platform represent the type of software running on a device.
  • Label: Platform
  • Icon: mdi:application-cog-outline
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**manufacturer__name__value, name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekinduniqueorder_weightoptional
nameTextTrue1000
descriptionText1200True
nornir_platformText1500True
napalm_driverText1600True
netmiko_device_typeText1700True
ansible_network_osText1800True
containerlab_osText1900True

Relationships​

namepeeroptionalcardinalityorder_weightkind
devicesDcimGenericDeviceTruemany1350
manufacturerOrganizationManufacturerone1300Attribute

Device​

  • Description: A configurable network device for managing and directing data traffic, including routers, switches...
  • Label: Network Device
  • Icon: clarity:network-switch-solid
  • Include in Menu: ❌
Attributes​
namekindoptionalorder_weightchoices
statusDropdownFalse1100`active, provisioning, maintenance, drained`
roleDropdownTrue1400`core, edge, cpe, spine, leaf, tor`

Physical​

  • Description: Physical network port on a device
  • Label: Physical Interface
  • Include in Menu: ❌

Virtual​

  • Description: Virtual interface like VLAN or Loopback
  • Label: Virtual Interface
  • Include in Menu: ❌

Relationships​

namepeercardinalitykindidentifierdescription
parent_interfaceInterfaceHasSubInterfaceoneAttributesub__interfaceParent interface to which this sub-interface belongs
  • Version: 1.0

Generics​

Generic​

  • Description: An organization represent a legal entity, a company.
  • Label: Organization
  • Icon: mdi:domain
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinduniqueorder_weightoptional
nameTextTrue1000
descriptionText1200True

Relationships​

namepeercardinalitykindoptionalorder_weight
tagsBuiltinTagmanyAttributeTrue3000

Nodes​

Manufacturer​

  • Description: Device Manufacturer
  • Icon: mdi:domain
  • Menu Placement: OrganizationGeneric
  • Include in Menu: ✅

Relationships​

namepeercardinalityoptional
device_typeDcimDeviceTypemanyTrue
platformDcimPlatformmanyTrue

Provider​

  • Description: Circuit or Location Provider

  • Icon: mdi:domain

  • Menu Placement: OrganizationGeneric

  • Include in Menu: ✅

  • Version: 1.0

Generics​

Generic​

  • Description: Generic Location, could be a country, city ...
  • Label: Location
  • Icon: mingcute:location-line
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindorder_weightuniqueoptional
nameText1000
shortnameText1100True
descriptionText1200True

Relationships​

namepeerkindoptionalcardinality
tagsBuiltinTagAttributeTruemany

Hosting​

  • Description: Location directly hosting device and services.
  • Include in Menu: ❌

Relationships​

namelabelpeercardinalityoptional
prefixesPrefixesIpamPrefixmanyTrue
devicesDevicesDcimPhysicalDevicemanyTrue
  • Version: 1.0

Nodes​

IPAddress​

  • Description: IP Address
  • Label: IP Address
  • Icon: mdi:ip
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**address__value
  • **Uniqueness Constraints:**ip_namespace + address__value
Attributes​
namelabelkindoptionalregex
fqdnFQDNTextTrue(?=^.253$)(^(((?!-)[a-zA-Z0-9-]63(?<!-))|((?!-)[a-zA-Z0-9-]63(?<!-)\.)+[a-zA-Z]63)$)

Relationships​

namepeeroptionalcardinality
interfaceInterfaceLayer3Trueone

Prefix​

  • Description: IPv4 or IPv6 network (with mask)
  • Label: Prefix
  • Icon: mdi:ip-network
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**prefix__value
  • **Uniqueness Constraints:**ip_namespace + prefix__value
Attributes​
namekindchoicesoptional
statusDropdown`active, deprecated, reserved`
roleDropdown`loopback, management, public, server, supernet, technical, loopback-vtep`True

Relationships​

namepeeroptionalcardinalitykindorder_weightlabelidentifier
organizationOrganizationGenericTrueoneAttribute1200
locationLocationHostingTrueoneAttribute1300
gatewayIpamIPAddressTrueoneAttribute1500L3 Gatewayprefix__gateway

Organization​

Basic Organization schema to capture organizations, vendors, and related information.

  • Version: 1.0

Generics​

GenericDevice​

  • Description: Generic Device object.
  • Label: Device
  • Icon: mdi:server
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinduniqueorder_weightoptional
nameTextTrue1000
descriptionText2000True
os_versionText2200True

Relationships​

namepeeroptionalcardinalityidentifierkindorder_weightlabel
interfacesDcimInterfaceTruemanydevice__interfaceComponent
tagsBuiltinTagTruemanyAttribute2000
primary_addressIpamIPAddressTrueoneAttribute1700Primary IP Address
platformDcimPlatformTrueoneAttribute1250

PhysicalDevice​

  • Description: Generic holding attributes and relationships relevant for physical device.
  • Include in Menu: ❌
Attributes​
namelabeldescriptionkindoptionalorder_weightdefault_valuechoices
positionPosition (U)Lowest unit.NumberTrue1500``
serialTextTrue1500``
rack_faceRack FaceOn which face of the rack the device is mounted.DropdownFalse1515front`front, rear`

Relationships​

namepeeroptionalcardinalitykindorder_weightlabel
device_typeDcimDeviceTypeTrueoneAttribute1200
locationLocationHostingFalseoneAttribute1500Location

Endpoint​

  • Description: Generic Endpoint to receive a connector.
  • Include in Menu: ❌

Relationships​

namepeeroptionalcardinalityorder_weightkind
connectorDcimConnectorTrueone1500Attribute

Connector​

  • Description: Generic Connector to link two endpoints together.
  • Include in Menu: ❌

Relationships​

namepeeroptionalcardinalityorder_weightkind
connected_endpointsDcimEndpointTruemany1500Generic

Interface​

  • Description: Generic Network Interface
  • Label: Interface
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**device__name__value, name__value
  • **Uniqueness Constraints:**device + name__value
Attributes​
namekinddescriptionorder_weightoptionallabeldefault_valuechoices
nameTextName of the interface1000``
descriptionTextA brief description of the interface1100True``
mtuNumber1300MTU1514``
statusDropdownThe status of the interface1200active`provisioning, free, active, maintenance, disabled, deleted, outage`
roleDropdownThe role of the interface in the network1250True`lag, core, cust, access, management, peering, upstream`

Relationships​

namepeeridentifieroptionalcardinalitykindorder_weight
deviceDcimGenericDevicedevice__interfaceFalseoneParent1025
tagsBuiltinTagTruemanyAttribute3000

Layer2​

  • Description: Layer 2 specific attributes for network interfaces
  • Label: Layer 2 Interface
  • Include in Menu: ❌
Attributes​
namelabelkindoptionalchoicesdescriptionorder_weight
l2_modeLayer2 ModeDropdownTrue`access, trunk, trunk_all`Layer 2 mode of the interface1500

Layer3​

  • Description: Layer 3 specific attributes for network interfaces
  • Label: Layer 3 Interface
  • Include in Menu: ❌
Attributes​
namelabelkinddescriptionorder_weightoptional
dot1q_idVLAN ID (dot1q)NumberDot1Q VLAN ID1600True
mac_addressMac AddressText1550True

Relationships​

namelabelpeercardinalitykindoptionaldescriptionorder_weight
ip_addressesIP AddressesIpamIPAddressmanyAttributeTrueList of IP addresses associated with the interface1150

HasSubInterface​

  • Description: A generic interface that can have sub-interfaces
  • Include in Menu: ❌

Relationships​

namelabelpeeridentifieroptionalcardinalitykinddescriptionorder_weight
sub_interfacesSub-interface(s)InterfaceVirtualsub__interfaceTruemanyAttributeSub-interfaces of this interface1750

Nodes​

DeviceType​

  • Description: A model of device
  • Label: Device Type
  • Icon: mdi:poll
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**manufacturer__name__value, name__value
  • **Uniqueness Constraints:**manufacturer + name__value
Attributes​
namekinduniqueorder_weightoptionallabeldefault_value
nameTextTrue1000
descriptionText1100True
part_numberText1200TruePart Number
heightNumber1400FalseHeight (U)1
full_depthBoolean1500Full DepthTrue
weightNumber1600TrueWeight (kg)

Relationships​

namepeercardinalitykindorder_weightoptional
platformDcimPlatformoneAttribute1300
manufacturerOrganizationManufactureroneAttribute1250False
tagsBuiltinTagmanyAttribute2000True

Platform​

  • Description: A Platform represent the type of software running on a device.
  • Label: Platform
  • Icon: mdi:application-cog-outline
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**manufacturer__name__value, name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekinduniqueorder_weightoptional
nameTextTrue1000
descriptionText1200True
nornir_platformText1500True
napalm_driverText1600True
netmiko_device_typeText1700True
ansible_network_osText1800True
containerlab_osText1900True

Relationships​

namepeeroptionalcardinalityorder_weightkind
devicesDcimGenericDeviceTruemany1350
manufacturerOrganizationManufacturerone1300Attribute

Device​

  • Description: A configurable network device for managing and directing data traffic, including routers, switches...
  • Label: Network Device
  • Icon: clarity:network-switch-solid
  • Include in Menu: ❌
Attributes​
namekindoptionalorder_weightchoices
statusDropdownFalse1100`active, provisioning, maintenance, drained`
roleDropdownTrue1400`core, edge, cpe, spine, leaf, tor`

Physical​

  • Description: Physical network port on a device
  • Label: Physical Interface
  • Include in Menu: ❌

Virtual​

  • Description: Virtual interface like VLAN or Loopback
  • Label: Virtual Interface
  • Include in Menu: ❌

Relationships​

namepeercardinalitykindidentifierdescription
parent_interfaceInterfaceHasSubInterfaceoneAttributesub__interfaceParent interface to which this sub-interface belongs
  • Version: 1.0

Generics​

Generic​

  • Description: An organization represent a legal entity, a company.
  • Label: Organization
  • Icon: mdi:domain
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinduniqueorder_weightoptional
nameTextTrue1000
descriptionText1200True

Relationships​

namepeercardinalitykindoptionalorder_weight
tagsBuiltinTagmanyAttributeTrue3000

Nodes​

Manufacturer​

  • Description: Device Manufacturer
  • Icon: mdi:domain
  • Menu Placement: OrganizationGeneric
  • Include in Menu: ✅

Relationships​

namepeercardinalityoptional
device_typeDcimDeviceTypemanyTrue
platformDcimPlatformmanyTrue

Provider​

  • Description: Circuit or Location Provider

  • Icon: mdi:domain

  • Menu Placement: OrganizationGeneric

  • Include in Menu: ✅

  • Version: 1.0

Generics​

Generic​

  • Description: Generic Location, could be a country, city ...
  • Label: Location
  • Icon: mingcute:location-line
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindorder_weightuniqueoptional
nameText1000
shortnameText1100True
descriptionText1200True

Relationships​

namepeerkindoptionalcardinality
tagsBuiltinTagAttributeTruemany

Hosting​

  • Description: Location directly hosting device and services.
  • Include in Menu: ❌

Relationships​

namelabelpeercardinalityoptional
prefixesPrefixesIpamPrefixmanyTrue
devicesDevicesDcimPhysicalDevicemanyTrue
  • Version: 1.0

Nodes​

IPAddress​

  • Description: IP Address
  • Label: IP Address
  • Icon: mdi:ip
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**address__value
  • **Uniqueness Constraints:**ip_namespace + address__value
Attributes​
namelabelkindoptionalregex
fqdnFQDNTextTrue(?=^.253$)(^(((?!-)[a-zA-Z0-9-]63(?<!-))|((?!-)[a-zA-Z0-9-]63(?<!-)\.)+[a-zA-Z]63)$)

Relationships​

namepeeroptionalcardinality
interfaceInterfaceLayer3Trueone

Prefix​

  • Description: IPv4 or IPv6 network (with mask)
  • Label: Prefix
  • Icon: mdi:ip-network
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**prefix__value
  • **Uniqueness Constraints:**ip_namespace + prefix__value
Attributes​
namekindchoicesoptional
statusDropdown`active, deprecated, reserved`
roleDropdown`loopback, management, public, server, supernet, technical, loopback-vtep`True

Relationships​

namepeeroptionalcardinalitykindorder_weightlabelidentifier
organizationOrganizationGenericTrueoneAttribute1200
locationLocationHostingTrueoneAttribute1300
gatewayIpamIPAddressTrueoneAttribute1500L3 Gatewayprefix__gateway

Routing Policies (PIM)​

This schema inherits the RoutingPolicy schema and removes import_policies and export_policies attributes. However it adds a number of relationships to RoutingPIM.

  • Dependencies: base, extensions/routing, extensions/routing_policies, extensions/routing_pim
  • Version: 1.0

Nodes​

PolicyPIM​

  • Description: A routing policiers for PIM
  • Label: PIM Routing Policies
  • Icon: carbon:deployment-policy
  • Include in Menu: ❌

Extensions​

RoutingPIM​

Attributes​

namekindstate
import_policiesTextabsent
export_policiesTextabsent

Relationships​

namelabelpeeridentifierdescriptionkindcardinality
import_routing_policiesImport Routing PoliciesRoutingPolicyPIMpim__import_policiesThe routing-policies used by this instance for import.Genericmany
export_routing_policiesExport Routing PoliciesRoutingPolicyPIMpim__export_policiesThe routing-policies used by this instance for export.Genericmany

Topology​

This schema extension introduces abstract network pods and services running in the pods, such as MPLS and EVPN.

  • Dependencies: base
  • Version: 1.0

Generics​

Generic​

  • Description: Generic model for topology.
  • Label: Topology
  • Icon: carbon:network-3
  • Include in Menu: ❌
Attributes​
namekindorder_weightoptional
descriptionText1300True

Relationships​

namepeeroptionalcardinalitykind
locationLocationGenericTrueoneAttribute

Cluster​

This schema extension contains the foundations to capture clusters. With this one in place you can unlock various clusters flavors (hosting cluster able to host VMs, firewall clusters built with specific appliances ...)

  • Dependencies: base, extensions/compute
  • Version: 1.0

Generics​

Generic​

  • Description: A cluster of machines hosting services or other machines.
  • Label: Clusters
  • Icon: mdi:dots-hexagon
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinddescriptionuniqueorder_weightoptional
nameTextName of the cluster.True1000
descriptionTextTrue

Relationships​

namelabelpeeroptionalcardinalitykindorder_weight
locationLocationLocationGenericFalsemanyAttribute1400
tagsBuiltinTagTruemanyAttribute2000

GenericComputeUnitNodes​

  • Description: A generic to apply on clusters that can be built out of generic compute units.
  • Include in Menu: ❌

Relationships​

namelabelidentifiercardinalitypeerkind
nodesNodesworker_in_clustermanyComputeGenericUnitComponent

Extensions​

ComputeGenericUnit​

Relationships​

nameidentifierlabelpeercardinalitydescriptionoptional
worker_in_clusterworker_in_clusterWorker in clusterClusterGenericComputeUnitNodesoneThis device is a worker node of the specified cluster.True

LocationGeneric​

Relationships​

namelabelpeercardinalitykinddescriptionoptional
clustersClustersClusterGenericmanyComponentAll clusters available on that location.True

SNMP​

This schema extension contains models for SNMP Communities and SNMP Clients. As you can see this extension is not linked to Tenancy or Device, as you could decide to link the Community to different models based on your use case.

  • Dependencies: base
  • Version: 1.0

Generics​

Community​

  • Description: Generic model for SNMP community configurations.
  • Label: SNMP Community
  • Icon: iconoir:community
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindorder_weightoptional
nameText1000
descriptionText1100True

Relationships​

namepeercardinalitykind
clientsSnmpClientmanyComponent

Nodes​

CommunityV2​

  • Description: SNMP v1/v2c community configuration.
  • Label: SNMP v1/v2c
  • Icon: iconoir:community
  • Menu Placement: SnmpCommunity
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindorder_weightenum
community_stringPassword1300
accessText1200['Read-Only', 'Read-Write']

CommunityV3​

  • Description: SNMP version 3 configuration with enhanced security.
  • Label: SNMP v3
  • Icon: iconoir:community
  • Menu Placement: SnmpCommunity
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindorder_weightlabelenumoptionalchoices
usernameText1300``
auth_protocolText1400Authentication Protocol['None', 'MD5', 'SHA']``
auth_passwordPassword1500Authentication PasswordTrue``
privacy_protocolText1600Privacy Protocol['None', 'DES', 'AES']``
privacy_passwordPassword1700Privacy PasswordTrue``
security_levelDropdown1200Security Level`noAuthNoPriv, authNoPriv, authPriv`

Client​

  • Description: Represents an SNMP client that interacts with SNMP Community.
  • Label: SNMP Client
  • Icon: ph:user-list-light
  • Menu Placement: SnmpCommunity
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindorder_weightlabeloptional
nameText1000
client_descriptionText1100DescriptionTrue

Relationships​

namepeercardinalityorder_weight
communitySnmpCommunitymany1200

Interface Breakout​

This schema extension introduces relationships to support breakout interfaces, enabling you to document the breakout of a physical interface into smaller physical interfaces.

  • Dependencies: base
  • Version: 1.0

Extensions​

InterfacePhysical​

Attributes​

namekindoptionaldefault_valuedescription
breakout_capabilityBooleanFalseFalseIndicates if the port supports breakout capability

Relationships​

namepeerlabeloptionalcardinalitykindidentifierdirectiondescriptionorder_weight
breakout_child_interfacesInterfacePhysicalBreakout child interface(s)TruemanyAttributephysical__breakoutoutboundInterfaces resulting from the breakout1650
breakout_parent_interfaceInterfacePhysicalBreakout parent interfaceTrueoneAttributephysical__breakoutinboundInterface from which breakout is created1700

Routing Policies BGP​

This extension is using the Routing Policies extensions and the Routing BGP one together.

  • Dependencies: base, extensions/routing, extensions/routing_policies, extensions/routing_bgp
  • Version: 1.0

Nodes​

PolicyBGP​

  • Description: A routing policiers for BGP
  • Label: BGP Routing Policies
  • Icon: carbon:deployment-policy
  • Include in Menu: ❌

Extensions​

RoutingBGPPeerGroup​

Attributes​

namekindstate
import_policiesTextabsent
export_policiesTextabsent

Relationships​

namelabelpeeridentifierdescriptionkindcardinality
import_routing_policiesImport Routing PoliciesRoutingPolicyBGPbgp__import_policiesThe routing-policies used by this instance for import.Genericmany
export_routing_policiesExport Routing PoliciesRoutingPolicyBGPbgp__export_policiesThe routing-policies used by this instance for export.Genericmany

RoutingBGPSession​

Attributes​

namekindstate
import_policiesTextabsent
export_policiesTextabsent

Relationships​

namelabelpeeridentifierdescriptionkindcardinality
import_routing_policiesImport Routing PoliciesRoutingPolicybgp__import_policiesThe routing-policies used by this instance for import.Genericmany
export_routing_policiesExport Routing PoliciesRoutingPolicybgp__export_policiesThe routing-policies used by this instance for export.Genericmany

Routing BGP RR​

This schema extension extend the BGP extension to add BGP Route Reflector Clustering.

  • Dependencies: base, extensions/routing, extensions/routing_bgp
  • Version: 1.0

Nodes​

BGPRRCluster​

  • Description: A Route Reflector (RR) Cluster used for grouping internal peers
  • Label: Route Reflector Cluster
  • Icon: mdi:router-network
  • Include in Menu: ❌

Ordering and Constraints​

  • Order By:
  • **Uniqueness Constraints:**name__value
Attributes​
namekinddescriptionorder_weightoptional
nameTextName of the Route Reflector Cluster1000
descriptionTextOptional description of the Route Reflector Cluster1100True

Relationships​

namelabelpeerdescriptioncardinalitykindoptionalorder_weight
cluster_idCluster IDIpamIPAddressCluster ID represented as a reference to an IP AddressoneAttributeFalse1200
peer_groupsBGP Peer GroupsRoutingBGPPeerGroupmanyGenericTrue

Extensions​

RoutingBGPPeerGroup​

Relationships​

namelabelpeercardinalitykindorder_weight
rr_clusterRR ClusterRoutingBGPRRClusteroneAttribute1600

SFP​

This schema extension gives you all the models you need to document Small Form-factor Pluggable (SFP).

You can either plug it into an interface or attach it to a location (e.g. it's a spare SFP stored in a rack).

Improvements:

  • As of now there is no verification with type / form factor / protocol / distance ...

  • You could plug any SFP into any equipment interface (e.g. a virtual interface ...)

  • You could link a SFP to an interface AND a location ...

  • Dependencies: base

  • Version: 1.0

Generics​

GenericSFP​

  • Description: Generic base for all Small Form-factor Pluggable (SFP) transceivers.
  • Label: SFP
  • Icon: mdi:gpu
  • Include in Menu: ✅
Attributes​
namekindoptionalorder_weightdescriptionchoicesdefault_value
serialTextTrue1400``
sfp_typeDropdownFalse1100Type of SFP, such as LR, SR, T.`lr, sr, lrm, t, sr4, lr4, zr, er, dac, aoc`
statusDropdownFalse1300`plugged, spare, decommissioned`plugged
form_factorDropdownFalse1000The physical form factor of the SFP module.`sfp, sfp_plus, qsfp, qsfp_plus, qsfp28, qsfp_dd, cfp, cfp2, cfp4, xfp, sfp56, qsfp56, osfp`

Relationships​

namepeerkindoptionalcardinalityorder_weight
interfaceDcimInterfaceAttributeTrueone1200
spare_locationLocationHostingAttributeTrueone1500
manufacturerOrganizationManufacturerAttributeTrueone1350

Nodes​

StandardSFP​

  • Description: Standard SFP module for various types (e.g., LR, SR, T).
  • Label: Standard SFP
  • Icon: mdi:gpu
  • Menu Placement: DcimGenericSFP
  • Include in Menu: ❌

BidiSFP​

  • Description: Bidirectional SFP supporting two wavelengths for single-fiber operation.
  • Label: Bidirectional SFP
  • Icon: lineicons:arrow-both-direction-vertical-1
  • Menu Placement: DcimGenericSFP
  • Include in Menu: ❌
Attributes​
namelabelkindoptionaldescriptionorder_weight
wavelength_txTransmit Wavelength (nm)NumberFalseTransmit wavelength in nm.1175
wavelength_rxReceive Wavelength (nm)NumberFalseReceive wavelength in nm.1150

Extensions​

DcimInterface​

Relationships​

namepeercardinalityoptional
plugged_sfpDcimGenericSFPoneTrue

LocationHosting​

Relationships​

namepeercardinalityoptional
spare_sfpsDcimGenericSFPmanyTrue

OrganizationManufacturer​

Relationships​

namelabelpeercardinalityoptional
sfpsSFPsDcimGenericSFPmanyTrue

Circuit​

This schema extension contains Circuits and ways to connect them with your infrastructure! The circuit could be a fiber connecting two sites, you would then have two endpoints, one on each site.

  • Dependencies: base, extensions/location_minimal
  • Version: 1.0

Nodes​

Circuit​

  • Description: A Circuit represent service operated by a provider.
  • Label: Circuit
  • Icon: mdi:cable-data
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**circuit_id__value
  • Uniqueness Constraints:
Attributes​
namekinduniqueoptionaldescriptionchoices
circuit_idTextTrue``
descriptionTextTrue``
circuit_typeDropdownSpecifies the type of circuit.`upstream, peering, dark_fiber, mpls`
statusDropdown`active, provisioning, maintenance, drained`

Relationships​

namepeeroptionalcardinalitykindlabelorder_weight
providerOrganizationProviderFalseoneAttribute
locationLocationHostingTrueoneAttributeLocation1500
enpointsDcimCircuitEndpointTruemanyComponent

CircuitEndpoint​

  • Description: A circuit endpoint, could be a position in a MMR...
  • Label: Circuit Endpoint
  • Icon: mdi:ethernet
  • Menu Placement: DcimCircuit
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**circuit + name__value
Attributes​
namekinddescriptionorder_weightoptionalchoices
nameTextName of the circuit endoint, could be a MMR position for instance.1000``
statusDropdownTrue`active, provisioning, maintenance, drained`
descriptionTextTrue``

Relationships​

namepeerorder_weightoptionalcardinalitykindlabel
circuitDcimCircuit900FalseoneParent
locationLocationHosting1500FalseoneAttributeLocation

Extensions​

OrganizationProvider​

Relationships​

namepeercardinalityoptional
circuitsDcimCircuitmanyTrue

LocationHosting​

Relationships​

namepeercardinalityoptional
circuitsDcimCircuitmanyTrue

Routing BGP Community​

This schema extension adds the BGP Communities models.

  • Dependencies: base, extensions/routing
  • Version: 1.0

Nodes​

BGPCommunity​

  • Description: Defines a BGP community.
  • Label: BGP Community
  • Icon: iconoir:community
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value, community__value
Attributes​
namekinddescriptionorder_weightoptional
nameTextThe name of the BGP community.1000
descriptionTextAn optional description of the BGP community.1100True
communityTextThe value of the BGP community (RFC1997, RFC4360, RFC8092).1200

Relationships​

namelabelpeerdescriptionkindcardinalityoptionalorder_weight
routing_policyRouting PoliciesRoutingPolicyThe BGP Policies using this BGP Community.Genericmany
tagsBuiltinTagAttributemanyTrue3000

Cross Connect​

This extension contains schema to capture Cross Connect. You can see it as "a cable operated by a provider". You will be able to attach it to a location and then connect endpoints to it (e.g. rear interface of a patch panel, circuit endpoint ...)

  • Dependencies: base
  • Version: 1.0

Nodes​

CrossConnect​

  • Description: Cross-connect between different endpoints within a datacenter.
  • Label: Cross-Connect
  • Icon: streamline:arrow-crossover-right-solid
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**provider__name__value
  • **Uniqueness Constraints:**provider + identifier__value
Attributes​
namekindorder_weightoptionalchoices
identifierText900``
descriptionText1300True``
statusDropdown1200True`connected, planned, reserved`

Relationships​

namelabelpeeroptionalcardinalitykindorder_weight
locationLocationLocationHostingFalseoneAttribute1100
providerOrganizationProviderFalseoneAttribute1000

Routing Policies Aggregate​

This extension is using the Routing Policies extensions and the Routing Aggregate one together.

  • Dependencies: base, extensions/routing, extensions/routing_policies, extensions/routing_aggregate
  • Version: 1.0

Nodes​

PolicyAggregate​

  • Description: A routing policiers for Aggregate
  • Label: Aggregate Routing Policies
  • Icon: carbon:deployment-policy
  • Include in Menu: ❌

Location Minimal​

This schema extension is minimal but will provide you with basic items to store location related data.

  • Dependencies: base
  • Version: 1.0

Nodes​

Country​

  • Label: Country
  • Icon: gis:search-country
  • Menu Placement: LocationGeneric
  • Include in Menu: ❌
Attributes​
namekindoptionalorder_weight
timezoneTextTrue1300

Metro​

  • Label: Metro
  • Icon: healthicons:city
  • Menu Placement: LocationGeneric
  • Include in Menu: ❌

Site​

  • Label: Site
  • Icon: ri:building-line
  • Menu Placement: LocationGeneric
  • Include in Menu: ❌
Attributes​
namekinduniqueoptionalorder_weight
facility_idTextFalseTrue1100
physical_addressTextFalseTrue1500

Relationships​

namepeeroptionalcardinality
ownerOrganizationGenericTrueone

Rack​

  • Label: Rack
  • Icon: clarity:rack-server-line
  • Menu Placement: LocationGeneric
  • Include in Menu: ✅
Attributes​
namekinduniqueoptionalorder_weightlabeldefault_value
facility_idTextFalseTrue1100
heightNumberFalse1300Height (U)42

Relationships​

namepeeroptionalcardinality
ownerOrganizationGenericTrueone

Extensions​

OrganizationProvider​

Relationships​

namepeercardinalityoptional
sitesLocationSitemanyTrue

VRRP​

This schema extension contains models for VRRP.

  • Dependencies: base
  • Version: 1.0

Nodes​

VRRPGroup​

  • Description: VRRP Group configuration
  • Label: VRRP Group
  • Icon: fluent:virtual-network-20-filled
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekindlabeluniquedescriptionorder_weightoptional
nameTextNameTrueUnique name of the entry1000
groupTextGroupVRRP Group1100
passwordHashedPasswordPasswordVRRP Password/Key1400True

Relationships​

nameon_deletedescriptionlabelpeeroptionalcardinalitykindorder_weight
ip_addresscascadeVRRP IP (v4 or v6)IP AddressIpamIPAddressTruemanyAttribute1200
vrrp_interfacescascadeVRRP InterfacesNetworkVRRPInterfacemanyComponent1300

VRRPInterface​

  • Description: VRRP Interface configuration
  • Label: VRRP Interface
  • Icon: carbon:interface-usage
  • Menu Placement: NetworkVRRPGroup
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**priority__value
  • **Uniqueness Constraints:**vrrp_group + interface
Attributes​
namekindlabeldescriptionregexdefault_valueorder_weight
priorityNumberVRRP PriorityVRRP Priority (Should be between 0 to 255)^(25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])$1001100

Relationships​

namedescriptionlabelpeeroptionalcardinalitykindorder_weight
vrrp_groupVRRP GroupVRRP GroupNetworkVRRPGroupFalseoneAttribute1200
interfaceInterface L3InterfaceInterfaceLayer3FalseoneAttribute1300

Extensions​

InterfaceLayer3​

Relationships​

namekindpeerdescriptioncardinalitylabelorder_weight
vrrpComponentNetworkVRRPInterfaceVRRP Interface ConfigurationoneVRRP1500

IpamIPAddress​

Relationships​

namekindpeerdescriptioncardinalitylabelorder_weight
vrrpComponentNetworkVRRPGroupPart of VRRP GrouponeVRRP Group1600

Peering IXP​

This schema extension contains all you need to model anything revolving around internet peering (Exchange points ...)!

  • Dependencies: base, extensions/routing, extensions/routing_bgp, extensions/routing_bgp_community
  • Version: 1.0

Nodes​

IXP​

  • Description: An Internet Exchange Point (IXP) for peering
  • Label: Internet Exchange
  • Icon: mdi:network
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekinduniquedescriptionorder_weightoptionalchoicesdefault_value
nameTextTrueName of the Internet Exchange1000``
descriptionTextAn optional description of the Internet Exchange1100True``
statusDropdown1200`enabled, disabled`enabled

Relationships​

namepeeroptionalcardinalitykinddescriptionorder_weightlabelidentifier
connectionsPeeringIXPConnectionTruemanyComponentIXP connections associated with this Internet Exchange
local_asRoutingAutonomousSystemTrueoneAttribute1300
import_policiesRoutingPolicyBGPTruemanyGenericImport routing policies applied to the sessionImport Routing Policiesixp__import_bgppolicies
export_policiesRoutingPolicyBGPTruemanyGenericExport routing policies applied to the sessionExport Routing Policiesixp__export_bgppolicies
bgp_communitiesRoutingBGPCommunityTruemanyGenericBGP communities associated with the sessionBGP Communities
tagsBuiltinTagTruemanyAttribute3000

IXPConnection​

  • Description: A connection to an Internet Exchange Point (IXP)
  • Label: IXP Connection
  • Icon: mdi:lan-connect
  • Menu Placement: PeeringIXP
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekinduniquedescriptionorder_weightoptionallabelchoicesdefault_value
nameTextTrueName of the IXP Connection1000``
descriptionTextDescription of the IXP Connection1100True``
peeringdb_netixlanNumberPeeringDB ID for the IXP connection1150TruePeeringDB Netixlan``
statusDropdown1200True`enabled, pre-maintenance, maintenance, post-maintenance, disabled`enabled
vlanNumberVLAN ID for the connection1300True``
mac_addressMacAddressMAC address associated with the connection1350TrueMAC Address``

Relationships​

namelabeldescriptionpeeridentifiercardinalitykindorder_weightoptional
ipv6_addressIPv6 AddressIPv6 address assigned to the connectionIpamIPAddressixpconn__ipv6_addressoneAttribute1400
ipv4_addressIPv4 AddressIPv4 address assigned to the connectionIpamIPAddressixpconn__ipv4_addressoneAttribute1375
internet_exchange_pointIXPThe Internet Exchange Point this connection is part ofPeeringIXPoneParentFalse
routerThe router this IXP connection is connected toDcimDeviceoneAttribute1400
tagsBuiltinTagmanyAttribute3000

VLAN​

This schema extension contains models to support VLANs in you network.

  • Dependencies: base
  • Version: 1.0

Nodes​

VLAN​

  • Description: A VLAN is isolated layer two domain
  • Label: VLAN
  • Icon: mdi:lan-pending
  • Menu Placement: IpamL2Domain
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**l2domain + vlan_id__value
Attributes​
namekindoptionalchoices
nameText``
descriptionTextTrue``
vlan_idNumber``
statusDropdown`active, provisioning, maintenance, drained`
roleDropdownTrue`server, management, user`

Relationships​

namepeeroptionalcardinalitykindorder_weight
locationLocationHostingTruemany
prefixesIpamPrefixTruemany
l2domainIpamL2DomainFalseoneAttribute1200

L2Domain​

  • Description: Represents layer 2 domain.
  • Label: Layer 2 Domain
  • Icon: mdi:domain-switch
  • Include in Menu: ❌
Attributes​
namekindorder_weight
nameText1000

Relationships​

namepeeroptionalcardinalitykind
vlansIpamVLANTruemanyComponent

Extensions​

IpamPrefix​

Relationships​

namepeeroptionalcardinalitykindorder_weight
vlanIpamVLANTrueoneAttribute1400

InterfaceLayer2​

Relationships​

namelabelpeeroptionalcardinalitykindidentifier
untagged_vlanUntagged VLANIpamVLANTrueoneGenericinterface_l2__untagged_vlan
tagged_vlanTagged VLANsIpamVLANTruemanyGenericinterface_l2__tagged_vlan

LocationHosting​

Relationships​

namelabelpeercardinalityoptional
vlansVLANsIpamVLANmanyTrue

Routing Policies OSPF​

This extension is using the Routing Policies extensions and the Routing OSPF one together.

  • Dependencies: base, extensions/routing, extensions/routing_policies, extensions/routing_ospf
  • Version: 1.0

Nodes​

PolicyOSPF​

  • Description: A routing policiers for OSPF
  • Label: OSPF Routing Policies
  • Icon: carbon:deployment-policy
  • Include in Menu: ❌

Extensions​

RoutingOSPF​

Attributes​

namekindstate
import_policiesTextabsent
export_policiesTextabsent

Relationships​

namelabelpeeridentifierdescriptionkindcardinality
import_routing_policiesImport Routing PoliciesRoutingPolicyOSPFospf__import_policiesThe routing-policies used by this instance for import.Genericmany
export_routing_policiesExport Routing PoliciesRoutingPolicyOSPFospf__export_policiesThe routing-policies used by this instance for export.Genericmany

Physical Disk​

Simple schema allowing you to capture physical disks information for the sake of inventory and lifecycle management.

NOTE: This extension is compatible with all sort of device. You can apply the generic "DeviceWithPhysicalDisks" to particular model to enable disks tracking. You might also link that schema to location for instance to capture spares.

  • Dependencies: base
  • Version: 1.0

Generics​

DeviceWithPhysicalDisks​

  • Description: Generic that hold relationship toward physical disks. To apply on device that can have physical disks.
  • Include in Menu: ❌

Relationships​

namecardinalitypeeroptionalkind
physical_disksmanyDcimPhysicalDiskTrueComponent

Nodes​

PhysicalDisk​

  • Description: Physical Disk
  • Label: Physical Disk
  • Icon: carbon:vmdk-disk
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value + device
Attributes​
namekinduniqueoptionalorder_weightdescriptionchoiceslabel
nameTextFalseFalse900``
disk_typeDropdownTrue950Specifies the type of disk`ssd, nvme, hdd, hybrid`
statusDropdownLifecycle status of the hardware component.`in_inventory, active, decommissioned, disposed`
sizeNumberFalse1000Disk capacity (in GB).``Size (GB)
serial_numberTextTrueTrue1100Serial number of the disk``
descriptionTextFalseTrue1500``

Relationships​

namepeeroptionalcardinalitykindorder_weight
deviceDcimDeviceWithPhysicalDisksFalseoneParent800

Compute​

With this schema extension in place you will be able to capture all your physical servers. It also gives you the baseline to build virtualization. You might consider HostingCluster extension to go with!

  • Dependencies: base
  • Version: 1.0

Generics​

GenericUnit​

  • Description: A generic unit that can compute (e.g. server, vm ...).
  • Include in Menu: ❌

HostVirtualMachine​

  • Description: A generic unit that can host VM
  • Include in Menu: ❌

Relationships​

namecardinalitypeerkindoptional
virtual_machinesmanyVirtualizationVirtualMachineComponentTrue

Nodes​

PhysicalServer​

  • Description: A physical server with fixed resources and specific hardware characteristics.
  • Label: Physical Server
  • Icon: mdi:server
  • Include in Menu: ❌
Attributes​
namekindoptionalorder_weightchoices
statusDropdownFalse1100`active, provisioning, maintenance, drained`

VirtualMachine​

  • Description: A virtual machine hosted on a server or a cluster.
  • Label: Virtual Machine
  • Icon: carbon:virtual-machine
  • Include in Menu: ❌
Attributes​
namekindoptionaldescriptionorder_weightchoices
roleDropdownTrueRole of the virtual machine.1400`application, storage`
vcpuNumberTrueNumber of CPU cores assigned to the VM.1900``
memoryNumberTrueAmount of memory (in GB) assigned to the VM.1900``
diskNumberTrueDisk space (in GB) assigned to the VM.1900``

Relationships​

namepeeroptionalcardinalitykindorder_weight
hostVirtualizationHostVirtualMachineFalseoneAttribute1500

Routing PIM​

This schema extension contains all you need to model the PIM Protocol.

  • Dependencies: base, extensions/routing
  • Version: 1.0

Nodes​

PIM​

  • Description: Protocol Independent Multicast (PIM) instance on a Virtual Router.
  • Label: PIM
  • Icon: mdi:network-outline
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**vrf__name__value, device__name__value
  • **Uniqueness Constraints:**device + vrf
Attributes​
namekindoptionaldefault_valuedescriptionorder_weight
dr_priorityNumberTrue1Designated Router priority.1250
import_policiesTextTrue1300
export_policiesTextTrue1350

Relationships​

namepeeroptionaldescriptioncardinalitykindlabelidentifier
rp_addressIpamIPAddressTrueRendezvous Point (RP) address for PIM.oneAttribute
pim_interfacesRoutingPIMInterfaceTruemanyComponentPIM Interfacespim__piminterfaces

PIMInterface​

  • Description: Interface configuration for PIM.
  • Label: PIM Interface
  • Icon: mdi:ethernet
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**description__value
  • **Uniqueness Constraints:**pim + interface
Attributes​
namekindoptionaluniquedescriptionorder_weightchoicesdefault_value
descriptionTextFalseTrueDescription of the OSPF interface.1100``
pim_modeDropdownPIM mode used for multicast routing on this interface.1150`sparse, dense, bidirectional`
hello_intervalNumberTrueInterval for PIM hello messages (in seconds).1300``30
dr_priorityNumberTrueDesignated Router priority on the interface.1250``1

Relationships​

namelabelpeeridentifieroptionalcardinalitykindorder_weight
pimPIMRoutingPIMpim__piminterfacesFalseoneParent
interfaceInterfaceLayer3FalseoneAttribute1200

Cable​

This schema extension contains a basic Cable model allowing you to connect two endpoints.

  • Dependencies: base
  • Version: 1.0

Nodes​

Cable​

  • Description: Physical cable connecting two endpoints
  • Label: Cable
  • Icon: mdi:cable-data
  • Include in Menu: ❌
Attributes​
namekindoptionalorder_weightchoiceslabel
statusDropdownTrue1000`connected, planned`
cable_typeDropdownTrue1100`cat3, cat5, cat5e, cat6, cat6a, cat7, cat7a, cat8, mmf-om1, mmf-om2, mmf-om3, mmf-om4, mmf-om5, smf-os1, smf-os2, dac-passive, dac-active, aoc, coaxial, mrj21-trunk, power, usb`
colorDropdownTrue1300`dark-red, red, pink, rose, fuchsia, purple, dark-purple, indigo, blue, light-blue, cyan, teal, aqua, dark-green, green, light-green, lime, yellow, amber, orange, dark-orange, brown, light-grey, grey, dark-grey, black`
labelTextTrue1200``
lengthNumberTrue1350``Length (in cm)

Patch Panel​

This schema extension allows you to capture patch panel related information like rear/front interfaces and mapping between them. You can insert the patch panel into a rack and leverage the device type model. Finally you can also capture information about potential modules you would insert into your patch panel.

NOTE: This extension is compatible with all sort of connectors, meaning you can plug cable, circuits, cross-connect to front & rear interfaces!

  • Dependencies: base
  • Version: 1.0

Generics​

GenericPatchPanelInterface​

  • Label: Patch Panel Interfaces
  • Icon: mdi:ethernet
  • Menu Placement: DcimPatchPanel
  • Include in Menu: ❌
Attributes​
namekindorder_weightoptionalchoices
nameText1000``
descriptionText2000True``
connector_typeDropdown1100`FC, LC, LC_PC, LC_UPC, LC_APC, LSH, LSH_PC, LSH_UPC, LSH_APC, LX_5, LX_5_PC, LX_5_UPC, LX_5_APC, MPO, MTRJ, SC, SC_PC, SC_UPC, SC_APC, ST, CS, SN, SMA_905, SMA_906, URM_P2`

Nodes​

PatchPanel​

  • Description: A Patch Panel used for managing network cable connections in a data center or telecom setup.
  • Label: Patch Panel
  • Icon: ic:round-device-hub
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinduniqueorder_weightlabeloptionaldescription
nameTextTrue1000
module_capacityNumberModule CapacityTrueThe maximum number of modules that can be housed within this patch panel.
descriptionText2000True

Relationships​

namepeeridentifieroptionalcardinalitykind
front_interfacesDcimFrontPatchPanelInterfacefront_interfacesTruemanyComponent
rear_interfacesDcimRearPatchPanelInterfacerear_interfacesTruemanyComponent
modulesDcimPatchPanelModuleTruemanyComponent

FrontPatchPanelInterface​

  • Label: Patch Panel Front Interfaces
  • Menu Placement: DcimGenericPatchPanelInterface
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**corresponding_front_rear__name__value, name__value
  • **Uniqueness Constraints:**patch_panel + name__value

Relationships​

namelabelpeerorder_weightoptionalcardinalitykindidentifier
corresponding_front_rearCorresponding rear interfaceDcimRearPatchPanelInterface1200TrueoneAttribute
patch_panelDcimPatchPanel900FalseoneParentfront_interfaces

RearPatchPanelInterface​

  • Label: Patch Panel Rear Interfaces
  • Menu Placement: DcimGenericPatchPanelInterface
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**patch_panel__name__value, name__value
  • **Uniqueness Constraints:**patch_panel + name__value

Relationships​

namelabelpeerorder_weightoptionalcardinalitykindidentifier
corresponding_front_rearCorresponding front interfacesDcimFrontPatchPanelInterface1200TruemanyAttribute
patch_panelDcimPatchPanel900FalseoneParentrear_interfaces

PatchPanelModule​

  • Label: Patch Panel Module
  • Icon: mdi:expansion-card
  • Menu Placement: DcimPatchPanel
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**patch_panel__name__value, position__value
  • **Uniqueness Constraints:**patch_panel + position__value
Attributes​
namekindorder_weightdescriptionlabeloptionalchoices
nameText1000``
positionNumber1100Position for the module inside the Patch Panel.``
module_typeDropdown1200Type of module inserted into the patch panel.Module TypeTrue`3_mpo_24_fo_lc`
serialText1500True``
descriptionText2000True``

Relationships​

namepeeroptionalorder_weightcardinalitykind
patch_panelDcimPatchPanelFalse900oneParent

Routing Aggregate​

This schema extension contains all you need to model the Aggregate Routing Protocol.

  • Dependencies: base, extensions/routing
  • Version: 1.0

Nodes​

AggregateRoute​

  • Description: Aggregate Protocol with action and BGP communities
  • Label: Aggregate Routes
  • Icon: grommet-icons:aggregate
  • Include in Menu: ❌
Attributes​
namelabelkindoptionaldefault_valueorder_weight
discardDiscardBooleanTrueFalse1275
import_policiesTextTrue1300
export_policiesTextTrue1350

Relationships​

namekindpeerdescriptionorder_weight
destinationAttributeIpamPrefixDestination network for the static route.1200

DWDM​

This schema extension contains models for OADM (Optical Add Drop Multiplexer) supporting various WDM (Wavelength Division Multiplexing) technologies such as DWDM (Dense Wavelength Division Multiplexing) or CWDM (Coarse Wavelength Division Multiplexing). With some vendors, the tunable optics are not configured via the channel number but via the wavelength and/or the frequency. This model provides a unique entry in Infrahub for those.

  • Dependencies: base, extensions/sfp
  • Version: 1.0

Generics​

GenericOadmInterface​

  • Label: Optical Multiplexer Interfaces
  • Icon: mdi:ethernet
  • Menu Placement: DcimOpticalMultiplexer
  • Include in Menu: ❌
Attributes​
namekindorder_weightoptionalchoices
nameText1000``
descriptionText2000True``
connector_typeDropdown1100`FC, LC, LC_PC, LC_UPC, LC_APC, LSH, LSH_PC, LSH_UPC, LSH_APC, LX_5, LX_5_PC, LX_5_UPC, LX_5_APC, MPO, MTRJ, SC, SC_PC, SC_UPC, SC_APC, ST, CS, SN, SMA_905, SMA_906, URM_P2`

Nodes​

OpticalMultiplexer​

  • Description: An OADM (Optical Add Drop Multiplexer) supporting various WDM (Wavelength Division Multiplexing) technologies.
  • Label: Optical Multiplexer
  • Icon: mdi:transit-connection-variant
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinduniqueorder_weightdescriptionoptionalchoicesdefault_value
nameTextTrue1000``
wdm_typeDropdown1110Type of WDM (e.g CWDM. DWDM)False`cwdm, dwdm`dwdm
descriptionText2000True``

Relationships​

namepeeridentifieroptionalcardinalitykind
front_interfacesDcimOadmFrontInterfacefront_interfacesTruemanyComponent
rear_interfaceDcimOadmRearInterfacerear_interfacesTrueoneComponent

OadmFrontInterface​

  • Label: Optical Multiplexer Front Interfaces
  • Menu Placement: DcimGenericOadmInterface
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**optical_multiplexer__name__value, name__value
  • **Uniqueness Constraints:**optical_multiplexer + name__value

Relationships​

namepeerorder_weightidentifieroptionalcardinalitykind
optical_multiplexerDcimOpticalMultiplexer900front_interfacesFalseoneParent
channelsDcimWdmChannel1200TruemanyAttribute

OadmRearInterface​

  • Label: Optical Multiplexer Rear Interfaces
  • Menu Placement: DcimGenericOadmInterface
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**optical_multiplexer__name__value, name__value
  • **Uniqueness Constraints:**optical_multiplexer + name__value

Relationships​

namepeerorder_weightidentifieroptionalcardinalitykind
optical_multiplexerDcimOpticalMultiplexer900rear_interfaceFalseoneParent

WdmChannel​

  • Description: A WDM channel with its wavelength and frequency.
  • Label: WDM Channel
  • Icon: game-icons:laser-warning
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**wdm_type__value, channel__value
  • **Uniqueness Constraints:**wdm_type__value + channel__value + wavelength__value + frequency__value, wdm_type__value + channel__value
Attributes​
namekinddescriptionorder_weightoptionalchoicesdefault_valuelabel
channelNumberWDM channel number.``
wdm_typeDropdownType of WDM (e.g CWDM. DWDM)1110False`cwdm, dwdm`dwdm
wavelengthTextWavelength of the channel in nm.``Wavelength (nm)
frequencyTextFrequency of the channel in GHz.``Frequency (GHz)

WdmSFP​

  • Description: SFP with configuration for Wavelength Division Multiplexing.
  • Label: WDM SFP
  • Icon: mdi:laser-pointer
  • Menu Placement: DcimGenericSFP
  • Include in Menu: ❌
Attributes​
namekinddescriptionorder_weightoptionalchoicesdefault_value
wdm_typeDropdownType of WDM (e.g CWDM. DWDM)1110False`cwdm, dwdm`dwdm

Relationships​

namelabelpeerkindcardinalityoptionalorder_weight
wdm_channelWDM ChannelDcimWdmChannelAttributeoneFalse1150

Users​

This schema extension contains models for account management.

  • Dependencies: base
  • Version: 1.0

Nodes​

Group​

  • Description: User Group
  • Label: User Groups
  • Icon: iconoir:group
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekindorder_weightoptionallabelchoices
nameText1000``
descriptionText1100True``
idle_timeoutNumber1300Idle Timeout (s)``
permissionsDropdown1200False`admin, operator, read-only`

Account​

  • Description: User login and authentication
  • Label: User Account
  • Icon: mdi:account-key
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namelabelkindoptionaldescriptionorder_weightdefault_value
nameUsernameTextFalseThe login username1000
full_nameTextTrueFull name of the account1100
ssh_keyPasswordTrueSSH key for secure access1300
passwordPasswordTruePassword for login (alternative to SSH key)1400
mfa_enabledBooleanWhether multi-factor authentication is enabled1500False

Relationships​

namepeercardinalityoptionalkindorder_weight
user_groupUserGrouponeFalseAttribute1200
organizationOrganizationGenericoneFalseParent

Extensions​

OrganizationGeneric​

Relationships​

namekindpeerdescriptioncardinality
accountsComponentUserAccountList of Accounts under this organizationmany

QinQ​

This schema extension brings extensions to VLAN model in order to support QinQ.

  • Dependencies: base, extensions/vlan

Firewall Policer​

This schema extension contains models for VMs. You might consider Cluster or/and Hypervisor extension to go with!

  • Dependencies: base
  • Version: 1.0

Nodes​

Policer​

  • Description: A generic policer configuration.
  • Label: Network Policer
  • Icon: mdi:car-speed-limiter
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekindlabeldescriptionorder_weightuniqueoptionalchoices
nameTextNameUnique name of the policer.1000True``
descriptionText1100True``
policer_typeDropdownPolicer TypeType of policer.1150True`bandwidth-policer, interface-policer, shared-policer, hierarchical-policer`
bandwidth_limitDropdownBandwidth LimitBandwidth limit for the policer.1200True`500k, 2125k, 5250k, 10m, 20m, 30m, 50m, 75m, 100m, 200m, 300m, 1000m`
pps_limitDropdownPPS LimitPackets per second (PPS) limit for the policer.1250True`500pps, 1000pps, 5000pps`
burst_size_limitDropdownBurst Size LimitBurst size limit for the policer.1300True`50k, 100k, 128k, 256k, 512k, 1m, 1500k, 2m, 3m, 4m, 8m, 12m, 37m, 40m, 1000000k`
packet_burstDropdownPacket BurstPacket burst size for the policer.1350True`1k, 5k, 10k`
actionDropdownActionAction to take when limits are exceeded.1400`discard, drop, accept`

VRF​

This schema extension contains models to support VRF in your network.

  • Dependencies: base
  • Version: 1.0

Nodes​

VRF​

  • Description: A VRF is isolated layer three domain
  • Label: VRF
  • Icon: mdi:router
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindoptionaluniquelabelorder_weight
nameTextFalseTrue
vrf_rdTextTrueRoute Distinguisher
descriptionTextTrue1200

Relationships​

namepeeroptionalcardinalitykindidentifierlabel
namespaceBuiltinIPNamespaceFalseoneAttribute
import_rtIpamRouteTargetTrueoneAttributevrf__importImport Targets
export_rtIpamRouteTargetTrueoneAttributevrf__exportExport Targets

RouteTarget​

  • Description: Route Target (RFC 4360)
  • Label: Route Target
  • Icon: mdi:target
  • Menu Placement: IpamVRF
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinduniqueoptional
nameTextTrue
descriptionTextTrue

Relationships​

namepeeroptionalcardinality
vrfIpamVRFTruemany

Extensions​

IpamPrefix​

Relationships​

namelabelpeeroptionalcardinalitykindorder_weight
vrfVRFIpamVRFTrueoneAttribute1150

IpamIPAddress​

Relationships​

namelabelpeeroptionalcardinalitykindorder_weight
vrfVRFIpamVRFTrueoneAttribute1150

Lag​

This schema extension includes models for Link Aggregation Groups (LAGs), enabling you to link physical interfaces as building blocs of your LAG interface. It can be used in standard networking environments as well as in compute scenarios, such as capturing bond interfaces.

  • Dependencies: base
  • Version: 1.0

Nodes​

Lag​

  • Description: LAG interface
  • Label: LAG Interface
  • Include in Menu: ❌
Attributes​
namelabelkindchoicesdefault_valuedescriptionorder_weight
lacp_rateLACP RateDropdown`slow, fast`fastLACP rate for the aggregated interface1700
lacp_modeLACP ModeDropdown`active, passive, disabled`activeLACP mode for the aggregated interface1750

Relationships​

namelabelpeercardinalitykinddescriptionorder_weight
lag_membersMember(s)InterfacePhysicalmanyAttributePhysical Interfaces that are members of this aggregate1800

Extensions​

InterfacePhysical​

Relationships​

namelabelpeeroptionalcardinalitykinddescriptionorder_weight
lag_parentLAGInterfaceLagTrueoneAttributeLAG Interface using this Physical Interface1800

Routing​

This schema extension contains generics to create Routing Protocol "Instance". The idea is to create one Routing Protocol instance per IpamVRF + DcimDevice pair.

  • Dependencies: base, extensions/vlan
  • Version: 1.0

Generics​

Protocol​

  • Description: Generic protocol model for routing protocols
  • Label: Protocol
  • Icon: carbon:router
  • Include in Menu: ❌
Attributes​
namekindoptionaluniquedescriptionorder_weightchoices
descriptionTextFalseTrueDescription of the protocol1100``
statusDropdownStatus of the Protocol Configuration.1150`active, disabled, deleted`

Relationships​

namepeeroptionalcardinalitykindorder_weightlabel
deviceDcimDeviceFalseoneParent1050
vrfIpamVRFFalseoneAttribute1075VRF

Routing BGP​

This schema extension contains all you need to model your BGP platform.

  • Dependencies: base, extensions/routing
  • Version: 1.0

Nodes​

AutonomousSystem​

  • Description: An Autonomous System (AS) is a set of Internet routable IP prefixes belonging to a network
  • Label: Autonomous System
  • Icon: mdi:bank-circle-outline
  • Menu Placement: RoutingBGPSession
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**asn__value, name__value
  • **Uniqueness Constraints:**asn__value, name__value
Attributes​
namekinddescriptionorder_weightoptional
nameTextName of the Autonomous System1000
asnNumberAutonomous System Number1050
descriptionTextDescription of the Autonomous System1100True

Relationships​

namepeeroptionalcardinalitykind
organizationOrganizationGenericFalseoneAttribute
locationLocationGenericTrueoneAttribute
devicesDcimDeviceTruemanyAttribute

BGPPeerGroup​

  • Description: A BGP Peer Group is used to regroup parameters that are shared across multiple peers
  • Label: BGP Peer Group
  • Icon: mdi:view-grid-plus-outline
  • Menu Placement: RoutingBGPSession
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekindoptionaldescriptionorder_weightregexchoicesdefault_value
nameTextFalseName of the BGP Group1000``
import_policiesTextTrue1300``
export_policiesTextTrue1350``
maximum_routesNumberTrueMaximum routes for the BGP Group.1400^[0-9]+$``
local_prefNumberTrueForce Local Pref for this BGP Peer Group.1450^[0-9]+$``
send_communityCheckboxTrueWhether to send community attributes.1500``
address_familyDropdownThe address family for the routing policy indicating the type of IP address.1150`ipv4, ipv6`ipv4

Relationships​

nameidentifierpeeroptionalcardinalitykind
local_asbgppeergroup__local_asRoutingAutonomousSystemTrueoneAttribute
remote_asbgppeergroup__remote_asRoutingAutonomousSystemTrueoneAttribute

BGPSession​

  • Description: A BGP Session represent a point to point connection between two routers
  • Label: BGP Session
  • Icon: mdi:router
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**remote_as__asn__value
  • Uniqueness Constraints:
Attributes​
namekindoptionalenumdescriptionorder_weightchoicesregex
import_policiesTextTrue``
export_policiesTextTrue``
session_typeText['EXTERNAL', 'INTERNAL']Type of BGP Session1200``
roleDropdownRole of the BGP Session1600`backbone, upstream, peering`
local_prefNumberTrueForce Local Pref for this BGP Peer Session.1450``^[0-9]+$

Relationships​

nameidentifierpeeroptionalcardinalitykind
local_asbgpsession__local_asRoutingAutonomousSystemTrueoneAttribute
remote_asbgpsession__remote_asRoutingAutonomousSystemTrueoneAttribute
local_ipbgpsession__local_ipIpamIPAddressTrueoneAttribute
remote_ipbgpsession__remote_ipIpamIPAddressTrueoneAttribute
deviceDcimDeviceTrueone
peer_groupRoutingBGPPeerGroupTrueoneAttribute
peer_sessionRoutingBGPSessionTrueoneAttribute

Extensions​

DcimGenericDevice​

Relationships​

namepeeroptionalcardinalitykindorder_weight
asnRoutingAutonomousSystemTrueoneAttribute1600

OrganizationGeneric​

Relationships​

namelabelcardinalityoptionalpeerorder_weight
asnAutonomous SystemmanyTrueRoutingAutonomousSystem2000

Modules​

This schema extension allows you to capture Device Modules related information like the serial number or the status. You can insert the Module into a Dcim Physical Device.

NOTE: This extension doesn't contain any Nodes, you can use the extension module_linecards or modules_routing_engine to use it

  • Dependencies: base
  • Version: 1.0

Generics​

GenericModule​

  • Description: A generic module, such as a Linecard or Routing Engine, installed in a device.
  • Label: Module
  • Include in Menu: ❌
Attributes​
namekinduniquedescriptionorder_weightoptionalchoicesdefault_value
serial_numberTextTrueUnique serial number of the module.1000``
descriptionText1100True``
statusDropdown1300`provisioning, active, maintenance, disabled, outage`active

Relationships​

namepeeroptionalcardinalitykindorder_weightlabelidentifier
module_typeDeviceGenericModuleTypeFalseoneAttribute1150
deviceDcimPhysicalDeviceTrueoneAttribute1000Devicedevice__modules

GenericModuleType​

  • Description: A generic module type, with common specifications like part number and manufacturer.
  • Label: Module Type
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**manufacturer__name__value, name__value
  • **Uniqueness Constraints:**part_number__value, name__value + manufacturer
Attributes​
namekinduniquedescriptionorder_weightoptionallabel
nameTextTrueName of the module type.1000
descriptionTextDescription of the module type.1100True
part_numberTextPart number of the module.1200TruePart Number

Relationships​

namepeeridentifiercardinalityoptionalkinddescriptionorder_weight
manufacturerOrganizationManufacturermanufacturer__moduletypeoneFalseAttributeManufacturer of the module type.1250
tagsBuiltinTagmanyTrueAttributeTags associated with the module type.3000

Extensions​

DcimPhysicalDevice​

Relationships​

namepeeridentifiercardinalitykind
modulesDeviceGenericModuledevice__modulesmanyComponent

Routing Policies​

This schema extension contains a generic to create Routing Policies. This Generic can be extend for each Routing Protocols you may want to use.

  • Dependencies: base
  • Version: 1.0

Generics​

Policy​

  • Description: Policy defining the rules for routing traffic in a network.
  • Icon: carbon:deployment-policy
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekinddescriptionuniqueoptionalorder_weightlabelchoicesdefault_value
nameTextThe name of the routing policy.TrueFalse1000``
descriptionTextAn optional description of the routing policy.True1100``
policy_typeDropdownThe type of routing policy which specifies the direction of route advertisement.1200Type`import-policy, export-policy, import-export-policy`
weightNumberPriority of the routing policy. The higher the number, the higher the priority.True1400``1000
address_familyDropdownThe address family for the routing policy indicating the type of IP address.1150`ipv4, ipv6, all`all

Hosting Cluster​

A rather generic cluster built with compute units (e.g. servers) and able to host VMs.

  • Dependencies: base, extensions/cluster, extensions/compute
  • Version: 1.0

Nodes​

Hosting​

  • Description: A cluster hosting virtual machines.
  • Label: Hosting Cluster
  • Icon: mdi:dots-hexagon
  • Menu Placement: ClusterGeneric
  • Include in Menu: ❌
Attributes​
namekindorder_weightdescriptionchoicesoptional
cluster_typeDropdown1200Type of the cluster.`aws, kvm, gcp, vmware`
statusDropdown1300`active, provisioning, maintenance, drained`False

Routing OSPF​

This schema extension contains all you need to model the OSPF Routing Protocol.

  • Dependencies: base, extensions/routing
  • Version: 1.0

Nodes​

OSPF​

  • Description: OSPF (Open Shortest Path First) instance on a Virtual Router.
  • Label: OSPF
  • Icon: mdi:network-outline
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**router_id__address__value, vrf__name__value, device__name__value
  • **Uniqueness Constraints:**device + vrf + version__value
Attributes​
namekindoptionaldefault_valuedescriptionorder_weightchoices
reference_bandwidthNumberTrue1000Reference bandwidth for OSPF instance (in Mbps).1150``
versionDropdownospfVersion of the OSPF protocol.1100`ospf, ospfv3`
import_policiesTextTrue1300``
export_policiesTextTrue1350``

Relationships​

namepeeroptionalcardinalitykindlabelidentifier
router_idIpamIPAddressTrueoneAttribute
ospf_interfacesRoutingOSPFInterfaceTruemanyComponentOSPF Interfacesospf__ospfinterfaces

OSPFInterface​

  • Description: Pivot table linking OSPF configuration to an interface.
  • Label: OSPF Interface
  • Icon: mdi:ethernet
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**description__value
  • **Uniqueness Constraints:**ospf + interface
Attributes​
namekindoptionaluniquedescriptionorder_weightchoicesdefault_value
descriptionTextFalseTrueDescription of the OSPF interface.1500``
metricNumberTrueOSPF metric for the interface.1400``
modeDropdownMode of the OSPF interface.1300`normal, passive, peer_to_peer`normal
authentication_keyPasswordTrueShared secret used to authenticate and secure routing messages between neighboring routers.1250``
authentication_modeDropdownTrue1225`md5, sha1`
areaTextOSPF area associated with the interface.1200``

Relationships​

namelabelpeeridentifieroptionalcardinalitykindorder_weight
ospfOSPFRoutingOSPFospf__ospfinterfacesFalseoneParent1100
interfaceInterfaceLayer3FalseoneAttribute1200

Infiniband​

This schema extension adds support for InfiniBand switches.

  • Dependencies: base, extensions/compute
  • Version: 1.0

Nodes​

Switch​

  • Description: InfiniBand Switch
  • Label: InfiniBand Switch
  • Icon: mdi:server
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinduniqueorder_weightoptionallabeldescriptiondefault_valuechoices
nameTextTrue1000``
descriptionText2000True``
os_versionText2200True``
rsu_rail_idNumberTrueRSU Rail IDInfiniBand RSU Rail ID (numeric) assigned to the switch``
aaa_authentication_modelDropdownFalseAAA Authentication ModelAAA authentication model to be used by the switchlocal`tacacs, local`
aaa_accounting_modelDropdownFalseAAA Accounting ModelAAA accounting model to be used by the switchlocal`tacacs, local`
roleDropdownSwitch RoleRole of the switch in the InfiniBand network`spine, leaf`
split_readyBooleanSplit ReadyEnable Split-Ready profile for switchFalse``
ipv6_enableBooleanIPv6 EnableEnable IPv6 on the switchFalse``
cli_prefix_modesBooleanCLI Prefix ModesEnable CLI prefix modesTrue``
xml_gatewayBooleanXML GatewayEnable XML GatewayFalse``
ssh_server_security_strictBooleanSSH Server Security StrictEnable SSH Server Security StrictFalse``
bannerTextBannerBanner to be displayed on loginNVIDIA MLNX-OS Switch Management``
password_hardeningBooleanPassword HardeningEnable Password HardeningFalse``

Relationships​

namekindcardinalitypeeroptional
interfacesComponentmanyInfinibandSwitchInterfaceTrue
mgmt_interfaceComponentoneInfinibandSwitchMgmtInterfaceTrue
rsuAttributeoneInfinibandRSUTrue

SwitchInterface​

  • Description: InfiniBand Switch Interface
  • Label: InfiniBand Switch Interface
  • Icon: mdi:ethernet
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**switch + name__value
Attributes​
namekindorder_weightoptionaldefault_valuelabeldescriptionenumchoices
nameText1000``
descriptionText1100True``
speedNumber1400``
enabledBoolean1200True``
widthNumberTrue7WidthWidth value sets supported lane options for the interface[1, 3, 5, 7]``
port_typeNumberTruePort Type: SplitEnable interface to be split X times (requires Split-Ready profile to be enabled on the switch)[2]``
port_type_forceBooleanFalsePort Type ForceForce the configured port type setting; use in conjunction with Port Type``
operational_virtual_lanesNumber8Operational Virtual LanesNumber of operational virtual lanes for an interface[1, 2, 4, 8]``
mtuNumberMTU (bytes)Maximum Transmission Unit (bytes)[256, 512, 1024, 2048, 4096]``
speed_forcedBooleanFalseSpeed ForcedForce the configured speed setting(s); use in conjunction with Speed options``
sfp_typeTextTrueSFP TypeType of SFP module used in the interface``
roleDropdownTrueInterface RoleRole of the interface in the InfiniBand network`endhost, uplink, reserved`

Relationships​

namepeeroptionalcardinalitykindmax_count
speed_optionInfinibandSwitchIntfSpeedOptionsTruemanyAttribute6
switchInfinibandSwitchFalseoneParent

SwitchMgmtInterface​

  • Description: InfiniBand Switch Management Interface
  • Label: InfiniBand Mgmt Interface
  • Icon: mdi:ethernet
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**switch + name__value
Attributes​
namekindorder_weightoptionallabeldefault_valuedescription
nameText1000
descriptionText1100True
speedNumber1400
mtuNumber1500MTU1500
enabledBoolean1200True
dhcpBooleanDHCPTrueEnable DHCP for the management interface

Relationships​

namepeeroptionalcardinalitykind
switchInfinibandSwitchFalseoneParent
ipv4_addressIpamIPAddressTrueone

SwitchIntfSpeedOptions​

  • Description: InfiniBand Interface Speed Options
  • Label: InfiniBand Interface Speed Options
  • Icon: mdi:ethernet
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**speed__value
  • Uniqueness Constraints:
Attributes​
namekindlabeldescriptionchoicesunique
speedDropdownSpeedSpeed of the interface`SDR, NDR, QDR, FDR, EDR, HDR`
descriptionTextDescriptionDescription of the speed option (must be unique)``True

Relationships​

namepeeroptionalcardinalitykind
switchInfinibandSwitchInterfaceFalseoneParent

RSU​

  • Description: InfiniBand Rail-Optimized Scalable Unit
  • Label: InfiniBand RSU
  • Icon: mdi:network
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**identifier__value
  • **Uniqueness Constraints:**identifier__value
Attributes​
namekindlabeldescriptionregexoptional
identifierTextIdentifierInfiniBand RSU Identifier (A-Z: a unique character string)[A-Z]
sizeNumberSizeNumber of InfiniBand Leaf Switches (Rails) in the RSUTrue

Relationships​

namepeeroptionalcardinalitykind
switchesInfinibandSwitchTruemanyAttribute
interfacesInfinibandSwitchInterfaceTruemanyAttribute

Fabric​

  • Description: InfiniBand Network Fabric
  • Label: InfiniBand Network Fabric
  • Icon: mdi:network
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindlabeldescriptionunique
nameTextNameInfiniBand Network Fabric NameTrue

Location Extended​

This schema extension is the most detailed when it comes to location, you'll find all the layers you can think of.

  • Dependencies: base
  • Version: 1.0

Nodes​

Continent​

  • Label: Continent
  • Icon: jam:world
  • Menu Placement: LocationGeneric
  • Include in Menu: ✅

Country​

  • Label: Country
  • Icon: gis:search-country
  • Menu Placement: LocationGeneric
  • Include in Menu: ✅

Region​

  • Label: Region
  • Icon: carbon:cics-region-target
  • Menu Placement: LocationGeneric
  • Include in Menu: ✅

Metro​

  • Label: Metro
  • Icon: healthicons:city
  • Menu Placement: LocationGeneric
  • Include in Menu: ✅

Building​

  • Label: Building
  • Icon: ri:building-line
  • Menu Placement: LocationGeneric
  • Include in Menu: ✅
Attributes​
namekinduniqueoptionalorder_weight
facility_idTextFalseTrue1100
physical_addressTextFalseTrue1500

Relationships​

namepeeroptionalcardinality
ownerOrganizationGenericTrueone

Floor​

  • Label: Floor
  • Icon: mdi:home-floor-0
  • Menu Placement: LocationGeneric
  • Include in Menu: ✅

Suite​

  • Label: Suite
  • Icon: game-icons:cage
  • Menu Placement: LocationGeneric
  • Include in Menu: ✅
Attributes​
namekinduniqueoptionalorder_weight
facility_idTextFalseTrue1100

Relationships​

namepeeroptionalcardinality
ownerOrganizationGenericTrueone

Rack​

  • Label: Rack
  • Icon: clarity:rack-server-line
  • Menu Placement: LocationGeneric
  • Include in Menu: ✅
Attributes​
namekinduniqueoptionalorder_weight
facility_idTextFalseTrue1100

Relationships​

namepeeroptionalcardinality
ownerOrganizationGenericTrueone

Extensions​

OrganizationProvider​

Relationships​

namepeercardinalityoptional
locationLocationBuildingmanyTrue

Topology​

A schema for defining and managing network topology, strategies, and services.

  • Dependencies: base
  • Version: 1.0

Generics​

ManagementServer​

  • Description: Generic model for network management server (dns, ntp, and dhcp).
  • Label: Network Management Servers
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindorder_weightoptionalchoices
nameText1000``
descriptionText1100True``
statusDropdown`active, provisioning, maintenance, drained`

Relationships​

namepeeroptionalcardinalitykind
locationLocationGenericTruemany
ip_addressesInfraIPAddressTruemanyComponent

GenericElement​

  • Description: Base model for elements
  • Label: Generic Topology Element
  • Icon: carbon:network-3-reference
  • Menu Placement: TopologyTopology
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindorder_weightoptional
nameText1000
descriptionText1100True
quantityNumber1200

Relationships​

namepeercardinalitykindoptional
topologyTopologyTopologyoneParentFalse

NetworkStrategy​

  • Description: Generic model for network strategies (underlays and overlays).
  • Label: Network Strategy
  • Icon: iconoir:strategy
  • Menu Placement: TopologyTopology
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindorder_weightoptional
nameText1000
descriptionText1100True

Relationships​

namepeeroptionalcardinality
topologyTopologyTopologyTruemany

Nodes​

Topology​

  • Description: A Topology represents the entire network pod.
  • Label: Topology
  • Icon: carbon:network-3
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinduniqueorder_weightoptional
nameTextTrue1000
descriptionText1100True

Relationships​

namepeeroptionalcardinalitykind
elementsTopologyGenericElementTruemanyComponent
strategyTopologyNetworkStrategyTrueoneComponent
locationLocationGenericTrueoneAttribute
devicesDcimGenericDeviceTruemanyComponent
network_servicesTopologyNetworkServiceTruemanyComponent

MPLSStrategy​

  • Description: Specific strategy attributes for MPLS.
  • Label: MPLS Strategy
  • Icon: eos-icons:neural-network
  • Menu Placement: TopologyNetworkStrategy
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindchoices
underlayDropdown`ospf, isis, bgp`
overlayDropdown`ldp, rsvp, segment_routing`

EVPNStrategy​

  • Description: Specific strategy attributes for EVPN.
  • Label: EVPN Strategy
  • Icon: carbon:load-balancer-network
  • Menu Placement: TopologyNetworkStrategy
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindchoices
underlayDropdown`ebgp, ospf, isis`
overlayDropdown`ebgp, ibgp`

PhysicalElement​

  • Description: Physical aspect of topology elements.
  • Label: Physical Topology Element
  • Icon: carbon:network-3-reference
  • Menu Placement: TopologyTopology
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinddefault_valueorder_weightlabelchoices
mtuNumber15003000``
borderBooleanFalse2400Is a Topology Border``
mlag_supportBooleanFalse2500MLAG Support``
device_roleDropdown1300Role`spine, leaf, pe_router, p_router, route_reflector, cpe, firewall`

Relationships​

namelabelpeeroptionalcardinalitykindorder_weight
device_typeTypeDcimDeviceTypeTrueoneAttribute1400

DhcpOption​

  • Description: Represents a configurable option within a Dhcp server.
  • Label: Dhcp Option
  • Icon: gis:globe-options
  • Menu Placement: NetworkManagementServer
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindorder_weightoptional
nameText1000
descriptionText1100True
option_codeNumber2000
contentText2100

DhcpServer​

  • Description: Represents a Dhcp server in the network.
  • Label: Dhcp Server
  • Icon: eos-icons:ip
  • Menu Placement: NetworkManagementServer
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindorder_weight
lease_timeText2100

Relationships​

namepeeroptionalcardinalitykind
dhcp_optionsNetworkDhcpOptionTruemanyComponent

NameServer​

  • Description: Represents a DNS server in the network.
  • Label: DNS Server
  • Icon: eos-icons:dns
  • Menu Placement: NetworkManagementServer
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:

NTPServer​

  • Description: Represents a NTP server in the network.
  • Label: NTP Server
  • Icon: iconoir:time-zone
  • Menu Placement: NetworkManagementServer
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:

NetworkServiceIdentifier​

  • Description: Generic model for different types of identifiers used in network services.
  • Label: Network Service Identifier
  • Icon: mdi:identifier
  • Menu Placement: TopologyNetworkService
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**identifier__value
  • Uniqueness Constraints:
Attributes​
namekind
identifierNumber

Relationships​

namelabelpeercardinalityoptional
serviceNetwork ServiceTopologyNetworkServiceoneTrue

NetworkService​

  • Description: Network services attached to a Topology.
  • Label: Network Service
  • Icon: carbon:ibm-cloud-internet-services
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namelabelkindorder_weightenum
nameService NameText1000
descriptionText1100
service_typeText1200['Layer2', 'Layer3']

Relationships​

namepeercardinalitykindoptionalorder_weight
identifierTopologyNetworkServiceIdentifieroneAttributeFalse
topologyTopologyTopologyoneParentFalse
vlanInfraVLANoneComponentTrue1500
prefixInfraPrefixoneComponentTrue1400

Extensions​

DcimGenericDevice​

Relationships​

namepeeroptionalcardinality
topologyTopologyTopologyTrueone

IpamPrefix​

Relationships​

namelabelpeeroptionalcardinalityorder_weight
network_serviceNetwork ServiceTopologyNetworkServiceTrueone1400

Modules Routing Engine​

This schema extension allows you to capture Routing Engine related information like the version. You can insert the Routing Engine into a Dcim Physical Device and leverage the Routing Engine type model.

  • Dependencies: base, extensions/modules
  • Version: 1.0

Nodes​

RoutingEngineType​

  • Description: Routing Engine Type information, detailing specifications such as part number and manufacturer.
  • Label: Routing Engine Type
  • Include in Menu: ❌

Relationships​

namepeercardinalitykinddescription
routing_enginesDeviceRoutingEnginemanyGenericRouting engines of this type.

RoutingEngine​

  • Description: A Routing Engine (RE) installed in a device, responsible for routing functionalities.
  • Label: Routing Engine
  • Icon: mdi:cpu-64-bit
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**device__name__value, slot__value
  • **Uniqueness Constraints:**serial_number__value
Attributes​
namekinddescriptionorder_weightlabeloptional
slotNumberThe slot number where the Routing Engine is installed within the device1100
versionTextFirmware version of the Routing Engine.1200VersionTrue

Relationships​

namelabelpeeroptionalcardinalitykindorder_weight
routing_engine_typeRE TypeDeviceRoutingEngineTypeFalseoneAttribute1150

Modules Linecards​

This schema extension allows you to capture Linecard related information like the version. You can insert the Linecard into a Dcim Physical Device and leverage the Linecard type model. The Linecard can accept PIC to help configure PORT information like breakout-capabilities and configurations.

  • Dependencies: base, extensions/modules
  • Version: 1.0

Nodes​

LinecardType​

  • Description: Linecard Type information, detailing specifications such as part number and manufacturer.
  • Label: Linecard Type
  • Include in Menu: ❌

Relationships​

namepeercardinalitykinddescription
linecardsDeviceLinecardmanyGenericLinecards of this type.

Linecard​

  • Description: A Linecard installed in a device, specifying slot, power status, and functionalities.
  • Label: Linecard
  • Icon: bi:pci-card
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**device__name__value, slot__value
  • **Uniqueness Constraints:**serial_number__value
Attributes​
namekinddescriptionorder_weightlabeloptionaldefault_value
slotNumberThe slot number where the Linecard is installed within the device1050
bng_enabledBooleanBNG activated or deactivated on the Linecard1400BNG EnabledTrueFalse

Relationships​

namelabelpeeroptionalcardinalitykindorder_weight
linecard_typeLinecard TypeDeviceLinecardTypeFalseoneAttribute1150
picsPICsDevicePicTruemanyAttribute1500

Pic​

  • Description: Physical Interface Card (PIC) installed in the Linecard, containing multiple ports.
  • Label: PIC
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**linecard__serial_number__value, slot__value
  • **Uniqueness Constraints:**linecard + slot__value
Attributes​
namekinddescriptionorder_weight
slotNumberSlot number of the PIC within the Linecard1200

Relationships​

namelabelpeeridentifieroptionalcardinalitykindorder_weight
linecardLinecardDeviceLinecardlinecard__picsFalseoneParent1000
portsPortsInfraPortTruemanyComponent1100

Port​

  • Description: A network port on a PIC, specifying speed and port number.
  • Label: Port
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**pic__slot__value, port_number__value
  • **Uniqueness Constraints:**pic + port_number__value
Attributes​
namekinddescriptionorder_weightchoices
port_numberNumberPort number on the PIC1100``
speedDropdownSpeed of the port1200`10g, 100g`

Relationships​

namelabelpeeroptionalcardinalitykindorder_weight
picPICDevicePicFalseoneParent1000

Security​

This schema extension contains models for implementing detailed security.

  • Dependencies: base
  • Version: 1.0

Generics​

PolicyAssignment​

  • Label: Security Policy
  • Include in Menu: ❌

Relationships​

namelabelpeerkindcardinalityoptional
rulesPolicySecurityRenderedPolicyRuleComponentmanyTrue

GenericAddressGroup​

  • Include in Menu: ❌
Attributes​
namekindlabeloptionalunique
nameTextNameFalseTrue
descriptionTextDescriptionTrue

Relationships​

namepeercardinalitykindoptional
addressesSecurityGenericAddressmanyComponentTrue

GenericAddress​

  • Include in Menu: ❌
Attributes​
namekindoptionalunique
nameTextFalseTrue

Relationships​

namelabelpeercardinalityoptional
address_groupsAddress GroupsSecurityGenericAddressGroupmanyTrue

GenericServiceGroup​

  • Include in Menu: ❌
Attributes​
namelabelkindoptional
nameNameTextFalse
descriptionDescriptionTextTrue

Relationships​

namepeerlabelcardinalitykindoptional
servicesSecurityGenericServiceServicesmanyComponentTrue

GenericService​

  • Include in Menu: ❌
Attributes​
namelabelkindoptional
nameNameTextFalse
descriptionDescriptionTextTrue

Relationships​

namelabelpeercardinalityoptional
service_groupsService GroupsSecurityGenericServiceGroupmanyTrue

Nodes​

Zone​

  • Description: Security zones
  • Label: Security zone
  • Icon: game-icons:fire-zone
  • Menu Placement: SecurityPolicy
  • Include in Menu: ✅
Attributes​
namekinduniqueoptional
nameTextTrueFalse

Relationships​

namelabelkindoptionalpeer
interfacesInterfacesAttributeTrueSecurityFirewallInterface

IPAMIPAddress​

  • Description: Infrahub IPv4/6 address
  • Label: IPAM IP Address
  • Icon: mdi:ip-outline
  • Menu Placement: SecurityPolicy
  • Include in Menu: ✅
Attributes​
namekindoptional
descriptionTextTrue

Relationships​

namepeercardinalitykindoptional
ip_addressInfraIPAddressoneAttributeFalse

IPAMIPPrefix​

  • Description: Infrahub IPv4/6 prefix
  • Label: IPAM IP Prefix
  • Icon: mdi:ip-network-outline
  • Menu Placement: SecurityPolicy
  • Include in Menu: ✅
Attributes​
namekindoptional
descriptionTextTrue

Relationships​

namepeercardinalitykindoptional
ip_prefixInfraPrefixoneAttributeFalse

IPAddress​

  • Description: IPv4/6 address
  • Label: IP Address
  • Icon: mdi:ip-outline
  • Menu Placement: SecurityPolicy
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**address__value
  • Uniqueness Constraints:
Attributes​
namekindoptional
addressIPHost
descriptionTextTrue

Prefix​

  • Description: IPv4/6 prefix
  • Label: Prefix
  • Icon: mdi:ip-network-outline
  • Menu Placement: SecurityPolicy
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindoptionalunique
prefixIPNetworkFalseTrue
descriptionTextTrue

IPRange​

  • Description: IPv4/6 Range
  • Label: IP Range
  • Icon: mdi:ip-outline
  • Menu Placement: SecurityPolicy
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namelabelkindoptional
startStart IP AddressIPHostFalse
endEnd IP AddressIPHostFalse

FQDN​

  • Description: Full Qualified Domain Name
  • Label: FQDN
  • Icon: eos-icons:dns
  • Menu Placement: SecurityPolicy
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value, fqdn__value
  • Uniqueness Constraints:
Attributes​
namelabelkindoptionalregex
fqdnFQDNTextFalse(?=^.253$)(^(((?!-)[a-zA-Z0-9-]63(?<!-))|((?!-)[a-zA-Z0-9-]63(?<!-)\.)+[a-zA-Z]63)$)

AddressGroup​

  • Description: Group of addresses
  • Label: Address Group
  • Icon: material-symbols:menu-book-outline-rounded
  • Menu Placement: SecurityPolicy
  • Include in Menu: ✅

IPProtocol​

  • Description: IP protocol
  • Label: IP Protocols
  • Icon: mdi:protocol
  • Menu Placement: SecurityPolicy
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindoptional
protocolNumberTrue

Service​

  • Description: Service
  • Label: Service
  • Icon: eos-icons:application-outlined
  • Menu Placement: SecurityPolicy
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekind
portNumber

Relationships​

namepeeroptionalcardinalitykind
ip_protocolSecurityIPProtocolTrueoneAttribute

ServiceRange​

  • Description: Service range
  • Label: Service range
  • Icon: eos-icons:application-outlined
  • Menu Placement: SecurityPolicy
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekindoptional
startNumberFalse
endNumberFalse

Relationships​

namepeeroptionalcardinalitykind
ip_protocolSecurityIPProtocolFalseoneAttribute

ServiceGroup​

  • Description: Group of services
  • Label: Service group
  • Icon: material-symbols:menu-book-outline-rounded
  • Menu Placement: SecurityPolicy
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:

Policy​

  • Label: Security Policy
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namelabelkindoptional
nameNameTextFalse
descriptionDescriptionTextTrue

Relationships​

namepeercardinalitykindoptional
rulesSecurityPolicyRulemanyComponent
location_targetLocationGenericoneAttributeTrue
device_targetSecurityFirewalloneAttributeTrue

PolicyRule​

  • Description: Policy rule
  • Label: Policy rule
  • Icon: material-symbols:policy
  • Menu Placement: SecurityPolicy
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**source_zone__name__value, destination_zone__name__value, index__value
  • **Uniqueness Constraints:**index__value + source_zone + destination_zone + policy
Attributes​
namelabelkindoptionalorder_weightenumdefault_value
indexIndexNumberFalse99999
nameNameTextFalse
actionActionTextFalse['permit', 'deny']permit
logLogBooleanTrue99998False

Relationships​

namepeerkindcardinalityoptionalorder_weightidentifier
policySecurityPolicyAttributeoneFalse
source_zoneSecurityZoneAttributeoneFalse1policy_rule__source_zone
destination_zoneSecurityZoneAttributeoneFalse2policy_rule__destination_zone
source_addressSecurityGenericAddressAttributemanyTruepolicy_rule__source_address
source_groupsSecurityGenericAddressGroupAttributemanyTruepolicy_rule__source_address_group
source_servicesSecurityGenericServiceAttributemanyTruepolicy_rule__source_service
source_service_groupsSecurityGenericServiceGroupAttributemanyTruepolicy_rule__source_service_group
destination_addressSecurityGenericAddressAttributemanyTruepolicy_rule__destination_address
destination_groupsSecurityGenericAddressGroupAttributemanyTruepolicy_rule__destination_address_group
destination_servicesSecurityGenericServiceAttributemanyTruepolicy_rule__destination_service
destination_service_groupsSecurityGenericServiceGroupAttributemanyTruepolicy_rule__destination_service_group

Firewall​

  • Icon: mdi:firewall
  • Menu Placement: InfraGenericDevice
  • Include in Menu: ✅
Attributes​
namekindoptionalchoices
roleDropdownTrue`edge_firewall`

Relationships​

namepeerlabelcardinalitykind
policySecurityPolicySecurity PolicyoneAttribute

RenderedPolicyRule​

  • Description: Policy rule
  • Label: Policy rule
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**source_zone__name__value, destination_zone__name__value, index__value
  • Uniqueness Constraints:
Attributes​
namelabelkindoptionalorder_weightenumdefault_value
indexIndexNumberFalse99999
nameNameTextFalse
actionActionTextFalse['permit', 'deny']permit
logLogBooleanTrue99998False

Relationships​

namepeerkindcardinalityoptionalidentifierorder_weight
source_policySecurityPolicyAttributeoneFalse
source_zoneSecurityZoneAttributeoneFalserendered_policy_rule__source_zone1
destination_zoneSecurityZoneAttributeoneFalserendered_policy_rule__destination_zone2
source_addressSecurityGenericAddressAttributemanyTruerendered_policy_rule__source_address
source_groupsSecurityGenericAddressGroupAttributemanyTruerendered_policy_rule__source_address_group
source_servicesSecurityGenericServiceAttributemanyTruerendered_policy_rule__source_service
source_service_groupsSecurityGenericServiceGroupAttributemanyTruerendered_policy_rule__source_service_group
destination_addressSecurityGenericAddressAttributemanyTruerendered_policy_rule__destination_address
destination_groupsSecurityGenericAddressGroupAttributemanyTruerendered_policy_rule__destination_address_group
destination_servicesSecurityGenericServiceAttributemanyTruerendered_policy_rule__destination_service
destination_service_groupsSecurityGenericServiceGroupAttributemanyTruerendered_policy_rule__destination_service_group

FirewallInterface​

  • Label: Firewall Interface
  • Icon: mdi:ethernet
  • Menu Placement: InfraGenericDevice
  • Include in Menu: ❌

Relationships​

namepeeroptionalcardinalitykind
ip_addressesInfraIPAddressTruemanyComponent
security_zoneSecurityZoneFalseoneAttribute

Extensions​

LocationGeneric​

Relationships​

namepeercardinalitykind
policySecurityPolicyoneAttribute

Azure​

This schema extension introduces cloud support for Microsoft Azure.

Generics​

Resource​

  • Label: Azure
  • Include in Menu: ✅
Attributes​
namekind
nameText

Relationships​

namecardinalitykindpeeroptional
locationoneAttributeAzureLocation
resourcegrouponeParentAzureResourceGroupFalse

Nodes​

Location​

  • Menu Placement: AzureResource
  • Include in Menu: ❌
Attributes​
namekind
nameText

Tenant​

  • Menu Placement: AzureResource
  • Include in Menu: ❌
Attributes​
namekind
nameText
tenant_idText

Relationships​

namecardinalitypeerkind
subscriptionsmanyAzureSubscriptionComponent

Subscription​

  • Menu Placement: AzureResource
  • Include in Menu: ❌
Attributes​
namekind
nameText
subscription_idText

Relationships​

namecardinalitypeerkindoptional
tenantoneAzureTenantParentFalse
resourcegroupsmanyAzureResourceGroupComponent

ResourceGroup​

  • Menu Placement: AzureResource
  • Include in Menu: ❌
Attributes​
namekind
nameText

Relationships​

namecardinalitykindpeeroptional
locationoneAttributeAzureLocation
subscriptiononeParentAzureSubscriptionFalse

VirtualNetwork​

  • Label: Virtual Networks
  • Menu Placement: AzureResource
  • Include in Menu: ❌

Relationships​

namecardinalitykindpeer
address_spacemanyAttributeBuiltinIPPrefix
subnetsmanyComponentAzureVirtualNetworkSubnet

VirtualNetworkSubnet​

  • Label: Subnets
  • Menu Placement: AzureResource
  • Include in Menu: ✅
Attributes​
namekind
nameText

Relationships​

namecardinalitypeerkindoptional
virtualnetworkoneAzureVirtualNetworkParentFalse
address_prefixesmanyBuiltinIPPrefixAttribute

Tenancy​

This schema extension introduces tenancy for some of the schema nodes (circuits...)

  • Dependencies: base, extensions/circuit
  • Version: 1.0

Nodes​

Tenant​

  • Description: A tenant is owning the corresponding entity
  • Icon: mdi:domain
  • Include in Menu: ✅

Relationships​

namepeercardinalitykindoptionalorder_weight
tagsBuiltinTagmanyAttributeTrue3000
locationLocationBuildingmanyTrue
circuitDcimCircuitmanyTrue

QoS​

This schema extension contains models for Quality of Service (QoS)

  • Dependencies: base
  • Version: 1.0

Nodes​

ForwardingClass​

  • Description: Represents a forwarding class in QoS with distinct loss priorities.
  • Label: Forwarding Class
  • Menu Placement: QosClassOfService
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekinddescriptionuniqueorder_weightoptional
nameTextName of the forwarding class.True1000
high_loss_priority_codeListList of code points for high loss priority.1200True
low_loss_priority_codeListList of code points for low loss priority.1300True

ClassOfService​

  • Description: Defines a Class of Service configuration.
  • Label: Class of Service
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekinddescriptionuniqueorder_weight
nameTextName of the Class of Service.True1000

Relationships​

namepeerdescriptioncardinalityoptionalorder_weight
traffic_control_profilesQosTrafficControlProfileList of traffic control profiles.manyTrue1200

TrafficControlProfile​

  • Description: Defines a traffic control profile with an active/inactive state.
  • Label: Traffic Control Profile
  • Menu Placement: QosClassOfService
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekinddescriptionuniqueorder_weightchoicesdefault_value
nameTextName of the traffic control profile.True1000``
statusDropdownStatus of the traffic control profile (active/inactive).1200`active, inactive`inactive

Classifier​

  • Description: Represents a classifier mapping DSCP or EXP values to forwarding classes.
  • Label: Classifier
  • Menu Placement: QosClassOfService
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekinddescriptionuniqueorder_weightchoices
nameTextName of the classifier.True1000``
classifier_typeDropdownType of classifier (DSCP, EXP, etc.).1200`dscp, exp, dscp-ipv6`

Relationships​

namepeerdescriptioncardinalityoptionalorder_weight
forwarding_classesQosForwardingClassList of forwarding classes defined in the classifier.manyTrue1300

Scheduler​

  • Description: Represents a scheduler configuration.
  • Label: Scheduler
  • Menu Placement: QosClassOfService
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekinddescriptionuniqueorder_weightlabelchoicesoptional
nameTextName of the scheduler.True1000``
transmit_rateNumberTransmit rate in percentage.1200Transmit Rate (%)``
buffer_sizeNumberBuffer size in percentage.1300Buffer Size (%)``
priorityDropdownPriority of the scheduler.1400`low, high, strict-high`True
excess_priorityDropdownExcess priority when applicable.1500`low, high`True

SchedulerMap​

  • Description: Defines mappings of schedulers to forwarding classes.
  • Label: Scheduler Map
  • Menu Placement: QosClassOfService
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • **Uniqueness Constraints:**name__value
Attributes​
namekinddescriptionuniqueorder_weight
nameTextName of the scheduler map.True1000

Relationships​

namepeerdescriptioncardinalityoptionalorder_weight
schedulersQosSchedulerList of schedulers defined in the map.manyTrue1200
forwarding_classesQosForwardingClassList of forwarding classes associated with schedulers.manyTrue1300

Circuit Service​

This schema extension contains model coming on top of circuit to capture a single service shared across multiple circuits. For example you have a MPLS network supported by a provider connecting multiple locations:

  • One single CircuitService would be needed to store MPLS related information (e.g. service id, provider ...)

  • On each site we would create a circuit connecting on one side our device and the CircuitService on the other side

  • Dependencies: extensions/circuit

  • Version: 1.0

Nodes​

Service​

  • Description: Represent the boundary of a provider network, the details of which are unknown or unimportant
  • Label: Circuit Service
  • Icon: mdi:cloud
  • Menu Placement: DcimCircuit
  • Include in Menu: ❌

Ordering and Constraints​

  • **Order By:**name__value
  • Uniqueness Constraints:
Attributes​
namekinduniqueoptional
nameTextTrue
service_idTextTrue
descriptionTextTrue

Relationships​

namepeeroptionalcardinalitykind
providerOrganizationProviderFalseoneAttribute
circuit_endpointsCircuitEndpointTruemanyComponent

Extensions​

OrganizationProvider​

Relationships​

namepeercardinalityoptional
circuit_servicesCircuitServicemanyTrue

CircuitEndpoint​

Relationships​

namepeercardinalityoptional
circuit_serviceCircuitServiceoneTrue

VLAN Translation​

This schema extension is based on Juniper VLAN MAP, and not yet test out for other vendors.

  • Dependencies: base
  • Version: 1.0

Nodes​

MapInOut​

  • Description: VLAN Mapping for In/Out operations
  • Label: VLAN Map In/Out
  • Icon: ph:swap
  • Menu Placement: DcimInterface
  • Include in Menu: ✅

Ordering and Constraints​

  • **Order By:**interface__name__value, direction__value, operation__value
  • **Uniqueness Constraints:**interface + direction__value
Attributes​
namekinddescriptionlabelorder_weightchoicesoptional
directionDropdownDirection of the mappingMap Direction1050`input, output`True
operationDropdownOperation typeMap Operation1100`pop, pop_pop, pop_swap, push, push_push, swap, swap_push, swap_swap`True
vlan_id_swapNumberVLAN ID to swap to during SWAP operationsVLAN ID Swap1200``True
inner_vlan_idNumberInner VLAN ID for operations involving double VLAN tagsInner VLAN ID1300``True
inner_tag_protocol_idNumberInner tag protocol ID (TPID)Inner Tag Protocol ID1400``True
tag_protocol_idNumberTag protocol ID (TPID) for outer VLAN operationsTag Protocol ID1500``True

Relationships​

namekindpeerdescriptioncardinalityoptionallabelorder_weight
interfaceParentDcimInterfaceInterface to which the Input/Output VLAN mapping is appliedoneFalseInterface1000

Extensions​

DcimInterface​

Relationships​

namekindpeerdescriptioncardinalitylabelorder_weight
network_mapsComponentNetworkMapInOutInterface Input/Output VLAN mappingmanyInput/Output MAP1600