module Cisco-IOS-XR-ip-static-cfg { /*** NAMESPACE / PREFIX DEFINITION ***/ namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-static-cfg"; prefix "ip-static-cfg"; /*** LINKAGE (IMPORTS / INCLUDES) ***/ import ietf-inet-types { prefix "inet"; } import Cisco-IOS-XR-types { prefix "xr"; } /*** META INFORMATION ***/ 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 module contains definitions for the following management objects: router-static: This class represents router static configuration Copyright (c) 2013 by Cisco Systems, Inc. All rights reserved."; revision "2013-07-22" { description "Initial revision."; } grouping VRF-ROUTE { description "Common node of vrf-prefix, vrf-prefix-topology"; container vrf-route { xr:xr-xml-map "ip_static_cfg:VRFRoute"; description "A connected or recursive static route"; container vrf-next-hops { xr:xr-xml-map "ip_static_cfg:VRFNextHopTable"; description "A forwarding interface and/or the address of a nexthop router for this route (one of these must be specified)"; grouping VRF-NEXT-HOP-CONTENT { description "Content grouping."; leaf bfd-fast-detect { xr:xr-xml-map "ip_static_cfg:BFDFastDetect"; type boolean; default "false"; description "If set, bfd is enabled"; } leaf minimum-interval { xr:xr-xml-map "ip_static_cfg:MinimumInterval"; type uint32 { range "3..30000"; } units "millisecond"; default "100"; description "BFD Hello interval in milliseconds"; } leaf detect-multiplier { xr:xr-xml-map "ip_static_cfg:DetectMultiplier"; type uint32 { range "1..10"; } default "3"; description "BFD Detect Multiplier"; } leaf metric { xr:xr-xml-map "ip_static_cfg:Metric"; type uint32 { range "1..254"; } default "1"; description "Distance metric for this path"; } leaf tag { xr:xr-xml-map "ip_static_cfg:Tag"; type uint32 { range "1..4294967295"; } description "Tag for this path"; } leaf permanent { xr:xr-xml-map "ip_static_cfg:Permanent"; type boolean; default "false"; description "If set, path is permanent"; } leaf vrf-lable { xr:xr-xml-map "ip_static_cfg:VRFLable"; type uint32 { range "0..4294967295"; } default "0"; description "VRF LABEL"; } leaf tunnel-id { xr:xr-xml-map "ip_static_cfg:TunnelID"; type uint32 { range "0..65535"; } default "0"; description "Tunnel ID for this path"; } leaf object-name { xr:xr-xml-map "ip_static_cfg:ObjectName"; type xr:Cisco-ios-xr-string { length "0..32"; } description "Name of the object to track"; } leaf description { xr:xr-xml-map "ip_static_cfg:Description"; type string; description "Short Description of Static Route"; } } list interface-name-and-next-hop-address { xr:xr-xml-map "ip_static_cfg:VRFNextHop"; key "interface-name next-hop-address"; description "keys: interface-name, next-hop-address"; leaf interface-name { xr:xr-xml-map "ip_static_cfg:InterfaceName"; type xr:Interface-name; description "Forwarding interface"; } leaf next-hop-address { xr:xr-xml-map "ip_static_cfg:NextHopAddress"; type inet:ip-address; description "Next hop address"; } uses VRF-NEXT-HOP-CONTENT; } list interface-name { xr:xr-xml-map "ip_static_cfg:VRFNextHop"; key "interface-name"; description "keys: interface-name"; leaf interface-name { xr:xr-xml-map "ip_static_cfg:InterfaceName"; type xr:Interface-name; description "Forwarding interface"; } uses VRF-NEXT-HOP-CONTENT; } list next-hop-address { xr:xr-xml-map "ip_static_cfg:VRFNextHop"; key "next-hop-address"; description "keys: next-hop-address"; leaf next-hop-address { xr:xr-xml-map "ip_static_cfg:NextHopAddress"; type inet:ip-address; description "Next hop address"; } uses VRF-NEXT-HOP-CONTENT; } } } } grouping TOPOLOGY-TABLE { description "Common node of vrf-unicast, vrf-multicast"; container topologies { xr:xr-xml-map "ip_static_cfg:TopologyTable"; description "Topology static configuration container"; list topology { xr:xr-xml-map "ip_static_cfg:Topology"; key "topology-name"; description "Topology static configuration"; leaf topology-name { xr:xr-xml-map "ip_static_cfg:TopologyName"; type xr:Cisco-ios-xr-string; description "Topology name"; } uses VRF-PREFIX-TOPOLOGY-TABLE; } } } grouping VRF-PREFIX-TABLE { description "Common node of vrf-unicast, vrf-multicast"; container vrf-prefixes { xr:xr-xml-map "ip_static_cfg:VRFPrefixTable"; description "The set of all Static Topologies for this AFI."; list vrf-prefix { xr:xr-xml-map "ip_static_cfg:VRFPrefix"; key "prefix prefix-length"; description "A static route"; leaf prefix { xr:xr-xml-map "ip_static_cfg:Prefix"; type inet:ip-address; description "Destination prefix"; } leaf prefix-length { xr:xr-xml-map "ip_static_cfg:PrefixLength"; type uint32 { range "0..128"; } description "Destination prefix length"; } uses VRF-ROUTE; } } } grouping ADDRESS-FAMILY { description "Common node of default-vrf, vrf"; container address-family { xr:xr-xml-map "ip_static_cfg:AddressFamily"; description "Address family configuration"; container vrfipv4 { xr:xr-xml-map "ip_static_cfg:VRFIPV4"; description "IPv4 static configuration"; uses VRF-UNICAST; uses VRF-MULTICAST; } container vrfipv6 { xr:xr-xml-map "ip_static_cfg:VRFIPV6"; description "IPv6 static configuration"; uses VRF-UNICAST; uses VRF-MULTICAST; } } } grouping VRF-PREFIX-TOPOLOGY-TABLE { description "Common node of default-topology, topology"; container vrf-prefix-topologies { xr:xr-xml-map "ip_static_cfg:VRFPrefixTopologyTable"; description "The set of all Static Topologies for this AFI."; list vrf-prefix-topology { xr:xr-xml-map "ip_static_cfg:VRFPrefixTopology"; key "prefix prefix-length"; description "A static route"; leaf prefix { xr:xr-xml-map "ip_static_cfg:Prefix"; type inet:ip-address; description "Destination prefix"; } leaf prefix-length { xr:xr-xml-map "ip_static_cfg:PrefixLength"; type uint32 { range "0..128"; } description "Destination prefix length"; } uses VRF-ROUTE; } } } grouping DEFAULT-TOPOLOGY { description "Common node of vrf-unicast, vrf-multicast"; container default-topology { xr:xr-xml-map "ip_static_cfg:DefaultTopology"; description "Default topology configuration"; uses VRF-PREFIX-TOPOLOGY-TABLE; } } grouping VRF-UNICAST { description "Common node of vrfipv4, vrfipv6"; container vrf-unicast { xr:xr-xml-map "ip_static_cfg:VRFUnicast"; description "Unicast static configuration"; uses TOPOLOGY-TABLE; uses VRF-PREFIX-TABLE; uses DEFAULT-TOPOLOGY; } } grouping VRF-MULTICAST { description "Common node of vrfipv4, vrfipv6"; container vrf-multicast { xr:xr-xml-map "ip_static_cfg:VRFMulticast"; description "Multicast static configuration"; uses TOPOLOGY-TABLE; uses VRF-PREFIX-TABLE; uses DEFAULT-TOPOLOGY; } } container router-static { xr:xr-xml-map "ip_static_cfg:RouterStatic"; description "This class represents router static configuration"; container vrfs { xr:xr-xml-map "ip_static_cfg:VRFTable"; description "VRF static configuration container"; list vrf { xr:xr-xml-map "ip_static_cfg:VRF"; key "vrf-name"; description "VRF static configuration"; leaf vrf-name { xr:xr-xml-map "ip_static_cfg:VRFName"; type xr:Cisco-ios-xr-string; description "VRF name"; } uses ADDRESS-FAMILY; } } container default-vrf { xr:xr-xml-map "ip_static_cfg:DefaultVRF"; description "Default VRF configuration"; uses ADDRESS-FAMILY; } container maximum-routes { xr:xr-xml-map "ip_static_cfg:MaximumRoutes"; description "The maximum number of static routes that can be configured."; leaf ipv6-routes { xr:xr-xml-map "ip_static_cfg:IPV6Routes"; type uint32 { range "1..140000"; } default "4000"; description "The maximum number of static routes that can be configured for this AFI"; } leaf ipv4-routes { xr:xr-xml-map "ip_static_cfg:IPV4Routes"; type uint32 { range "1..140000"; } default "4000"; description "The maximum number of static routes that can be configured for this AFI"; } } } }