This module contains a collection of YANG definitions for monitoring the operation of ospf protocol in a Network Element. Copyri...
Version: 2020-07-01
module Cisco-IOS-XE-ospf-oper { yang-version 1; namespace "http://cisco.com/ns/yang/Cisco-IOS-XE-ospf-oper"; prefix ospf-ios-xe-oper; import Cisco-IOS-XE-ospf-common { prefix ospf-ios-xe-common; } import ietf-inet-types { prefix inet; } import cisco-semver { prefix cisco-semver; } organization "Cisco Systems, Inc."; contact "Cisco Systems, Inc. Customer Service Postal: 170 W Tasman Drive San Jose, CA 95134 Tel: +1 1800 553-NETS E-mail: cs-yang@cisco.com"; description "This module contains a collection of YANG definitions for monitoring the operation of ospf protocol in a Network Element. Copyright (c) 2016-2020 by Cisco Systems, Inc. All rights reserved."; revision "2020-07-01" { description "Added OSPFv3 interface, neighbor and LS database"; reference "1.4.0"; } revision "2019-05-01" { description "Added semantic version"; reference "1.3.0"; } revision "2018-10-29" { description "Cleaned up spelling errors in descriptions."; reference "1.2.0"; } revision "2018-02-01" { description "Add Link State data"; reference "1.1.0"; } revision "2017-10-10" { description "Initial revision"; reference "1.0.0"; } cisco-semver:module-version "1.4.0"; cisco-semver:module-version "1.3.0"; cisco-semver:module-version "1.2.0"; cisco-semver:module-version "1.1.0"; cisco-semver:module-version "1.0.0"; typedef address-family { type enumeration { enum "address-family-ipv4" { value 0; } enum "address-family-ipv6" { value 1; } } description "Address family type"; } typedef ospf-operation-mode { type enumeration { enum "ospf-ships-in-the-night" { value 0; description "Ships-in-the-night operation mode in which each OSPF instance carries only one address family"; } } description "OSPF operational mode"; } typedef ospf-network-type { type enumeration { enum "ospf-broadcast" { value 0; description "OSPF broadcast multi-access network"; } enum "ospf-non-broadcast" { value 1; description "OSPF Non-Broadcast Multi-Access (NBMA) network"; } enum "ospf-point-to-multipoint" { value 2; description "OSPF point-to-multipoint network"; } enum "ospf-point-to-point" { value 3; description "OSPF point-to-point network"; } } description "OSPF network type"; } typedef ospf-auth-type { type enumeration { enum "ospf-auth-ipsec" { value 0; } enum "ospf-auth-trailer-keychain" { value 1; } enum "ospf-auth-trailer-key" { value 2; } enum "ospf-auth-type-none" { value 3; } } description "OSPF Authentication type"; } typedef nbr-state-type { type enumeration { enum "ospf-nbr-down" { value 1; description "Neighbor state down"; } enum "ospf-nbr-attempt" { value 2; description "Neighbor attempt state"; } enum "ospf-nbr-init" { value 3; description "Neighbor initial state"; } enum "ospf-nbr-two-way" { value 4; description "Neighbor 2-way state"; } enum "ospf-nbr-exchange-start" { value 5; description "Neighbor exchange start state"; } enum "ospf-nbr-exchange" { value 6; description "Neighbor exchange state"; } enum "ospf-nbr-loading" { value 7; description "Neighbor loading state"; } enum "ospf-nbr-full" { value 8; description "Neighbor full state"; } } description "OSPF neighbor state type"; } typedef ospfv2-lsa-type { type enumeration { enum "ospfv2-lsa-type-unsupported-lsa-type" { value 0; } enum "ospfv2-lsa-type-router" { value 1; } enum "ospfv2-lsa-type-network" { value 2; } enum "ospfv2-lsa-type-summary-net" { value 3; } enum "ospfv2-lsa-type-summary-router" { value 4; } enum "ospfv2-lsa-type-as-external" { value 5; } enum "ospfv2-lsa-type-nssa" { value 6; } enum "ospfv2-lsa-type-link-scope-opaque" { value 7; } enum "ospfv2-lsa-type-area-scope-opaque" { value 8; } enum "ospfv2-lsa-type-as-scope-opaque" { value 9; } } description "Link State Advertisement type"; } typedef ospf-external-metric-type { type enumeration { enum "ospf-ext-metric-type-1" { value 0; } enum "ospf-ext-metric-type-2" { value 1; } } description "External metric type"; } typedef ospfv2-intf-state { type enumeration { enum "ospfv2-interface-state-down" { value 0; description "The interface is in the down state"; } enum "ospfv2-interface-state-loopback" { value 1; description "The interface is in loopback state"; } enum "ospfv2-interface-state-waiting" { value 2; description "The interface is in waiting state"; } enum "ospfv2-interface-state-point-to-mpoint" { value 3; description "The interface is in point-to-multipoint state"; } enum "ospfv2-interface-state-point-to-point" { value 4; description "The interface is in point-to-point state"; } enum "ospfv2-interface-state-dr" { value 5; description "The interface is in the designated router state"; } enum "ospfv2-interface-state-backup" { value 6; description "The interface is providing backup for another interface"; } enum "ospfv2-interface-state-other" { value 7; description "The interface is in a state other than the ones numerated in this list"; } } description "The possible states that an interface can be in"; } typedef ospfv2-auth-type-selection { type enumeration { enum "ospfv2-auth-none" { value 0; description "No authentication configured"; } enum "ospfv2-auth-trailer-key" { value 1; description "Authentication uses the trailer key"; } enum "ospfv2-auth-trailer-key-chain" { value 2; description "Authentication uses a trailer key chain"; } } description "The authentication type"; } typedef ospfv2-crypto-algorithm { type enumeration { enum "ospfv2-crypto-cleartest" { value 0; description "The OSPFv2 authentication is sent as cleartext"; } enum "ospfv2-crypto-md5" { value 1; description "The OSPFv2 authentication is encrypted using Message Digest 5"; } } description "The algorithm in use"; } typedef ospfv3-lsa-type { type enumeration { enum "ospfv3-lsa-type-unsupported" { value 0; description "OSPFv3 unsupported LSA"; } enum "ospfv3-lsa-type-router" { value 1; description "OSPFv3 Router-LSA"; } enum "ospfv3-lsa-type-network" { value 2; description "OSPFv3 Network-LSA"; } enum "ospfv3-lsa-type-inter-area-prefix" { value 3; description "OSPFv3 Inter-Area-Prefix-LSA"; } enum "ospfv3-lsa-type-inter-area-router" { value 4; description "OSPFv3 Inter-Area-Router-LSA"; } enum "ospfv3-lsa-type-nssa" { value 5; description "OSPFv3-NSSA-LSA"; } enum "ospfv3-lsa-type-prefix" { value 6; description "OSPFv3 Intra-Area-Prefix-LSA"; } } description "Link State Advertisement type"; } typedef ospfv3-rtr-lsa-lnk-type { type enumeration { enum "link-type-unknown" { value 0; description "Link type unknown"; } enum "link-type-router" { value 1; description "Link type router"; } enum "link-type-transit-network" { value 2; description "Link type transit network"; } enum "link-type-reserved" { value 3; description "Link type reserved"; } enum "link-type-virtual" { value 4; description "Link type virtual"; } } description "OSPFv3 router LSA link type"; } typedef ospfv3-ase-metric-type { type enumeration { enum "metric-type-unknown" { value 0; description "Unknown metric type"; } enum "metric-type1" { value 1; description "Metric type 1, comparable directly to link state metric "; } enum "metric-type2" { value 2; description "Metric type 2, larger than any link state path."; } } description "OSPFv3 external LSA metric type"; } typedef ospfv3-ipsec-auth-algo { type enumeration { enum "invalid" { value 0; description "Invalid authentication"; } enum "md5" { value 1; description "MD5 authentication"; } enum "sha1" { value 2; description "SHA1 authentication"; } } description "IPSEC authentication algorithm type"; } typedef lsa-flag-options { type bits { bit lsa-flag-options-dc { position 0; } bit lsa-flag-options-p { position 1; } bit lsa-flag-options-mc { position 2; } bit lsa-flag-options-e { position 3; } bit lsa-flag-options-upward { position 4; } bit lsa-flag-options-mt { position 5; } bit lsa-flag-options-r { position 6; } bit lsa-flag-options-af { position 7; } } description "LSA options"; } typedef ospfv2-lsa-body-flags-options { type bits { bit ospv2-lsa-body-flag-options-v { position 0; } bit ospv2-lsa-body-flag-options-e { position 1; } bit ospv2-lsa-body-flag-options-b { position 2; } } description "OSPFv2 LSA body flags"; } typedef ospfv3-lsa-options { type bits { bit ospfv3-lsa-flag-dc { position 0; } bit ospfv3-lsa-flag-r { position 1; } bit ospfv3-lsa-flag-n { position 2; } bit ospfv3-lsa-flag-e { position 3; } bit ospfv3-lsa-flag-v6 { position 4; } bit ospfv3-lsa-flag-af { position 5; } } description "The flags associated with the OSPFv3 LSA"; } typedef ospfv3-lsa-body-flag-options { type bits { bit ospfv3-lsa-body-flag-options-v { position 0; } bit ospfv3-lsa-body-flag-options-e { position 1; } bit ospfv3-lsa-body-flag-options-b { position 2; } bit ospfv3-lsa-body-flag-options-nt { position 3; } } description "OSPFv3 LSA body flags"; } typedef ospfv2-lsa-flag-options { type bits { bit ospfv2-lsa-flag-options-mt { position 0; } bit ospfv2-lsa-flag-options-e { position 1; } bit ospfv2-lsa-flag-options-mc { position 2; } bit ospfv2-lsa-flag-options-np { position 3; } bit ospfv2-lsa-flag-options-l { position 4; } bit ospfv2-lsa-flag-options-dc { position 5; } bit ospfv2-lsa-flag-options-o { position 6; } bit ospfv2-lsa-flag-options-dn { position 7; } } description "Link State Advertisement options"; } typedef ospfv2-router-lsa-bits { type bits { bit ospfv2-router-lsa-bits-v { position 0; } bit ospfv2-router-lsa-bits-e { position 1; } bit ospfv2-router-lsa-bits-b { position 2; } bit ospfv2-router-lsa-bits-nt { position 3; } } description "Router Link State Advertisement bits"; } typedef ospfv3-rtr-lsa-bits { type bits { bit ospfv3-rtr-lsa-bits-v { position 0; description "OSPFv3 router LSA bit for virtual endpoint"; } bit ospfv3-rtr-lsa-bits-e { position 1; description "OSPFv3 router LSA bit for AS border endpoint"; } bit ospfv3-rtr-lsa-bits-b { position 2; description "OSPFv3 router LSA bit for area border"; } bit ospfv3-rtr-lsa-bits-nt { position 3; description "OSPFv3 router LSA bit for NSSA translation"; } } description "OSPFv3 router link state advertisement bits"; } typedef ospfv3-lsa-pfx-opts { type bits { bit nu-bit { position 0; description "NU Bit, when set, the prefix should be excluded from IPv6 unicast calculations."; } bit la-bit { position 1; description "LA bit, when set, the prefix is actually an IPv6 interface address of the Advertising Router."; } bit p-bit { position 2; description "P bit, when set, the NSSA area prefix should be translated to an AS External LSA and advertised by the translating NSSA Border Router."; } bit dn-bit { position 3; description "DN bit, when set, the inter-area-prefix LSA or AS-external LSA prefix has been advertised as an L3 VPN prefix."; } } description "OSPFv3 LSA prefix options"; } typedef ospfv3-lsa-flag-opts { type bits { bit af-bit { position 0; description "AF bit, when set, the router supports OSPFv3 Address Families as in RFC 5838."; } bit dc-bit { position 1; description "DC bit, when set,the router supports demand circuits."; } bit r-bit { position 2; description "R bit, when set, the originator is an active router."; } bit n-bit { position 3; description "N bit, when set, the router is attached to an NSSA"; } bit e-bit { position 4; description "E bit, this bit describes the way AS-external LSAs are flooded"; } bit v6-bit { position 5; description "V6 bit, if clear, the router or link should be excluded from IPv6 routing calculation"; } } description "OSPFv3 LSA options"; } grouping ospfv2-unknown-sub-tlv { description "OSPF V2 unknown Sub TLV"; leaf type { type uint16; description "TLV type"; } leaf length { type uint16; description "TLV length"; } leaf-list value { type uint8; ordered-by user; description "TLV value"; } } // grouping ospfv2-unknown-sub-tlv grouping ospfv2-link-tlv { description "OSPF V2 Link TLV"; leaf link-type { type uint8; description "Link type"; } leaf link-id { type uint32; description "Link ID"; } leaf-list local-if-ipv4-addr { type inet:ip-address; ordered-by user; description "List of local interface IPv4 addresses"; } leaf-list local-remote-ipv4-addr { type inet:ip-address; ordered-by user; description "List of remote interface IPv4 addresses"; } leaf te-metric { type uint32; description "TE metric"; } leaf max-bandwidth { type decimal64 { fraction-digits 2; } description "Maximum bandwidth"; } leaf max-reservable-bandwidth { type decimal64 { fraction-digits 2; } description "Maximum reservable bandwidth"; } leaf unreserved-bandwidth { type decimal64 { fraction-digits 2; } description "Unreserved bandwidth"; } leaf admin-group { type uint32; description "Administrative group/Resource class/Color"; } } // grouping ospfv2-link-tlv grouping ospfv2-unknown-tlv { description "OSPFv2 unknown type TLV"; leaf type { type uint16; description "TLV type"; } leaf length { type uint16; description "TLV length"; } leaf-list value { type uint8; ordered-by user; description "TLV value"; } } // grouping ospfv2-unknown-tlv grouping ospfv2-external { description "external LSA"; leaf mt-id { type uint32; description "MT-ID for topology enabled on the link"; } leaf metric { type uint32; description "Metric for the topology"; } leaf forwarding-address { type inet:ip-address; description "Forwarding address"; } leaf external-route-tag { type uint32; description "Route tag"; } } // grouping ospfv2-external grouping ospfv2-topology { description "OSPFv2 topology"; leaf mt-id { type uint32; description "MT-ID for topology enabled link"; } leaf metric { type uint16; description "Metric for the topology"; } } // grouping ospfv2-topology grouping ospfv2-link-key { description "OSPFv2 link key"; leaf link-id { type uint32; description "Link ID"; } leaf link-data { type uint32; description "Link data"; } } // grouping ospfv2-link-key grouping ospfv2-link { description "OSPFv2 link"; leaf type { type uint8; description "Link type"; } list ospfv2-topology { key "mt-id"; description "Topology specific information"; uses ospf-ios-xe-oper:ospfv2-topology; } // list ospfv2-topology } // grouping ospfv2-link grouping link-scope-lsa-key { description "Link scope LSA key"; leaf lsa-id { type uint32; description "LSA ID"; } leaf adv-router { type inet:ip-address; description "Advertising router"; } } // grouping link-scope-lsa-key grouping ospfv2-network { description "OSPFv2 network info"; leaf network-mask { type inet:ip-address; description "IP network mask"; } leaf-list attached-router { type uint32; ordered-by user; description "List of the routers attached to the network"; } } // grouping ospfv2-network grouping ospfv2-lsa-body { description "OSPFv2 LSA body"; leaf num-of-links { type uint16; description "Number of links"; } container network { description "Network details"; uses ospf-ios-xe-oper:ospfv2-network; } // container network leaf summary-mask { type inet:ip-address; description "Summary mask"; } leaf external-mask { type inet:ip-address; description "External mask"; } leaf body-flag-options { type ospfv2-lsa-body-flags-options; description "LSA body flags"; } } // grouping ospfv2-lsa-body grouping lsa-header { description "LSA header"; leaf age { type uint16; description "LSA age"; } leaf type { type uint16; description "LSA type"; } leaf adv-router { type uint32; description "LSA advertising router"; } leaf seq-num { type string; description "LSA sequence number"; } leaf checksum { type string; description "LSA checksum"; } leaf length { type uint16; description "LSA length"; } } // grouping lsa-header grouping ospfv2-header { description "OSPFv2 header"; leaf lsa-id { type inet:ip-address; description "LSA ID"; } leaf opaque-type { type uint8; description "Opaque type"; } leaf opaque-id { type uint32; description "Opaque ID"; } leaf age { type uint16; description "LSA age"; } leaf type { type uint16; description "LSA type"; } leaf adv-router { type uint32; description "LSA advertising router"; } leaf seq-num { type string; description "LSA sequence number"; } leaf checksum { type string; description "LSA checksum"; } leaf length { type uint16; description "LSA length"; } leaf flag-options { type lsa-flag-options; description "LSA options"; } } // grouping ospfv2-header grouping ospfv2-lsa { description "OSPFv2 LSA"; container header { description "Decoded OSPFv2 LSA header data"; uses ospf-ios-xe-oper:ospfv2-header; } // container header container lsa-body { description "Decoded OSPFv2 LSA body data"; uses ospf-ios-xe-oper:ospfv2-lsa-body; } // container lsa-body } // grouping ospfv2-lsa grouping ospfv3-header { description "OSPFv3 header"; leaf lsa-id { type inet:ip-address; description "LSA ID"; } container lsa-header { description "LSA header"; uses ospf-ios-xe-oper:lsa-header; } // container lsa-header leaf lsa-hdr-options { type ospfv3-lsa-options; description "OSPFv3 LSA options"; } } // grouping ospfv3-header grouping ospfv3-network { description "OSPFv3 network LSA"; leaf-list attached-router { type uint32; ordered-by user; description "List of the routers attached to the network"; } leaf lsa-net-options { type ospfv3-lsa-options; description "Network LSA options"; } } // grouping ospfv3-network grouping ospfv3-inter-area-prefix { description "OSPFv3 inter area router LSA"; leaf metric { type uint32; description "Metric"; } leaf ia-prefix { type string; description "Inter area Prefix"; } leaf ia-prefix-options { type string; description "Inter area prefix options"; } } // grouping ospfv3-inter-area-prefix grouping ospfv3-inter-area-router { description "OSPFv3 inter area router info"; leaf metric { type uint32; description "Metric"; } leaf destination-router-id { type uint32; description "Router ID of the router being described by the LSA"; } leaf lsa-ia-options { type ospfv3-lsa-options; description "Inter area LSA options"; } } // grouping ospfv3-inter-area-router grouping ospfv3-lsa-external-flags { description "OSPFv3 LSA external flags"; leaf e-flag { type boolean; description "When set, the metric specified is a Type 2 external metric"; } } // grouping ospfv3-lsa-external-flags grouping ospfv3-lsa-external { description "OSPFv3 AS-External and NSSA LSA"; leaf metric { type uint32; description "Metric"; } container flags { description "LSA Flags"; uses ospf-ios-xe-oper:ospfv3-lsa-external-flags; } // container flags leaf referenced-ls-type { type uint16; description "Referenced Link State type"; } leaf external-prefix { type string; description "Prefix"; } leaf external-prefix-options { type string; description "Prefix options"; } leaf forwarding-address { type inet:ip-address; description "Forwarding address"; } leaf external-route-tag { type uint32; description "Route tag"; } leaf referenced-link-state-id { type uint32; description "Referenced Link State ID"; } } // grouping ospfv3-lsa-external grouping ospfv3-nssa { description "OSPFv3 NSSA LSA"; container lsa-nssa-external { description "NSSA LSA"; uses ospf-ios-xe-oper:ospfv3-lsa-external; } // container lsa-nssa-external } // grouping ospfv3-nssa grouping ospfv3-link-data { description "OSPFv3 Link Data"; leaf rtr-priority { type uint8; description "Router priority of the interface"; } leaf link-local-interface-address { type inet:ip-address; description "The originating router's link-local interface address on the link"; } leaf num-of-prefixes { type uint32; description "Number of prefixes"; } leaf lsa-id-options { type ospfv3-lsa-options; description "Link data LSA options"; } } // grouping ospfv3-link-data grouping ospfv3-intra-area-prefix { description "OSPFv3 intra area prefix LSA"; leaf referenced-ls-type { type uint16; description "Referenced Link State type"; } leaf referenced-link-state-id { type uint32; description "Referenced Link State ID"; } leaf referenced-adv-router { type inet:ip-address; description "Referenced Advertising Router"; } leaf num-of-prefixes { type uint16; description "Number of prefixes"; } } // grouping ospfv3-intra-area-prefix grouping ospfv3-lsa-body { description "Decoded OSPFv3 LSA body data"; container network { description "OSPFv3 network"; uses ospf-ios-xe-oper:ospfv3-network; } // container network container prefix { description "OSPFv3 inter area prefix"; uses ospf-ios-xe-oper:ospfv3-inter-area-prefix; } // container prefix container ia-router { description "OSPFv3 inter area router"; uses ospf-ios-xe-oper:ospfv3-inter-area-router; } // container ia-router container lsa-external { description "OSPFv3 LSA external"; uses ospf-ios-xe-oper:ospfv3-lsa-external; } // container lsa-external container nssa { description "OSPFv3 NSSA"; uses ospf-ios-xe-oper:ospfv3-nssa; } // container nssa container link-data { description "OSPFv3 Link data"; uses ospf-ios-xe-oper:ospfv3-link-data; } // container link-data container ia-prefix { description "OSPFv3 Intra area prefixes"; uses ospf-ios-xe-oper:ospfv3-intra-area-prefix; } // container ia-prefix leaf lsa-flag-options { type ospfv3-lsa-options; description "LSA options"; } leaf lsa-body-flags { type ospfv3-lsa-body-flag-options; description "LSA Body Flags"; } } // grouping ospfv3-lsa-body grouping ospfv3-lsa { description "OSPFv3 LSA"; container header { description "Decoded OSPFv3 LSA header"; uses ospf-ios-xe-oper:ospfv3-header; } // container header container lsa-body { description "Decoded OSPFv3 LSA body"; uses ospf-ios-xe-oper:ospfv3-lsa-body; } // container lsa-body } // grouping ospfv3-lsa grouping ospfv3-link-key { description "OSPFv3 link key"; leaf interface-id { type uint32; description "Interface ID"; } leaf neighbor-interface-id { type uint32; description "Neighbor interface ID"; } leaf neighbor-router-id { type uint32; description "Neighbor router ID"; } } // grouping ospfv3-link-key grouping ospfv3-link { description "OSPFv3 link"; leaf type { type uint8; description "Link type"; } leaf metric { type uint16; description "Metric"; } } // grouping ospfv3-link grouping ospfv3-prefix-list { description "OSPFv3 prefix list"; leaf prefix { type string; description "Prefix"; } leaf prefix-options { type string; description "Prefix options"; } } // grouping ospfv3-prefix-list grouping multi-topology { description "Multi topology"; leaf name { type string; description "One of the topology enabled on this interface"; } } // grouping multi-topology grouping link-scope-lsa { description "Link scope LSA"; leaf decoded-completed { type boolean; description "The OSPF LSA body is fully decoded"; } leaf-list raw-data { type uint8; ordered-by user; description "The complete LSA in network byte order as received/sent over the wire"; } leaf version { type uint32; description "Version"; } container ospfv2-lsa { description "OSPFv2 LSA"; uses ospf-ios-xe-oper:ospfv2-lsa; } // container ospfv2-lsa list ospfv2-link { key "link-id link-data"; description "OSPFv2 LSA link"; uses ospf-ios-xe-oper:ospfv2-link-key; uses ospf-ios-xe-oper:ospfv2-link; } // list ospfv2-link list ospfv2-topology { key "mt-id"; description "Summary LSA"; uses ospf-ios-xe-oper:ospfv2-topology; } // list ospfv2-topology list ospfv2-external { key "mt-id"; description "External LSA"; uses ospf-ios-xe-oper:ospfv2-external; } // list ospfv2-external list ospfv2-unknown-tlv { key "type"; description "OSPFv2 Unknown TLV"; uses ospf-ios-xe-oper:ospfv2-unknown-tlv; } // list ospfv2-unknown-tlv container ospfv3-lsa-val { description "OSPFv3 LSA"; uses ospf-ios-xe-oper:ospfv3-lsa; } // container ospfv3-lsa-val list ospfv3-link { key "interface-id neighbor-interface-id neighbor-router-id"; description "OSPFv3 links"; uses ospf-ios-xe-oper:ospfv3-link-key; uses ospf-ios-xe-oper:ospfv3-link; } // list ospfv3-link list ospfv3-prefix-list { key "prefix"; description "OSPFv3 prefix-list"; uses ospf-ios-xe-oper:ospfv3-prefix-list; } // list ospfv3-prefix-list list ospfv3-ia-prefix { key "prefix"; description "OSPFv3 intra-area prefix-list"; uses ospf-ios-xe-oper:ospfv3-prefix-list; } // list ospfv3-ia-prefix list multi-topology { key "name"; description "OSPF multi-topology interface augmentation"; uses ospf-ios-xe-oper:multi-topology; } // list multi-topology leaf router-address { type inet:ip-address; description "Router address"; } container tlv { description "Link TLV"; uses ospf-ios-xe-oper:ospfv2-link-tlv; } // container tlv list unknown-sub-tlv { key "type"; description "OSPFv2 Unknown sub TLV"; uses ospf-ios-xe-oper:ospfv2-unknown-sub-tlv; } // list unknown-sub-tlv } // grouping link-scope-lsa grouping area-scope-lsa-key { description "OSPF area scope LSA key"; leaf lsa-type { type uint32; description "LSA Type"; } leaf adv-router { type inet:ip-address; description "Advertising router"; } } // grouping area-scope-lsa-key grouping area-scope-lsa { description "OSPF area scope LSA"; leaf decoded-completed { type boolean; description "The OSPF LSA body is fully decoded"; } leaf-list raw-data { type uint8; ordered-by user; description "The complete LSA in network byte order as received/sent over the wire"; } container ospfv2-lsa { description "OSPFv2 LSA"; uses ospf-ios-xe-oper:ospfv2-lsa; } // container ospfv2-lsa list ospfv2-link { key "link-id link-data"; description "Router LSA link"; uses ospf-ios-xe-oper:ospfv2-link-key; uses ospf-ios-xe-oper:ospfv2-link; } // list ospfv2-link list ospfv2-topology { key "mt-id"; description "Summary LSA"; uses ospf-ios-xe-oper:ospfv2-topology; } // list ospfv2-topology list ospfv2-external { key "mt-id"; description "External LSA"; uses ospf-ios-xe-oper:ospfv2-external; } // list ospfv2-external container ospfv3-lsa { description "OSPFv3 LSA"; uses ospf-ios-xe-oper:ospfv3-lsa; } // container ospfv3-lsa list ospfv3-link { key "interface-id neighbor-interface-id neighbor-router-id"; description "OSPFv3 links"; uses ospf-ios-xe-oper:ospfv3-link-key; uses ospf-ios-xe-oper:ospfv3-link; } // list ospfv3-link list ospfv3-prefix { key "prefix"; description "OSPFv3 prefix-list"; uses ospf-ios-xe-oper:ospfv3-prefix-list; } // list ospfv3-prefix list ospfv3-ia-prefix { key "prefix"; description "OSPFv3 intra-area prefix-list"; uses ospf-ios-xe-oper:ospfv3-prefix-list; } // list ospfv3-ia-prefix } // grouping area-scope-lsa grouping area-scope-lsas { description "OSPF area scope LSA"; leaf lsa-type { type uint32; description "OSPF link scope LSA type"; } list area-scope-lsa { key "lsa-type adv-router"; description "List of OSPF link scope LSAs"; uses ospf-ios-xe-oper:area-scope-lsa-key; uses ospf-ios-xe-oper:area-scope-lsa; } // list area-scope-lsa } // grouping area-scope-lsas grouping link-scope-lsas { description "Link scope lsas"; leaf lsa-type { type uint32; description "OSPF link scope LSA type"; } list link-scope-lsa { key "lsa-id adv-router"; description "List of OSPF link scope LSAs"; uses ospf-ios-xe-oper:link-scope-lsa-key; uses ospf-ios-xe-oper:link-scope-lsa; } // list link-scope-lsa list area-scope-lsa { key "lsa-type adv-router"; description "List OSPF area scope LSA databases"; uses ospf-ios-xe-oper:area-scope-lsa-key; uses ospf-ios-xe-oper:area-scope-lsa; } // list area-scope-lsa } // grouping link-scope-lsas grouping ospf-static-neighbor { description "OSPF neighbor info"; leaf address { type inet:ip-address; description "Neighbor IP address"; } leaf cost { type uint16; description "Neighbor cost"; } leaf poll-interval { type uint16; units "seconds"; description "Neighbor polling interval in seconds"; } } // grouping ospf-static-neighbor grouping ospf-nbr-stat { description "OSPF neighbor statistics"; leaf nbr-event-count { type uint32; description "The number of time this neighbor has changed state or an error has occurred"; } leaf nbr-retrans-qlen { type uint32; description "The current length of the retransmission queue"; } } // grouping ospf-nbr-stat grouping ospf-neighbor { description "OSPF neighbor details"; leaf neighbor-id { type inet:ip-address; description "OSPF neighbor ID"; } leaf address { type inet:ip-address; description "Neighbor address"; } leaf dr { type inet:ip-address; description "Designated Router"; } leaf bdr { type inet:ip-address; description "Backup Designated Router"; } leaf state { type nbr-state-type; description "OSPF neighbor state"; } container stats { description "Per-neighbor statistics"; uses ospf-ios-xe-oper:ospf-nbr-stat; } // container stats } // grouping ospf-neighbor grouping fast-reroute { description "Fast Reroute details"; leaf candidate-disabled { type boolean; description "Prevent the interface to be used as backup"; } leaf enabled { type boolean; description "Activates LFA. This model assumes activation of per-prefix LFA"; } leaf remote-lfa-enabled { type boolean; description "Activates remote LFA"; } } // grouping fast-reroute grouping multi-area { description "Multi Area info"; leaf multi-area-id { type uint32; description "Multi-area ID"; } leaf cost { type uint16; description "Interface cost for multi-area"; } } // grouping multi-area grouping ospf-crypto-algorithm { description "Crypto Algorithm"; leaf hmac-sha1-12 { type empty; description "HMAC-SHA1-12 algorithm"; } leaf hmac-sha1-20 { type empty; description "HMAC-SHA1-20 algorithm"; } leaf md5 { type empty; description "MD5 algorithm"; } leaf sha-1 { type empty; description "SHA-1 algorithm"; } leaf hmac-sha-1 { type empty; description "HMAC-SHA-1 authentication algorithm"; } leaf hmac-sha-256 { type empty; description "HMAC-SHA-256 authentication algorithm"; } leaf hmac-sha-384 { type empty; description "HMAC-SHA-384 authentication algorithm"; } leaf hmac-sha-512 { type empty; description "HMAC-SHA-512 authentication algorithm"; } } // grouping ospf-crypto-algorithm grouping ospf-authentication { description "OSPF authentication info"; choice auth-type-selection-choice { description "OSPF authentication type"; leaf sa { type string; description "SA name"; } leaf key-chain { type string; description "key-chain name"; } case ospf-auth-trailer-key { leaf key-string { type string; description "Key string in ASCII format"; } container crypto-algorithm-val { description "Crypto algorithm"; uses ospf-ios-xe-oper:ospf-crypto-algorithm; } // container crypto-algorithm-val } // case ospf-auth-trailer-key leaf no-auth { type uint32; description "No authentication enabled"; } } // choice auth-type-selection-choice } // grouping ospf-authentication grouping ttl-security { description "TTL security check"; leaf enabled { type boolean; description "Enable/Disable TTL security check"; } leaf hops { type uint8; description "Maximum number of hops that a OSPF packet may have travelled"; } } // grouping ttl-security grouping ospf-interface { description "OSPF interface"; leaf name { type string; description "Interface name"; } leaf network-type { type ospf-network-type; description "Network type"; } leaf passive { type boolean; description "Enable/Disable passive"; } leaf demand-circuit { type boolean; description "Enable/Disable demand circuit"; } container multi-area { description "Multi Area"; uses ospf-ios-xe-oper:multi-area; } // container multi-area list static-neighbor { key "address"; description "Statically configured neighbors"; uses ospf-ios-xe-oper:ospf-static-neighbor; } // list static-neighbor leaf node-flag { type boolean; description "Set prefix as a node representative prefix"; } container fast-reroute { description "Fast reroute config"; uses ospf-ios-xe-oper:fast-reroute; } // container fast-reroute leaf cost { type uint16; description "Interface cost"; } leaf hello-interval { type uint16; description "Time between hello packets"; } leaf dead-interval { type uint16; description "Interval after which a neighbor is declared dead"; } leaf retransmit-interval { type uint16; description "Time between retransmitting unacknowledged Link State Advertisements (LSAs)"; } leaf transmit-delay { type uint16; description "Estimated time needed to send link-state update"; } leaf mtu-ignore { type boolean; description "Enable/Disable ignoring of MTU in DBD packets"; } leaf lls { type boolean; description "Enable/Disable link-local signalling (LLS) support"; } leaf prefix-suppression { type boolean; description "Suppress advertisement of the prefixes"; } leaf bfd { type boolean; description "Enable/disable bfd"; } container ttl-security { description "TTL security"; uses ospf-ios-xe-oper:ttl-security; } // container ttl-security leaf enable { type boolean; description "Enable/disable protocol on the interface"; } container authentication { description "Authentication configuration"; uses ospf-ios-xe-oper:ospf-authentication; } // container authentication leaf state { type string; description "Interface state"; } leaf hello-timer { type uint32; description "Hello timer"; } leaf wait-timer { type uint32; description "Wait timer"; } leaf dr { type inet:ip-address; description "Designated Router"; } leaf bdr { type inet:ip-address; description "Backup Designated Router"; } list ospf-neighbor { key "neighbor-id"; description "List of OSPF neighbors"; uses ospf-ios-xe-oper:ospf-neighbor; } // list ospf-neighbor list intf-link-scope-lsas { key "lsa-type"; description "List OSPF link scope LSAs"; uses ospf-ios-xe-oper:link-scope-lsas; } // list intf-link-scope-lsas list intf-multi-topology { key "name"; description "OSPF interface topology"; uses ospf-ios-xe-oper:multi-topology; } // list intf-multi-topology leaf priority { type uint8; description "Configure OSPF router priority"; } } // grouping ospf-interface grouping ospf-area { description "OSPF area"; leaf area-id { type uint32; description "OSPF area ID"; } list ospf-interface { key "name"; description "List of OSPF interfaces"; uses ospf-ios-xe-oper:ospf-interface; } // list ospf-interface list area-scope-lsa { key "lsa-type"; description "List of OSPF area scope LSA"; uses ospf-ios-xe-oper:area-scope-lsas; } // list area-scope-lsa } // grouping ospf-area grouping ospf-instance-rev1-key { description "OSPF instance key type"; leaf af { type address-family; description "Address-family of the instance"; } leaf router-id { type uint32; description "Defined in RFC 2328. A 32-bit number that uniquely identifies the router"; } } // grouping ospf-instance-rev1-key grouping ospf-instance-rev1 { description "OSPF instance"; list ospf-area { key "area-id"; description "List of ospf areas"; uses ospf-ios-xe-oper:ospf-area; } // list ospf-area list link-scope-lsas { key "lsa-type"; description "List OSPF link scope LSA"; uses ospf-ios-xe-oper:link-scope-lsas; } // list link-scope-lsas list multi-topology { key "name"; description "OSPF multi-topology interface augmentation"; uses ospf-ios-xe-oper:multi-topology; } // list multi-topology leaf process-id { type uint16; description "The process identifier used to refer to this instance"; } } // grouping ospf-instance-rev1 grouping ospf-rev1 { description "OSPF operational data"; leaf op-mode { type ospf-operation-mode; description "OSPF operation mode"; } list ospf-instance { key "af router-id"; description "OSPF routing protocol instance"; uses ospf-ios-xe-oper:ospf-instance-rev1-key; uses ospf-ios-xe-oper:ospf-instance-rev1; } // list ospf-instance } // grouping ospf-rev1 grouping ospfv2-lsa-info-key { description "Link State Advertisement information key"; leaf lsa-type { type uint8; description "Link State Advertisement type"; } leaf lsa-id { type uint32; description "Link State Advertisement Identifier"; } leaf advertising-router { type uint32; description "Advertising router"; } } // grouping ospfv2-lsa-info-key grouping ospfv2-unsupported-lsa { description "Unsupported Link State Advertisement"; leaf-list lsa-data { type uint8; ordered-by user; description "Link State Advertisement data"; } } // grouping ospfv2-unsupported-lsa grouping ospfv2-router-link-key { description "Router Link key"; leaf link-type { type uint8; description "Link Type"; } leaf link-id { type uint32; description "link Identifier"; } leaf link-data { type uint32; description "link data"; } } // grouping ospfv2-router-link-key grouping ospfv2-router-link-topo { description "Router link topology"; leaf mt-id { type uint8; description "Multi topology identifier"; } leaf topo-metric { type uint16; description "Topology metric"; } } // grouping ospfv2-router-link-topo grouping ospfv2-router-link { description "Router Link"; list link-topo { description "Link topology"; uses ospf-ios-xe-oper:ospfv2-router-link-topo; } // list link-topo } // grouping ospfv2-router-link grouping ospfv2-router-lsa { description "Router Link State Advertisement"; leaf router-lsa-bits { type ospfv2-router-lsa-bits; description "Router Link State Advertisement bits"; } leaf router-lsa-number-links { type uint16; description "Router Link State Advertisement number of links"; } } // grouping ospfv2-router-lsa grouping ospfv2-network-lsa { description "Network Link State Advertisement"; leaf network-lsa-mask { type uint32; description "Network Link State Advertisement mask"; } leaf-list network-attached-routers { type uint32; ordered-by user; description "Network attached routers"; } } // grouping ospfv2-network-lsa grouping ospfv2-summary-lsa-topo { description "Summary Link State Advertisement topology"; leaf mt-id { type uint8; description "Multi topology identifier"; } leaf topo-metric { type uint32; description "Topology Metric"; } } // grouping ospfv2-summary-lsa-topo grouping ospfv2-summary-lsa { description "Summary Link State Advertisement"; leaf summary-lsa-mask { type uint32; description "The summary Link State Advertisement mask"; } list summary-topo { description "The summary topology"; uses ospf-ios-xe-oper:ospfv2-summary-lsa-topo; } // list summary-topo } // grouping ospfv2-summary-lsa grouping ospfv2-external-lsa-topo { description "The external Link State Advertisement topology information"; leaf mt-id { type uint8; description "The multi topology identifier"; } leaf topo-metric-type { type ospf-external-metric-type; description "The topology metric type associated with the Link State Advertisement"; } leaf topo-metric { type uint32; description "The topology metric"; } leaf topo-forwarding-address { type inet:ip-address; description "The topology forwarding address"; } leaf topo-route-tag { type uint32; description "The topology route tag"; } } // grouping ospfv2-external-lsa-topo grouping ospfv2-external-lsa { description "The external Link State Advertisement"; leaf external-lsa-mask { type uint32; description "The mask for the external Link State Advertisement"; } list external-topo { description "The external topology Link State Advertisement"; uses ospf-ios-xe-oper:ospfv2-external-lsa-topo; } // list external-topo } // grouping ospfv2-external-lsa grouping ospfv2-lsa-info { description "The Link State Advertisement information"; leaf lsa-age { type uint16; description "The age of the Link State Advertisement"; } leaf lsa-options { type ospfv2-lsa-flag-options; description "The options of the Link State Advertisement"; } leaf lsa-seq-number { type uint32; description "The sequence number for the Link State Advertisement"; } leaf lsa-checksum { type uint16; description "The checksum of the Link State Advertisement"; } leaf lsa-length { type uint16; description "The length, in bytes, of the Link State Advertisement"; } list ospfv2-router-lsa-links { key "link-type link-id link-data"; description "The router Link State Advertisement links"; uses ospf-ios-xe-oper:ospfv2-router-link-key; uses ospf-ios-xe-oper:ospfv2-router-link; } // list ospfv2-router-lsa-links choice lsa-union-type-choice { description "The type of Link State Advertisement"; container unsupported-lsa { description "The unsupported Link State Advertisements"; uses ospf-ios-xe-oper:ospfv2-unsupported-lsa; } // container unsupported-lsa container router-lsa { description "The router Link State Advertisements"; uses ospf-ios-xe-oper:ospfv2-router-lsa; } // container router-lsa container network-lsa { description "The network Link State Advertisements"; uses ospf-ios-xe-oper:ospfv2-network-lsa; } // container network-lsa container network-summary-lsa { description "The network summary Link State Advertisements"; uses ospf-ios-xe-oper:ospfv2-summary-lsa; } // container network-summary-lsa container router-summary-lsa { description "The router summary Link State Advertisements"; uses ospf-ios-xe-oper:ospfv2-summary-lsa; } // container router-summary-lsa container external-lsa { description "The external Link State Advertisements"; uses ospf-ios-xe-oper:ospfv2-external-lsa; } // container external-lsa container nssa-lsa { description "The Not So Stubby Area Link state advertisements"; uses ospf-ios-xe-oper:ospfv2-external-lsa; } // container nssa-lsa } // choice lsa-union-type-choice } // grouping ospfv2-lsa-info grouping ospfv2-nbr { description "Neighbor information"; leaf nbr-id { type uint32; description "The neighbor identifier"; } leaf address { type inet:ip-address; description "Neighbor address"; } leaf dr { type uint32; description "The neighbor's Designated Router identifier "; } leaf bdr { type uint32; description "The neighbor's Backup Designated Router identifier"; } leaf dr-ip { type inet:ip-address; description "The designated routers' IP address"; } leaf bdr-ip { type inet:ip-address; description "The backup designated routers' IP address"; } leaf event-count { type uint32; description "A count of neighbor events"; } leaf retrans-count { type uint32; description "A count of the retransmission events"; } leaf state { type nbr-state-type; description "The current neighbor state"; } leaf dead-timer { type uint32; description "The dead timer in seconds"; } } // grouping ospfv2-nbr grouping ospfv2-ttl-security { description "Time to live security information"; leaf enable { type boolean; description "Indicates whether time to live security is enabled"; } leaf hops { type int32; description "Number of hops for time to live security"; } } // grouping ospfv2-ttl-security grouping ospfv2-auth-trailer-key { description "Trailer key information"; leaf key-id { type uint8; description "The key identifier"; } leaf-list key-string { type uint8; ordered-by user; description "The key string"; } leaf crypto-algo { type ospfv2-crypto-algorithm; description "The algorithm in use"; } } // grouping ospfv2-auth-trailer-key grouping ospfv2-key-chain { description "The key chain"; leaf-list key-chain { type uint8; ordered-by user; description "The key chain"; } } // grouping ospfv2-key-chain grouping ospfv2-auth { description "OSPFv2 authentication information"; choice auth-type-sel-choice { description "Authentication used"; leaf no-auth { type uint32; description "No authentication in use"; } container auth-key { description "Trailer key chain information"; uses ospf-ios-xe-oper:ospfv2-auth-trailer-key; } // container auth-key container key-chain { description "Trailer key information"; uses ospf-ios-xe-oper:ospfv2-key-chain; } // container key-chain } // choice auth-type-sel-choice } // grouping ospfv2-auth grouping ospfv2-interface { description "Interface information"; leaf name { type string; description "Name of the interface"; } leaf network-type { type ospf-network-type; description "Network type"; } leaf enable { type boolean; description "If the interface is enabled"; } leaf passive { type boolean; description "If the interface is in passive mode"; } leaf demand-circuit { type boolean; description "If this is a demand circuit"; } leaf mtu-ignore { type boolean; description "If the MTU is being ignored"; } leaf prefix-suppresion { type boolean; description "If prefix suppression is enabled"; } leaf cost { type uint16; description "The OSPFv2 cost"; } leaf hello-interval { type uint16; description "The hello interval in seconds"; } leaf dead-interval { type uint16; description "The dead interval in seconds"; } leaf retransmit-interval { type uint16; description "The retransmit interval in seconds"; } leaf transmit-delay { type uint16; description "The delay before transmitting a keepalive in seconds"; } leaf hello-timer { type uint32; description "The current hello timer in seconds"; } leaf wait-timer { type uint32; description "The wait timer in seconds"; } leaf dr { type uint32; description "The designated router identifier"; } leaf bdr { type uint32; description "The backup designated router identifier"; } leaf dr-ip { type inet:ip-address; description "The address of the designated router"; } leaf bdr-ip { type inet:ip-address; description "The address of the backup designated router"; } leaf state { type ospfv2-intf-state; description "The current state of the interface"; } container ttl-security-val { description "The TTL security information"; uses ospf-ios-xe-oper:ospfv2-ttl-security; } // container ttl-security-val container auth-val { description "The authentication information"; uses ospf-ios-xe-oper:ospfv2-auth; } // container auth-val list ospfv2-neighbor { key "nbr-id"; description "All the neighbors on the interface"; uses ospf-ios-xe-oper:ospfv2-nbr; } // list ospfv2-neighbor } // grouping ospfv2-interface grouping ospfv2-area { description "The OSPF area information"; leaf area-id { type uint32; description "The area identifier"; } list ospfv2-lsdb-area { key "lsa-type lsa-id advertising-router"; description "The OSPF Link State Database information for this area"; uses ospf-ios-xe-oper:ospfv2-lsa-info-key; uses ospf-ios-xe-oper:ospfv2-lsa-info; } // list ospfv2-lsdb-area list ospfv2-interface { key "name"; description "A list of interfaces that belong to the area"; uses ospf-ios-xe-oper:ospfv2-interface; } // list ospfv2-interface } // grouping ospfv2-area grouping ospfv2-instance { description "The OSPFv2 instance"; leaf instance-id { type uint32; description "The routing instance identifier assigned to the OSPF instance"; } leaf vrf-name { type string; description "The name of the Virtual Routing and Forwarding instance that the OSPF instance is operating within"; } leaf router-id { type uint32; description "The router identifier assigned to the OSPF instance"; } list ospfv2-area { key "area-id"; description "The OSPF area information"; uses ospf-ios-xe-oper:ospfv2-area; } // list ospfv2-area list ospfv2-lsdb-external { key "lsa-type lsa-id advertising-router"; description "The external LSDB information"; uses ospf-ios-xe-oper:ospfv2-lsa-info-key; uses ospf-ios-xe-oper:ospfv2-lsa-info; } // list ospfv2-lsdb-external } // grouping ospfv2-instance grouping ospfv3-router { description "OSPFv3 router"; leaf process-id { type uint16; description "OSPFv3 process id"; } list ospfv3-afi { key "af vrf"; description "OSPFv3 address family"; uses ospf-ios-xe-oper:ospfv3-afi; uses ospf-ios-xe-oper:ospfv3-address-family-key; } // list ospfv3-afi } // grouping ospfv3-router grouping ospfv3-address-family-key { description "OSPFv3 AF instance"; leaf af { type ospf-ios-xe-common:ospfv3-address-family-types; description "OSPFv3 address family"; } leaf vrf { type string; description "VRF name"; } } // grouping ospfv3-address-family-key grouping ospfv3-router-link-topo { description "OSPFv3 router link topo"; leaf mt-id { type uint8; description "Router link topo ID"; } leaf metric { type uint16; description "Router link topo metric"; } } // grouping ospfv3-router-link-topo grouping ospfv3-router-lsa-link-key { description "OSPFv3 router LSA link key "; leaf link-type { type ospfv3-rtr-lsa-lnk-type; description "Router LSA link type"; } leaf link-intf-id { type uint32; description "Router LSA link interface ID"; } leaf nbr-intf-id { type uint32; description "Router LSA link neighbor interface ID"; } leaf nbr-rtr-id { type inet:ipv4-address; description "Router LSA link type"; } } // grouping ospfv3-router-lsa-link-key grouping ospfv3-router-lsa-link { description "OSPFv3 router lsa link "; list link-topo { description "Router LSA link topology"; uses ospf-ios-xe-oper:ospfv3-router-link-topo; } // list link-topo } // grouping ospfv3-router-lsa-link grouping ospfv3-router-lsa { description "OSPFv3 router link state advertisement"; leaf bits { type ospfv3-rtr-lsa-bits; description "OSPFv3 router LSA bits"; } leaf options { type ospfv3-lsa-flag-opts; description "OSPFv3 router LSA options"; } leaf num-links { type uint32; description "Number of OSPFv3 router LSA links"; } } // grouping ospfv3-router-lsa grouping ospfv3-network-lsa { description "OSPFv3 network link state advertisement"; leaf-list attached-rtrs { type inet:ipv4-address; ordered-by user; description "Network attached routers"; } leaf options { type ospfv3-lsa-flag-opts; description "OSPFv3 LSA options"; } } // grouping ospfv3-network-lsa grouping ospfv3-lsa-prefix-info { description "The prefix info for intra-area LSA"; leaf options { type ospfv3-lsa-pfx-opts; description "The options advertised for the prefix in the LSA"; } leaf prefix { type inet:ip-prefix; description "Address of the prefix"; } leaf metric { type uint16; description "Metric for the prefix"; } } // grouping ospfv3-lsa-prefix-info grouping ospfv3-lsa-prefixtype { description "The prefix type in link state advertisement"; leaf options { type ospfv3-lsa-pfx-opts; description "The options advertised for the prefix in the LSA"; } leaf prefix { type inet:ip-prefix; description "Address of the prefix"; } } // grouping ospfv3-lsa-prefixtype grouping ospfv3-iapfx-lsa { description "OSPFv3 inter-area prefix link state advertisement"; leaf metric { type uint32; description "Metric for inter-area prefix LSA"; } container prefix { description "Advertised prefix in inter-area prefix LSA"; uses ospf-ios-xe-oper:ospfv3-lsa-prefixtype; } // container prefix } // grouping ospfv3-iapfx-lsa grouping ospfv3-iartr-lsa { description "OSPFv3 inter-area router link state advertisement"; leaf metric { type uint32; description "Metric for inter-area router LSA"; } leaf options { type ospfv3-lsa-flag-opts; description "Options advertised in inter-area router LSA"; } leaf rtr-id { type inet:ipv4-address; description "Advertising router in inter-area router LSA"; } } // grouping ospfv3-iartr-lsa grouping ospfv3-ex-lsa { description "The external link state advertisement"; container prefix { description "The prefix for the external LSA"; uses ospf-ios-xe-oper:ospfv3-lsa-prefixtype; } // container prefix leaf metric-type { type ospfv3-ase-metric-type; description "Metric type: 2 (larger than any link state path), Metric type: 1 (comparable directly to link state metric)"; } leaf metric { type uint32; description "The AS external LSA metric"; } } // grouping ospfv3-ex-lsa grouping ospfv3-link-lsa { description "The link link state advertisement"; leaf router-priority { type uint8; description "The router priority for the link LSA"; } leaf options { type ospfv3-lsa-flag-opts; description "The options for the link LSA"; } leaf local-addr { type inet:ip-address; description "The link local address"; } list prefix { description "Details of the prefixes in link LSA"; uses ospf-ios-xe-oper:ospfv3-lsa-prefixtype; } // list prefix } // grouping ospfv3-link-lsa grouping ospfv3-prefix-lsa { description "The intra-area prefix link state advertisement"; leaf ref-ls-type { type uint16; description "Referenced lSA type"; } leaf ref-ls-id { type uint32; description "Referenced link state ID"; } leaf ref-adv-rtr { type inet:ipv4-address; description "Reference advertising router"; } list prefix { description "Prefix info in intra-area prefix LSA"; uses ospf-ios-xe-oper:ospfv3-lsa-prefix-info; } // list prefix } // grouping ospfv3-prefix-lsa grouping ospfv3-lsa-header-info { description "LSA header info"; leaf lsa-age { type uint16; units "seconds"; description "Age of the link state advertisement"; } leaf lsa-seq-number { type uint32; description "Sequence number for the link state advertisement"; } leaf lsa-checksum { type uint16; description "Checksum of the link state advertisement"; } leaf lsa-length { type uint16; units "bytes"; description "The length of the link state advertisement"; } } // grouping ospfv3-lsa-header-info grouping ospfv3-lsa-info { description "OSPFv3 link state advertisement information"; container lsa-header-info { description "The link state advertisement header info"; uses ospf-ios-xe-oper:ospfv3-lsa-header-info; } // container lsa-header-info list ospfv3-router-lsa-link { key "link-type link-intf-id nbr-intf-id nbr-rtr-id"; description "Router LSA links info"; uses ospf-ios-xe-oper:ospfv3-router-lsa-link-key; uses ospf-ios-xe-oper:ospfv3-router-lsa-link; } // list ospfv3-router-lsa-link choice area-scope-lsa-type-choice { description "The type of link state advertisement"; case ospfv3-lsa-type-router { description "Router LSA"; container router-lsa { description "The router link state advertisement"; uses ospf-ios-xe-oper:ospfv3-router-lsa; } // container router-lsa } // case ospfv3-lsa-type-router case ospfv3-lsa-type-network { description "Network LSA"; container network-lsa { description "The network link state advertisement"; uses ospf-ios-xe-oper:ospfv3-network-lsa; } // container network-lsa } // case ospfv3-lsa-type-network case ospfv3-lsa-type-inter-area-prefix { description "Inter-area prefix LSA"; container iapfx-lsa { description "The inter-area prefix link state advertisement"; uses ospf-ios-xe-oper:ospfv3-iapfx-lsa; } // container iapfx-lsa } // case ospfv3-lsa-type-inter-area-prefix case ospfv3-lsa-type-inter-area-router { description "Inter-area router LSA"; container iartr-lsa { description "The inter-area router link state advertisement"; uses ospf-ios-xe-oper:ospfv3-iartr-lsa; } // container iartr-lsa } // case ospfv3-lsa-type-inter-area-router case ospfv3-lsa-type-nssa { description "NSSA LSA"; container nssa-lsa { description "The not-so-stubby-area link state advertisement"; uses ospf-ios-xe-oper:ospfv3-ex-lsa; } // container nssa-lsa } // case ospfv3-lsa-type-nssa case ospfv3-lsa-type-prefix { description "Prefix LSA"; container prefix-lsa { description "The intra-area prefix link state advertisement"; uses ospf-ios-xe-oper:ospfv3-prefix-lsa; } // container prefix-lsa } // case ospfv3-lsa-type-prefix } // choice area-scope-lsa-type-choice } // grouping ospfv3-lsa-info grouping ospfv3-lsa-info-key { description "OSPFv3 link state advertisement information key"; leaf lsa-type { type uint16; description "Link state advertisement type"; } leaf lsa-id { type uint32; description "Link state advertisement identifier"; } leaf advertising-router { type inet:ipv4-address; description "Advertising router"; } } // grouping ospfv3-lsa-info-key grouping ospfv3-as-scope-lsa { description "OSPFv3 as scope LSA"; container lsa-header-info { description "LSA header info"; uses ospf-ios-xe-oper:ospfv3-lsa-header-info; } // container lsa-header-info container ase-lsa { description "AS-External LSA"; uses ospf-ios-xe-oper:ospfv3-ex-lsa; } // container ase-lsa } // grouping ospfv3-as-scope-lsa grouping ospfv3-afi { description "Address Family"; leaf router-id { type inet:ipv4-address; description "OSPFv3 area ID"; } list ospfv3-as-scope-lsa { key "lsa-type lsa-id advertising-router"; description "OSPFv3 AS scope LSA"; uses ospf-ios-xe-oper:ospfv3-lsa-info-key; uses ospf-ios-xe-oper:ospfv3-as-scope-lsa; } // list ospfv3-as-scope-lsa list ospfv3-area { key "area-id"; description "OSPFv3 area"; uses ospf-ios-xe-oper:ospfv3-area; } // list ospfv3-area } // grouping ospfv3-afi grouping ospfv3-area { description "OSPFv3 area"; leaf area-id { type uint32; description "OSPFv3 area ID"; } list ospfv3-intf { key "name"; description "OSPFv3 interfaces"; uses ospf-ios-xe-oper:ospfv3-intf; } // list ospfv3-intf list ospfv3-area-scope-lsa { key "lsa-type lsa-id advertising-router"; description "OSPFv3 link state database information in this area"; uses ospf-ios-xe-oper:ospfv3-lsa-info-key; uses ospf-ios-xe-oper:ospfv3-lsa-info; } // list ospfv3-area-scope-lsa } // grouping ospfv3-area grouping ospfv3-ttl-security { description "OSPFV3 TTL security on interface"; leaf enable { type boolean; description "Enable TTL security on interface"; } leaf hops { type uint8; description "Number of Hops Count"; } } // grouping ospfv3-ttl-security grouping ipsec-key { description "OSPFv3 IPSEC authentication"; leaf algorithm { type ospfv3-ipsec-auth-algo; description "IPSEC authentication algorithm"; } leaf spi { type uint32; description "Security parameter index"; } leaf key-string { type string; description "Key for IPSEC algorithm"; } } // grouping ipsec-key grouping ospfv3-auth { description "OSPFv3 authentication"; leaf trailer-key-chain { type string; description "Key chain name"; } container ipsec-key { description "IPSEC authentication"; uses ospf-ios-xe-oper:ipsec-key; } // container ipsec-key } // grouping ospfv3-auth grouping ospfv3-link-scope-lsa { description "OSPFV3 link scope lsa info "; container lsa-header-info { description "LSA header details"; uses ospf-ios-xe-oper:ospfv3-lsa-header-info; } // container lsa-header-info container link-lsa { description "Link LSA information"; uses ospf-ios-xe-oper:ospfv3-link-lsa; } // container link-lsa } // grouping ospfv3-link-scope-lsa grouping ospfv3-intf { description "OSPFv3 interface"; leaf name { type string; description "Interface name"; } leaf network-type { type ospf-ios-xe-common:ospfv3-network-type; description "Network type"; } leaf enable { type boolean; description "Indicates whether OSPFv3 is enabled or disabled on the interface"; } leaf passive { type boolean; description "Indicates whether interface is passive or not"; } leaf demand-circuit { type boolean; description "Indicates whether demand circuit is enabled or disabled"; } leaf mtu-ignore { type boolean; description "Indicates whether ignoring of MTU in DBD packets is enabled or disabled"; } leaf prefix-suppression { type boolean; description "Suppress advertisement of the prefixes"; } leaf cost { type uint16; description "Interface cost"; } leaf hello-interval { type uint16; units "seconds"; description "Time between hello packets"; } leaf dead-interval { type uint16; units "seconds"; description "Interval to declare neighbor as dead"; } leaf retransmit-interval { type uint16; units "seconds"; description "Time between retransmitting unacknowledged link-state advertisements (LSAs)"; } leaf transmit-delay { type uint16; units "seconds"; description "Estimated time needed to send link-state update"; } leaf hello-timer { type uint32; units "seconds"; description "Hello timer"; } leaf wait-timer { type uint32; units "seconds"; description "Wait timer"; } leaf dr { type inet:ipv4-address; description "Designated router"; } leaf bdr { type inet:ipv4-address; description "Backup designated router"; } leaf dr-ip { type inet:ipv6-address; description "Designated router IP address"; } leaf bdr-ip { type inet:ipv6-address; description "Backup designated router IP address"; } leaf if-state { type ospf-ios-xe-common:ospfv3-if-state; description "Interface state"; } container ttl-security { description "TTL security"; uses ospf-ios-xe-oper:ospfv3-ttl-security; } // container ttl-security container authentication { description "Authentication on interface"; uses ospf-ios-xe-oper:ospfv3-auth; } // container authentication list ospfv3-link-scope-lsa { key "lsa-type lsa-id advertising-router"; description "OSPFv3 link scope LSA "; uses ospf-ios-xe-oper:ospfv3-lsa-info-key; uses ospf-ios-xe-oper:ospfv3-link-scope-lsa; } // list ospfv3-link-scope-lsa list ospfv3-nbr { key "nbr-id"; description "OSPFv3 neighbors"; uses ospf-ios-xe-oper:ospfv3-nbr; } // list ospfv3-nbr } // grouping ospfv3-intf grouping ospfv3-nbr { description "OSPF neighbor details"; leaf nbr-id { type inet:ipv4-address; description "OSPFv3 neighbor ID"; } leaf address { type inet:ipv6-address; description "IPv6 link-local address"; } leaf dr { type inet:ipv4-address; description "Designated router"; } leaf bdr { type inet:ipv4-address; description "Backup designated router"; } leaf event-count { type uint32; description "OSPFv3 neighbor event count"; } leaf retrans-count { type uint32; description "OSPFv3 neighbor retransmission count"; } leaf nbr-state { type ospf-ios-xe-common:ospfv3-nbr-state; description "OSPFv3 neighbor state"; } leaf dead-timer { type uint32; units "seconds"; description "Dead timer for the neighbor"; } } // grouping ospfv3-nbr container ospf-oper-data { config false; description "Operational state of ospf"; container ospf-state { presence "tbl-ospf"; description "OSPF operational state"; uses ospf-ios-xe-oper:ospf-rev1; } // container ospf-state list ospfv2-instance { key "instance-id"; description "The OSPF instance"; uses ospf-ios-xe-oper:ospfv2-instance; } // list ospfv2-instance list ospfv3-router { key "process-id"; description "The OSPFv3 router instance"; uses ospf-ios-xe-oper:ospfv3-router; } // list ospfv3-router } // container ospf-oper-data } // module Cisco-IOS-XE-ospf-oper
© 2023 YumaWorks, Inc. All rights reserved.