This module contains a collection of YANG definitions for Cisco IOS-XR interface configuration. Copyright (c) 2019-2020 by Cisc...
Version: 2020-10-02
module Cisco-IOS-XR-um-if-ipv4-cfg { yang-version 1; namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-ipv4-cfg"; prefix um-if-ipv4-cfg; import cisco-semver { prefix semver; } import ietf-inet-types { prefix inet; } import Cisco-IOS-XR-types { prefix xr; } import Cisco-IOS-XR-um-interface-cfg { prefix a1; } 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 interface configuration. Copyright (c) 2019-2020 by Cisco Systems, Inc. All rights reserved."; revision "2020-10-02" { description "Added container qos-group under propagation/input. Removed container source under input/ip-precedence/destination/qos-group as it's overlapped with input/qos-group/source/ip-precedence/destination."; } revision "2019-10-10" { description "Initial version"; } semver:module-version "2.0.0"; semver:module-version "1.0.0"; grouping GROUP-IPV4 { description "Interface IPv4 config commands"; container forwarding-enable { presence "Indicates a forwarding-enable node is configured."; description "enable ipv4 forwarding on a interface"; } // container forwarding-enable container point-to-point { presence "Indicates a point-to-point node is configured."; description "Enable point-to-point handling for this interface."; } // container point-to-point leaf mtu { type uint32 { range "68..65535"; } description "Set IPv4 Maximum Transmission Unit"; } container redirects { presence "Indicates a redirects node is configured."; description "Enable sending ICMP Redirect messages"; } // container redirects container mask-reply { presence "Indicates a mask-reply node is configured."; description "Enable sending ICMP mask reply messages"; } // container mask-reply container helper-addresses { description "Specify a destination address for UDP broadcasts"; list helper-address { key "address vrf"; description "Specify a destination address for UDP broadcasts"; leaf address { type inet:ipv4-address-no-zone; description "Specify a destination address for UDP broadcasts"; } leaf vrf { type xr:Cisco-ios-xr-string { length "1..32"; } description "VRF name"; } } // list helper-address } // container helper-addresses container icmp { description "Disable ICMP unreachable for Nullx interface"; container unreachables { description "Disable sending ICMP Unreachable messages"; container disable { presence "Indicates a disable node is configured."; description "Override sending of ICMP Unreachable messages"; } // container disable } // container unreachables } // container icmp container unreachables { description "Enable sending ICMP Unreachable messages"; container disable { presence "Indicates a disable node is configured."; description "Override sending of ICMP Unreachable messages"; } // container disable } // container unreachables container directed-broadcast { presence "Indicates a directed-broadcast node is configured."; description "Enable forwarding of directed broadcasts"; } // container directed-broadcast container bgp { description "Enable BGP policy based feature"; container policy { description "BGP policy"; container accounting { description "BGP policy accounting"; container input { must "source-accounting or destination-accounting"; presence "Indicates a input node is configured."; description "BGP policy accounting on input"; container source-accounting { presence "Indicates a source-accounting node is configured."; description "BGP policy accounting on source IP address"; } // container source-accounting container destination-accounting { presence "Indicates a destination-accounting node is configured."; description "BGP policy accounting on destination IP address"; } // container destination-accounting } // container input container output { must "source-accounting or destination-accounting"; presence "Indicates a output node is configured."; description "BGP policy accounting on output"; container source-accounting { presence "Indicates a source-accounting node is configured."; description "BGP policy accounting on source IP address"; } // container source-accounting container destination-accounting { presence "Indicates a destination-accounting node is configured."; description "BGP policy accounting on destination IP address"; } // container destination-accounting } // container output } // container accounting container propagation { description "BGP QoS/Flow-tag policy propagation"; container input { description "Flow type is input"; container ip-precedence { description "QPPB using IP Precedence"; container source { must "not(../destination or ../../qos-group/source or ../../qos-group/destination)"; presence "Indicates a source node is configured."; description "QPPB on source IP address"; container qos-group { description "QPPB using Qos Group"; container source { must "not(../destination)"; presence "Indicates a source node is configured."; description "QPPB on source IP address"; } // container source container destination { must "not(../source)"; presence "Indicates a destination node is configured."; description "QPPB on destination IP address"; } // container destination } // container qos-group } // container source container destination { must "not(../source or ../../qos-group/source or ../../qos-group/destination)"; presence "Indicates a destination node is configured."; description "QPPB on destination IP address"; container qos-group { description "QPPB using Qos Group"; container destination { presence "Indicates a destination node is configured."; description "QPPB on destination IP address"; } // container destination } // container qos-group } // container destination } // container ip-precedence container qos-group { description "QPPB using Qos Group"; container source { must "not(../destination or ../../ip-precedence/source or ../../ip-precedence/destination)"; presence "Indicates a source node is configured."; description "QPPB on source IP address"; container ip-precedence { description "QPPB using IP Precedence"; container destination { presence "Indicates a destination node is configured."; description "QPPB on destination IP address"; } // container destination } // container ip-precedence } // container source container destination { must "not(../source or ../../ip-precedence/source or ../../ip-precedence/destination)"; presence "Indicates a destination node is configured."; description "QPPB on destination IP address"; } // container destination } // container qos-group container flow-tag { must "(source or destination) and not(source and destination)"; presence "Indicates a flow-tag node is configured."; description "Flow tag policy option"; container source { presence "Indicates a source node is configured."; description "Flow-tag policy on source IP address"; } // container source container destination { presence "Indicates a destination node is configured."; description "Flow-tag policy on destination IP address"; } // container destination } // container flow-tag } // container input } // container propagation } // container policy } // container bgp container verify { description "Enable per packet validation"; container unicast { description "Enable per packet validation for unicast"; container source { description "Validation of source address"; container reachable-via { presence "Indicates a reachable-via node is configured."; description "Specify reachability check to apply to the source address"; leaf type { type enumeration { enum "any" { value 0; description "Source is reachable via any interface"; } enum "rx" { value 1; description "Source is reachable via interface on which packet was received"; } } mandatory true; description "Source reachable type"; } leaf allow-self-ping { type boolean; mandatory true; description "Allow router to ping itself (opens vulnerability in verification)"; } leaf allow-default { type boolean; mandatory true; description "Allow default route to match when checking source address"; } } // container reachable-via } // container source } // container unicast } // container verify container ttl-propagate { description "Disable ip ttl propagation for this interface."; container disable { presence "Indicates a disable node is configured."; description "Disable ipv4 ttl propagation on this interface"; } // container disable } // container ttl-propagate container tcp-mss-adjust { description "Enable tcp mss adjust for this interface."; container enable { presence "Indicates a enable node is configured."; description "Enable tcp mss adjust on this interface"; } // container enable } // container tcp-mss-adjust container flowspec { description "Flowspec on IPv4 interface"; container disable { presence "Indicates a disable node is configured."; description "Disable flowspec on interface"; } // container disable } // container flowspec } // grouping GROUP-IPV4 augment /a1:interfaces/a1:interface/a1:ipv4 { uses GROUP-IPV4; } augment /a1:interfaces/a1:interface-preconfigure/a1:ipv4 { uses GROUP-IPV4; } } // module Cisco-IOS-XR-um-if-ipv4-cfg
© 2023 YumaWorks, Inc. All rights reserved.