Skip to main content

VLAN

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

Details

  • Dependencies:

Nodes

VLAN

  • Label: VLAN
  • Description: A plain VLAN, with no QinQ role of its own.
  • Namespace: Ipam
  • Uniqueness Constraints:
    • vlan_id__value, vlan_group
  • Inherit From: IpamGenericVLAN

VLANGroup

  • Label: VLAN Group
  • Description: A VLAN group scopes VLANs to a domain (site, rack, etc.).
  • Namespace: Ipam
  • Icon: mdi:domain-switch
  • Human Friendly ID: name__value

Attributes

namedescriptionkindoptionaldefault_valuechoices
nameTextFalse
descriptionTextTrue

Relationships

namepeeroptionalcardinalitykind
scopeIpamVLANGroupScopeTrueoneAttribute
vlansIpamGenericVLANTruemanyComponent

Generics

GenericVLAN

  • Label: VLAN
  • Description: A VLAN is an isolated layer two domain.
  • Namespace: Ipam
  • Icon: mdi:lan-pending
  • Human Friendly ID: name__value

Attributes

namedescriptionkindoptionaldefault_valuechoices
nameTextFalse
descriptionTextTrue
vlan_idNumberFalse
statusDropdownFalseactiveactive, reserved, provisioning, maintenance, deprecated
roleDropdownTrueserver, management, user

Relationships

namepeeroptionalcardinalitykind
prefixesIpamPrefixTruemanyAttribute
vlan_groupIpamVLANGroupFalseoneAttribute

Extensions

note

In this context "extensions" refer to modifications or additions to the existing schema, such as adding new attributes, relationships, or other schema elements.

IpamVLANGroupScope

Relationships

namepeeroptionalcardinalitykind
vlan_groupsIpamVLANGroupTruemanyAttribute

IpamPrefix

Relationships

namepeeroptionalcardinalitykind
vlanIpamGenericVLANTrueoneAttribute

InterfaceLayer2

Relationships

namepeeroptionalcardinalitykind
untagged_vlanIpamGenericVLANTrueoneGeneric
tagged_vlanIpamGenericVLANTruemanyGeneric

Code

version: '1.0'
generics:
- name: GenericVLAN
namespace: Ipam
description: A VLAN is an isolated layer two domain.
label: VLAN
icon: mdi:lan-pending
include_in_menu: true
human_friendly_id:
- name__value
order_by:
- name__value
display_label: name__value
attributes:
- name: name
kind: Text
optional: false
order_weight: 1000
- name: description
kind: Text
optional: true
order_weight: 1100
- name: vlan_id
kind: Number
optional: false
order_weight: 1050
- name: status
kind: Dropdown
default_value: active
choices:
- name: active
label: Active
description: Fully operational and currently in service.
color: '#00d25b'
- name: reserved
label: Reserved
description: Reserved for future use, not yet active.
color: '#4d90fe'
- name: provisioning
label: Provisioning
description: In the process of being set up and configured.
color: '#f0ad4e'
- name: maintenance
label: Maintenance
description: Undergoing routine maintenance or repairs.
color: '#ff9800'
- name: deprecated
label: Deprecated
description: No longer in use and scheduled for removal.
color: '#e04040'
optional: false
order_weight: 1200
- name: role
kind: Dropdown
choices:
- name: server
label: Server
description: Dedicated systems for managing networked resources.
color: '#c4bed7'
- name: management
label: Management
description: Network segments for administrative and control tasks.
color: '#9af1e1'
- name: user
label: User
description: Segments designed for end-user access and activities.
color: '#a0b78d'
optional: true
order_weight: 1300
relationships:
- name: prefixes
peer: IpamPrefix
kind: Attribute
cardinality: many
optional: true
identifier: vlan__prefix
order_weight: 1500
- name: vlan_group
peer: IpamVLANGroup
label: VLAN Group
kind: Attribute
cardinality: one
optional: false
identifier: vlan_group__vlan
order_weight: 1400
nodes:
- name: VLAN
namespace: Ipam
description: A plain VLAN, with no QinQ role of its own.
label: VLAN
include_in_menu: false
inherit_from:
- IpamGenericVLAN
uniqueness_constraints:
- - vlan_id__value
- vlan_group
- name: VLANGroup
namespace: Ipam
description: A VLAN group scopes VLANs to a domain (site, rack, etc.).
label: VLAN Group
icon: mdi:domain-switch
include_in_menu: true
menu_placement: IpamGenericVLAN
human_friendly_id:
- name__value
display_label: name__value
attributes:
- name: name
kind: Text
unique: true
optional: false
order_weight: 1000
- name: description
kind: Text
optional: true
order_weight: 1100
relationships:
- name: scope
peer: IpamVLANGroupScope
kind: Attribute
cardinality: one
optional: true
identifier: vlan_group__scope
order_weight: 900
- name: vlans
peer: IpamGenericVLAN
kind: Component
cardinality: many
optional: true
identifier: vlan_group__vlan
order_weight: 1500
extensions:
nodes:
- kind: IpamVLANGroupScope
relationships:
- name: vlan_groups
peer: IpamVLANGroup
label: VLAN Groups
kind: Attribute
cardinality: many
optional: true
identifier: vlan_group__scope
order_weight: 1600
- kind: IpamPrefix
relationships:
- name: vlan
peer: IpamGenericVLAN
kind: Attribute
cardinality: one
optional: true
identifier: vlan__prefix
order_weight: 1450
- kind: InterfaceLayer2
relationships:
- name: untagged_vlan
peer: IpamGenericVLAN
label: Untagged VLAN
kind: Generic
cardinality: one
optional: true
identifier: interface_l2__untagged_vlan
order_weight: 1500
- name: tagged_vlan
peer: IpamGenericVLAN
label: Tagged VLANs
kind: Generic
cardinality: many
optional: true
identifier: interface_l2__tagged_vlan
order_weight: 1550