Skip to main content

Layer2 Subinterface

Layer2 subinterfaces create VLAN-tagged subinterfaces operating in layer2 (switching) mode. The scm CLI provides commands to create, update, delete, and load layer2 subinterfaces.

Overview

The layer2-subinterface commands allow you to:

  • Create layer2 subinterfaces with VLAN tag configurations
  • Update existing layer2 subinterface settings
  • Delete layer2 subinterfaces that are no longer needed
  • Bulk import layer2 subinterfaces from YAML files
  • Export layer2 subinterfaces for backup or migration

Set Layer2 Subinterface

Create or update a layer2 subinterface.

Syntax

scm set network layer2-subinterface NAME [OPTIONS]

Arguments

ArgumentDescriptionRequired
NAMEName of the layer2 subinterfaceYes

Options

OptionDescriptionRequired
--folder TEXTFolder locationYes*
--snippet TEXTSnippet locationYes*
--device TEXTDevice locationYes*
--vlan-tag TEXTVLAN tag (1-4096)Yes
--parent-interface TEXTParent interface nameNo
--comment TEXTInterface descriptionNo

* Exactly one of --folder, --snippet, or --device is required.

Examples

Create a Layer2 Subinterface

$ scm set network layer2-subinterface ethernet1/1.100 \
--folder Texas \
--vlan-tag 100 \
--parent-interface ethernet1/1
---> 100%
Created layer2 subinterface: ethernet1/1.100 in folder Texas

Create with Description

$ scm set network layer2-subinterface ethernet1/2.200 \
--folder Texas \
--vlan-tag 200 \
--parent-interface ethernet1/2 \
--comment "Guest VLAN"
---> 100%
Created layer2 subinterface: ethernet1/2.200 in folder Texas

Delete Layer2 Subinterface

Delete a layer2 subinterface from SCM.

Syntax

scm delete network layer2-subinterface NAME [OPTIONS]

Arguments

ArgumentDescriptionRequired
NAMEName of the layer2 subinterface to deleteYes

Options

OptionDescriptionRequired
--folder TEXTFolder locationYes*
--snippet TEXTSnippet locationYes*
--device TEXTDevice locationYes*
--forceSkip confirmation promptNo

* Exactly one of --folder, --snippet, or --device is required.

Example

$ scm delete network layer2-subinterface ethernet1/1.100 --folder Texas --force
---> 100%
Deleted layer2 subinterface: ethernet1/1.100 from folder Texas

Load Layer2 Subinterface

Load multiple layer2 subinterfaces from a YAML file.

Syntax

scm load network layer2-subinterface [OPTIONS]

Options

OptionDescriptionRequired
--file TEXTPath to YAML fileYes
--folder TEXTOverride folder location for all objectsNo
--snippet TEXTOverride snippet location for all objectsNo
--device TEXTOverride device location for all objectsNo
--dry-runPreview changes without applyingNo

YAML File Format

---
layer2_subinterfaces:
- name: ethernet1/1.100
folder: Texas
vlan_tag: 100
parent_interface: ethernet1/1

- name: ethernet1/1.200
folder: Texas
vlan_tag: 200
parent_interface: ethernet1/1
comment: "Guest VLAN"

Examples

Load with Original Locations

$ scm load network layer2-subinterface --file subinterfaces.yml
---> 100%
✓ Loaded layer2 subinterface: ethernet1/1.100
✓ Loaded layer2 subinterface: ethernet1/1.200

Successfully loaded 2 out of 2 layer2 subinterfaces from 'subinterfaces.yml'

Load with Folder Override

$ scm load network layer2-subinterface --file subinterfaces.yml --folder Austin
---> 100%
✓ Loaded layer2 subinterface: ethernet1/1.100
✓ Loaded layer2 subinterface: ethernet1/1.200

Successfully loaded 2 out of 2 layer2 subinterfaces from 'subinterfaces.yml'
note

When using container override options (--folder, --snippet, --device), all layer2 subinterfaces will be loaded into the specified container, ignoring the container specified in the YAML file.

Show Layer2 Subinterface

Display layer2 subinterface objects.

Syntax

scm show network layer2-subinterface [NAME] [OPTIONS]

Arguments

ArgumentDescriptionRequired
NAMEName of the layer2 subinterface to show; omit to list allNo

Options

OptionDescriptionRequired
--folder TEXTFolder locationYes*
--snippet TEXTSnippet locationYes*
--device TEXTDevice locationYes*
--max-results INTEGERMaximum number of results to displayNo
--output [table|json|yaml]Output format (default: table)No

* Exactly one of --folder, --snippet, or --device is required.

note

When no NAME argument is provided, all items are listed by default.

Examples

Show Specific Layer2 Subinterface

$ scm show network layer2-subinterface ethernet1/1.100 --folder Texas
---> 100%
Layer2 Subinterface: ethernet1/1.100
Location: Folder 'Texas'
VLAN Tag: 100
Parent Interface: ethernet1/1

List All Layer2 Subinterfaces (Default Behavior)

$ scm show network layer2-subinterface --folder Texas
---> 100%
Layer2 subinterfaces in folder 'Texas':
------------------------------------------------------------
Name: ethernet1/1.100
VLAN Tag: 100
Parent: ethernet1/1
------------------------------------------------------------
Name: ethernet1/1.200
VLAN Tag: 200
Parent: ethernet1/1
------------------------------------------------------------

Backup Layer2 Subinterfaces

Backup all layer2 subinterface objects from a specified location to a YAML file.

Syntax

scm backup network layer2-subinterface [OPTIONS]

Options

OptionDescriptionRequired
--folder TEXTFolder locationNo*
--snippet TEXTSnippet locationNo*
--device TEXTDevice locationNo*
--file TEXTCustom output filenameNo

* One of --folder, --snippet, or --device is required.

Examples

Backup from Folder

$ scm backup network layer2-subinterface --folder Texas
---> 100%
Successfully backed up 6 layer2 subinterfaces to layer2_subinterface_folder_texas_20240115_120530.yaml

Backup with Custom Filename

$ scm backup network layer2-subinterface --folder Texas --file texas-l2-subinterfaces.yaml
---> 100%
Successfully backed up 6 layer2 subinterfaces to texas-l2-subinterfaces.yaml

Best Practices

  1. Use Consistent VLAN Tags: Coordinate VLAN tag assignments across all subinterfaces to avoid conflicts.
  2. Specify Parent Interface: Always specify the parent interface for clarity and proper association.
  3. Add Descriptive Comments: Document the purpose of each VLAN subinterface for easier management.
  4. Test with Dry Run: Use --dry-run when loading configurations to preview changes before applying.
  5. Backup Before Changes: Always backup existing subinterface configurations before making bulk modifications.