This module contains a collection of YANG definitions for Cisco IOS-XR subscriber-infra-tmplmgr package configuration. This mod...
Version: 2019-04-05
module Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { yang-version 1; namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg"; prefix subscriber-infra-tmplmgr-cfg; 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 subscriber-infra-tmplmgr package configuration. This module contains definitions for the following management objects: dynamic-template: All dynamic template configurations Copyright (c) 2013-2019 by Cisco Systems, Inc. All rights reserved."; revision "2019-04-05" { description "Establish semantic version baseline."; } revision "2015-01-07" { description "IOS XR 5.3.1 revision."; } semver:module-version "1.0.1"; container dynamic-template { description "All dynamic template configurations"; container ppps { description "Templates of the PPP Type"; list ppp { key "template-name"; description "A Template of the PPP Type"; leaf template-name { type xr:Cisco-ios-xr-string; description "The name of the template"; } container igmp { description "IGMPconfiguration"; container default-vrf { description "Default VRF"; container max-groups { presence "Indicates a max-groups node is configured."; description "IGMP Max Groups"; leaf max-groups { type uint32 { range "1..40000"; } mandatory true; description "Maximum number of groups accepted per interface by this router"; } leaf threshold { type uint32 { range "1..40000"; } description " Threshold for number of groups accepted per interface by this router"; } leaf access-list-name { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access-list to account for"; } } // container max-groups container explicit-tracking { presence "Indicates a explicit-tracking node is configured."; description "IGMPv3 explicit host tracking"; leaf enable { type boolean; mandatory true; description "Enable or disable, when value is TRUE or FALSE respectively"; } leaf access-list-name { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access list specifying tracking group range"; } } // container explicit-tracking leaf access-group { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access list specifying access-list group range"; } leaf version { type uint32 { range "1..3"; } default "3"; description "IGMP Version"; } leaf query-interval { type uint32 { range "1..3600"; } units "second"; default "60"; description "Query interval in seconds"; } leaf query-max-response-time { type uint32 { range "1..25"; } units "second"; default "10"; description "Query response value in seconds"; } leaf multicast-mode { type Dyn-tmpl-multicast-mode; description "Configure Multicast mode variable"; } } // container default-vrf } // container igmp leaf vrf { type xr:Cisco-ios-xr-string { length "1..32"; } description "Assign the interface to a VRF "; } container ipv6-network { description "Interface IPv6 Network configuration data"; container addresses { description "Set the IPv6 address of an interface"; container auto-configuration { description "Auto IPv6 Interface Configuration"; leaf enable { type empty; description "The flag to enable auto ipv6 interface configuration"; } } // container auto-configuration } // container addresses leaf mtu { type uint32 { range "1280..65535"; } units "byte"; description "MTU Setting of Interface"; } leaf rpf { type boolean; description "TRUE if enabled, FALSE if disabled"; } leaf unreachables { type empty; description "Override Sending of ICMP Unreachable Messages"; } } // container ipv6-network container pppoe-template { presence "Indicates a pppoe-template node is configured."; description "PPPoE template configuration data"; leaf port-limit { type xr:Cisco-ios-xr-port-number; mandatory true; description "Specify the Port limit (attr 62) to apply to the subscriber"; } } // container pppoe-template container ppp-template { description "PPP template configuration data"; container fsm { description "PPP FSM global template configuration data"; leaf max-consecutive-conf-naks { type uint32 { range "2..10"; } default "5"; description "This specifies the maximum number of consecutive Conf-Naks"; } leaf max-unacknowledged-conf-requests { type uint32 { range "4..20"; } default "10"; description "This specifies the maximum number of unacknowledged Conf-Requests"; } leaf retry-timeout { type uint32 { range "1..10"; } default "3"; description "This specifies the maximum time to wait for a response during PPP negotiation"; } leaf protocol-reject-timeout { type uint32 { range "1..60"; } default "60"; description "This specifies the maximum time to wait before sending Protocol Reject"; } } // container fsm container lcp { description "PPP LCP global template configuration data"; container absolute-timeout { description "This specifies the session absolute timeout value"; leaf minutes { type uint32 { range "0..35000000"; } description "Minutes"; } leaf seconds { type uint32 { range "0..59"; } description "Seconds"; } } // container absolute-timeout container delay { description "This specifies the time to delay before starting active LCPnegotiations"; leaf seconds { type uint32 { range "0..255"; } description "Seconds"; } leaf milliseconds { type uint32 { range "0..999"; } description "Milliseconds"; } } // container delay container authentication { description "PPP authentication parameters"; container methods { description "This specifies the PPP link authentication method"; leaf-list method { type Ppp-authentication-method-gbl; max-elements 3; description "Select between one and three authentication methods in order of preference"; } } // container methods leaf chap-host-name { type string; description "This specifies the CHAP hostname"; } leaf pap { type uint32; description "<1> for accepting null-passwordduring authentication"; } leaf mschap-host-name { type string; description "This specifies the MS-CHAP hostname"; } leaf max-authentication-failures { type uint32 { range "0..10"; } description "This specifies whether to allow multiple authentication failures and, if so, how many"; } leaf timeout { type uint32 { range "3..30"; } default "10"; description "Maximum time to wait for an authentication response"; } } // container authentication container keepalive { description "This specifies the rate at which EchoReq packets are sent"; leaf keepalive-disable { type boolean; description "TRUE to disable keepalives, FALSE to specify a new keepalive interval"; } leaf interval { when "../keepalive-disable = 'false'" { description "../KeepaliveDisable = 'false'"; } type uint32 { range "10..180"; } description "The keepalive interval. Leave unspecified when disabling keepalives"; } leaf retry-count { when "../keepalive-disable = 'false'" { description "../KeepaliveDisable = 'false'"; } type uint32 { range "1..255"; } description "The keepalive retry count. Leave unspecified when disabling keepalives"; } } // container keepalive leaf renegotiation { type empty; description "Specify whether to ignore attempts to renegotiate LCP"; } leaf service-type { type uint32 { range "0..15"; } default "0"; description "This is the Service-Type"; } leaf send-term-request-on-shut-down { type empty; description "Enable Sending LCP Terminate request on shutdown"; } leaf mru-ignore { type empty; description "Ignore MRU negotiated with peer while setting interface BW"; } } // container lcp container ipv6cp { description "PPP IPv6CP global template configuration data"; leaf passive { type empty; description "Specify whether to run IPv6CP in Passive mode"; } leaf renegotiation { type empty; description "Specify whether to ignore attempts to renegotiate IPv6CP"; } leaf peer-interface-id { type string; description "Specify the Interface-Id to impose on the peer"; } leaf protocol-reject { type empty; description "Specify whether to protocol reject IPv6CP"; } } // container ipv6cp container ipcp { description "PPP IPCP global template configuration data"; container wins { description "IPCP WINS parameters"; container wins-addresses { description "Specify WINS address(es) to provide"; leaf primary { type inet:ipv4-address-no-zone; description "Primary WINS IP address"; } leaf secondary { type inet:ipv4-address-no-zone; description "Secondary WINS IP address"; } } // container wins-addresses } // container wins container dns { description "IPCP DNS parameters"; container dns-addresses { description "Specify DNS address(es) to provide"; leaf primary { type inet:ipv4-address-no-zone; description "Primary DNS IP address"; } leaf secondary { type inet:ipv4-address-no-zone; description "Secondary DNS IP address"; } } // container dns-addresses } // container dns container peer-address { description "IPCP address parameters"; leaf default { type inet:ipv4-address-no-zone; description "Specify an IP address to assign to peers through IPCP"; } leaf pool { type string; description "Accepts an IP address from the peer if in the pool, else allocates one from the pool"; } } // container peer-address leaf renegotiation { type empty; description "Specify whether to ignore attempts to renegotiate IPCP"; } leaf passive { type empty; description "Specify whether to run IPCP in Passive mode"; } leaf protocol-reject { type empty; description "Specify whether to protocol reject IPCP"; } leaf peer-netmask { type inet:ipv4-address-no-zone; description "Specify the IPv4 netmask to negotiate for the peer"; } } // container ipcp } // container ppp-template container qos { description "QoS dynamically applied configuration template"; container service-policy { description "Service policy to be applied in ingress/egress direction"; container input { presence "Indicates a input node is configured."; description "Subscriber ingress policy"; leaf policy-name { type string; mandatory true; description "Name of policy-map"; } leaf spi-name { type string; description "Name of the SPI"; } leaf merge { type boolean; description "TRUE for merge enabled for service-policy applied on dynamic template."; } leaf merge-id { type uint32 { range "0..255"; } description "Merge ID value"; } leaf account-stats { type boolean; description "TRUE for account stats enabled for service-policy applied on dynamic template. Note: account stats not supported for subscriber type 'ppp' and 'ipsubscriber'."; } } // container input container output { presence "Indicates a output node is configured."; description "Subscriber egress policy"; leaf policy-name { type string; mandatory true; description "Name of policy-map"; } leaf spi-name { type string; description "Name of the SPI"; } leaf merge { type boolean; description "TRUE for merge enabled for service-policy applied on dynamic template."; } leaf merge-id { type uint32 { range "0..255"; } description "Merge ID value"; } leaf account-stats { type boolean; description "TRUE for account stats enabled for service-policy applied on dynamic template. Note: account stats not supported for subscriber type 'ppp' and 'ipsubscriber'."; } } // container output } // container service-policy container account { description "QoS L2 overhead accounting"; leaf aal { type Qosl2-data-link; must "../encapsulation and not(../user-defined or ../atm-cell-tax)"; description "ATM adaptation layer AAL"; } leaf encapsulation { type Qosl2-encap; must "../aal and not(../user-defined or ../atm-cell-tax)"; description "Specify encapsulation type"; } leaf atm-cell-tax { type empty; must "../user-defined and not(../aal or ../encapsulation)"; description "ATM cell tax to L2 overhead"; } leaf user-defined { type int32 { range "-63..63"; } must "not(../aal or ../encapsulation)"; description "Numeric L2 overhead offset"; } } // container account container output { description "QoS to be applied in egress direction"; leaf minimum-bandwidth { type uint32 { range "1..4294967295"; } units "kbit/s"; description "Minimum bandwidth value for the subscriber (in kbps)"; } } // container output } // container qos container ipv6-neighbor { description "Interface IPv6 Network configuration data"; container ra-interval { presence "Indicates a ra-interval node is configured."; description "Set IPv6 Router Advertisement (RA) interval in seconds"; leaf maximum { type uint32 { range "4..1800"; } units "second"; mandatory true; description "Maximum RA interval in seconds"; } leaf minimum { type uint32 { range "3..1800"; } units "second"; description "Minimum RA interval in seconds. Must be less than 0.75 * maximum interval"; } } // container ra-interval container framed-prefix { presence "Indicates a framed-prefix node is configured."; description "Set the IPv6 framed ipv6 prefix for a subscriber interface "; leaf prefix-length { type xr:Ipv6-prefix-length; mandatory true; description "IPv6 framed prefix length"; } leaf prefix { type string; mandatory true; description "IPV6 framed prefix address"; } } // container framed-prefix container duplicate-address-detection { description "Duplicate Address Detection (DAD)"; leaf attempts { type uint32 { range "0..600"; } description "Set IPv6 duplicate address detection transmits"; } } // container duplicate-address-detection container ra-initial { presence "Indicates a ra-initial node is configured."; description "IPv6 ND RA Initial"; leaf count { type uint32 { range "0..32"; } mandatory true; description "Initial RA count"; } leaf interval { type uint32 { range "4..1800"; } units "second"; mandatory true; description "Initial RA interval in seconds"; } } // container ra-initial leaf framed-prefix-pool { type string; description "Set the IPv6 framed ipv6 prefix pool for a subscriber interface "; } leaf managed-config { type empty; description "Host to use stateful protocol for address configuration"; } leaf other-config { type empty; description "Host to use stateful protocol for non-address configuration"; } leaf start-ra-on-ipv6-enable { type empty; description "Start RA on ipv6-enable config"; } leaf nud-enable { type empty; description "NUD enable"; } leaf ra-lifetime { type uint32 { range "0..9000"; } units "second"; description "Set IPv6 Router Advertisement (RA) lifetime in seconds"; } leaf router-preference { type Ipv6-nd-router-pref-template; description "RA Router Preference"; } leaf ra-suppress { type empty; description "Enable suppress IPv6 router advertisement"; } leaf ra-unicast { type empty; description "Enable RA unicast Flag"; } leaf ra-unspecify-hoplimit { type empty; description "Unspecify IPv6 Router Advertisement (RA) hop-limit"; } leaf ra-suppress-mtu { type empty; description "RA suppress MTU flag"; } leaf suppress-cache-learning { type empty; description "Suppress cache learning flag"; } leaf reachable-time { type uint32 { range "0..3600000"; } units "millisecond"; description "Set advertised reachability time in milliseconds"; } leaf ns-interval { type uint32 { range "1000..4294967295"; } units "millisecond"; description "Set advertised NS retransmission interval in milliseconds"; } } // container ipv6-neighbor container span-attachments { description "Monitor Session container for this source interface"; list span-attachment { key "session-name"; description "Configuration for a particular Monitor Session"; leaf session-name { type dt1:Span-session-name; description "Session Name"; } leaf mirror-first { type uint32 { range "1..10000"; } units "byte"; description "Mirror a specified number of bytes from start of packet"; } leaf mirror-interval { type Span-mirror-interval; description "Specify the mirror interval"; } container attachment-config { presence "Indicates a attachment-config node is configured."; description "Attach the interface to a Monitor Session"; leaf session-class { type dt1:Span-session-class; mandatory true; description "Traffic class for the session"; } leaf direction { type Span-traffic-direction; description "Specify the direction of traffic to replicate (optional)"; } leaf port-level-enable { type empty; description "Enable port level traffic mirroring"; } } // container attachment-config container acl { presence "Indicates a acl node is configured."; description "Enable ACL matching for traffic mirroring"; leaf acl-enable { type empty; mandatory true; description "Enable ACL"; } leaf acl-name { type dt1:Span-acl-name; description "ACL Name"; } } // container acl } // list span-attachment } // container span-attachments container span-monitor-sessions { status deprecated; description "Monitor Session container for this template"; list span-monitor-session { key "session-class"; description "Configuration for a particular class of Monitor Session"; leaf session-class { type dt1:Span-session-class; description "Session Class"; } leaf mirror-first { type uint32 { range "1..10000"; } units "byte"; description "Mirror a specified number of bytes from start of packet"; } container attachment { presence "Indicates a attachment node is configured."; description "Attach the interface to a Monitor Session"; leaf session-name { type dt1:Span-session-name; mandatory true; description "Session Name"; } leaf direction { type Span-traffic-direction; description "Specify the direction of traffic to replicate (optional)"; } leaf port-level-enable { type empty; description "Enable port level traffic mirroring"; } } // container attachment leaf mirror-interval { type Span-mirror-interval; description "Specify the mirror interval"; } container acl { presence "Indicates a acl node is configured."; description "Enable ACL matching for traffic mirroring"; leaf acl-enable { type empty; mandatory true; description "Enable ACL"; } leaf acl-name { type dt1:Span-acl-name; description "ACL Name"; } } // container acl leaf drops { type boolean; description "Specify whether or not to mirror dropped packets"; } container ipv4acl { presence "Indicates a ipv4acl node is configured."; description "Enable IPv4 ACL matching for traffic mirroring"; leaf acl-enable { type empty; mandatory true; description "Enable ACL"; } leaf acl-name { type dt1:Span-acl-name; description "ACL Name"; } } // container ipv4acl container ipv6acl { presence "Indicates a ipv6acl node is configured."; description "Enable IPv6 ACL matching for traffic mirroring"; leaf acl-enable { type empty; mandatory true; description "Enable ACL"; } leaf acl-name { type dt1:Span-acl-name; description "ACL Name"; } } // container ipv6acl } // list span-monitor-session } // container span-monitor-sessions container accounting { description "Subscriber accounting dynamic-template commands"; container idle-timeout { description "Subscriber accounting idle timeout"; leaf timeout-value { type uint32 { range "60..4320000"; } description "Idle timeout value in seconds"; } leaf threshold { type uint32 { range "1..10000"; } description "Threshold in minute(s) per packet"; } leaf direction { type string; description "Idle timeout traffic direction"; } } // container idle-timeout container session { description "Subscriber accounting session accounting"; leaf method-list-name { type string; description "Session accounting method list name"; } leaf periodic-interval { type uint32; description "Interim accounting interval in minutes"; } leaf dual-stack-delay { type uint32; description "Dual stack wait delay in seconds"; } leaf hold-acct-start { type enumeration { enum "ipv6-prefix-delegation" { value 3; description "Based on ipv6 delegated prefix"; } } description "Hold Accounting start based on IA_PD"; } } // container session container service-accounting { description "Subscriber accounting service accounting"; leaf method-list-name { type string; description "Service accounting method list name"; } leaf accounting-interim-interval { type uint32; description "Accounting interim interval in minutes"; } } // container service-accounting leaf monitor-feature { type string; description "Subscriber monitor feature"; } leaf prepaid-feature { type string; description "Subscriber accounting prepaid feature"; } } // container accounting container dhcpv6 { description "Interface dhcpv6 configuration data"; container delegated-prefix { presence "Indicates a delegated-prefix node is configured."; description "The prefix to be used for Prefix Delegation"; leaf prefix { type inet:ipv6-address-no-zone; mandatory true; description "IPv6 Prefix"; } leaf prefix-length { type xr:Ipv6-prefix-length; mandatory true; description "PD Prefix Length"; } } // container delegated-prefix leaf dns-ipv6address { type inet:ipv6-address-no-zone; description "Dns IPv6 Address"; } leaf mode-class { type string; description "Select proxy/server profile based on mode class name"; } leaf dhcpv6-iplease { type string; description "Cisco VSA to configure any dhcpv6 ip lease per subscriber"; } leaf dhcpv6-option { type string; description "Cisco VSA to configure any dhcpv6 option per subscriber"; } leaf address-pool { type string; description "The pool to be used for Address assignment"; } leaf delegated-prefix-pool { type string; description "The pool to be used for Prefix Delegation"; } leaf class { type string; description "The class to be used for proxy/server profile"; } leaf stateful-address { type inet:ipv6-address-no-zone; description "Stateful IPv6 Address"; } } // container dhcpv6 container pbr { description "Dynamic Template PBR configuration"; container service-policies { description "Ingress service policy"; list service-policy { key "service-policy"; description "Service policy details"; leaf service-policy { type string { length "1..64"; } description "Name of policy-map"; } } // list service-policy } // container service-policies leaf service-policy-in { type string; description "Class for subscriber ingress policy"; } } // container pbr } // list ppp } // container ppps container ip-subscribers { description "The IP Subscriber Template Table"; list ip-subscriber { key "template-name"; description "A IP Subscriber Type Template "; leaf template-name { type xr:Cisco-ios-xr-string; description "The name of the template"; } container dhcpd { description "Interface dhcpv4 configuration data"; leaf dhcpv4-iplease { type string; description "Cisco VSA to configure any dhcp4 ip lease per subscriber"; } leaf class { type string; description "The class to be used for proxy/server profile"; } leaf mode-class { type string; description "Select proxy/server profile based on mode class name"; } leaf default-gateway { type inet:ipv4-address-no-zone; description "The Default Gateway IP address"; } leaf session-limit { type uint32; description "The pool to be used for Prefix Delegation"; } leaf dhcpv4-option { type string; description "Cisco VSA to configure any dhcp4 option per subscriber"; } } // container dhcpd container igmp { description "IGMPconfiguration"; container default-vrf { description "Default VRF"; container max-groups { presence "Indicates a max-groups node is configured."; description "IGMP Max Groups"; leaf max-groups { type uint32 { range "1..40000"; } mandatory true; description "Maximum number of groups accepted per interface by this router"; } leaf threshold { type uint32 { range "1..40000"; } description " Threshold for number of groups accepted per interface by this router"; } leaf access-list-name { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access-list to account for"; } } // container max-groups container explicit-tracking { presence "Indicates a explicit-tracking node is configured."; description "IGMPv3 explicit host tracking"; leaf enable { type boolean; mandatory true; description "Enable or disable, when value is TRUE or FALSE respectively"; } leaf access-list-name { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access list specifying tracking group range"; } } // container explicit-tracking leaf access-group { type xr:Cisco-ios-xr-string { length "1..64"; } description "Access list specifying access-list group range"; } leaf version { type uint32 { range "1..3"; } default "3"; description "IGMP Version"; } leaf query-interval { type uint32 { range "1..3600"; } units "second"; default "60"; description "Query interval in seconds"; } leaf query-max-response-time { type uint32 { range "1..25"; } units "second"; default "10"; description "Query response value in seconds"; } leaf multicast-mode { type Dyn-tmpl-multicast-mode; description "Configure Multicast mode variable"; } } // container default-vrf } // container igmp leaf vrf { type xr:Cisco-ios-xr-string { length "1..32"; } description "Assign the interface to a VRF "; } container ipv6-network { description "Interface IPv6 Network configuration data"; container addresses { description "Set the IPv6 address of an interface"; container auto-configuration { description "Auto IPv6 Interface Configuration"; leaf enable { type empty; description "The flag to enable auto ipv6 interface configuration"; } } // container auto-configuration } // container addresses leaf mtu { type uint32 { range "1280..65535"; } units "byte"; description "MTU Setting of Interface"; } leaf rpf { type boolean; description "TRUE if enabled, FALSE if disabled"; } leaf unreachables { type empty; description "Override Sending of ICMP Unreachable Messages"; } } // container ipv6-network container qos { description "QoS dynamically applied configuration template"; container service-policy { description "Service policy to be applied in ingress/egress direction"; container input { presence "Indicates a input node is configured."; description "Subscriber ingress policy"; leaf policy-name { type string; mandatory true; description "Name of policy-map"; } leaf spi-name { type string; description "Name of the SPI"; } leaf merge { type boolean; description "TRUE for merge enabled for service-policy applied on dynamic template."; } leaf merge-id { type uint32 { range "0..255"; } description "Merge ID value"; } leaf account-stats { type boolean; description "TRUE for account stats enabled for service-policy applied on dynamic template. Note: account stats not supported for subscriber type 'ppp' and 'ipsubscriber'."; } } // container input container output { presence "Indicates a output node is configured."; description "Subscriber egress policy"; leaf policy-name { type string; mandatory true; description "Name of policy-map"; } leaf spi-name { type string; description "Name of the SPI"; } leaf merge { type boolean; description "TRUE for merge enabled for service-policy applied on dynamic template."; } leaf merge-id { type uint32 { range "0..255"; } description "Merge ID value"; } leaf account-stats { type boolean; description "TRUE for account stats enabled for service-policy applied on dynamic template. Note: account stats not supported for subscriber type 'ppp' and 'ipsubscriber'."; } } // container output } // container service-policy container account { description "QoS L2 overhead accounting"; leaf aal { type Qosl2-data-link; must "../encapsulation and not(../user-defined or ../atm-cell-tax)"; description "ATM adaptation layer AAL"; } leaf encapsulation { type Qosl2-encap; must "../aal and not(../user-defined or ../atm-cell-tax)"; description "Specify encapsulation type"; } leaf atm-cell-tax { type empty; must "../user-defined and not(../aal or ../encapsulation)"; description "ATM cell tax to L2 overhead"; } leaf user-defined { type int32 { range "-63..63"; } must "not(../aal or ../encapsulation)"; description "Numeric L2 overhead offset"; } } // container account container output { description "QoS to be applied in egress direction"; leaf minimum-bandwidth { type uint32 { range "1..4294967295"; } units "kbit/s"; description "Minimum bandwidth value for the subscriber (in kbps)"; } } // container output } // container qos container ipv6-neighbor { description "Interface IPv6 Network configuration data"; container ra-interval { presence "Indicates a ra-interval node is configured."; description "Set IPv6 Router Advertisement (RA) interval in seconds"; leaf maximum { type uint32 { range "4..1800"; } units "second"; mandatory true; description "Maximum RA interval in seconds"; } leaf minimum { type uint32 { range "3..1800"; } units "second"; description "Minimum RA interval in seconds. Must be less than 0.75 * maximum interval"; } } // container ra-interval container framed-prefix { presence "Indicates a framed-prefix node is configured."; description "Set the IPv6 framed ipv6 prefix for a subscriber interface "; leaf prefix-length { type xr:Ipv6-prefix-length; mandatory true; description "IPv6 framed prefix length"; } leaf prefix { type string; mandatory true; description "IPV6 framed prefix address"; } } // container framed-prefix container duplicate-address-detection { description "Duplicate Address Detection (DAD)"; leaf attempts { type uint32 { range "0..600"; } description "Set IPv6 duplicate address detection transmits"; } } // container duplicate-address-detection container ra-initial { presence "Indicates a ra-initial node is configured."; description "IPv6 ND RA Initial"; leaf count { type uint32 { range "0..32"; } mandatory true; description "Initial RA count"; } leaf interval { type uint32 { range "4..1800"; } units "second"; mandatory true; description "Initial RA interval in seconds"; } } // container ra-initial leaf framed-prefix-pool { type string; description "Set the IPv6 framed ipv6 prefix pool for a subscriber interface "; } leaf managed-config { type empty; description "Host to use stateful protocol for address configuration"; } leaf other-config { type empty; description "Host to use stateful protocol for non-address configuration"; } leaf start-ra-on-ipv6-enable { type empty; description "Start RA on ipv6-enable config"; } leaf nud-enable { type empty; description "NUD enable"; } leaf ra-lifetime { type uint32 { range "0..9000"; } units "second"; description "Set IPv6 Router Advertisement (RA) lifetime in seconds"; } leaf router-preference { type Ipv6-nd-router-pref-template; description "RA Router Preference"; } leaf ra-suppress { type empty; description "Enable suppress IPv6 router advertisement"; } leaf ra-unicast { type empty; description "Enable RA unicast Flag"; } leaf ra-unspecify-hoplimit { type empty; description "Unspecify IPv6 Router Advertisement (RA) hop-limit"; } leaf ra-suppress-mtu { type empty; description "RA suppress MTU flag"; } leaf suppress-cache-learning { type empty; description "Suppress cache learning flag"; } leaf reachable-time { type uint32 { range "0..3600000"; } units "millisecond"; description "Set advertised reachability time in milliseconds"; } leaf ns-interval { type uint32 { range "1000..4294967295"; } units "millisecond"; description "Set advertised NS retransmission interval in milliseconds"; } } // container ipv6-neighbor container span-attachments { description "Monitor Session container for this source interface"; list span-attachment { key "session-name"; description "Configuration for a particular Monitor Session"; leaf session-name { type dt1:Span-session-name; description "Session Name"; } leaf mirror-first { type uint32 { range "1..10000"; } units "byte"; description "Mirror a specified number of bytes from start of packet"; } leaf mirror-interval { type Span-mirror-interval; description "Specify the mirror interval"; } container attachment-config { presence "Indicates a attachment-config node is configured."; description "Attach the interface to a Monitor Session"; leaf session-class { type dt1:Span-session-class; mandatory true; description "Traffic class for the session"; } leaf direction { type Span-traffic-direction; description "Specify the direction of traffic to replicate (optional)"; } leaf port-level-enable { type empty; description "Enable port level traffic mirroring"; } } // container attachment-config container acl { presence "Indicates a acl node is configured."; description "Enable ACL matching for traffic mirroring"; leaf acl-enable { type empty; mandatory true; description "Enable ACL"; } leaf acl-name { type dt1:Span-acl-name; description "ACL Name"; } } // container acl } // list span-attachment } // container span-attachments container span-monitor-sessions { status deprecated; description "Monitor Session container for this template"; list span-monitor-session { key "session-class"; description "Configuration for a particular class of Monitor Session"; leaf session-class { type dt1:Span-session-class; description "Session Class"; } leaf mirror-first { type uint32 { range "1..10000"; } units "byte"; description "Mirror a specified number of bytes from start of packet"; } container attachment { presence "Indicates a attachment node is configured."; description "Attach the interface to a Monitor Session"; leaf session-name { type dt1:Span-session-name; mandatory true; description "Session Name"; } leaf direction { type Span-traffic-direction; description "Specify the direction of traffic to replicate (optional)"; } leaf port-level-enable { type empty; description "Enable port level traffic mirroring"; } } // container attachment leaf mirror-interval { type Span-mirror-interval; description "Specify the mirror interval"; } container acl { presence "Indicates a acl node is configured."; description "Enable ACL matching for traffic mirroring"; leaf acl-enable { type empty; mandatory true; description "Enable ACL"; } leaf acl-name { type dt1:Span-acl-name; description "ACL Name"; } } // container acl leaf drops { type boolean; description "Specify whether or not to mirror dropped packets"; } container ipv4acl { presence "Indicates a ipv4acl node is configured."; description "Enable IPv4 ACL matching for traffic mirroring"; leaf acl-enable { type empty; mandatory true; description "Enable ACL"; } leaf acl-name { type dt1:Span-acl-name; description "ACL Name"; } } // container ipv4acl container ipv6acl { presence "Indicates a ipv6acl node is configured."; description "Enable IPv6 ACL matching for traffic mirroring"; leaf acl-enable { type empty; mandatory true; description "Enable ACL"; } leaf acl-name { type dt1:Span-acl-name; description "ACL Name"; } } // container ipv6acl } // list span-monitor-session } // container span-monitor-sessions container accounting { description "Subscriber accounting dynamic-template commands"; container service-accounting { description "Subscriber accounting service accounting"; leaf method-list-name { type string; description "Service accounting method list name"; } leaf accounting-interim-interval { type uint32; units "minute"; description "Accounting interim interval in minutes"; } } // container service-accounting container session { description "Subscriber accounting session accounting"; leaf method-list-name { type string; description "Session accounting method list name"; } leaf periodic-interval { type uint32; units "minute"; description "Interim accounting interval in minutes"; } leaf dual-stack-delay { type uint32; units "second"; description "Dual stack wait delay in seconds"; } leaf hold-acct-start { type enumeration { enum "ipv6-prefix-delegation" { value 3; description "Based on ipv6 delegated prefix"; } } description "Hold Accounting start based on IA_PD"; } } // container session container idle-timeout { description "Subscriber accounting idle timeout"; leaf timeout-value { type uint32 { range "60..4320000"; } units "second"; description "Idle timeout value in seconds"; } leaf threshold { type uint32 { range "1..10000"; } description "Threshold in minute(s) per packet"; } leaf direction { type string; description "Idle timeout traffic direction"; } } // container idle-timeout leaf monitor-feature { type string; description "Subscriber monitor feature"; } leaf prepaid-feature { type string; description "Subscriber accounting prepaid feature"; } } // container accounting container dhcpv6 { description "Interface dhcpv6 configuration data"; container delegated-prefix { presence "Indicates a delegated-prefix node is configured."; description "The prefix to be used for Prefix Delegation"; leaf prefix { type inet:ipv6-address-no-zone; mandatory true; description "IPv6 Prefix"; } leaf prefix-length { type xr:Ipv6-prefix-length; mandatory true; description "PD Prefix Length"; } } // container delegated-prefix leaf dns-ipv6address { type inet:ipv6-address-no-zone; description "Dns IPv6 Address"; } leaf mode-class { type string; description "Select proxy/server profile based on mode class name"; } leaf dhcpv6-iplease { type string; description "Cisco VSA to configure any dhcpv6 ip lease per subscriber"; } leaf dhcpv6-option { type string; description "Cisco VSA to configure any dhcpv6 option per subscriber"; } leaf address-pool { type string; description "The pool to be used for Address assignment"; } leaf delegated-prefix-pool { type string; description "The pool to be used for Prefix Delegation"; } leaf class { type string; description "The class to be used for proxy/server profile"; } leaf stateful-address { type inet:ipv6-address-no-zone; description "Stateful IPv6 Address"; } } // container dhcpv6 container pbr { description "Dynamic Template PBR configuration"; container service-policies { description "Ingress service policy"; list service-policy { key "service-policy"; description "Service policy details"; leaf service-policy { type string { length "1..64"; } description "Name of policy-map"; } } // list service-policy } // container service-policies leaf service-policy-in { type string; description "Class for subscriber ingress policy"; } } // container pbr } // list ip-subscriber } // container ip-subscribers container subscriber-services { description "The Service Type Template Table"; list subscriber-service { key "template-name"; description "A Service Type Template "; leaf template-name { type xr:Cisco-ios-xr-string; description "The name of the template"; } leaf vrf { type xr:Cisco-ios-xr-string { length "1..32"; } description "Assign the interface to a VRF "; } container ipv6-network { description "Interface IPv6 Network configuration data"; container addresses { description "Set the IPv6 address of an interface"; container auto-configuration { description "Auto IPv6 Interface Configuration"; leaf enable { type empty; description "The flag to enable auto ipv6 interface configuration"; } } // container auto-configuration } // container addresses leaf mtu { type uint32 { range "1280..65535"; } units "byte"; description "MTU Setting of Interface"; } leaf rpf { type boolean; description "TRUE if enabled, FALSE if disabled"; } leaf unreachables { type empty; description "Override Sending of ICMP Unreachable Messages"; } } // container ipv6-network container qos { description "QoS dynamically applied configuration template"; container service-policy { description "Service policy to be applied in ingress/egress direction"; container input { presence "Indicates a input node is configured."; description "Subscriber ingress policy"; leaf policy-name { type string; mandatory true; description "Name of policy-map"; } leaf spi-name { type string; description "Name of the SPI"; } leaf merge { type boolean; description "TRUE for merge enabled for service-policy applied on dynamic template."; } leaf merge-id { type uint32 { range "0..255"; } description "Merge ID value"; } leaf account-stats { type boolean; description "TRUE for account stats enabled for service-policy applied on dynamic template. Note: account stats not supported for subscriber type 'ppp' and 'ipsubscriber'."; } } // container input container output { presence "Indicates a output node is configured."; description "Subscriber egress policy"; leaf policy-name { type string; mandatory true; description "Name of policy-map"; } leaf spi-name { type string; description "Name of the SPI"; } leaf merge { type boolean; description "TRUE for merge enabled for service-policy applied on dynamic template."; } leaf merge-id { type uint32 { range "0..255"; } description "Merge ID value"; } leaf account-stats { type boolean; description "TRUE for account stats enabled for service-policy applied on dynamic template. Note: account stats not supported for subscriber type 'ppp' and 'ipsubscriber'."; } } // container output } // container service-policy container account { description "QoS L2 overhead accounting"; leaf aal { type Qosl2-data-link; must "../encapsulation and not(../user-defined or ../atm-cell-tax)"; description "ATM adaptation layer AAL"; } leaf encapsulation { type Qosl2-encap; must "../aal and not(../user-defined or ../atm-cell-tax)"; description "Specify encapsulation type"; } leaf atm-cell-tax { type empty; must "../user-defined and not(../aal or ../encapsulation)"; description "ATM cell tax to L2 overhead"; } leaf user-defined { type int32 { range "-63..63"; } must "not(../aal or ../encapsulation)"; description "Numeric L2 overhead offset"; } } // container account container output { description "QoS to be applied in egress direction"; leaf minimum-bandwidth { type uint32 { range "1..4294967295"; } units "kbit/s"; description "Minimum bandwidth value for the subscriber (in kbps)"; } } // container output } // container qos container ipv6-neighbor { description "Interface IPv6 Network configuration data"; container ra-interval { presence "Indicates a ra-interval node is configured."; description "Set IPv6 Router Advertisement (RA) interval in seconds"; leaf maximum { type uint32 { range "4..1800"; } units "second"; mandatory true; description "Maximum RA interval in seconds"; } leaf minimum { type uint32 { range "3..1800"; } units "second"; description "Minimum RA interval in seconds. Must be less than 0.75 * maximum interval"; } } // container ra-interval container framed-prefix { presence "Indicates a framed-prefix node is configured."; description "Set the IPv6 framed ipv6 prefix for a subscriber interface "; leaf prefix-length { type xr:Ipv6-prefix-length; mandatory true; description "IPv6 framed prefix length"; } leaf prefix { type string; mandatory true; description "IPV6 framed prefix address"; } } // container framed-prefix container duplicate-address-detection { description "Duplicate Address Detection (DAD)"; leaf attempts { type uint32 { range "0..600"; } description "Set IPv6 duplicate address detection transmits"; } } // container duplicate-address-detection container ra-initial { presence "Indicates a ra-initial node is configured."; description "IPv6 ND RA Initial"; leaf count { type uint32 { range "0..32"; } mandatory true; description "Initial RA count"; } leaf interval { type uint32 { range "4..1800"; } units "second"; mandatory true; description "Initial RA interval in seconds"; } } // container ra-initial leaf framed-prefix-pool { type string; description "Set the IPv6 framed ipv6 prefix pool for a subscriber interface "; } leaf managed-config { type empty; description "Host to use stateful protocol for address configuration"; } leaf other-config { type empty; description "Host to use stateful protocol for non-address configuration"; } leaf start-ra-on-ipv6-enable { type empty; description "Start RA on ipv6-enable config"; } leaf nud-enable { type empty; description "NUD enable"; } leaf ra-lifetime { type uint32 { range "0..9000"; } units "second"; description "Set IPv6 Router Advertisement (RA) lifetime in seconds"; } leaf router-preference { type Ipv6-nd-router-pref-template; description "RA Router Preference"; } leaf ra-suppress { type empty; description "Enable suppress IPv6 router advertisement"; } leaf ra-unicast { type empty; description "Enable RA unicast Flag"; } leaf ra-unspecify-hoplimit { type empty; description "Unspecify IPv6 Router Advertisement (RA) hop-limit"; } leaf ra-suppress-mtu { type empty; description "RA suppress MTU flag"; } leaf suppress-cache-learning { type empty; description "Suppress cache learning flag"; } leaf reachable-time { type uint32 { range "0..3600000"; } units "millisecond"; description "Set advertised reachability time in milliseconds"; } leaf ns-interval { type uint32 { range "1000..4294967295"; } units "millisecond"; description "Set advertised NS retransmission interval in milliseconds"; } } // container ipv6-neighbor container span-attachments { description "Monitor Session container for this source interface"; list span-attachment { key "session-name"; description "Configuration for a particular Monitor Session"; leaf session-name { type dt1:Span-session-name; description "Session Name"; } leaf mirror-first { type uint32 { range "1..10000"; } units "byte"; description "Mirror a specified number of bytes from start of packet"; } leaf mirror-interval { type Span-mirror-interval; description "Specify the mirror interval"; } container attachment-config { presence "Indicates a attachment-config node is configured."; description "Attach the interface to a Monitor Session"; leaf session-class { type dt1:Span-session-class; mandatory true; description "Traffic class for the session"; } leaf direction { type Span-traffic-direction; description "Specify the direction of traffic to replicate (optional)"; } leaf port-level-enable { type empty; description "Enable port level traffic mirroring"; } } // container attachment-config container acl { presence "Indicates a acl node is configured."; description "Enable ACL matching for traffic mirroring"; leaf acl-enable { type empty; mandatory true; description "Enable ACL"; } leaf acl-name { type dt1:Span-acl-name; description "ACL Name"; } } // container acl } // list span-attachment } // container span-attachments container span-monitor-sessions { status deprecated; description "Monitor Session container for this template"; list span-monitor-session { key "session-class"; description "Configuration for a particular class of Monitor Session"; leaf session-class { type dt1:Span-session-class; description "Session Class"; } leaf mirror-first { type uint32 { range "1..10000"; } units "byte"; description "Mirror a specified number of bytes from start of packet"; } container attachment { presence "Indicates a attachment node is configured."; description "Attach the interface to a Monitor Session"; leaf session-name { type dt1:Span-session-name; mandatory true; description "Session Name"; } leaf direction { type Span-traffic-direction; description "Specify the direction of traffic to replicate (optional)"; } leaf port-level-enable { type empty; description "Enable port level traffic mirroring"; } } // container attachment leaf mirror-interval { type Span-mirror-interval; description "Specify the mirror interval"; } container acl { presence "Indicates a acl node is configured."; description "Enable ACL matching for traffic mirroring"; leaf acl-enable { type empty; mandatory true; description "Enable ACL"; } leaf acl-name { type dt1:Span-acl-name; description "ACL Name"; } } // container acl leaf drops { type boolean; description "Specify whether or not to mirror dropped packets"; } container ipv4acl { presence "Indicates a ipv4acl node is configured."; description "Enable IPv4 ACL matching for traffic mirroring"; leaf acl-enable { type empty; mandatory true; description "Enable ACL"; } leaf acl-name { type dt1:Span-acl-name; description "ACL Name"; } } // container ipv4acl container ipv6acl { presence "Indicates a ipv6acl node is configured."; description "Enable IPv6 ACL matching for traffic mirroring"; leaf acl-enable { type empty; mandatory true; description "Enable ACL"; } leaf acl-name { type dt1:Span-acl-name; description "ACL Name"; } } // container ipv6acl } // list span-monitor-session } // container span-monitor-sessions container accounting { description "Subscriber accounting dynamic-template commands"; container service-accounting { description "Subscriber accounting service accounting"; leaf method-list-name { type string; description "Service accounting method list name"; } leaf accounting-interim-interval { type uint32; units "minute"; description "Accounting interim interval in minutes"; } } // container service-accounting container session { description "Subscriber accounting session accounting"; leaf method-list-name { type string; description "Session accounting method list name"; } leaf periodic-interval { type uint32; units "minute"; description "Interim accounting interval in minutes"; } leaf dual-stack-delay { type uint32; units "second"; description "Dual stack wait delay in seconds"; } leaf hold-acct-start { type enumeration { enum "ipv6-prefix-delegation" { value 3; description "Based on ipv6 delegated prefix"; } } description "Hold Accounting start based on IA_PD"; } } // container session container idle-timeout { description "Subscriber accounting idle timeout"; leaf timeout-value { type uint32 { range "60..4320000"; } units "second"; description "Idle timeout value in seconds"; } leaf threshold { type uint32 { range "1..10000"; } description "Threshold in minute(s) per packet"; } leaf direction { type string; description "Idle timeout traffic direction"; } } // container idle-timeout leaf monitor-feature { type string; description "Subscriber monitor feature"; } leaf prepaid-feature { type string; description "Subscriber accounting prepaid feature"; } } // container accounting container pbr { description "Dynamic Template PBR configuration"; container service-policies { description "Ingress service policy"; list service-policy { key "service-policy"; description "Service policy details"; leaf service-policy { type string { length "1..64"; } description "Name of policy-map"; } } // list service-policy } // container service-policies leaf service-policy-in { type string; description "Class for subscriber ingress policy"; } } // container pbr } // list subscriber-service } // container subscriber-services } // container dynamic-template } // module Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg
© 2023 YumaWorks, Inc. All rights reserved.