This model facilitates the IP configuration capabilities on the interfaces. Copyright (c) 2015-2019 by Dell EMC, All rights res...
Version: 2018-11-16
module dell-base-ip { yang-version 1; namespace "http://www.dellemc.com/networking/os10/dell-base-ip"; prefix base-ip; import dell-base-common { prefix base-cmn; } organization "Dell EMC"; contact "http://www.dell.com/support"; description "This model facilitates the IP configuration capabilities on the interfaces. Copyright (c) 2015-2019 by Dell EMC, All rights reserved."; revision "2018-11-16" { description "This revision adds the ARP learning behaviour based on gratuitous ARP."; reference "Network Platform Abstraction"; } revision "2018-08-10" { description "Fixing pyang IETF errors and adding documentation to the model."; reference "Network Platform Abstraction"; } revision "2018-08-10" { description "Fixing RFC 6020 compliance erros"; reference "Network Platform Abstraction"; } revision "2018-05-02" { description "This revision updates the IPv6 address list with the flag to indicate whether the IPv6 address is auto-configured from router advertisement message."; reference "Network Platform Abstraction"; } revision "2017-09-27" { description "This revision adds the IPv6 DAD (Duplicate Address Detection) configurations. DAD operation helps the node to check whether an address is already in use."; reference "Network Platform Abstraction"; } revision "2015-08-12" { description "Initial version."; reference "Network Platform Abstraction"; } typedef dad-config { type enumeration { enum "disable" { value 1; description "Disable DAD."; } enum "enable" { value 2; description "Enable DAD (default)."; } enum "enable-dad-disable-ipv6-oper" { value 3; description "Enable DAD, and disable IPv6 operation if MAC-based duplicate link-local address has been found."; } } description "Enumeration of all possible types of DAD modes"; } typedef arp-learning-config { type enumeration { enum "disable" { value 1; description "Don't create new ARP entries in the ARP table based on gratuitous ARP when ARP entry is not present but update the ARP entry if already present."; } enum "enable" { value 2; description "Create new ARP entries in the ARP table based on gratuitous ARP when ARP entry is not present, also, update the ARP entry if already present."; } } description "Enumeration of all possible types of ARP learning settings."; } grouping common-ip-config-params { description "Group of attributes part of the IP address configuration of an interface"; leaf ifindex { type base-cmn:logical-ifindex; description "The interface index"; } leaf enabled { type boolean; description "Set to true to enable to enable IPv6 for the interface. IPv6 is enabled by default for L3 interfaces. The per interface IPv6 related behavior depends on the value of the attribute 'accept-dad'. If 'accept-dad' is set to enable-dad-disable-ipv6-oper, the system disables IPv6 if it detects a duplicate IPv6 link-local address regardless of the value of this attribute - namely the 'enable' attribute. When this value is changed from false to true (IPv6 is being enabled), it will dynamically create a link-local address on the given interface and start Duplicate Address Detection, if necessary. When this value is changed from true to false (IPv6 is being disabled), it will dynamically delete all address on the given interface."; } leaf forwarding { type boolean; description "Flag used for enabling/disbaling IP forwarding. Enabled by default."; } leaf vrf-id { type uint32; description "A numerical value of the vrf that contains the interface. Use 0 for the default."; } leaf name { type string; description "Name of the the interfaces."; } leaf vrf-name { type string; description "The VRF name."; } } // grouping common-ip-config-params list ipv4 { key "name"; description "List of IPv4 configurations on the interface, uniquely identified by the key 'name'."; uses common-ip-config-params; list address { key "ip"; description "List of IPv4 addresses configured on the interface, uniquely identified by the key 'ip'."; leaf ip { type base-cmn:ip-address; description "IP address"; } leaf prefix-length { type uint8; description "Number of bits set in the subnet mask"; } } // list address leaf arp-accept { type arp-learning-config; default 'disable'; description "Defines behavior for gratuitous ARP frames whose IP is not already present in the ARP table."; } } // list ipv4 list ipv6 { key "name"; description "List of IPv6 configurations on the interface, uniquely identified by the key 'name'."; uses common-ip-config-params; leaf dup-addr-detect-transmits { type uint32; description "Number of NS mesages to transmit for Duplicate Address Detection"; } leaf autoconf { type boolean; description "Set to true to enable IPv6 address auto-configuration using prefix information in Router advertisements. IPv6 autoconfiguration is enabled by default if forwarding is disabled."; } leaf accept-dad { type dad-config; description "Controls whether to accept DAD operation."; } leaf dad-failed { type boolean; description "This is set to true when DAD failed for the IPv6 address."; } list address { key "ip"; description "List of IPv6 addresses configured on the interface, uniquely identified by the key 'ip'."; leaf ip { type base-cmn:ip-address; description "IP address"; } leaf prefix-length { type uint32; description "Number of bits set in the subnet mask"; } leaf autoconf-addr { type boolean; config false; description "Flag used to indicate whether the IPv6 address is created dynamically using prefix information in Router advertisements. It is not configurable."; } } // list address } // list ipv6 } // module dell-base-ip
© 2023 YumaWorks, Inc. All rights reserved.