openconfig-if-ip

This model defines data for managing configuration and operational state on IP (IPv4 and IPv6) interfaces. This model reuses da...

  • Version: 2023-08-14

    openconfig-if-ip@2023-08-14


    
      module openconfig-if-ip {
    
        yang-version 1;
    
        namespace
          "http://openconfig.net/yang/interfaces/ip";
    
        prefix oc-ip;
    
        import openconfig-inet-types {
          prefix oc-inet;
        }
        import openconfig-interfaces {
          prefix oc-if;
        }
        import openconfig-vlan {
          prefix oc-vlan;
        }
        import openconfig-yang-types {
          prefix oc-yang;
        }
        import openconfig-extensions {
          prefix oc-ext;
        }
    
        organization "OpenConfig working group";
    
        contact
          "OpenConfig working group
    netopenconfig@googlegroups.com";
    
        description
          "This model defines data for managing configuration and
    operational state on IP (IPv4 and IPv6) interfaces.
    
    This model reuses data items defined in the IETF YANG model for
    interfaces described by RFC 7277 with an alternate structure
    (particularly for operational state data) and with
    additional configuration items.
    
    Portions of this code were derived from IETF RFC 7277.
    Please reproduce this note if possible.
    
    IETF code is subject to the following copyright and license:
    Copyright (c) IETF Trust and the persons identified as authors of
    the code.
    All rights reserved.
    
    Redistribution and use in source and binary forms, with or without
    modification, is permitted pursuant to, and subject to the license
    terms contained in, the Simplified BSD License set forth in
    Section 4.c of the IETF Trust's Legal Provisions Relating
    to IETF Documents (http://trustee.ietf.org/license-info).";
    
        revision "2023-08-14" {
          description
            "Add multicast counters for IPv4, IPv6.";
          reference
            "3.5.0";
    
        }
    
        revision "2023-06-30" {
          description
            "Deprecate IPv6 router advertisment config suppress leaf and add config
    mode leaf.";
          reference
            "3.4.0";
    
        }
    
        revision "2023-04-12" {
          description
            "Add ipv4 address type configuration.";
          reference
            "3.3.0";
    
        }
    
        revision "2023-02-06" {
          description
            "Add IPv6 link-local configuration.";
          reference
            "3.2.0";
    
        }
    
        revision "2022-11-09" {
          description
            "Add additional IPv6 router-advertisement features.";
          reference
            "3.1.0";
    
        }
    
        revision "2019-01-08" {
          description
            "Eliminate use of the 'empty' type.";
          reference
            "3.0.0";
    
        }
    
        revision "2018-11-21" {
          description
            "Add OpenConfig module metadata extensions.";
          reference
            "2.3.1";
    
        }
    
        revision "2018-01-05" {
          description
            "Add logical loopback to interface.";
          reference
            "2.3.0";
    
        }
    
        revision "2017-12-21" {
          description
            "Added IPv6 router advertisement configuration.";
          reference
            "2.1.0";
    
        }
    
        revision "2017-07-14" {
          description
            "Added Ethernet/IP state data; Add dhcp-client;
    migrate to OpenConfig types modules; Removed or
    renamed opstate values";
          reference
            "2.0.0";
    
        }
    
        revision "2017-04-03" {
          description "Update copyright notice.";
          reference
            "1.1.1";
    
        }
    
        revision "2016-12-22" {
          description
            "Fixes to Ethernet interfaces model";
          reference
            "1.1.0";
    
        }
    
        oc-ext:openconfig-version "3.5.0";
        oc-ext:regexp-posix;
        oc-ext:catalog-organization "openconfig";
        oc-ext:origin "openconfig";
    
        typedef ip-address-origin {
          type enumeration {
            enum "OTHER" {
              value 0;
              description
                "None of the following.";
            }
            enum "STATIC" {
              value 1;
              description
                "Indicates that the address has been statically
    configured - for example, using NETCONF or a Command Line
    Interface.";
            }
            enum "DHCP" {
              value 2;
              description
                "Indicates an address that has been assigned to this
    system by a DHCP server.";
            }
            enum "LINK_LAYER" {
              value 3;
              description
                "Indicates an address created by IPv6 stateless
    autoconfiguration that embeds a link-layer address in its
    interface identifier.";
            }
            enum "RANDOM" {
              value 4;
              description
                "Indicates an address chosen by the system at
    random, e.g., an IPv4 address within 169.254/16, an
    RFC 4941 temporary address, or an RFC 7217 semantically
    opaque address.";
              reference
                "RFC 4941: Privacy Extensions for Stateless Address
                	 Autoconfiguration in IPv6
                 RFC 7217: A Method for Generating Semantically Opaque
                	 Interface Identifiers with IPv6 Stateless
                	 Address Autoconfiguration (SLAAC)";
    
            }
          }
          description
            "The origin of an address.";
        }
    
        typedef neighbor-origin {
          type enumeration {
            enum "OTHER" {
              value 0;
              description
                "None of the following.";
            }
            enum "STATIC" {
              value 1;
              description
                "Indicates that the mapping has been statically
    configured - for example, using NETCONF or a Command Line
    Interface.";
            }
            enum "DYNAMIC" {
              value 2;
              description
                "Indicates that the mapping has been dynamically resolved
    using, e.g., IPv4 ARP or the IPv6 Neighbor Discovery
    protocol.";
            }
          }
          description
            "The origin of a neighbor entry.";
        }
    
        typedef ipv4-address-type {
          type enumeration {
            enum "PRIMARY" {
              value 0;
              description
                "The primary address on the interface. There can only be one primary
    address associated on an interface.";
            }
            enum "SECONDARY" {
              value 1;
              description
                "Secondary address on an interface. There can be multiple secondary
    addresses associated on an interface.";
            }
          }
          description
            "The type of an IPv4 address.";
        }
      }  // module openconfig-if-ip
    

© 2023 YumaWorks, Inc. All rights reserved.