frinx-openconfig-interfaces:interfaces/interface={{lag_ifc_name}}
{
"interface": [
{
"name": "{{lag_ifc_name}}",
"config": {
"type": "iana-if-type:ieee8023adLag",
"enabled": {{lag_enabled}},
"mtu": {{lag_mtu}},
"description": "{{lag_description}}",
"name": "{{lag_ifc_name}}"
},
"subinterfaces": {
"subinterface": [
{
"index": 0,
"config": {
"index": 0
},
"frinx-openconfig-if-ip:ipv4": {
"addresses": {
"address": [
{
"ip": "{{lag_ip}}",
"config": {
"ip": "{{lag_ip}}",
"prefix-length": "{{lag_prefix_length}}"
},
"frinx-cisco-vrrp-extension:vrrp": {
"vrrp-group": [
"virtual-router-id": "{{lag_ip_virtual_id}}",
"config": {
"virtual-router-id": "{{lag_ip_virtual_id}}",
"virtual-address": ["{{lag_ip_virtual_address}}"],
"priority": {{priority}},
"tracked-objects": [
{
"tracked-object-id": {{tracked_object_id}},
"priority-decrement": {{priority_decrement}},
"shutdown": {{tracked_object_shutdown}}
}],
"virtual-secondary-addresses": [
"{{virtual_secondary_addresses}}"
],
"preempt-delay": {{preempt_delay}}
}
]
}
}
]
}
},
"frinx-openconfig-if-ip:ipv6": {
"config": {
"enabled": {{lag_ip6_enabled}}
},
"addresses": {
"address": [
{
"ip": "{{lag_ip6}}",
"config": {
"ip": "{{lag_ip6}}",
"prefix-length": "{{lag_prefix6_length}}"
},
"frinx-cisco-vrrp-extension:vrrp": {
"vrrp-group": [
"virtual-router-id": "{{lag_ip_virtual_id}}",
"config": {
"virtual-router-id": "{{lag_ip_virtual_id}}",
"virtual-address": ["{{lag_ip_virtual_address}}"],
"tracked-objects": [
{
"tracked-object-id": {{tracked_object_id}},
"shutdown": {{tracked_object_shutdown}}
}],
"addresses": [
"{{virtual_addresses}}"
]
}
]
}
}
]
},
"router-advertisement": {
"config": {
"suppress": {{ip6_nd_suppress_ra}}
}
}
}
},
{
"index": {{sub_ifc_index}},
"config": {
"index": {{sub_ifc_index}},
"description": "{{lag_sub_description}}",
"frinx-juniper-if-extension:rpm-type": "{{rpm_type}}",
"frinx-if-aggregate-extension:subinterface-name": "{{subifc_name}}",
"enabled": {{lag_sub_enabled}}
},
"frinx-openconfig-if-ip:ipv4": {
"addresses": {
"address": [
{
"ip": "{{lag_sub_ip}}",
"config": {
"ip": "{{lag_sub_ip}}",
"prefix-length": "{{lag_sub_prefix_length}}"
},
"vrrp": {
"vrrp-group": [
"virtual-router-id": "{{lag_sub_ip_virtual_id}}",
"config": {
"virtual-router-id": "{{lag_sub_ip_virtual_id}}",
"virtual-address": "{{lag_sub_ip_virtual_address}}"
}
]
}
}
]
}
},
"frinx-openconfig-if-ip:ipv6": {
"addresses": {
"address": [
{
"ip": "{{lag_sub_ip6}}",
"config": {
"ip": "{{lag_sub_ip6}}",
"prefix-length": "{{lag_sub_prefix6_length}}"
}
}
]
}
},
"frinx-openconfig-vlan:vlan": {
"config":
"vlan-id": {{vlan_id}},
"frinx-saos-vlan-extension:ingress-l2-transform": "{{i_transform}}",
"frinx-saos-vlan-extension:egress-l2-transform": "{{e_transform}}"
}
"frinx-saos-vlan-extension:class-elements": [
{
"id": "{{class_element}}",
"config": {
"id": "{{class_element}}",
"vtag-stack": "{{vtag}}"
}
}
]
},
"frinx-cisco-if-extension:statistics": {
"config": {
"load-interval": {{lag_sub_load_interval}}
}
},
"frinx-cisco-if-extension:hold-time": {
"config": {
"up": {{lag_sub_hold_time_up}}
}
},
"frinx-oam:cfm": {
"config": {
"enabled": {{lag_sub_cfm_enabled}}
},
"domains": {
"domain": [
{
"domain-name": "{{lag_sub_cfm_domain_name}}",
"config": {
"domain-name": "{{lag_sub_cfm_domain_name}}"
},
"mep": {
"config": {
"ma-name": "{{lag_sub_cfm_ma_name}}",
"mep-id": {{lag_sub_cfm_mep_id}},
"cos": {{lag_sub_cfm_cos}}
}
}
}
]
}
},
"frinx-if-ethernet-extension:arp": {
"config": {
"cache-timeout": {{lag_sub_arp_timeout}}
}
},
"frinx-saos-if-extension:pm-instances": {
"pm-instance": [
{
"name": "{{pm_instance_name}}",
"config": {
"bin-count": "{{bin_count}}",
"name": "{{pm_instance_name}}"
}
}
]
}
}
]
},
"frinx-damping:damping": {
"config": {
"enabled": {{lag_damp_enabled}},
"half-life": {{lag_damp_half_life}},
"reuse": {{lag_damp_reuse}},
"suppress": {{lag_damp_suppress}},
"max-suppress": {{lag_damp_max_supress}}
}
},
"frinx-cisco-if-extension:statistics": {
"config": {
"load-interval": {{lag_load_interval}}
}
},
"frinx-openconfig-if-aggregate:aggregation": {
"config": {
"min-links": {{lag_min_links}},
"frinx-juniper-if-aggregate-extension:link-speed": {{lag_link_speed}},
"frinx-if-aggregate-extension:mac-address": {{aggregate_mac_address}},
"frinx-if-aggregate-extension:system-id-mac": {{aggregate_lacp_mac_address}}
},
"frinx-bfd:bfd": {
"config": {
"local-address": "{{lag_bfd_local_address}}",
"destination-address": "{{lag_bfd_destination_address}}",
"multiplier": {{lag_bfd_multiplier}},
"min-interval": {{lag_bfd_min_interval}}
}
},
"frinx-bfd:bfd-ipv6": {
"config": {
"destination-address": "{{lag_bfd_destination_address_ipv6}}",
"multiplier": {{lag_bfd_multiplier_ipv6}},
"min-interval": {{lag_bfd_min_interval_ipv6}}
}
},
"frinx-openconfig-vlan:switched-vlan" : {
"config" : {
"interface-mode": "TRUNK",
"trunk-vlans": [
{{tagged_vlan_ifc_id}}
],
"native-vlan": {{untagged_vlan_ifc_id}}
}
}
}
}
]
}
interface GigabitEthernet2 ip address {{lag_ip}} vrrp {{lag_ip_virtual_id}} address-family ipv4 priority {{priority}} preempt delay minimum {{preempt_delay}} track {{tracked_object_id}} decrement {{priority_decrement}} track {{tracked_object_id}} shutdown | no track {{tracked_object_id}} shutdown address {{lag_ip_virtual_address}} primary address {{virtual_secondary_addresses}} secondary vrrp {{lag_ip_virtual_id}} address-family ipv6 track {{tracked_object_id}} shutdown | no track {{tracked_object_id}} shutdown address {{lag_ip_virtual_address}} primary address {{virtual_addresses}}
track {{tracked_object_id}} shutdown is a conversion of {{tracked_object_shutdown}} set true
no track {{tracked_object_id}} shutdown is a conversion of {{tracked_object_shutdown}} set false
Link to github : ios-unit
interface {{lag_ifc_name}} ip address {{lag_ip}} {{lag_subnet}}
{{lag_sub_subnet}} is conversion of {{lag_sub_prefix_length}}
Link to github : ios-unit
interface Bundle-Ether{{lag_ifc_id}} description {{lag_description}} mtu {{lag_mtu}} ipv4 address {{lag_ip}} {{lag_subnet}} ipv6 address {{lag_ip6}}/{{lag_prefix6_length}} ipv6 nd suppress-ra dampening {{lag_damp_half_life}} {{lag_damp_reuse}} {{lag_damp_suppress}} {{lag_damp_max_supress}} | no dampening load-interval {{lag_load_interval}} bundle minimum-active links {{lag_min_links}} bfd mode ietf bfd address-family ipv4 fast-detect bfd address-family ipv4 destination {{lag_bfd_destination_address}} bfd address-family ipv4 minimum-interval {{lag_bfd_min_interval}} bfd address-family ipv4 multiplier {{lag_bfd_multiplier}} shutdown | no shutdown
{{lag_ifc_id}} is parsed from {{lag_ifc_name}}
example {{lag_ifc_name}} is Bundle-Ether100 -> {{lag_ifc_id}} is 100
no shutdown is a conversion of {{lag_enabled}} set true
shutdown is a conversion of {{lag_enabled}} set false
{{lag_subnet}} is conversion of {{lag_prefix_length}}
no dampening is a conversion of {{lag_damp_enabled}} set false
ipv6 nd suppress-ra is a conversion of {{ip6_nd_suppress_ra}} set true
Link to github : xr-unit
interface Bundle-Ether{{lag_ifc_id}} description {{lag_description}} mtu {{lag_mtu}} ipv4 address {{lag_ip}} {{lag_subnet}} ipv6 address {{lag_ip6}}/{{lag_prefix6_length}} ipv6 enable | no ipv6 enable dampening {{lag_damp_half_life}} {{lag_damp_reuse}} {{lag_damp_suppress}} {{lag_damp_max_supress}} | no dampening load-interval {{lag_load_interval}} bundle minimum-active links {{lag_min_links}} bfd mode ietf bfd address-family ipv4 fast-detect bfd address-family ipv4 destination {{lag_bfd_destination_address}} bfd address-family ipv4 minimum-interval {{lag_bfd_min_interval}} bfd address-family ipv4 multiplier {{lag_bfd_multiplier}} bfd address-family ipv6 fast-detect bfd address-family ipv6 destination {{lag_bfd_destination_address_ipv6}} bfd address-family ipv6 minimum-interval {{lag_bfd_min_interval_ipv6}} bfd address-family ipv6 multiplier {{lag_bfd_multiplier_ipv6}} shutdown | no shutdown
{{lag_ifc_id}} is parsed from {{lag_ifc_name}}
example {{lag_ifc_name}} is Bundle-Ether100 -> {{lag_ifc_id}} is 100
no shutdown is a conversion of {{lag_enabled}} set true
shutdown is a conversion of {{lag_enabled}} set false
{{lag_subnet}} is conversion of {{lag_prefix_length}}
no dampening is a conversion of {{lag_damp_enabled}} set false
ipv6 enable is a conversion of {{lag_ip6_enabled}} set true
no ipv6 enable is a conversion of {{lag_ip6_enabled}} set false
interface Bundle-Ether{{lag_ifc_id}}.{{sub_ifc_index}} description {{lag_sub_description}} ipv4 address {{lag_sub_ip}} {{lag_sub_subnet}} encapsulation dot1q {{vlan_id}}
{{lag_sub_subnet}} is conversion of {{lag_sub_prefix_length}}
Link to github : xr-unit
interface Bundle-Ether{{lag_ifc_id}} description {{lag_description}} ipv4 address {{lag_sub_ip}} {{lag_sub_subnet}} mtu {{lag_mtu}} dampening {{lag_damp_half_life}} {{lag_damp_reuse}} {{lag_damp_suppress}} {{lag_damp_max_supress}} | no dampening load-interval {{lag_load_interval}} mac-address {{lag_mac_address}} lacp system mac {{lag_lacp_mac_address}} shutdown | no shutdown
{{lag_ifc_id}} is parsed from {{lag_ifc_name}}
example {{lag_ifc_name}} is Bundle-Ether100 -> {{lag_ifc_id}} is 100
{{lag_mac_address}} is parsed from {{aggregate_mac_address}}
example {{aggregate_mac_address}} is aa:bb:cc:dd:ee:ff -> aabb.ccdd.eeff
{{lag_lacp_mac_address}} is parsed from {{aggregate_lacp_mac_address}}
example {{aggregate_lacp_mac_address}} is aa:bb:cc:dd:ee:ff -> aabb.ccdd.eeff
{{lag_subnet}} is conversion of {{lag_prefix_length}}
no shutdown is a conversion of {{lag_enabled}} set true
shutdown is a conversion of {{lag_enabled}} set false
no dampening is a conversion of {{lag_damp_enabled}} set false
interface Bundle-Ether{{lag_ifc_id}}.{{sub_ifc_index}} description {{lag_sub_description}} ipv4 address {{lag_sub_ip}} {{lag_sub_subnet}} encapsulation dot1q {{vlan_id}} load-interval {{lag_sub_load_interval}} carrier-delay up {{lag_sub_hold_time_up}}
{{lag_ifc_id}} is parsed from {{lag_ifc_name}}
example {{lag_ifc_name}} is Bundle-Ether100 -> {{lag_ifc_id}} is 100
{{lag_sub_subnet}} is conversion of {{lag_sub_prefix_length}}
Link to github : xr-unit
interface Bundle-Ether{{lag_ifc_id}}.{{sub_ifc_index}} description {{lag_sub_description}} ipv4 address {{lag_sub_ip}} {{lag_sub_subnet}} ipv6 address {{lag_sub_ip6}}/{{lag_sub_prefix6_length}} encapsulation dot1q {{vlan_id}} load-interval {{lag_sub_load_interval}} arp timeout {{lag_sub_arp_timeout}} ethernet cfm mep domain {{lag_sub_cfm_domain_name}} service {{lag_sub_cfm_ma_name}} mep-id {{lag_sub_cfm_mep_id}} cos {{lag_sub_cfm_cos}} shutdown | no shutdown
{{lag_ifc_id}} is parsed from {{lag_ifc_name}}
example {{lag_ifc_name}} is Bundle-Ether100 -> {{lag_ifc_id}} is 100
no shutdown is a conversion of {{lag_sub_enabled}} set true
shutdown is a conversion of {{lag_sub_enabled}} set false
{{lag_sub_subnet}} is conversion of {{lag_sub_prefix_length}}
ethernet cfm is a conversion of {{lag_sub_cfm_enabled}} set to true
no ethernet cfm is a conversion of {{lag_sub_cfm_enabled}} set to false
Link to github : xr-unit
set interfaces ae{{lag_ifc_id}} description {{lag_description}} set interfaces ae{{lag_ifc_id}} mtu {{lag_mtu}} set interfaces ae{{lag_ifc_id}} unit 0 family inet address {{lag_ip}}/{{lag_prefix_length}} set interfaces ae{{lag_ifc_id}} aggregated-ether-options minimum-links {{lag_min_links}} set interfaces ae{{lag_ifc_id}} aggregated-ether-options bfd-liveness-detection neighbor {{lag_bfd_destination_address}} set interfaces ae{{lag_ifc_id}} aggregated-ether-options bfd-liveness-detection local-address {{lag_bfd_local_address}} set interfaces ae{{lag_ifc_id}} aggregated-ether-options bfd-liveness-detection minimum-interval {{lag_bfd_min_interval}} set interfaces ae{{lag_ifc_id}} aggregated-ether-options bfd-liveness-detection multiplier {{lag_bfd_multiplier}} set interfaces ae{{lag_ifc_id}} aggregated-ether-options link-speed {{lag_link_speed}} delete interface ae{{lag_ifc_id}} disable | set interface ae{{lag_ifc_id}} disable
{{lag_ifc_id}} is parsed from {{lag_ifc_name}}
example {{lag_ifc_name}} is ae100 -> {{lag_ifc_id}} is 100
delete interface ae{{lag_ifc_id}} disable is a conversion of {{lag_enabled}} set true
set interface ae{{lag_ifc_id}} disable is conversion of {{lag_enabled}} set false
Device does not support damping on LAG interface.
Link to github : junos-unit
delete interface ae{{lag_ifc_id}} disable | set interface ae{{lag_ifc_id}} disable set interfaces ae{{lag_ifc_id}} unit 0 family inet address {{lag_ip}}/{{lag_prefix_length}} set interfaces ae{{lag_ifc_id}} unit 0 family inet address {{lag_ip}}/{{lag_prefix_length}} vrrp-group {{lag_ip_virtual_id}} virtual-address {{lag_ip_virtual_address}}
{{lag_ifc_id}} is parsed from {{lag_ifc_name}}
example {{lag_ifc_name}} is ae100 -> {{lag_ifc_id}} is 100
delete interface ae{{lag_ifc_id}} disable is a conversion of {{lag_enabled}} set true
set interface ae{{lag_ifc_id}} disable is conversion of {{lag_enabled}} set false
delete interface ae{{lag_ifc_id}} unit {{sub_ifc_index}} disable | set interface ae{{lag_ifc_id}} unit {{sub_ifc_index}} disable set interfaces ae{{lag_ifc_id}} unit {{sub_ifc_index}} description {{lag_sub_description}} set interfaces ae{{lag_ifc_id}} unit {{sub_ifc_index}} vlan-id {{vlan_id}} set interfaces ae{{lag_ifc_id}} unit {{sub_ifc_index}} vlan-tags inner 0x8100:{{inner_vlan_tag}} set interfaces ae{{lag_ifc_id}} unit {{sub_ifc_index}} vlan-tags outer 0x8100:{{outer_vlan_tag}} set interfaces ae{{lag_ifc_id}} unit {{sub_ifc_index}} rpm {{rpm_type}} set interfaces ae{{lag_ifc_id}} unit {{sub_ifc_index}} family inet address {{lag_sub_ip}}/{{lag_sub_prefix_length}} set interfaces ae{{lag_ifc_id}} unit {{sub_ifc_index}} family inet address {{lag_sub_ip}}/{{lag_sub_prefix_length}} vrrp-group {{lag_sub_ip_virtual_id}} virtual-address {{lag_sub_ip_virtual_address}}
{{lag_ifc_id}} is parsed from {{lag_ifc_name}}
example {{lag_ifc_name}} is ae100 -> {{lag_ifc_id}} is 100
inner_vlan_tag , outer_vlan_tag is a conversion of {{vlan_id}} set {{outer_vlan_tag}}.{{inner_vlan_tag}}
delete interface ae{{lag_ifc_id}} unit {{sub_ifc_index}} disable is a conversion of {{lag_sub_enabled}} set true
set interface ae{{lag_ifc_id}} unit {{sub_ifc_index}} disable is conversion of {{lag_sub_enabled}} set false
rpm_ifc_index , rpm_subintf_index is a conversion of {{rpm_ifc_id}} set {{rpm_ifc_index}}.{{rpm_subintf_index}}
Link to github : junos-unit
interface {{lag_ifc_name}} ipv4 address {{lag_ip}} {{lag_subnet}}
{{lag_subnet}} is conversion of {{lag_prefix_length}}
Link to github : huawei-unit
bridge lacp aggregator {{lag_ifc_id}} vlan add br{{tagged_vlan_ifc_id}} t/{{lag_ifc_id}} tagged vlan add br{{untagged_vlan_ifc_id}} t/{{lag_ifc_id}} untagged
{{lag_ifc_id}} is parsed from {{lag_ifc_name}}
example {{lag_ifc_name}} is Bundle-Ether100 -> {{lag_ifc_id}} is 100 and prefix is Bundle-Ether
Dasan supports two kinds of prefixes (Prefix is settled by lag type)
- If the prefix of {{lag_ifc_name}} is 'Trunk', lag type is port trunking
- If the prefix of {{lag_ifc_name}} is 'Bundle-Ether', lag type is lacp
vlan add br{{tagged_vlan_ifc_id}} t/{{lag_ifc_id}} tagged is only supported by port trunking
vlan add br{{untagged_vlan_ifc_id}} t/{{lag_ifc_id}} untagged is only supported by port trunking
Link to github : dasan-unit
sub-port create sub-port {{subifc_name}} parent-port {{lag_ifc_name}} classifier-precedence {{sub_ifc_index}} sub-port set sub-port {{subifc_name}} ingress-l2-transform {{i_transform}} sub-port set sub-port {{subifc_name}} egress-l2-transform {{e_transform}} sub-port add sub-port {{subifc_name}} class-element {{class_element}} vtag-stack {{vtag}} pm create sub-port {{subifc_name}} pm-instance {{pm_instance_name}} profile-type BasicTxRx bin-count {{bin_count}}
classifier-precedence is used as {{sub_ifc_index}}. This field is mandatory in Ciena and unique withing parent-port.
bin_count can be from "0" to "96". Default value is "32".
Link to github : saos-unit