This module contains a collection of YANG definitions for Cisco IOS-XR eigrp package configuration. This module contains defini...
Version: 2019-04-05
module Cisco-IOS-XR-eigrp-cfg { yang-version 1; namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-eigrp-cfg"; prefix eigrp-cfg; import ietf-inet-types { prefix inet; } import Cisco-IOS-XR-types { prefix xr; } import cisco-semver { prefix semver; } import Cisco-IOS-XR-eigrp-datatypes { prefix dt1; } 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 eigrp package configuration. This module contains definitions for the following management objects: eigrp: Configure Neighbor Copyright (c) 2013-2019 by Cisco Systems, Inc. All rights reserved."; revision "2019-04-05" { description "Establish semantic version baseline."; } revision "2018-06-15" { description "Allow min..max in range when min == max."; } revision "2018-04-05" { description "Yang support provided for config."; } revision "2015-11-09" { description "IOS XR 6.0 revision."; } semver:module-version "1.0.0"; typedef Eigrp-metric-version { type enumeration { enum "64bit" { value 0; description "64-bit metrics"; } enum "32bit" { value 1; description "32-bit metrics"; } } description "Eigrp metric version"; } typedef Eigrp-soo { type enumeration { enum "as" { value 1; description "AS:nn format"; } enum "ipv4-address" { value 2; description "IPV4Address:nn format"; } enum "four-byte-as" { value 3; description "AS2.AS:nn format"; } } description "Eigrp soo"; } typedef Eigrp-redist-proto { type enumeration { enum "bgp" { value 1; description "BGP routes"; } enum "connected" { value 2; description "Connected routes"; } enum "eigrp" { value 3; description "EIGRP routes"; } enum "isis" { value 4; description "ISIS routes"; } enum "ospf" { value 5; description "OSPF routes"; } enum "rip" { value 6; description "RIP routes"; } enum "static" { value 7; description "Static routes"; } enum "ospfv3" { value 8; description "OSPFv3 routes"; } enum "subscriber" { value 9; description "Subscriber routes"; } enum "application" { value 10; description "Application routes"; } enum "mobile" { value 11; description "Mobile routes"; } } description "Eigrp redist proto"; } typedef Eigrp-stub { type enumeration { enum "receive-only" { value 1; description "receive only"; } enum "filtered" { value 2; description "filter some routes"; } } description "Eigrp stub"; } typedef Eigrp-delay-unit { type enumeration { enum "ten-microsecond" { value 0; description "Delay in 10's of microsecond"; } enum "picosecond" { value 1; description "Delay in picosecond"; } } description "Eigrp delay unit"; } typedef Eigrp-met { type enumeration { enum "maximum-hops" { value 1; description "Metric maxhops"; } enum "weights" { value 2; description "Metric weights"; } enum "rib-scale" { value 3; description "Metric ribscale"; } enum "version" { value 4; description "Metric version"; } } description "Eigrp met"; } typedef Eigrp-dir { type enumeration { enum "in" { value 1; description "inbound direction"; } enum "out" { value 2; description "outbound direction"; } } description "Eigrp dir"; } typedef Eigrp-timer { type enumeration { enum "active" { value 1; description "Active time"; } enum "route-hold" { value 2; description "Route-hold time"; } enum "signal" { value 3; description "Signal time"; } enum "converge" { value 4; description "Converge time"; } } description "Eigrp timer"; } grouping VARIANCE { description "Common node of default-af, af"; leaf variance { type uint32 { range "1..128"; } description "Control load balancing variance"; } } // grouping VARIANCE grouping REDISTRIBUTE-TABLE { description "Common node of default-af, af"; container redistributes { presence "Indicates a redistributes node is configured."; description "List of redistributed protocols"; grouping REDISTRIBUTE-CONTENT { description "REDISTRIBUTE CONTENT"; leaf policy-name { type string; description "Policy name"; } leaf policy-specified { type boolean; mandatory true; description "TRUE if Policy has been specified"; } } // grouping REDISTRIBUTE-CONTENT list redistribute { key "protocol-name"; description "Redistribute another protocol"; leaf protocol-name { type Eigrp-redist-proto; description "Redistributed protocol"; } uses REDISTRIBUTE-CONTENT; } // list redistribute list redistribute-as-xx { key "as-xx protocol-name"; description "Redistribute another protocol"; leaf as-xx { type uint32 { range "0..65535"; } description "Higher sixteen bits of 4-byte BGP AS number"; } leaf protocol-name { type Eigrp-redist-proto; description "Redistributed protocol"; } uses REDISTRIBUTE-CONTENT; } // list redistribute-as-xx list redistribute-as-yy { key "as-yy protocol-name"; description "Redistribute another protocol"; leaf as-yy { type uint32 { range "0..4294967295"; } description "2-byte or 4-byte BGP AS Number"; } leaf protocol-name { type Eigrp-redist-proto; description "Redistributed protocol"; } uses REDISTRIBUTE-CONTENT; } // list redistribute-as-yy list redistribute-as-xx-as-yy { key "as-xx as-yy protocol-name"; description "Redistribute another protocol"; leaf as-xx { type uint32 { range "0..65535"; } description "Higher sixteen bits of 4-byte BGP AS number"; } leaf as-yy { type uint32 { range "0..4294967295"; } description "2-byte or 4-byte BGP AS Number"; } leaf protocol-name { type Eigrp-redist-proto; description "Redistributed protocol"; } uses REDISTRIBUTE-CONTENT; } // list redistribute-as-xx-as-yy list redistribute-tag-name { key "tag-name protocol-name"; description "Redistribute another protocol"; leaf tag-name { type xr:Cisco-ios-xr-string; description "OSPF/OSPFv3/ISIS/OnePK Application tag name"; } leaf protocol-name { type Eigrp-redist-proto; description "Redistributed protocol"; } uses REDISTRIBUTE-CONTENT; } // list redistribute-tag-name list redistribute-as-xx-tag-name { key "as-xx tag-name protocol-name"; description "Redistribute another protocol"; leaf as-xx { type uint32 { range "0..65535"; } description "Higher sixteen bits of 4-byte BGP AS number"; } leaf tag-name { type xr:Cisco-ios-xr-string; description "OSPF/OSPFv3/ISIS/OnePK Application tag name"; } leaf protocol-name { type Eigrp-redist-proto; description "Redistributed protocol"; } uses REDISTRIBUTE-CONTENT; } // list redistribute-as-xx-tag-name list redistribute-as-yy-tag-name { key "as-yy tag-name protocol-name"; description "Redistribute another protocol"; leaf as-yy { type uint32 { range "0..4294967295"; } description "2-byte or 4-byte BGP AS Number"; } leaf tag-name { type xr:Cisco-ios-xr-string; description "OSPF/OSPFv3/ISIS/OnePK Application tag name"; } leaf protocol-name { type Eigrp-redist-proto; description "Redistributed protocol"; } uses REDISTRIBUTE-CONTENT; } // list redistribute-as-yy-tag-name list redistribute-as-xx-as-yy-tag-name { key "as-xx as-yy tag-name protocol-name"; description "Redistribute another protocol"; leaf as-xx { type uint32 { range "0..65535"; } description "Higher sixteen bits of 4-byte BGP AS number"; } leaf as-yy { type uint32 { range "0..4294967295"; } description "2-byte or 4-byte BGP AS Number"; } leaf tag-name { type xr:Cisco-ios-xr-string; description "OSPF/OSPFv3/ISIS/OnePK Application tag name"; } leaf protocol-name { type Eigrp-redist-proto; description "Redistributed protocol"; } uses REDISTRIBUTE-CONTENT; } // list redistribute-as-xx-as-yy-tag-name } // container redistributes } // grouping REDISTRIBUTE-TABLE grouping PASSIVE-INTERFACE-DEFAULT { description "Common node of default-af, af"; leaf passive-interface-default { type empty; description "Suppress routing updates on all interfaces"; } } // grouping PASSIVE-INTERFACE-DEFAULT grouping DISTANCE { description "Common node of default-af, af"; container distance { description "Set distance for EIGRP routes"; leaf internal-distance { type uint32 { range "1..255"; } description "Internal routes' distance"; } leaf external-distance { type uint32 { range "1..255"; } description "External routes' distance"; } } // container distance } // grouping DISTANCE grouping DEFAULT-ACCEPT-TABLE { description "Common node of default-af, af"; container default-accepts { description "Candidate default policy table"; list default-accept { key "direction"; description "Candidate default behaviour"; leaf direction { type Eigrp-dir; description "Direction (in or out)"; } leaf policy-name { type string; description "Policy name"; } leaf policy-specified { type boolean; mandatory true; description "TRUE if Policy has been specified"; } } // list default-accept } // container default-accepts } // grouping DEFAULT-ACCEPT-TABLE grouping AUTO-SUMMARY { description "Common node of default-af, af"; leaf auto-summary { type empty; description "Enable Auto Summarization"; } } // grouping AUTO-SUMMARY grouping FILTER-POLICY-TABLE { description "Common node of default-af, af"; container filter-policies { description "Inbound and outbound filter policies"; list filter-policy { key "direction"; description "Inbound/outbound policies"; leaf direction { type Eigrp-dir; description "Direction (in or out)"; } leaf policy-name { type string; mandatory true; description "Policy name"; } } // list filter-policy } // container filter-policies } // grouping FILTER-POLICY-TABLE grouping LOG-NEIGHBOR-WARNINGS { description "Common node of default-af, af"; leaf log-neighbor-warnings { type empty; description "Enable/Disable neighbor state change warnings "; } } // grouping LOG-NEIGHBOR-WARNINGS grouping METRIC-TABLE { description "Common node of default-af, af"; container metrics { description "List of metric change behaviours"; list metric { key "metric-name"; description "Modify EIGRP routing metrics and parameters"; leaf metric-name { type Eigrp-met; description "Type of metric change"; } leaf max-hops { type uint32 { range "1..255"; } description "Hop count"; } leaf tos { type uint32 { range "0"; } description "Type of Service (Only TOS 0 supported)"; } leaf k1 { type uint32 { range "0..255"; } description "K1"; } leaf k2 { type uint32 { range "0..255"; } description "K2"; } leaf k3 { type uint32 { range "0..255"; } description "K3"; } leaf k4 { type uint32 { range "0..255"; } description "K4"; } leaf k5 { type uint32 { range "0..255"; } description "K5"; } leaf k6 { type uint32 { range "0..255"; } description "K6"; } leaf rib-scale { type uint32 { range "1..4294967295"; } description "RIB scale"; } leaf metric-version { type Eigrp-metric-version; description "Metric version"; } } // list metric } // container metrics } // grouping METRIC-TABLE grouping AUTONOMOUS-SYSTEM { description "Common node of default-af, af"; leaf autonomous-system { type uint32 { range "1..65535"; } description "Set the autonomous system of a VRF"; } } // grouping AUTONOMOUS-SYSTEM grouping NSF-DISABLE { description "Common node of default-af, af"; leaf nsf-disable { type empty; description "Disable NSF for this address family under this VRF"; } } // grouping NSF-DISABLE grouping MAXIMUM-PATHS { description "Common node of default-af, af"; leaf maximum-paths { type uint32 { range "1..32"; } description "number of paths"; } } // grouping MAXIMUM-PATHS grouping LOG-NEIGHBOR-CHANGES { description "Common node of default-af, af"; leaf log-neighbor-changes { type empty; description "Enable/Disable logginf of neighbor state changes"; } } // grouping LOG-NEIGHBOR-CHANGES grouping INTERFACE-TABLE { description "Common node of default-af, af"; container interfaces { description "List of interfaces"; list interface { key "interface-name"; description "Configuration for an Interface.Deletion of this object also causes deletion of all objectsunder 'Interface' associated with this interface instance."; container interface-metric { description "Metric"; leaf bandwidth { type uint32 { range "1..4294967295"; } units "kbit/s"; description "Bandwidth in Kbits per second"; } leaf delay { type uint32 { range "1..4294967295"; } description "Delay metric, in 10 microsecond units (default) or picosecond units"; } leaf delay-unit { type Eigrp-delay-unit; description "Delay unit"; } leaf reliability { type uint32 { range "0..255"; } description "Reliability metric where 255 is 100% reliable"; } leaf load { type uint32 { range "1..255"; } description "Effective bandwidth metric (Loading) where 255 is 100% loaded"; } } // container interface-metric container remote-neighbor { presence "Indicates a remote-neighbor node is configured."; description "Remote-Neighbors enabled, default is 65535"; leaf enable { type boolean; mandatory true; description "Enable Remote neighbor unicast-listen"; } leaf allow-list { type string; description "Policy name"; } leaf max-neighbors { type uint32 { range "1..65535"; } description "Neighbor count"; } } // container remote-neighbor container bfd { description "Configure BFD parameters"; leaf fast-detect { type boolean; description "Enable BFD fast detection"; } leaf detection-multiplier { type uint32 { range "2..50"; } description "Detect multiplier"; } leaf interval { type uint32 { range "15..3000"; } units "millisecond"; description "Hello interval in milli-seconds"; } } // container bfd container site-of-origin { description "Configure Site-of-origin"; leaf type { type Eigrp-soo; description "SoO type"; } leaf as-xx { type uint32 { range "0..65535"; } description "Higher sixteen bits of 4-byte BGP AS Number"; } leaf as-yy { type uint32 { range "0..4294967295"; } description "2-byte or 4-byte BGP AS Number"; } leaf index { type uint32 { range "0..4294967295"; } description "AS Number Index"; } leaf address { type inet:ipv4-address-no-zone; description "IPv4 address"; } leaf address-index { type uint32 { range "0..65535"; } description "IPv4 address index"; } } // container site-of-origin container authentication { description "Authentication configuration"; leaf keychain { type string; description "Authentication keychain configuration"; } } // container authentication container summary-addresses { description "List of summary addresses under this interface"; list summary-address { key "summary-address-addr summary-address-prefix"; description "Summary address"; leaf summary-address-addr { type inet:ip-address; description "Summary Prefix (address part)"; } leaf summary-address-prefix { type uint16 { range "0..128"; } description "Summary Prefix (prefix part)"; } leaf distance { type uint32 { range "1..255"; } mandatory true; description "Administrative distance"; } } // list summary-address } // container summary-addresses container interface-filter-policies { description "List of filter policies"; list interface-filter-policy { key "direction"; description "none"; leaf direction { type Eigrp-dir; description "Direction (in or out)"; } leaf policy-name { type string; mandatory true; description "Policy name"; } } // list interface-filter-policy } // container interface-filter-policies container interface-static-neighbors { description "List of Neighbors"; list interface-static-neighbor { key "neighbor-address"; description "Configure Neighbor"; leaf neighbor-address { type inet:ip-address-no-zone; description "Neighbor IP address"; } leaf max-hops { type uint32 { range "2..100"; } mandatory true; description "Number of hops"; } } // list interface-static-neighbor } // container interface-static-neighbors leaf hold-time { type uint32 { range "1..65535"; } units "second"; description "Neighbor hold time (in seconds)"; } leaf bandwidth-percent { type uint32 { range "1..999999"; } units "percentage"; description "Bandwidth limit"; } leaf passive-interface { type boolean; description "Suppress routing updates on an interface"; } leaf hello-interval { type uint32 { range "1..65535"; } units "second"; description "Interval (in seconds)"; } leaf next-hop-self { type empty; description "Disable next-hop-self"; } leaf enable { type empty; description "Enable Interface configuration"; } leaf split-horizon { type empty; description "Configure split horizon behaviour"; } leaf interface-name { type xr:Interface-name; description "Interface name"; } } // list interface } // container interfaces } // grouping INTERFACE-TABLE grouping TIMERS-TABLE { description "Common node of default-af, af"; container timers { description "List of timer configurations"; list timer { key "timer-type"; description "Configure EIGRP timers"; leaf timer-type { type Eigrp-timer; description "Type of timer"; } leaf active-time { type uint32; units "second"; description "Active Time (in seconds)"; } leaf hold-time { type uint32 { range "20..6000"; } units "second"; description "Hold time (in seconds)"; } leaf signal-time { type uint32 { range "10..30"; } units "second"; description "Signal time (in seconds)"; } leaf converge-time { type uint32 { range "60..5000"; } units "second"; description "Converge time (in seconds)"; } } // list timer } // container timers } // grouping TIMERS-TABLE grouping ROUTER-ID { description "Common node of default-af, af"; leaf router-id { type inet:ipv4-address-no-zone; description "Set router ID"; } } // grouping ROUTER-ID grouping DEFAULT-METRIC { description "Common node of default-af, af"; container default-metric { description "Set metric of redistributed routes"; leaf bandwidth { type uint32 { range "1..4294967295"; } units "kbit/s"; description "Bandwidth in Kbits per second"; } leaf delay { type uint32 { range "1..4294967295"; } description "Delay metric, in 10 microsecond units"; } leaf reliability { type uint32 { range "0..255"; } description "Reliability metric where 255 is 100% reliable"; } leaf load { type uint32 { range "1..255"; } description "Effective bandwidth metric (Loading) where 255 is 100% loaded"; } leaf mtu { type uint32 { range "1..65535"; } description "Maximum Transmission Unit metric of the path"; } } // container default-metric } // grouping DEFAULT-METRIC grouping STUB { description "Common node of default-af, af"; container stub { presence "enable stub"; description "EIGRP stub configuration"; leaf type { type Eigrp-stub; description "Stub config type"; } leaf connected { type boolean; description "Do advertise connected routes"; } leaf redistributed { type boolean; description "Do advertise redistributed routes"; } leaf static { type boolean; description "Do advertise static routes"; } leaf summary { type boolean; description "Do advertise summary routes"; } } // container stub } // grouping STUB container eigrp { description "Configure Neighbor"; container processes { description "Process related configuration"; list process { key "process-id"; description "Configuration for a particular EIGRP process."; container vrfs { description "List of VRFs"; list vrf { key "vrf-name"; description "Non-default VRF configuration.Deletion of this object also causes deletion of all objectsunder 'VRF' associated with this VRF instance."; container afs { description "Address family list in a VRF"; list af { key "af-name"; description "Configuration under an AF in a non-default VRF context.Deletion of this object also causes deletion of all objectsunder 'AF' associated with this AF instance."; container all-neighbors-maximum-prefix { description "Maximum number of IP prefixes acceptable in aggregate, from neighbors"; leaf max-prefix { type uint32 { range "1..4294967295"; } description "Number of IP prefixes for maximum-prefix limit"; } leaf threshold { type uint32 { range "1..100"; } units "percentage"; description "Configure threshold percentage for warnings"; } leaf dampened { type boolean; description "Enable decay penalty to be applied to time period"; } leaf reset-time { type uint32; description "Time to reset restart count"; } leaf restart { type uint32; description "Shutdown time after hitting max-prefix limit"; } leaf restart-count { type uint32; description "Restart count after hitting max-prefix limit"; } leaf warning-only { type boolean; description "Only a warning is logged when prefix limit is reached"; } } // container all-neighbors-maximum-prefix container redist-maximum-prefix { description "Maximum number of prefixes redistributed to protocol"; leaf max-prefix { type uint32 { range "1..4294967295"; } description "Number of IP prefixes for maximum-prefix limit"; } leaf threshold { type uint32 { range "1..100"; } units "percentage"; description "Configure threshold percentage for warnings"; } leaf dampened { type uint32; description "Enable decay penalty to be applied to time period"; } leaf reset-time { type uint32; description "Time to reset restart count"; } leaf restart { type uint32; description "Shutdown time after hitting max-prefix limit"; } leaf restart-count { type uint32; description "Restart count after hitting max-prefix limit"; } leaf warning-only { type boolean; description "Only a warning is logged when prefix limit is reached"; } } // container redist-maximum-prefix container neighbor-maximum-prefixes { description "List of neighbors with prefix limits"; list neighbor-maximum-prefix { key "neighbor-address"; description "Neighbor prefix limits configuration"; leaf neighbor-address { type inet:ip-address-no-zone; description "Neighbor IP address"; } leaf max-prefix { type uint32 { range "1..4294967295"; } description "Number of IP prefixes for maximum-prefix limit"; } leaf threshold { type uint32 { range "1..100"; } units "percentage"; description "Configure threshold percentage for warnings"; } leaf warning-only { type boolean; description "Only a warning is logged when prefix limit is reached"; } } // list neighbor-maximum-prefix } // container neighbor-maximum-prefixes container maximum-prefix { description "Maximum number of IP prefixes acceptable in aggregate"; leaf max-prefix { type uint32 { range "1..4294967295"; } description "Number of IP prefixes for maximum-prefix limit"; } leaf threshold { type uint32 { range "1..100"; } units "percentage"; description "Configure threshold percentage for warnings"; } leaf dampened { type boolean; description "Enable decay penalty to be applied to time period"; } leaf reset-time { type uint32; description "Time to reset restart count"; } leaf restart { type uint32; description "Shutdown time after hitting max-prefix limit"; } leaf restart-count { type uint32; description "Restart count after hitting max-prefix limit"; } leaf warning-only { type boolean; description "Only a warning is logged when prefix limit is reached"; } } // container maximum-prefix leaf enable { type empty; description "Enable an Address Family under a non-default VRF"; } leaf af-name { type dt1:Eigrp-af; description "Address Family"; } uses AUTO-SUMMARY; uses STUB; uses MAXIMUM-PATHS; uses REDISTRIBUTE-TABLE; uses ROUTER-ID; uses LOG-NEIGHBOR-WARNINGS; uses FILTER-POLICY-TABLE; uses DEFAULT-METRIC; uses AUTONOMOUS-SYSTEM; uses VARIANCE; uses METRIC-TABLE; uses TIMERS-TABLE; uses NSF-DISABLE; uses DEFAULT-ACCEPT-TABLE; uses PASSIVE-INTERFACE-DEFAULT; uses INTERFACE-TABLE; uses DISTANCE; uses LOG-NEIGHBOR-CHANGES; } // list af } // container afs leaf enable { type empty; description "Enable a non-default VRF under the EIGRP process"; } leaf vrf-name { type xr:Cisco-ios-xr-string; description "VRF name"; } } // list vrf } // container vrfs container default-vrf { description "Default VRF configuration.Deletion of this object also causes deletion of all objectsunder 'Process' associated with this process instance."; container default-afs { description "Address family list in the default context"; list default-af { key "af-name"; description "Configuration under an AF in the default context.Deletion of this object also causes deletion of all objectsunder 'DefaultAF' associated with this AF instance."; leaf enable { type empty; description "Enable an Address Family under a default VRF"; } leaf af-name { type dt1:Eigrp-af; description "Address Family"; } uses AUTO-SUMMARY; uses STUB; uses MAXIMUM-PATHS; uses REDISTRIBUTE-TABLE; uses ROUTER-ID; uses LOG-NEIGHBOR-WARNINGS; uses FILTER-POLICY-TABLE; uses DEFAULT-METRIC; uses AUTONOMOUS-SYSTEM; uses VARIANCE; uses METRIC-TABLE; uses TIMERS-TABLE; uses NSF-DISABLE; uses DEFAULT-ACCEPT-TABLE; uses PASSIVE-INTERFACE-DEFAULT; uses INTERFACE-TABLE; uses DISTANCE; uses LOG-NEIGHBOR-CHANGES; } // list default-af } // container default-afs leaf enable { type empty; description "Enable EIGRP Default VRF configurationDeletion of this object also causes deletion of all objectsunder 'Process' associated with this process instance."; } } // container default-vrf leaf nsf-disable { type empty; description "Disable NSF for all address families under all VRF's. It takes precedence over the NSF related configuration in the address family submode"; } leaf process-id { type xr:Cisco-ios-xr-string { length "1..32"; } description "AS number (1 - 65535) or Virutual instance name of the EIGRP process"; } } // list process } // container processes } // container eigrp } // module Cisco-IOS-XR-eigrp-cfg
© 2023 YumaWorks, Inc. All rights reserved.