This module contains a collection of YANG definitions for Cisco IOS-XR router-hsrp package configuration. This YANG module augm...
Version: 2021-03-04
module Cisco-IOS-XR-um-router-hsrp-cfg { yang-version 1; namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-router-hsrp-cfg"; prefix um-router-hsrp-cfg; import Cisco-IOS-XR-types { prefix xr; } import ietf-inet-types { prefix inet; } import ietf-yang-types { prefix yang; } import Cisco-IOS-XR-um-snmp-server-cfg { prefix a1; } import cisco-semver { prefix semver; } organization "Cisco Systems, Inc."; contact "Cisco Systems, Inc. Customer Service Postal: 170 West Tasman Drive San Jose, CA 95134 Tel: +1 800 553-NETS E-mail: cs-yang@cisco.com"; description "This module contains a collection of YANG definitions for Cisco IOS-XR router-hsrp package configuration. This YANG module augments the modules with configuration data. Copyright (c) 2021 by Cisco Systems, Inc. All rights reserved."; revision "2021-03-04" { description "Initial release"; } semver:module-version "1.0.0"; container router { description "Enable a routing process"; container hsrp { description "HSRP configuration subcommands"; container interfaces { description "HSRP interface configuration subcommands"; list interface { key "interface-name"; description "HSRP interface configuration subcommands"; leaf interface-name { type xr:Interface-name; description "HSRP interface configuration subcommands"; } container hsrp { description "HSRP configuration"; container use-bia { presence "Indicates a use-bia node is configured."; description "Use burned-in address"; } // container use-bia container redirects { description "Enable/Disable HSRP filtered ICMP redirects"; container disable { presence "Indicates a disable node is configured."; description "Disable HSRP filtered ICMP redirects"; } // container disable } // container redirects container delay { description "Set activation delay for hsrp"; leaf minimum { type uint32 { range "0..10000"; } must "../reload"; description "Set minimum delay on every interface up event"; } leaf reload { type uint32 { range "0..10000"; } must "../minimum"; description "Set reload delay for first interface up event"; } } // container delay container bfd { description "Configure BFD parameters"; leaf minimum-interval { type uint32 { range "3..30000"; } description "Hello interval"; } leaf multiplier { type uint32 { range "2..50"; } description "Detect multiplier"; } } // container bfd leaf mac-refresh { type uint32 { range "0..10000"; } description "HSRP MGO subordinate MAC refresh rate"; } } // container hsrp container address-family { description "HSRP address family"; container ipv4 { description "IPv4 address family"; container hsrp { description "HSRP group configuration"; container group-number-version-1s { description "group number version 1"; list group-number-version-1 { key "group-number-version-1-id"; description "group number version 1"; leaf group-number-version-1-id { type uint32 { range "0..255"; } description "group number version 1"; } container address { description "Enable hot standby protocol for IP"; leaf ipv4-address { type inet:ipv4-address-no-zone; description "Hot standby IP address"; } container learn { must "not(../ipv4-address)"; presence "Indicates a learn node is configured."; description "Learn virtual IP address from peer"; } // container learn container secondary-ipv4-addresses { description "Set secondary hot standby IP addresses"; list secondary-ipv4-address { key "address"; description "Set secondary hot standby IP address"; leaf address { type inet:ipv4-address-no-zone; description "Set secondary hot standby IP address"; } } // list secondary-ipv4-address } // container secondary-ipv4-addresses } // container address leaf priority { type uint32 { range "0..255"; } description "Priority level"; } container preempt { description "Force active if higher priority"; leaf delay { type uint32 { range "0..3600"; } description "Wait before preempting"; } } // container preempt container track-interfaces { description "Configure tracking"; list track-interface { key "track-name"; description "Configure tracking"; leaf track-name { type xr:Interface-name; description "Configure tracking"; } leaf priority-decrement { type uint32 { range "1..255"; } mandatory true; description "Priority decrement"; } } // list track-interface } // container track-interfaces container track-objects { description "Object tracking"; list track-object { key "object-name"; description "Object tracking"; leaf object-name { type xr:Cisco-ios-xr-string { length "1..800"; } description "Object tracking"; } leaf priority-decrement { type uint32 { range "1..255"; } mandatory true; description "Priority decrement"; } } // list track-object } // container track-objects container timers { description "Set hello and hold timers"; leaf msec { type uint32 { range "100..3000"; } must "(../msec2 or ../hold-time2) and not(../hold-time)"; description "Specify hellotime in milliseconds"; } leaf msec2 { type uint32 { range "100..3000"; } must "(../msec or ../hold-time) and not(../hold-time2)"; description "Specify hold time in milliseconds"; } leaf hold-time { type uint32 { range "1..255"; } must "(../msec2 or ../hold-time2) and not(../msec)"; description "Hold time in seconds"; } leaf hold-time2 { type uint32 { range "1..255"; } must "(../msec or ../hold-time) and not(../msec2)"; description "Hold time in seconds"; } } // container timers leaf mac-address { type yang:mac-address; description "Use specified mac address for the virtual router"; } leaf name { type xr:Cisco-ios-xr-string { length "1..800"; } description "MGO session name"; } container bfd { description "Configure BFD parameters"; container fast-detect { presence "indicates a fast-detect node is configured"; description "Enable Fast detection"; container peer { description "Information about HSRP peer for BFD monitoring"; leaf ipv4 { type inet:ipv4-address-no-zone; description "BFD peer interface IPv4 address"; } leaf interface { type xr:Interface-name; must "../ipv4"; description "Select an interface over which to run BFD"; } } // container peer } // container fast-detect } // container bfd } // list group-number-version-1 } // container group-number-version-1s container group-number-version-2s { description "group number version 2"; list group-number-version-2 { key "group-number-version-2-id"; description "group number version 2"; leaf group-number-version-2-id { type uint32 { range "0..4095"; } description "group number version 2"; } container address { description "Enable hot standby protocol for IP"; leaf ipv4-address { type inet:ipv4-address-no-zone; description "Hot standby IP address"; } container learn { must "not(../ipv4-address)"; presence "Indicates a learn node is configured."; description "Learn virtual IP address from peer"; } // container learn container secondary-ipv4-addresses { description "Set secondary hot standby IP addresses"; list secondary-ipv4-address { key "address"; description "Set secondary hot standby IP address"; leaf address { type inet:ipv4-address-no-zone; description "Set secondary hot standby IP address"; } } // list secondary-ipv4-address } // container secondary-ipv4-addresses } // container address leaf priority { type uint32 { range "0..255"; } description "Priority level"; } container preempt { description "Force active if higher priority"; leaf delay { type uint32 { range "0..3600"; } description "Wait before preempting"; } } // container preempt container track-interfaces { description "Configure tracking"; list track-interface { key "track-name"; description "Configure tracking"; leaf track-name { type xr:Interface-name; description "Configure tracking"; } leaf priority-decrement { type uint32 { range "1..255"; } mandatory true; description "Priority decrement"; } } // list track-interface } // container track-interfaces container track-objects { description "Object tracking"; list track-object { key "object-name"; description "Object tracking"; leaf object-name { type xr:Cisco-ios-xr-string { length "1..800"; } description "Object tracking"; } leaf priority-decrement { type uint32 { range "1..255"; } mandatory true; description "Priority decrement"; } } // list track-object } // container track-objects container timers { description "Set hello and hold timers"; leaf msec { type uint32 { range "100..3000"; } must "(../msec2 or ../hold-time2) and not(../hold-time)"; description "Specify hellotime in milliseconds"; } leaf msec2 { type uint32 { range "100..3000"; } must "(../msec or ../hold-time) and not(../hold-time2)"; description "Specify hold time in milliseconds"; } leaf hold-time { type uint32 { range "1..255"; } must "(../msec2 or ../hold-time2) and not(../msec)"; description "Hold time in seconds"; } leaf hold-time2 { type uint32 { range "1..255"; } must "(../msec or ../hold-time) and not(../msec2)"; description "Hold time in seconds"; } } // container timers leaf mac-address { type yang:mac-address; description "Use specified mac address for the virtual router"; } leaf name { type xr:Cisco-ios-xr-string { length "1..800"; } description "MGO session name"; } container bfd { description "Configure BFD parameters"; container fast-detect { presence "indicates a fast-detect node is configured"; description "Enable Fast detection"; container peer { description "Information about HSRP peer for BFD monitoring"; leaf ipv4 { type inet:ipv4-address-no-zone; description "BFD peer interface IPv4 address"; } leaf interface { type xr:Interface-name; must "../ipv4"; description "Select an interface over which to run BFD"; } } // container peer } // container fast-detect } // container bfd } // list group-number-version-2 } // container group-number-version-2s container subordinate-group-numbers { description "subordinate group number"; list subordinate-group-number { key "subordinate-group-number-id"; description "subordinate group number"; leaf subordinate-group-number-id { type uint32 { range "0..4095"; } description "subordinate group number"; } container address { description "Enable hot standby protocol for IP"; leaf ipv4-address { type inet:ipv4-address-no-zone; description "Hot standby IP address"; } container secondary-ipv4-addresses { description "Set secondary hot standby IP addresses"; list secondary-ipv4-address { key "address"; description "Set secondary hot standby IP address"; leaf address { type inet:ipv4-address-no-zone; description "Set secondary hot standby IP address"; } } // list secondary-ipv4-address } // container secondary-ipv4-addresses } // container address leaf mac-address { type yang:mac-address; description "Use specified mac address for the virtual router"; } leaf follow { type xr:Cisco-ios-xr-string { length "1..800"; } description "Follow specified MGO session"; } } // list subordinate-group-number } // container subordinate-group-numbers } // container hsrp } // container ipv4 container ipv6 { description "IPv6 address family"; container hsrp { description "HSRP group configuration"; container group-number-version-1s { description "group number version 1"; list group-number-version-1 { key "group-number-version-1-id"; description "group number version 1"; leaf group-number-version-1-id { type uint32 { range "0..255"; } description "group number version 1"; } container address { description "Enable hot standby protocol for IP"; container link-local { description "HSRP IPv6 linklocal address"; leaf ipv6-address { type inet:ipv6-address-no-zone; description "HSRP IPv6 linklocal address"; } container autoconfig { must "not(../ipv6-address)"; presence "Indicates a autoconfig node is configured."; description "Autoconfigure the HSRP IPv6 linklocal address"; container legacy-compatible { presence "Indicates a legacy-compatible node is configured."; description "Autoconfigure for Legacy compatibility (with IOS/NX-OS)"; } // container legacy-compatible } // container autoconfig } // container link-local container globals { description "Global HSRP IPv6 address"; list global { key "address"; description "Global HSRP IPv6 address"; leaf address { type inet:ipv6-address-no-zone; description "Set Global HSRP IPv6 address"; } } // list global } // container globals } // container address leaf priority { type uint32 { range "0..255"; } description "Priority level"; } container preempt { description "Force active if higher priority"; leaf delay { type uint32 { range "0..3600"; } description "Wait before preempting"; } } // container preempt container track-interfaces { description "Configure tracking"; list track-interface { key "track-name"; description "Configure tracking"; leaf track-name { type xr:Interface-name; description "Configure tracking"; } leaf priority-decrement { type uint32 { range "1..255"; } mandatory true; description "Priority decrement"; } } // list track-interface } // container track-interfaces container track-objects { description "Object tracking"; list track-object { key "object-name"; description "Object tracking"; leaf object-name { type xr:Cisco-ios-xr-string { length "1..800"; } description "Object tracking"; } leaf priority-decrement { type uint32 { range "1..255"; } mandatory true; description "Priority decrement"; } } // list track-object } // container track-objects container timers { description "Set hello and hold timers"; leaf msec { type uint32 { range "100..3000"; } must "(../msec2 or ../hold-time2) and not(../hold-time)"; description "Specify hellotime in milliseconds"; } leaf msec2 { type uint32 { range "100..3000"; } must "(../msec or ../hold-time) and not(../hold-time2)"; description "Specify hold time in milliseconds"; } leaf hold-time { type uint32 { range "1..255"; } must "(../msec2 or ../hold-time2) and not(../msec)"; description "Hold time in seconds"; } leaf hold-time2 { type uint32 { range "1..255"; } must "(../msec or ../hold-time) and not(../msec2)"; description "Hold time in seconds"; } } // container timers leaf mac-address { type yang:mac-address; description "Use specified mac address for the virtual router"; } leaf name { type xr:Cisco-ios-xr-string { length "1..800"; } description "MGO session name"; } container bfd { description "Configure BFD parameters"; container fast-detect { presence "indicates a fast-detect node is configured"; description "Enable Fast detection"; container peer { description "Information about HSRP peer for BFD monitoring"; leaf ipv6 { type inet:ipv6-address-no-zone; description "BFD peer interface IPv6 address"; } leaf interface { type xr:Interface-name; must "../ipv6"; description "Select an interface over which to run BFD"; } } // container peer } // container fast-detect } // container bfd } // list group-number-version-1 } // container group-number-version-1s container group-number-version-2s { description "group number version 2"; list group-number-version-2 { key "group-number-version-2-id"; description "group number version 2"; leaf group-number-version-2-id { type uint32 { range "0..4095"; } description "group number version 2"; } container address { description "Enable hot standby protocol for IP"; container link-local { description "HSRP IPv6 linklocal address"; leaf ipv6-address { type inet:ipv6-address-no-zone; description "HSRP IPv6 linklocal address"; } container autoconfig { must "not(../ipv6-address)"; presence "Indicates a autoconfig node is configured."; description "Autoconfigure the HSRP IPv6 linklocal address"; container legacy-compatible { presence "Indicates a legacy-compatible node is configured."; description "Autoconfigure for Legacy compatibility (with IOS/NX-OS)"; } // container legacy-compatible } // container autoconfig } // container link-local container globals { description "Global HSRP IPv6 address"; list global { key "address"; description "Global HSRP IPv6 address"; leaf address { type inet:ipv6-address-no-zone; description "Set Global HSRP IPv6 address"; } } // list global } // container globals } // container address leaf priority { type uint32 { range "0..255"; } description "Priority level"; } container preempt { description "Force active if higher priority"; leaf delay { type uint32 { range "0..3600"; } description "Wait before preempting"; } } // container preempt container track-interfaces { description "Configure tracking"; list track-interface { key "track-name"; description "Configure tracking"; leaf track-name { type xr:Interface-name; description "Configure tracking"; } leaf priority-decrement { type uint32 { range "1..255"; } mandatory true; description "Priority decrement"; } } // list track-interface } // container track-interfaces container track-objects { description "Object tracking"; list track-object { key "object-name"; description "Object tracking"; leaf object-name { type xr:Cisco-ios-xr-string { length "1..800"; } description "Object tracking"; } leaf priority-decrement { type uint32 { range "1..255"; } mandatory true; description "Priority decrement"; } } // list track-object } // container track-objects container timers { description "Set hello and hold timers"; leaf msec { type uint32 { range "100..3000"; } must "(../msec2 or ../hold-time2) and not(../hold-time)"; description "Specify hellotime in milliseconds"; } leaf msec2 { type uint32 { range "100..3000"; } must "(../msec or ../hold-time) and not(../hold-time2)"; description "Specify hold time in milliseconds"; } leaf hold-time { type uint32 { range "1..255"; } must "(../msec2 or ../hold-time2) and not(../msec)"; description "Hold time in seconds"; } leaf hold-time2 { type uint32 { range "1..255"; } must "(../msec or ../hold-time) and not(../msec2)"; description "Hold time in seconds"; } } // container timers leaf mac-address { type yang:mac-address; description "Use specified mac address for the virtual router"; } leaf name { type xr:Cisco-ios-xr-string { length "1..800"; } description "MGO session name"; } container bfd { description "Configure BFD parameters"; container fast-detect { presence "indicates a fast-detect node is configured"; description "Enable Fast detection"; container peer { description "Information about HSRP peer for BFD monitoring"; leaf ipv6 { type inet:ipv6-address-no-zone; description "BFD peer interface IPv6 address"; } leaf interface { type xr:Interface-name; must "../ipv6"; description "Select an interface over which to run BFD"; } } // container peer } // container fast-detect } // container bfd } // list group-number-version-2 } // container group-number-version-2s container subordinate-group-numbers { description "subordinate group number"; list subordinate-group-number { key "subordinate-group-number-id"; description "subordinate group number"; leaf subordinate-group-number-id { type uint32 { range "0..4095"; } description "subordinate group number"; } container address { description "Enable hot standby protocol for IP"; container link-local { description "HSRP IPv6 linklocal address"; leaf ipv6-address { type inet:ipv6-address-no-zone; description "HSRP IPv6 linklocal address"; } container autoconfig { must "not(../ipv6-address)"; presence "Indicates a autoconfig node is configured."; description "Autoconfigure the HSRP IPv6 linklocal address"; container legacy-compatible { presence "Indicates a legacy-compatible node is configured."; description "Autoconfigure for Legacy compatibility (with IOS/NX-OS)"; } // container legacy-compatible } // container autoconfig } // container link-local container globals { description "Global HSRP IPv6 address"; list global { key "address"; description "Global HSRP IPv6 address"; leaf address { type inet:ipv6-address-no-zone; description "Set Global HSRP IPv6 address"; } } // list global } // container globals } // container address leaf mac-address { type yang:mac-address; description "Use specified mac address for the virtual router"; } leaf follow { type xr:Cisco-ios-xr-string { length "1..800"; } description "Follow specified MGO session"; } } // list subordinate-group-number } // container subordinate-group-numbers } // container hsrp } // container ipv6 } // container address-family } // list interface } // container interfaces container message { description "HSRP IOS messages"; container state { description "HSRP state change messages"; container disable { presence "Indicates a disable node is configured."; description "Disable"; } // container disable } // container state } // container message } // container hsrp } // container router } // module Cisco-IOS-XR-um-router-hsrp-cfg
© 2023 YumaWorks, Inc. All rights reserved.