This module contains a collection of YANG definitions for configuration of NETCONF server Call Home. Copyright (c) 2020 by Cisco...
Version: 2020-07-01
module Cisco-IOS-XE-ncch-cfg { yang-version 1; namespace "http://cisco.com/ns/yang/Cisco-IOS-XE-ncch-cfg"; prefix ncch-cfg; 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 configuration of NETCONF server Call Home. Copyright (c) 2020 by Cisco Systems, Inc. All rights reserved."; revision "2020-07-01" { description "Initial revision"; reference "1.0.0"; } cisco-semver:module-version "1.0.0"; typedef ncch-address-type { type enumeration { enum "address-unspecified" { value 0; description "Indicates address has not been specified."; } enum "ip-address" { value 1; description "Indicates IP address."; } enum "domain-name" { value 2; description "Indicates Domain name."; } } description "Defines the supported address type."; } typedef ncch-transport { type enumeration { enum "transport-unspecified" { value 0; description "Indicates transport has not been specified."; } enum "ssh" { value 1; description "Indicates SSH-specific call-home transport configuration."; } } description "Defines the transports supported by NETCONF Call Home."; } typedef ncch-start-with { type enumeration { enum "first-listed" { value 0; description "Indicates that reconnection should start with the first endpoint listed."; } enum "last-connected" { value 1; description "Indicates that reconnection should start with the endpoint last connected to. If no previous connection has ever been established, then the first endpoint configured is used."; } enum "random-selection" { value 2; description "Indicates that reconnection should start with a random endpoint."; } } description "Specifies which of the endpoints this NETCONF server should start with when trying to connect a NETCONF client."; } grouping ncch-ssh { description "Defines the SSH-specific call home transport configuration."; leaf tcpc-remote-port { type uint16; default "4334"; description "The NETCONF server will attempt to connect to the IANA-assigned well-known port 4334 if no value is specified."; } leaf tcpc-local-ipaddr { type inet:ip-address; default "0.0.0.0"; description "Specifies the local IP address to bind to for when connecting to the remote peer."; } leaf tcpc-local-port { type uint16; default "0"; description "The local IP port number to bind to for when connecting to the remote peer. The port number '0', which is the default value, indicates that any available local port number may be used."; } leaf tcpc-local-vrf { type string; default ""; description "Network instance name for the local VRF"; } choice tcpc-remote-addr-type-choice { default "address-unspecified"; description "Selects the address type of the remote peer to establish a connection with."; case address-unspecified { description "Indicates address has not been specified."; leaf tcpc-remote-addr-unset { type boolean; default "true"; description "Indicates address has not been specified. Value will be passed as-is."; } } // case address-unspecified case ip-address { description "The IP address of the remote peer to establish a connection with."; leaf tcpc-remote-ipaddr { type inet:ip-address; description "Specifies the IP address of the remote peer to establish a connection with."; } } // case ip-address } // choice tcpc-remote-addr-type-choice } // grouping ncch-ssh grouping ncch-client-endpoint-cnfg { description "A list of endpoints that the NETCONF server will attempt to connect to in the specified sequence. Defining more than one enables high-availability."; leaf name { type string; description "An arbitrary name for the endpoint."; } choice transport-choice { default "transport-unspecified"; description "Selects between available transports."; case transport-unspecified { description "Indicates transport has not been specified."; leaf transport-unset { type boolean; default "true"; description "Indicates transport has not been specified. Value will be passed as-is."; } } // case transport-unspecified case ssh { description "Indicates SSH-specific call-home transport configuration."; container ssh { description "Indicates SSH-specific call-home transport configuration."; uses ncch-cfg:ncch-ssh; } // container ssh } // case ssh } // choice transport-choice } // grouping ncch-client-endpoint-cnfg grouping ncch-reconnect-strategy { description "Defines the reconnection strategy that directs how this NETCONF server reconnects to a NETCONF client, after discovering its connection to the client has dropped, even if due to a reboot."; leaf start-with { type ncch-start-with; default "first-listed"; description "Specifies which of the NETCONF client's endpoints the NETCONF server should start with when trying to connect to the NETCONF client."; } leaf max-attempts { type uint8 { range "1 .. 255"; } default "3"; description "Specifies the number times the NETCONF server tries to connect to a specific endpoint before moving on to the next endpoint in the list (round robin)."; } } // grouping ncch-reconnect-strategy grouping ncch-client-cnfg { description "Configures a NETCONF client."; leaf name { type string; description "An arbitrary name for the remote NETCONF client."; } container ncch-client-endpoints { description "Configure a list of endpoints of the NETCONF client."; list ncch-client-endpoint { key "name"; description "List of endpoints of the NETCONF client."; uses ncch-cfg:ncch-client-endpoint-cnfg; } // list ncch-client-endpoint } // container ncch-client-endpoints container reconnect-strategy { description "The reconnection strategy directs how a NETCONF server reconnects to a NETCONF client, after discovering its connection to the client has dropped, even if due to a reboot. The NETCONF server starts with the specified endpoint and tries to connect to it max-attempts times before trying the next endpoint in the list (round robin)."; uses ncch-cfg:ncch-reconnect-strategy; } // container reconnect-strategy } // grouping ncch-client-cnfg container netconf-callhome-config { description "Configures NETCONF server Call Home behavior."; container ncch-clients { description "Configure a list of NETCONF clients the NETCONF server is to maintain simultaneous call-home connections with."; list ncch-client { key "name"; description "List of NETCONF clients the NETCONF server is to maintain simultaneous call-home connections with."; uses ncch-cfg:ncch-client-cnfg; } // list ncch-client } // container ncch-clients } // container netconf-callhome-config } // module Cisco-IOS-XE-ncch-cfg
© 2023 YumaWorks, Inc. All rights reserved.