Skip to main content

Layer3 Subinterface

Layer3 subinterfaces create VLAN-tagged subinterfaces operating in layer3 (routing) mode with IP addressing. The scm CLI provides commands to create, update, delete, and load layer3 subinterfaces.

Overview

The layer3-subinterface commands allow you to:

  • Create layer3 subinterfaces with VLAN tags and IP addressing
  • Update existing layer3 subinterface configurations
  • Delete layer3 subinterfaces that are no longer needed
  • Bulk import layer3 subinterfaces from YAML files
  • Export layer3 subinterfaces for backup or migration

Set Layer3 Subinterface

Create or update a layer3 subinterface.

Syntax

scm set network layer3-subinterface NAME [OPTIONS]

Arguments

ArgumentDescriptionRequired
NAMEName of the layer3 subinterfaceYes

Options

OptionDescriptionRequired
--folder TEXTFolder locationYes*
--snippet TEXTSnippet locationYes*
--device TEXTDevice locationYes*
--vlan-tag INTEGERVLAN tag (1-4096)No
--parent-interface TEXTParent interface nameNo
--comment TEXTInterface descriptionNo
--mtu INTEGERMTU (576-9216)No
--ip-json TEXTStatic IPs as JSONNo
--dhcp-client-json TEXTDHCP client config as JSONNo

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

Examples

Create a Layer3 Subinterface with Static IP

$ scm set network layer3-subinterface ethernet1/1.200 \
--folder Texas \
--vlan-tag 200 \
--parent-interface ethernet1/1 \
--mtu 1500 \
--ip-json '[{"name": "10.0.2.1/24"}]'
---> 100%
Created layer3 subinterface: ethernet1/1.200 in folder Texas

Create a Layer3 Subinterface with DHCP

$ scm set network layer3-subinterface ethernet1/2.300 \
--folder Texas \
--vlan-tag 300 \
--parent-interface ethernet1/2 \
--dhcp-client-json '{"enable": true}' \
--comment "DHCP-assigned VLAN"
---> 100%
Created layer3 subinterface: ethernet1/2.300 in folder Texas

Delete Layer3 Subinterface

Delete a layer3 subinterface from SCM.

Syntax

scm delete network layer3-subinterface NAME [OPTIONS]

Arguments

ArgumentDescriptionRequired
NAMEName of the layer3 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 layer3-subinterface ethernet1/1.200 --folder Texas --force
---> 100%
Deleted layer3 subinterface: ethernet1/1.200 from folder Texas

Load Layer3 Subinterface

Load multiple layer3 subinterfaces from a YAML file.

Syntax

scm load network layer3-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

---
layer3_subinterfaces:
- name: ethernet1/1.200
folder: Texas
tag: 200
parent_interface: ethernet1/1
mtu: 1500
ip:
- name: "10.0.2.1/24"

- name: ethernet1/1.300
folder: Texas
tag: 300
parent_interface: ethernet1/1
mtu: 1500
ip:
- name: "10.0.3.1/24"

Examples

Load with Original Locations

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

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

Load with Folder Override

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

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

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

Show Layer3 Subinterface

Display layer3 subinterface objects.

Syntax

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

Arguments

ArgumentDescriptionRequired
NAMEName of the layer3 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 Layer3 Subinterface

$ scm show network layer3-subinterface ethernet1/1.200 --folder Texas
---> 100%
Layer3 Subinterface: ethernet1/1.200
Location: Folder 'Texas'
VLAN Tag: 200
Parent Interface: ethernet1/1
MTU: 1500
IP: 10.0.2.1/24

List All Layer3 Subinterfaces (Default Behavior)

$ scm show network layer3-subinterface --folder Texas
---> 100%
Layer3 subinterfaces in folder 'Texas':
------------------------------------------------------------
Name: ethernet1/1.200
VLAN Tag: 200
IP: 10.0.2.1/24
------------------------------------------------------------
Name: ethernet1/1.300
VLAN Tag: 300
IP: 10.0.3.1/24
------------------------------------------------------------

Backup Layer3 Subinterfaces

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

Syntax

scm backup network layer3-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 layer3-subinterface --folder Texas
---> 100%
Successfully backed up 8 layer3 subinterfaces to layer3_subinterface_folder_texas_20240115_120530.yaml

Backup with Custom Filename

$ scm backup network layer3-subinterface --folder Texas --file texas-l3-subinterfaces.yaml
---> 100%
Successfully backed up 8 layer3 subinterfaces to texas-l3-subinterfaces.yaml

Best Practices

  1. Plan IP Addressing: Assign subnet addresses consistently across layer3 subinterfaces to avoid overlap.
  2. Set Appropriate MTU: Configure MTU to account for VLAN encapsulation overhead when needed.
  3. Use Consistent VLAN Tags: Coordinate VLAN tag assignments with network switches and other devices.
  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.