Cisco-IOS-XR-ip-static-cfg

This module contains a collection of YANG definitions for Cisco IOS-XR ip-static package configuration. This model is deprecate...

  • Version: 2021-02-11

    Cisco-IOS-XR-ip-static-cfg@2021-02-11


    
      module Cisco-IOS-XR-ip-static-cfg {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-static-cfg";
    
        prefix ip-static-cfg;
    
        import ietf-inet-types {
          prefix inet;
        }
        import Cisco-IOS-XR-types {
          prefix xr;
        }
        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 ip-static package configuration.
         
         This model is deprecated and is replaced by
         Cisco-IOS-XR-um-router-static-cfg.yang which will provide the
         compatible functionalities.
         
         This module contains definitions
         for the following management objects:
           router-static: This class represents router static
             configuration
         
         Copyright (c) 2013-2021 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2021-02-11" {
          description
            "Added new to option to prefer RIB over LDB";
        }
    
        revision "2019-07-18" {
          description
            "Added one more field to accept Algorithm";
        }
    
        revision "2019-05-12" {
          description
            "Deprecated the native model, replaced by UM model.";
        }
    
        revision "2019-04-05" {
          description
            "Establish semantic version baseline.";
        }
    
        revision "2018-09-21" {
          description
            "Added bfd multihop option";
        }
    
        revision "2018-08-02" {
          description
            "Added one more key to accept SR Policy";
        }
    
        revision "2017-05-01" {
          description
            "Fixing backward compatibility error in module.";
        }
    
        revision "2015-09-10" {
          description "Descriptions updated.";
        }
    
        revision "2015-01-07" {
          description "IOS XR 5.3.1 revision.";
        }
    
        semver:module-version "1.1.0";
        semver:module-version "1.0.1";
    
        grouping VRF-ROUTE {
          description
            "Common node of vrf-prefix, vrf-prefix-topology";
          container vrf-route {
            description
              "A connected or recursive  static route";
            container vrf-next-hop-table {
              description
                "The set of nexthop information configured for
               this route";
              uses VRF-NEXT-HOP;
            }  // container vrf-next-hop-table
          }  // container vrf-route
        }  // grouping VRF-ROUTE
    
        grouping VRF-NEXT-HOP {
          description
            "Common node of vrf-next-hop-table,
           vrf-recursive-next-hop-table,
           segment-route-next-hop-table";
          grouping VRF-NEXT-HOP-CONTENT {
            description "VRF NEXT HOP CONTENT";
            leaf bfd-fast-detect {
              type boolean;
              default "false";
              description
                "If set, bfd is enabled";
            }
    
            leaf minimum-interval {
              type uint32 {
                range "3..30000";
              }
              units "millisecond";
              default "100";
              description
                "BFD Hello interval in milliseconds";
            }
    
            leaf detect-multiplier {
              type uint32 {
                range "1..10";
              }
              default "3";
              description
                "BFD Detect Multiplier";
            }
    
            leaf metric {
              type uint32 {
                range "1..254";
              }
              default "1";
              description
                "Distance metric for this path";
            }
    
            leaf tag {
              type uint32 {
                range "1..4294967295";
              }
              description "Tag for this path";
            }
    
            leaf permanent {
              type boolean;
              default "false";
              description
                "If set, path is permanent";
            }
    
            leaf vrf-lable {
              type uint32 {
                range "0..4294967295";
              }
              default "0";
              description "VRF LABEL";
            }
    
            leaf tunnel-id {
              type uint32 {
                range "0..65535";
              }
              default "0";
              description
                "Tunnel ID for this path";
            }
    
            leaf object-name {
              type xr:Cisco-ios-xr-string {
                length "1..32";
              }
              description
                "Name of the object to track";
            }
    
            leaf description {
              type string;
              description
                "Short Description of Static Route";
            }
    
            leaf load-metric {
              type uint32 {
                range "1..16777214";
              }
              default "1";
              description "UCMP load metric";
            }
    
            leaf index {
              type string;
              description
                "Nexthop Identifier for OC Yang model";
            }
    
            leaf multihop {
              type boolean;
              default "false";
              description
                "If set, BFD is multihop enabled";
            }
    
            leaf bfd-source-address {
              type inet:ip-address-no-zone;
              description "BFD Multihop Source";
            }
    
            leaf algorithm {
              type uint32 {
                range "0..255";
              }
              default "0";
              description
                "FlexAlgo range is ideally 128-255 but here
               placed 0-255 as default value (0) can't be put
               outside range";
            }
    
            leaf prefer-rib-over-ldp {
              type boolean;
              default "false";
              description
                "Flag passid to rib to prefer rib over ldp";
            }
          }  // grouping VRF-NEXT-HOP-CONTENT
          list vrf-next-hop-interface-name {
            key "interface-name";
            description
              "A forwarding interface or Segement Routing mpls
             path name and/or the address of a nexthop router
             for this route (one of these must be specified)";
            leaf interface-name {
              type xr:Interface-name;
              description "Forwarding interface";
            }
    
            uses VRF-NEXT-HOP-CONTENT;
          }  // list vrf-next-hop-interface-name
    
          list vrf-next-hop-interface-name-next-hop-address {
            key "interface-name next-hop-address";
            description
              "A forwarding interface or Segement Routing mpls
             path name and/or the address of a nexthop router
             for this route (one of these must be specified)";
            leaf interface-name {
              type xr:Interface-name;
              description "Forwarding interface";
            }
    
            leaf next-hop-address {
              type inet:ip-address-no-zone;
              description "Next hop address";
            }
    
            uses VRF-NEXT-HOP-CONTENT;
          }  // list vrf-next-hop-interface-name-next-hop-address
    
          list vrf-next-hop-next-hop-address {
            key "next-hop-address";
            description
              "A forwarding interface or Segement Routing mpls
             path name and/or the address of a nexthop router
             for this route (one of these must be specified)";
            leaf next-hop-address {
              type inet:ip-address-no-zone;
              description "Next hop address";
            }
    
            uses VRF-NEXT-HOP-CONTENT;
          }  // list vrf-next-hop-next-hop-address
    
          list vrf-next-hop-next-hop-address-explicit-path-name {
            key "next-hop-address explicit-path-name";
            description
              "A forwarding interface or Segement Routing mpls
             path name and/or the address of a nexthop router
             for this route (one of these must be specified)";
            leaf next-hop-address {
              type inet:ip-address-no-zone;
              description "Next hop address";
            }
    
            leaf explicit-path-name {
              type xr:Cisco-ios-xr-string;
              description
                "Segment Routing mpls path name";
            }
    
            uses VRF-NEXT-HOP-CONTENT;
          }  // list vrf-next-hop-next-hop-address-explicit-path-name
    
          list vrf-next-hop-explicit-path-name-sr-policy-name {
            key "explicit-path-name sr-policy-name";
            description
              "A forwarding interface or Segement Routing mpls
             path name and/or the address of a nexthop router
             for this route (one of these must be specified)";
            leaf explicit-path-name {
              type xr:Cisco-ios-xr-string;
              description
                "Segment Routing mpls path name";
            }
    
            leaf sr-policy-name {
              type xr:Cisco-ios-xr-string;
              description "Sr Policy name";
            }
    
            uses VRF-NEXT-HOP-CONTENT;
          }  // list vrf-next-hop-explicit-path-name-sr-policy-name
    
          list vrf-next-hop-sr-policy-name {
            key "sr-policy-name";
            description
              "A forwarding interface or Segement Routing mpls
             path name and/or the address of a nexthop router
             for this route (one of these must be specified)";
            leaf sr-policy-name {
              type xr:Cisco-ios-xr-string;
              description "Sr Policy name";
            }
    
            uses VRF-NEXT-HOP-CONTENT;
          }  // list vrf-next-hop-sr-policy-name
        }  // grouping VRF-NEXT-HOP
    
        grouping VRF-SEG-ROUTE {
          description
            "Common node of vrf-prefix, vrf-prefix-topology";
          container vrf-seg-route {
            description "A static segment route";
            container segment-route-next-hop-table {
              description
                "The set of nexthop information configured for
               this route";
              uses VRF-NEXT-HOP;
            }  // container segment-route-next-hop-table
          }  // container vrf-seg-route
        }  // grouping VRF-SEG-ROUTE
    
        grouping VRF-RECURSE-ROUTE-TABLE {
          description
            "Common node of vrf-prefix, vrf-prefix-topology";
          container vrf-recurse-routes {
            description
              "A recursive next VRF static route";
            list vrf-recurse-route {
              key "vrf-name";
              description
                "A recursive next vrf static route";
              container vrf-recursive-next-hop-table {
                description
                  "The set of nexthop information configured for
                 this route";
                uses VRF-NEXT-HOP;
              }  // container vrf-recursive-next-hop-table
    
              leaf vrf-name {
                type xr:Cisco-ios-xr-string;
                description
                  "Fallback or recusive VRF name";
              }
            }  // list vrf-recurse-route
          }  // container vrf-recurse-routes
        }  // grouping VRF-RECURSE-ROUTE-TABLE
    
        grouping TOPOLOGY-TABLE {
          description
            "Common node of vrf-unicast, vrf-multicast";
          container topologies {
            description
              "Topology static configuration container";
            list topology {
              key "topology-name";
              description
                "Topology static configuration";
              leaf topology-name {
                type xr:Cisco-ios-xr-string;
                description "Topology name";
              }
    
              uses VRF-PREFIX-TOPOLOGY-TABLE;
            }  // list topology
          }  // container topologies
        }  // grouping TOPOLOGY-TABLE
    
        grouping VRF-PREFIX-TABLE {
          description
            "Common node of vrf-unicast, vrf-multicast";
          container vrf-prefixes {
            description
              "The set of all Static Topologies for this AFI.";
            list vrf-prefix {
              key "prefix prefix-length";
              description "A static route";
              leaf prefix {
                type inet:ip-address-no-zone;
                description "Destination prefix";
              }
    
              leaf prefix-length {
                type uint32 {
                  range "0..128";
                }
                description
                  "Destination prefix length";
              }
    
              uses VRF-ROUTE;
    
              uses VRF-RECURSE-ROUTE-TABLE;
    
              uses VRF-SEG-ROUTE;
            }  // list vrf-prefix
          }  // container vrf-prefixes
        }  // grouping VRF-PREFIX-TABLE
    
        grouping ADDRESS-FAMILY {
          description
            "Common node of default-vrf, vrf";
          container address-family {
            description
              "Address family configuration";
            container vrfipv4 {
              description
                "IPv4 static configuration";
              uses VRF-UNICAST;
    
              uses VRF-MULTICAST;
            }  // container vrfipv4
    
            container vrfipv6 {
              description
                "IPv6 static configuration";
              uses VRF-UNICAST;
    
              uses VRF-MULTICAST;
            }  // container vrfipv6
          }  // container address-family
        }  // grouping ADDRESS-FAMILY
    
        grouping VRF-PREFIX-TOPOLOGY-TABLE {
          description
            "Common node of default-topology, topology";
          container vrf-prefix-topologies {
            description
              "The set of all Static Topologies for this AFI.";
            list vrf-prefix-topology {
              key "prefix prefix-length";
              description "A static route";
              leaf prefix {
                type inet:ip-address-no-zone;
                description "Destination prefix";
              }
    
              leaf prefix-length {
                type uint32 {
                  range "0..128";
                }
                description
                  "Destination prefix length";
              }
    
              uses VRF-ROUTE;
    
              uses VRF-RECURSE-ROUTE-TABLE;
    
              uses VRF-SEG-ROUTE;
            }  // list vrf-prefix-topology
          }  // container vrf-prefix-topologies
        }  // grouping VRF-PREFIX-TOPOLOGY-TABLE
    
        grouping DEFAULT-TOPOLOGY {
          description
            "Common node of vrf-unicast, vrf-multicast";
          container default-topology {
            description
              "Default topology configuration";
            uses VRF-PREFIX-TOPOLOGY-TABLE;
          }  // container default-topology
        }  // grouping DEFAULT-TOPOLOGY
    
        grouping VRF-UNICAST {
          description
            "Common node of vrfipv4, vrfipv6";
          container vrf-unicast {
            description
              "Unicast static configuration";
            uses TOPOLOGY-TABLE;
    
            uses VRF-PREFIX-TABLE;
    
            uses DEFAULT-TOPOLOGY;
          }  // container vrf-unicast
        }  // grouping VRF-UNICAST
    
        grouping VRF-MULTICAST {
          description
            "Common node of vrfipv4, vrfipv6";
          container vrf-multicast {
            description
              "Multicast static configuration";
            uses TOPOLOGY-TABLE;
    
            uses VRF-PREFIX-TABLE;
    
            uses DEFAULT-TOPOLOGY;
          }  // container vrf-multicast
        }  // grouping VRF-MULTICAST
    
        container router-static {
          status deprecated;
          description
            "This model is deprecated and is replaced by
           Cisco-IOS-XR-um-router-static-cfg.yang which will
           provide the compatible functionalities.  This
           class represents router static configuration";
          container vrfs {
            description
              "VRF static configuration container";
            list vrf {
              key "vrf-name";
              description
                "VRF static configuration";
              leaf vrf-name {
                type xr:Cisco-ios-xr-string;
                description "VRF name";
              }
    
              uses ADDRESS-FAMILY;
            }  // list vrf
          }  // container vrfs
    
          container default-vrf {
            description
              "Default VRF configuration";
            uses ADDRESS-FAMILY;
          }  // container default-vrf
    
          container maximum-routes {
            description
              "The maximum number of static routes that can be
             configured.";
            leaf ipv6-routes {
              type uint32 {
                range "1..140000";
              }
              default "4000";
              description
                "The maximum number of static routes that can be
               configured for IPv6 AFI.";
            }
    
            leaf ipv4-routes {
              type uint32 {
                range "1..140000";
              }
              default "4000";
              description
                "The maximum number of static routes that can be
               configured for IPv4 AFI.";
            }
          }  // container maximum-routes
        }  // container router-static
      }  // module Cisco-IOS-XR-ip-static-cfg
    

© 2023 YumaWorks, Inc. All rights reserved.