Cisco-IOS-XE-dhcp-oper

This module contains a collection of YANG definitions for DHCP Server and Client operational data. Copyright (c) 2017-2019 by Ci...

  • Version: 2021-07-01

    Cisco-IOS-XE-dhcp-oper@2021-07-01


    
      module Cisco-IOS-XE-dhcp-oper {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XE-dhcp-oper";
    
        prefix dhcp-ios-xe-oper;
    
        import ietf-inet-types {
          prefix inet;
        }
        import ietf-yang-types {
          prefix yang;
        }
        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 DHCP Server and Client operational data.
         Copyright (c) 2017-2019 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2021-07-01" {
          description
            "Added DHCPv4 pool operational data";
          reference
            "2.4.0";
    
        }
    
        revision "2019-05-01" {
          description "Added semantic version";
          reference
            "2.3.0";
    
        }
    
        revision "2018-10-29" {
          description
            "- Adding DHCPv6 oper model.
           - Cleaned up spelling errors in descriptions.";
          reference
            "2.2.0";
    
        }
    
        revision "2018-07-11" {
          description "change in description.";
          reference
            "2.1.0";
    
        }
    
        revision "2018-02-13" {
          description "dns name changes.";
          reference
            "2.0.0";
    
        }
    
        revision "2017-11-01" {
          description "Initial revision";
          reference
            "1.0.0";
    
        }
    
        cisco-semver:module-version "2.4.0";
        cisco-semver:module-version "2.3.0";
        cisco-semver:module-version "2.2.0";
        cisco-semver:module-version "2.1.0";
        cisco-semver:module-version "2.0.0";
        cisco-semver:module-version "1.0.0";
    
        typedef dhcp-server-binding-state {
          type enumeration {
            enum
              "dhcp-server-binding-state-selecting" {
              value 0;
              description
                "Server state is in Selecting mode";
            }
            enum
              "dhcp-server-binding-state-active" {
              value 1;
              description
                "Server state Active new address provided";
            }
            enum
              "dhcp-server-binding-state-terminated" {
              value 2;
              description
                "Server terminated the connection with a client";
            }
            enum
              "dhcp-server-binding-state-unknown" {
              value 3;
              description "Server state unknown";
            }
          }
          description
            "DHCP server binding states ";
        }
    
        typedef dhcp-server-binding-type {
          type enumeration {
            enum
              "dhcp-server-binding-type-manual" {
              value 0;
              description
                "Server binding Type Manual";
            }
            enum
              "dhcp-server-binding-type-static" {
              value 1;
              description
                "Sever binding type Static";
            }
            enum
              "dhcp-server-binding-type-relay" {
              value 2;
              description
                "Server binding type relay";
            }
            enum
              "dhcp-server-binding-type-automatic" {
              value 3;
              description
                "Server binding type automatic";
            }
            enum "dhcp-server-binding-type-odap" {
              value 4;
              description
                "Server binding Type ODAP";
            }
            enum
              "dhcp-server-binding-type-from-aaa" {
              value 5;
              description
                "Sever binding type from AAA";
            }
            enum
              "dhcp-server-binding-type-remembered" {
              value 6;
              description
                "Server binding type remembered";
            }
          }
          description "DHCP server binding type";
        }
    
        typedef dhcp-client-state {
          type enumeration {
            enum
              "dhcp-client-state-temp-from-client" {
              value 0;
              description
                "Client state address/sync from other client";
            }
            enum
              "dhcp-client-state-temp-from-sync" {
              value 1;
              description "Client state Sync";
            }
            enum "dhcp-client-state-initial" {
              value 2;
              description
                "Client initial state ";
            }
            enum "dhcp-client-state-selecting" {
              value 3;
              description
                "Client state Selecting";
            }
            enum "dhcp-client-state-requesting" {
              value 4;
              description
                "Client state Requesting";
            }
            enum "dhcp-client-state-bound" {
              value 5;
              description "Client state bound";
            }
            enum "dhcp-client-state-rebinding" {
              value 6;
              description
                "Client state rebinding";
            }
            enum "dhcp-client-state-renewing" {
              value 7;
              description
                "Client state renewing";
            }
            enum "dhcp-client-state-holdtime" {
              value 8;
              description
                "Client state holdtime";
            }
            enum "dhcp-client-state-ddns-wait" {
              value 9;
              description
                "Client state DDNS wait";
            }
            enum "dhcp-client-state-releasing" {
              value 10;
              description
                "Client state releasing";
            }
            enum "dhcp-client-state-purging" {
              value 11;
              description "Client state purging";
            }
            enum "dhcp-client-state-leasequery" {
              value 12;
              description
                "Client state leasequery";
            }
            enum "dhcp-client-state-unknown" {
              value 13;
              description "Client state unknown";
            }
          }
          description "DHCP Client state";
        }
    
        typedef dhcp-expiry-option {
          type enumeration {
            enum "dhcp-expiration-time" {
              value 0;
              description
                "Expiration option time";
            }
            enum "dhcp-expiration-infinite" {
              value 1;
              description
                "Expiration option infinite";
            }
          }
          description "DHCP expiration option ";
        }
    
        typedef dhcp-client-id-type {
          type enumeration {
            enum "dhcp-htype-ethernet" {
              value 0;
              description
                "DHCP Client hardware type Ethernet";
            }
            enum "dhcp-htype-ieee802" {
              value 1;
              description
                "DHCP Client hardware type 802";
            }
            enum "dhcp-htype-rfclimit" {
              value 2;
              description
                "DHCP Client hardware type RFCLIMIT";
            }
            enum "dhcp-htype-clientid" {
              value 3;
              description
                "DHCP Client hardware type CLIENTID";
            }
          }
          description
            "DHCP Client id hardware types ";
        }
    
        typedef dhcpv6-interface-mode {
          type enumeration {
            enum "dhcpv6-interface-mode-client" {
              value 0;
              description
                "DHCPv6 interface mode client";
            }
            enum "dhcpv6-interafce-mode-server" {
              value 1;
              description
                "DHCPv6 interface mode server";
            }
            enum "dhcpv6-interafce-mode-relay" {
              value 2;
              description
                "DHCPv6 interface mode relay";
            }
            enum "dhcpv6-interafce-mode-unknown" {
              value 3;
              description
                "DHCPv6 interface mode unknown";
            }
          }
          description "DHCPv6 interface mode";
        }
    
        typedef dhcpv6-client-state {
          type enumeration {
            enum "dhcpv6-client-state-idle" {
              value 0;
              description
                "DHCPv6 client state idle";
            }
            enum "dhcpv6-client-state-solicit" {
              value 1;
              description
                "DHCPv6 client state solicit";
            }
            enum "dhcpv6-client-state-request" {
              value 2;
              description
                "DHCPv6 client state request";
            }
            enum "dhcpv6-client-state-confirm" {
              value 3;
              description
                "DHCPv6 client state confirm";
            }
            enum "dhcpv6-client-state-inforeq" {
              value 4;
              description
                "DHCPv6 client state info request";
            }
            enum "dhcpv6-client-state-open" {
              value 5;
              description
                "DHCPv6 client state open";
            }
            enum "dhcpv6-client-state-renew" {
              value 6;
              description
                "DHCPv6 client state renew";
            }
            enum "dhcpv6-client-state-rebind" {
              value 7;
              description
                "DHCPv6 client state rebind";
            }
            enum "dhcpv6-client-state-release" {
              value 8;
              description
                "DHCPv6 client state release";
            }
            enum "dhcpv6-client-state-verify" {
              value 9;
              description
                "DHCPv6 client state verify";
            }
            enum "dhcpv6-client-state-decline" {
              value 10;
              description
                "DHCPv6 client state decline";
            }
            enum "dhcpv6-client-state-unknown" {
              value 11;
              description
                "DHCPv6 client state unknown";
            }
          }
          description "DHCPv6 client state";
        }
    
        typedef dhcpv4-ddns-updates {
          type enumeration {
            enum "pool-dynamic-update-off" {
              value 0;
              description "Dynamic update off";
            }
            enum "pool-forward-and-backward" {
              value 1;
              description
                "Dynamic update forward and backward";
            }
            enum "pool-over-ride" {
              value 2;
              description
                "Dynamic update override";
            }
            enum "pool-dynamic-update-ack" {
              value 3;
              description
                "Dynamic update acknowledgment";
            }
          }
          description
            "DHCPv4 dynamic DNS update information";
        }
    
        typedef dhcpv4-pending-event {
          type enumeration {
            enum "pending-subnet-request" {
              value 0;
              description
                "Pending subnet request";
            }
            enum "pending-subnet-release" {
              value 1;
              description
                "Pending subnet release";
            }
            enum "no-pending-operation" {
              value 2;
              description "No pending operation";
            }
          }
          description "DHCPv4 pending event";
        }
    
        typedef dhcpv4-pool-type {
          type enumeration {
            enum "server" {
              value 0;
              description
                "Pool has subnet information";
            }
            enum "relay" {
              value 1;
              description
                "Pool has relay information";
            }
          }
          description "DHCPv4 pool type";
        }
    
        grouping dhcp-expiry {
          description
            "Type describes whether it is time or never";
          choice expiration-time-choice {
            description
              "Choice of the expiration time";
            leaf time {
              type yang:date-and-time;
              description
                "Date and time of expiry ";
            }
            leaf infinite {
              type empty;
              description "Expiry time infinite";
            }
          }  // choice expiration-time-choice
        }  // grouping dhcp-expiry
    
        grouping dhcpv4-server-key {
          description
            "Key for DHCP Server information table";
          leaf pool-name {
            type string;
            description
              "Server Pool name from where the Client
             IP address is provided";
          }
    
          leaf client-ip {
            type inet:ip-address;
            description
              "IP address released for a specific Client
             from Server";
          }
    
          leaf vrf-name {
            type string;
            description
              "Query based on the VRF name specific to that
             pool and Client ip address as key";
          }
        }  // grouping dhcpv4-server-key
    
        grouping dhcpv4-server-oper {
          description
            "DHCP Server data for binding";
          leaf client-id-type {
            type dhcp-client-id-type;
            description
              "Client identification Hardware types";
          }
    
          leaf client-id {
            type string;
            description
              "Client identification can be based on Hardware types/Mac";
          }
    
          container expiration {
            description
              "Expiration time information";
            uses dhcp-ios-xe-oper:dhcp-expiry;
          }  // container expiration
    
          leaf type {
            type dhcp-server-binding-type;
            description "Server binding type.";
          }
    
          leaf state {
            type dhcp-server-binding-state;
            description "Server binding states";
          }
    
          leaf interface {
            type string;
            description
              "interface name of the pool";
          }
        }  // grouping dhcpv4-server-oper
    
        grouping dhcpv4-client-key {
          description
            "Key for DHCP Server information table";
          leaf if-name {
            type string;
            description
              "Interface information where dhcp Client is configured";
          }
    
          leaf client-addr {
            type inet:ip-address;
            description
              "Client IP address Allocated from Server";
          }
    
          leaf vrf-name {
            type string;
            description
              "VRF Name information related to Client";
          }
        }  // grouping dhcpv4-client-key
    
        grouping dhcpv4-client-oper {
          description
            "DHCP Client data for binding";
          leaf state {
            type dhcp-client-state;
            description "DHCP Client States ";
          }
    
          leaf lease-server-addr {
            type inet:ip-address;
            description
              "IP address of Server from where we got IP";
          }
    
          leaf gateway-addr {
            type inet:ip-address;
            description
              "Gateway Address we got from Server";
          }
    
          leaf lease-time {
            type uint32;
            units "seconds";
            description
              "Total Lease Time in Seconds";
          }
    
          container lease-expiry {
            description
              "Lease Expiry time for the IP address we got";
            uses dhcp-ios-xe-oper:dhcp-expiry;
          }  // container lease-expiry
    
          leaf lease-remaining {
            type uint32;
            description
              "Lease remaining time for the IP address";
          }
    
          leaf dns-address {
            type inet:ip-address;
            description "First DNS address";
          }
    
          leaf dns-address-secondary {
            type inet:ip-address;
            description "Secondary DNS address";
          }
    
          leaf subnet-mask {
            type inet:ip-address;
            description "Subnet mask address";
          }
        }  // grouping dhcpv4-client-oper
    
        grouping dhcpv6-relay-binding-key {
          description
            "Key for DHCP Server information table";
          leaf v6-relay-vrf {
            type string;
            description
              "Query based on the VRF name";
          }
        }  // grouping dhcpv6-relay-binding-key
    
        grouping dhcpv6-relay-binding-oper {
          description "DHCPv6 binding relay";
          leaf num-binding {
            type uint32;
            description "DHCPv6 number binding";
          }
    
          leaf iapd-binding {
            type uint32;
            description "DHCPv6 IAPD binding";
          }
    
          leaf iana-binding {
            type uint32;
            description "DHCPv6 IANA binding";
          }
    
          leaf binding-bulk-lease-query {
            type uint32;
            description
              "DHCPv6 BULK LEASE QUERY";
          }
    
          leaf addr {
            type inet:ipv6-address;
            description "DHCPv6 binding Address";
          }
    
          leaf prefix {
            type inet:ipv6-address;
            description "DHCPv6 prefix";
          }
    
          leaf prefix-len {
            type uint32;
            description "DHCPv6 prefix length";
          }
    
          leaf duid {
            type string;
            description "DHCPv6 DUID";
          }
    
          leaf iaid {
            type uint32;
            description "DHCPv6 IAID";
          }
    
          leaf lifetime {
            type uint32;
            description "DHCPv6 lifetime";
          }
    
          leaf expiration {
            type uint32;
            description "DHCPv6 expiration";
          }
        }  // grouping dhcpv6-relay-binding-oper
    
        grouping dhcpv6-intf-at-client-key {
          description
            "Key for DHCP binding vrf information table";
          leaf v6-intf-at-client {
            type string;
            description
              "Query based on the interface name";
          }
        }  // grouping dhcpv6-intf-at-client-key
    
        grouping dhcpv6-intf-at-client-oper {
          description "DHCPv6 binding relay";
          leaf mode {
            type dhcpv6-interface-mode;
            description "DHCPv6 Interface Mode";
          }
    
          leaf prefix-state {
            type dhcpv6-client-state;
            description
              "DHCPv6 Interface prefix state";
          }
    
          leaf address-state {
            type dhcpv6-client-state;
            description
              "DHCPv6 Interface address state";
          }
    
          leaf renew-time {
            type uint32;
            description
              "DHCPv6 Interface renew time";
          }
    
          leaf refersh-time {
            type uint32;
            description
              "DHCPv6 Interface refresh time";
          }
    
          leaf retransmission-time {
            type uint32;
            description
              "DHCPv6 Interface retransmission time";
          }
    
          leaf rebind-time {
            type uint32;
            description
              "DHCPv6 Interface rebind time";
          }
    
          leaf reachable-via-addr {
            type inet:ipv6-address;
            description
              "DHCPv6 Interface reachable via address";
          }
    
          leaf duid {
            type string;
            description "DHCPv6 Interface DUID";
          }
    
          leaf preference {
            type uint8;
            description
              "DHCPv6 Interface preference";
          }
    
          leaf dns {
            type inet:ipv6-address;
            description "DHCPv6 Interface dns";
          }
    
          leaf domain {
            type string;
            description
              "DHCPv6 Interface domain";
          }
    
          leaf sip-dns {
            type inet:ipv6-address;
            description
              "DHCPv6 Interface SIP DNS";
          }
    
          leaf sip-domain {
            type string;
            description
              "DHCPv6 Interface SIP Domain";
          }
    
          leaf nis-dns {
            type inet:ipv6-address;
            description
              "DHCPv6 Interface NIS DNS";
          }
    
          leaf nis-domain {
            type string;
            description
              "DHCPv6 Interface NIS Domain";
          }
    
          leaf bootf-url {
            type string;
            description
              "DHCPv6 Interface boot file URL";
          }
    
          leaf nsip-dns {
            type inet:ipv6-address;
            description
              "DHCPv6 Interface NSIP DNS";
          }
    
          leaf nsip-domain {
            type string;
            description
              "DHCPv6 Interface NSIP Domain";
          }
    
          leaf sntp-dns {
            type inet:ipv6-address;
            description
              "DHCPv6 Interface SNTP DNS";
          }
    
          leaf info-refresh-time {
            type uint32;
            description
              "DHCPv6 Interface info refresh time";
          }
    
          leaf vendor-ent-id {
            type uint32;
            description
              "DHCPv6 Interface Vendor Enterprise ID";
          }
    
          leaf prefix-name {
            type string;
            description
              "DHCPv6 Interface prefix name";
          }
    
          leaf prefix-rapid-commit {
            type boolean;
            description
              "DHCPv6 Interface Prefix Rapid commit";
          }
    
          leaf address-rapid-commit {
            type boolean;
            description
              "DHCPv6 Interface Address Rapid Commit";
          }
    
          leaf prefix {
            type inet:ipv6-address;
            description
              "DHCPv6 Interface prefix";
          }
    
          leaf prefix-len {
            type uint8;
            description
              "DHCPv6 Interface prefix length";
          }
        }  // grouping dhcpv6-intf-at-client-oper
    
        grouping dhcpv6-intf-at-srv-key {
          description
            "Key for DHCP binding vrf information table";
          leaf v6-intf-at-srv {
            type string;
            description
              "Query based on the interface name";
          }
        }  // grouping dhcpv6-intf-at-srv-key
    
        grouping dhcpv6-intf-at-srv-oper {
          description "DHCPv6 binding relay";
          leaf mode {
            type dhcpv6-interface-mode;
            description "DHCPv6 Mode";
          }
    
          leaf poolname {
            type string;
            description "DHCPv6 Pool name";
          }
    
          leaf preference {
            type uint8;
            description "DHCPv6 Preference";
          }
    
          leaf hint {
            type uint8;
            description "DHCPv6 Hint";
          }
    
          leaf rapid-commit {
            type uint8;
            description
              "DHCPv6 Rapid Commit Enabled/Disabled";
          }
    
          leaf pending-aaa-req {
            type uint8;
            description "DHCPv6 AAA Request";
          }
    
          leaf prefix {
            type inet:ipv6-address;
            description "DHCPv6 prefix";
          }
    
          leaf prefix-len {
            type uint8;
            description "DHCPv6 prefix length";
          }
        }  // grouping dhcpv6-intf-at-srv-oper
    
        grouping dhcpv6-intf-at-relay-key {
          description
            "Key for DHCP binding vrf information table";
          leaf v6-intf-at-relay {
            type string;
            description "Interface name";
          }
        }  // grouping dhcpv6-intf-at-relay-key
    
        grouping dhcpv6-intf-at-relay-oper {
          description "DHCPv6 binding relay";
          leaf mode {
            type dhcpv6-interface-mode;
            description "DHCPv6 Mode";
          }
    
          leaf ipv6-dhcp-intf-addr {
            type inet:ipv6-address;
            description
              "DHCPv6 interface address";
          }
    
          leaf via-intf {
            type string;
            description
              "DHCPv6 IP Address via Interface";
          }
        }  // grouping dhcpv6-intf-at-relay-oper
    
        grouping dhcpv6-binding-vrf-key {
          description
            "Key for DHCP binding vrf information table";
          leaf v6-vrf {
            type string;
            description
              "Query based on the VRF name";
          }
        }  // grouping dhcpv6-binding-vrf-key
    
        grouping dhcpv6-binding-vrf-oper {
          description "DHCPv6 binding relay";
          leaf client-addr {
            type inet:ipv6-address;
            description "DHCPv6 client Address";
          }
    
          leaf duid {
            type string;
            description "DHCPv6 DUID ";
          }
    
          leaf ppp-username {
            type string;
            description "DHCPv6 PPP username";
          }
    
          leaf interface {
            type string;
            description "DHCPv6 interface";
          }
    
          leaf iaid {
            type uint32;
            description
              "DHCPv6 IAID(Identity Association Identifier)";
          }
    
          leaf t1 {
            type uint32;
            description "DHCPv6 T1";
          }
    
          leaf t2 {
            type uint32;
            description "DHCPv6 T2";
          }
    
          leaf preferred-lifetime {
            type uint32;
            description
              "DHCPv6 Preferred lifetime";
          }
    
          leaf valid-lifetime {
            type uint32;
            description "DHCPv6 valid lifetime";
          }
    
          leaf expiring-time {
            type yang:date-and-time;
            description "DHCPv6 expiring time";
          }
        }  // grouping dhcpv6-binding-vrf-oper
    
        grouping dhcpv4-subnet {
          description
            "DHCPv4 pools subnet information";
          leaf current-index {
            type inet:ipv4-address;
            description "Current address index";
          }
    
          leaf first-address {
            type inet:ipv4-address;
            description "First subnet address";
          }
    
          leaf last-address {
            type inet:ipv4-address;
            description "Last subnet address";
          }
    
          leaf excluded-addresses {
            type uint32;
            description
              "Number of excluded addresses in subnet";
          }
    
          leaf leased-addresses {
            type uint32;
            description
              "Number of leased addresses in subnet";
          }
    
          leaf total-addresses {
            type uint32;
            description
              "Total number of addresses in subnet";
          }
        }  // grouping dhcpv4-subnet
    
        grouping dhcpv4-relay-source {
          description
            "DHCPv4 relay source information";
          leaf address {
            type inet:ipv4-address;
            description "Source IP address";
          }
    
          leaf mask {
            type inet:ipv4-address;
            description "Source address mask";
          }
        }  // grouping dhcpv4-relay-source
    
        grouping dhcpv4-relay-target {
          description
            "DHCPv4 destination information";
          leaf address {
            type inet:ipv4-address;
            description "Destination IP address";
          }
    
          leaf vrf {
            type string;
            description "Destination VRF name";
          }
        }  // grouping dhcpv4-relay-target
    
        grouping dhcpv4-class-target {
          description
            "DHCPv4 class destination information";
          leaf target-address {
            type inet:ipv4-address;
            description
              "Class destination IP address";
          }
    
          leaf target-vrf {
            type string;
            description
              "Class destination VRF name";
          }
        }  // grouping dhcpv4-class-target
    
        grouping dhcpv4-class {
          description
            "DHCPv4 relay class information";
          leaf class-name {
            type string;
            description "Relay class name";
          }
    
          list class-target {
            description
              "Class destination information";
            uses dhcp-ios-xe-oper:dhcpv4-class-target;
          }  // list class-target
        }  // grouping dhcpv4-class
    
        grouping dhcpv4-pool-stats {
          description "DHCPv4 pool statistics";
          leaf total-addresses {
            type uint32;
            description
              "Total number of addresses in pool";
          }
    
          leaf leased-addresses {
            type uint32;
            description
              "Number of leased addresses in pool";
          }
    
          leaf excluded-addresses {
            type uint32;
            description
              "Number of excluded addresses in pool";
          }
    
          leaf first-subnet-size {
            type uint16;
            description
              "Size of first subnet requested";
          }
    
          leaf next-subnet-size {
            type uint16;
            description
              "Size of next subnet request";
          }
    
          leaf high-util-mark {
            type uint16;
            description
              "DHCPv4 pool high utilization percentage";
          }
    
          leaf low-util-mark {
            type uint16;
            description
              "DHCPv4 pool low utilization percentage";
          }
    
          leaf auto-grow {
            type boolean;
            description
              "DHCPv4 auto grow is enabled";
          }
    
          leaf autogrow-pool-size {
            type uint16;
            description
              "Auto grow the pool by this size";
          }
    
          leaf pending-event {
            type dhcpv4-pending-event;
            description "DHCPv4 pending event";
          }
        }  // grouping dhcpv4-pool-stats
    
        grouping dhcpv4-relay-info {
          description
            "DHCPv4 pool relay information";
          list source {
            description
              "Relay source information";
            uses dhcp-ios-xe-oper:dhcpv4-relay-source;
          }  // list source
    
          list target {
            description
              "Relay destination information";
            uses dhcp-ios-xe-oper:dhcpv4-relay-target;
          }  // list target
    
          list class-info {
            description "Relay class info";
            uses dhcp-ios-xe-oper:dhcpv4-class;
          }  // list class-info
        }  // grouping dhcpv4-relay-info
    
        grouping dhcpv4-subnet-info {
          description "DHCPv4 pool info";
          container stats {
            description "DHCPv4 pool statistics";
            uses dhcp-ios-xe-oper:dhcpv4-pool-stats;
          }  // container stats
    
          leaf ddns-updates {
            type dhcpv4-ddns-updates;
            description
              "DHCPv4 dynamic DNS updates";
          }
    
          leaf subnet-count {
            type uint32;
            description
              "Number of subnet in list";
          }
    
          list subnet {
            description
              "DHCPv4 subnet information";
            uses dhcp-ios-xe-oper:dhcpv4-subnet;
          }  // list subnet
        }  // grouping dhcpv4-subnet-info
    
        grouping dhcpv4-pool {
          description
            "DHCPv4 server pool subnet information";
          leaf pool-name {
            type string;
            description
              "DHCPv4 pool name, maximum supported pool name length is 128 characters";
          }
    
          leaf vrf {
            type string;
            description
              "DHCPv4 pool VRF name, maximum supported vrf name length is 128 characters";
          }
    
          choice pool-type-choice {
            description
              "DHCPv4 pool can support either subnet or relay information";
            container subnet-info {
              description "DHCPv4 pool info";
              uses dhcp-ios-xe-oper:dhcpv4-subnet-info;
            }  // container subnet-info
            container relay-info {
              description
                "DHCPv4 relay pool information";
              uses dhcp-ios-xe-oper:dhcpv4-relay-info;
            }  // container relay-info
          }  // choice pool-type-choice
        }  // grouping dhcpv4-pool
    
        container dhcp-oper-data {
          config false;
          description
            "Operational state of DHCP";
          list dhcpv4-server-oper {
            key "pool-name client-ip vrf-name";
            description
              "List of DHCP server bindings";
            uses dhcp-ios-xe-oper:dhcpv4-server-key;
    
            uses dhcp-ios-xe-oper:dhcpv4-server-oper;
          }  // list dhcpv4-server-oper
    
          list dhcpv4-client-oper {
            key "if-name client-addr vrf-name";
            description "List of DHCP clients";
            uses dhcp-ios-xe-oper:dhcpv4-client-key;
    
            uses dhcp-ios-xe-oper:dhcpv4-client-oper;
          }  // list dhcpv4-client-oper
    
          list dhcpv4-pool {
            key "pool-name";
            description "DHCP pool information";
            uses dhcp-ios-xe-oper:dhcpv4-pool;
          }  // list dhcpv4-pool
    
          list dhcpv6-binding-vrf-oper {
            key "v6-vrf";
            description "List of DHCP clients";
            uses dhcp-ios-xe-oper:dhcpv6-binding-vrf-key;
    
            uses dhcp-ios-xe-oper:dhcpv6-binding-vrf-oper;
          }  // list dhcpv6-binding-vrf-oper
    
          list dhcpv6-intf-at-relay-oper {
            key "v6-intf-at-relay";
            description "List of DHCP clients";
            uses dhcp-ios-xe-oper:dhcpv6-intf-at-relay-key;
    
            uses dhcp-ios-xe-oper:dhcpv6-intf-at-relay-oper;
          }  // list dhcpv6-intf-at-relay-oper
    
          list dhcpv6-intf-at-srv-oper {
            key "v6-intf-at-srv";
            description "List of DHCP clients";
            uses dhcp-ios-xe-oper:dhcpv6-intf-at-srv-key;
    
            uses dhcp-ios-xe-oper:dhcpv6-intf-at-srv-oper;
          }  // list dhcpv6-intf-at-srv-oper
    
          list dhcpv6-intf-at-client-oper {
            key "v6-intf-at-client";
            description "List of DHCP clients";
            uses dhcp-ios-xe-oper:dhcpv6-intf-at-client-key;
    
            uses dhcp-ios-xe-oper:dhcpv6-intf-at-client-oper;
          }  // list dhcpv6-intf-at-client-oper
    
          list dhcpv6-relay-binding-oper {
            key "v6-relay-vrf";
            description "List of DHCP clients";
            uses dhcp-ios-xe-oper:dhcpv6-relay-binding-key;
    
            uses dhcp-ios-xe-oper:dhcpv6-relay-binding-oper;
          }  // list dhcpv6-relay-binding-oper
        }  // container dhcp-oper-data
      }  // module Cisco-IOS-XE-dhcp-oper
    

© 2023 YumaWorks, Inc. All rights reserved.