netconfcentral logo

openconfig-relay-agent

HTML

openconfig-relay-agent@2016-05-16



  module openconfig-relay-agent {

    yang-version 1;

    namespace
      "http://openconfig.net/yang/relay-agent";

    prefix oc-relay;

    import ietf-inet-types {
      prefix inet;
    }
    import ietf-yang-types {
      prefix yang;
    }
    import openconfig-interfaces {
      prefix oc-if;
    }
    import openconfig-extensions {
      prefix oc-ext;
    }

    organization "OpenConfig working group";

    contact
      "OpenConfig working group
    www.openconfig.net";

    description
      "This module describes a model for configuration and operational
    state related to relay agents typically used for DHCP and BOOTP
    packets.  The supports both DHCP and DHCPv6 and device-wide and
    per-interface settings.";

    revision "2016-05-16" {
      description "Initial public release";
      reference
        "0.1.0";

    }

    oc-ext:openconfig-version "0.1.0";

    grouping agent-information-ipv4-common-config {
      description
        "Common configuration data for DHCP relay option";
      leaf enable {
        type boolean;
        default 'false';
        description
          "Enable sending the DHCP option for Relay Agent information
        -- option 82.";
        reference
          "RFC 3046 - DHCP Relay Agent Information Option";

      }
    }  // grouping agent-information-ipv4-common-config

    grouping agent-information-ipv4-common-state {
      description
        "Common operational state data for DHCP relay option";
    }  // grouping agent-information-ipv4-common-state

    grouping agent-information-ipv4-global-top {
      description
        "Top-level grouping for agent information data at global level";
      container agent-information-option {
        description
          "Top-level container for relay agent information option
        data";
        container config {
          description
            "Configuration data for the relay agent information
          option";
          uses agent-information-ipv4-common-config;
        }  // container config

        container state {
          config false;
          description
            "Operational state data for agent information at global
          level";
          uses agent-information-ipv4-common-config;

          uses agent-information-ipv4-common-state;
        }  // container state
      }  // container agent-information-option
    }  // grouping agent-information-ipv4-global-top

    grouping agent-information-ipv4-interface-config {
      description
        "Configuration data for DCHP relay option on interfaces";
      leaf circuit-id {
        type string;
        description
          "Encodes an agent-local identifier of the circuit from which
        a DHCP client-to-server packet was received.  It is intended
        for use by agents in relaying DHCP responses back to the
        proper circuit.  The circuit id is an opaque value";
        reference
          "RFC 3046 - DHCP Relay Agent Information Option";

      }

      leaf remote-id {
        type string;
        description
          "Provides a mechanism to identify the remote host end of
        the circuit.  The remote-id should be thought of as an
        opaque value, but must be globally unique.";
        reference
          "RFC 3046 - DHCP Relay Agent Information Option";

      }
    }  // grouping agent-information-ipv4-interface-config

    grouping agent-information-ipv4-interface-state {
      description
        "Operational state data for DHCP relay option on interfaces";
      leaf sent-circuit-id {
        type string;
        description
          "Reports the circuit-id sent by the system to the DHCP
        server.";
      }

      leaf sent-remote-id {
        type string;
        description
          "Reports the remote-id value sent by the system to the DHCP
        server";
      }
    }  // grouping agent-information-ipv4-interface-state

    grouping agent-information-ipv4-interface-top {
      description
        "Top-level grouping for relay agent information option data";
      container agent-information-option {
        description
          "Top-level container for relay agent information option
        data";
        container config {
          description
            "Configuration data for the relay agent information
          option";
          uses agent-information-ipv4-common-config;

          uses agent-information-ipv4-interface-config;
        }  // container config

        container state {
          config false;
          description
            "Operational state data ";
          uses agent-information-ipv4-common-config;

          uses agent-information-ipv4-interface-config;

          uses agent-information-ipv4-common-state;

          uses agent-information-ipv4-interface-state;
        }  // container state
      }  // container agent-information-option
    }  // grouping agent-information-ipv4-interface-top

    grouping agent-options-ipv6-common-config {
      description
        "Configuration data for DHCPv6 options";
      leaf enable-interface-id {
        type boolean;
        default 'false';
        description
          "Enables DHCPv6 OPTION_INTERFACE_ID (18) to identify the
        interface on which the client message was received.";
        reference
          "IETF RFC 3315 - Dynamic Host Configuration Protocol for
          IPv6 (DHCPv6)";

      }

      leaf enable-remote-id {
        type boolean;
        default 'false';
        description
          "Sets DHCPv6 OPTION_REMOTE_ID (37).  This option is the
        DHCPv6 equivalent for the IPv4 (DHCPv4) Relay Agent Option's
        Remote-ID suboption as specified in RFC 3046. The remote-id
        field may be used to encode a user name, remote IP address,
        interface/port identifier, etc.";
        reference
          "IETF RFC 4649 - Dynamic Host Configuration Protocol for
          IPv6 (DHCPv6) Relay Agent Remote-ID Option";

      }
    }  // grouping agent-options-ipv6-common-config

    grouping agent-options-ipv6-common-state {
      description
        "Operational state data for DHCPv6 options";
    }  // grouping agent-options-ipv6-common-state

    grouping agent-options-ipv6-interface-config {
      description
        "Configuration data for DHCPv6 options";
      leaf interface-id {
        type string;
        description
          "Sets DHCPv6 OPTION_INTERFACE_ID (18) to identify the
        interface on which the client message was received.";
        reference
          "IETF RFC 3315 - Dynamic Host Configuration Protocol for
          IPv6 (DHCPv6)";

      }

      leaf remote-id {
        type string;
        description
          "Sets DHCPv6 OPTION_REMOTE_ID (37).  This option is the
        DHCPv6 equivalent for the IPv4 (DHCPv4) Relay Agent Option's
        Remote-ID suboption as specified in RFC 3046. The remote-id
        field may be used to encode a user name, remote IP address,
        interface/port identifier, etc.";
        reference
          "IETF RFC 4649 - Dynamic Host Configuration Protocol for
          IPv6 (DHCPv6) Relay Agent Remote-ID Option";

      }
    }  // grouping agent-options-ipv6-interface-config

    grouping agent-options-ipv6-interface-state {
      description
        "Operational state data for DHCPv6 options";
      leaf sent-interface-id {
        type string;
        description
          "Reflects the DHCPv6 OPTION_INTERFACE_ID (18) sent to the
        server by the system.";
        reference
          "IETF RFC 3315 - Dynamic Host Configuration Protocol for
          IPv6 (DHCPv6)";

      }

      leaf sent-remote-id {
        type string;
        description
          "Reflects the DHCPv6 OPTION_REMOTE_ID (37) sent to the
        server by the system.";
        reference
          "IETF RFC 4649 - Dynamic Host Configuration Protocol for
          IPv6 (DHCPv6) Relay Agent Remote-ID Option";

      }
    }  // grouping agent-options-ipv6-interface-state

    grouping agent-options-ipv6-global-top {
      description
        "Top-level grouping for DHCPv6 options on interfaces";
      container options {
        description
          "Top-level container for DHCPv6 agent options on interfaces";
        container config {
          description "Configuration data ";
          uses agent-options-ipv6-common-config;
        }  // container config

        container state {
          config false;
          description
            "Operational state data for DHCPv6 agent option on an
          interface";
          uses agent-options-ipv6-common-config;

          uses agent-options-ipv6-common-state;
        }  // container state
      }  // container options
    }  // grouping agent-options-ipv6-global-top

    grouping agent-options-ipv6-interface-top {
      description
        "Top-level grouping for DHCPv6 options on interfaces";
      container options {
        description
          "Top-level container for DHCPv6 agent options on interfaces";
        container config {
          description "Configuration data ";
          uses agent-options-ipv6-common-config;

          uses agent-options-ipv6-interface-config;
        }  // container config

        container state {
          config false;
          description
            "Operational state data for DHCPv6 agent option on an
          interface";
          uses agent-options-ipv6-common-config;

          uses agent-options-ipv6-interface-config;

          uses agent-options-ipv6-common-state;

          uses agent-options-ipv6-interface-state;
        }  // container state
      }  // container options
    }  // grouping agent-options-ipv6-interface-top

    grouping relay-agent-common-config {
      description
        "Configuration data for global level relay agent options,
      common across address families";
      leaf enable-relay-agent {
        type boolean;
        default 'false';
        description
          "Enables DHCP/BOOTP relay agent on all interfaces";
      }
    }  // grouping relay-agent-common-config

    grouping relay-agent-common-state {
      description
        "Operational state data for global level relay agent, common
      across address families";
    }  // grouping relay-agent-common-state

    grouping relay-agent-ipv4-config {
      description
        "Configuration data for DHCPv4 relay agents";
      uses relay-agent-common-config;
    }  // grouping relay-agent-ipv4-config

    grouping relay-agent-ipv4-state {
      description
        "Configuration data for DHCPv4 relay agents";
      uses relay-agent-common-state;
    }  // grouping relay-agent-ipv4-state

    grouping relay-agent-ipv4-top {
      description
        "Top-level grouping for global relay agent data";
      container dhcp {
        description
          "Top-level container for global relay agent data";
        container config {
          description
            "Configuration data for global DHCPv4";
          uses relay-agent-ipv4-config;
        }  // container config

        container state {
          config false;
          description
            "Operational state data global DHCPv4";
          uses relay-agent-ipv4-config;

          uses relay-agent-ipv4-state;
        }  // container state

        uses agent-information-ipv4-global-top;

        uses relay-agent-ipv4-interfaces-top;
      }  // container dhcp
    }  // grouping relay-agent-ipv4-top

    grouping relay-agent-ipv6-config {
      description
        "Configuration data for DHCPv6 relay agents";
      uses relay-agent-common-config;
    }  // grouping relay-agent-ipv6-config

    grouping relay-agent-ipv6-state {
      description
        "Configuration data for DHCPv6 relay agents";
      uses relay-agent-common-state;
    }  // grouping relay-agent-ipv6-state

    grouping relay-agent-ipv6-top {
      description
        "Top-level grouping for global relay agent data";
      container dhcpv6 {
        description
          "Top-level container for global relay agent data";
        container config {
          description
            "Configuration data for global DHCPv6";
          uses relay-agent-ipv6-config;
        }  // container config

        container state {
          config false;
          description
            "Operational state data global DHCPv6";
          uses relay-agent-ipv6-config;

          uses relay-agent-ipv6-state;
        }  // container state

        uses agent-options-ipv6-global-top;

        uses relay-agent-ipv6-interfaces-top;
      }  // container dhcpv6
    }  // grouping relay-agent-ipv6-top

    grouping relay-agent-common-stats {
      description
        "Common DHCP / BOOTP message statistics for
      DHCPv4 and DHCPv6";
      leaf total-dropped {
        type yang:counter64;
        description
          "Total number of DHCP packets dropped by the relay agent";
      }

      leaf invalid-opcode {
        type yang:counter64;
        description
          "Number of DHCP packets dropped due to an invalid opcode";
      }

      leaf invalid-options {
        type yang:counter64;
        description
          "Number of DHCP packets dropped due to an invalid option";
      }
    }  // grouping relay-agent-common-stats

    grouping relay-agent-ipv4-stats {
      description
        "DHCPv4 relay agent message statistics";
      leaf bootrequest-received {
        type yang:counter64;
        description
          "BOOTREQUEST messages received by the relay agent";
      }

      leaf dhcp-decline-received {
        type yang:counter64;
        description
          "DHCP DECLINE messages received by the relay agent";
      }

      leaf dhcp-discover-received {
        type yang:counter64;
        description
          "DHCP DISCOVER messages received by the relay agent";
      }

      leaf dhcp-inform-received {
        type yang:counter64;
        description
          "DHCP INFORM messages received by the relay agent";
      }

      leaf dhcp-release-received {
        type yang:counter64;
        description
          "DHCP RELEASE messages received by the relay agent";
      }

      leaf dhcp-request-received {
        type yang:counter64;
        description
          "DHCP REQUEST messages received by the relay agent";
      }

      leaf bootrequest-sent {
        type yang:counter64;
        description
          "BOOTREQUEST messages forwarded by the relay agent";
      }

      leaf bootreply-sent {
        type yang:counter64;
        description
          "BOOTREPLY messages forwarded by the relay agent";
      }

      leaf dhcp-offer-sent {
        type yang:counter64;
        description
          "DHCP OFFER messages sent by the relay agent";
      }

      leaf dhcp-ack-sent {
        type yang:counter64;
        description
          "DHCP ACK messages sent by the relay agent";
      }

      leaf dhcp-nack-sent {
        type yang:counter64;
        description
          "DHCP NACK messages sent by the relay agent";
      }
    }  // grouping relay-agent-ipv4-stats

    grouping relay-agent-ipv6-stats {
      description
        "DHCPv4 relay agent message statistics";
      leaf dhcpv6-solicit-received {
        type yang:counter64;
        description
          "Number of DHCPv6 SOLICIT messages received from clients
        by the relay agent";
      }

      leaf dhcpv6-decline-received {
        type yang:counter64;
        description
          "Number of DHCPv6 DECLINE messages received from
        clients by the relay agent";
      }

      leaf dhcpv6-request-received {
        type yang:counter64;
        description
          "Number of DHCPv6 request messages received from clients
        by the relay agent";
      }

      leaf dhcpv6-release-received {
        type yang:counter64;
        description
          "Number of DHCPv6 release messages received from clients
        by the relay agent";
      }

      leaf dhcpv6-confirm-received {
        type yang:counter64;
        description
          "Number of DHCPv6 confirm messages received from clients
        by the relay agent";
      }

      leaf dhcpv6-rebind-received {
        type yang:counter64;
        description
          "Number of DHCPv6 rebind messages received from clients
        by the relay agent";
      }

      leaf dhcpv6-info-request-received {
        type yang:counter64;
        description
          "Number of DHCPv6 information requests messages received from
        clients by the relay agent";
      }

      leaf dhcpv6-relay-reply-received {
        type yang:counter64;
        description
          "Number of DHCPv6 relay reply messages received from servers
        by the relay agent";
      }

      leaf dhcpv6-adverstise-sent {
        type yang:counter64;
        description
          "Number of DHCPv6 adverstise messages sent to clients by
        the relay agent";
      }

      leaf dhcpv6-reply-sent {
        type yang:counter64;
        description
          "Number of DHCPv6 reply messages sent to clients by
        the relay agent";
      }

      leaf dhcpv6-reconfigure-sent {
        type yang:counter64;
        description
          "Number of DHCPv6 reconfigure messages sent to clients by
        the relay agent";
      }

      leaf dhcpv6-relay-forw-sent {
        type yang:counter64;
        description
          "Number of DHCPv6 relay-forward messages sent to servers
        by the relay agent";
      }
    }  // grouping relay-agent-ipv6-stats

    grouping relay-agent-ipv4-interfaces-config {
      description
        "Configuration data for interfaces enabled for relaying";
      leaf id {
        type oc-if:interface-id;
        description
          "Name of the interface on which relay agent is active";
      }

      leaf enable {
        type boolean;
        description
          "Enables the relay agent on the referenced interface.
        At least one helper address should also be configured
        for forwarding requested.";
      }

      leaf-list helper-address {
        type inet:ip-address;
        description
          "List of IPv4 or IPv6 addresses of DHCP servers to which the
        relay agent should forward DHCPv4 requests.  The relay agent is
        expected to forward DHCPv4/BOOTP requests to all listed
        server addresses when DHCPv4 relaying is enabled globally, or
        on the interface.";
      }
    }  // grouping relay-agent-ipv4-interfaces-config

    grouping relay-agent-ipv4-interfaces-state {
      description
        "Operational state data for interfaces enabled for relaying";
      container counters {
        description
          "Counters and statistics for relay agent operation.";
        uses relay-agent-common-stats;

        uses relay-agent-ipv4-stats;
      }  // container counters
    }  // grouping relay-agent-ipv4-interfaces-state

    grouping relay-agent-ipv4-interfaces-top {
      description
        "Top-level grouping for DHCPv4 relays on interfaces";
      container interfaces {
        description
          "Enclosing container for the list of interface references.";
        list interface {
          key "id";
          description
            "List of interfaces on which the relay agent is
          configured.";
          leaf id {
            type leafref {
              path "../config/id";
            }
            description
              "Reference to the interface list key";
          }

          container config {
            description
              "Configuration data for relay agent interfaces.";
            uses relay-agent-ipv4-interfaces-config;
          }  // container config

          container state {
            config false;
            description
              "Operational state data for relay agent interfaces.";
            uses relay-agent-ipv4-interfaces-config;

            uses relay-agent-ipv4-interfaces-state;
          }  // container state

          uses oc-if:interface-ref;

          uses agent-information-ipv4-interface-top;
        }  // list interface
      }  // container interfaces
    }  // grouping relay-agent-ipv4-interfaces-top

    grouping relay-agent-ipv6-interfaces-config {
      description
        "Configuration data for interfaces enabled for relaying";
      leaf id {
        type oc-if:interface-id;
        description
          "Name of the interface on which relay agent is active";
      }

      leaf enable {
        type boolean;
        description
          "Enables the relay agent on the referenced interface.
        At least one helper address should also be configured
        for forwarding requested.";
      }

      leaf-list helper-address {
        type inet:ipv6-address;
        description
          "List of IPv6 addresses of DHCP servers to which the
        relay agent should forward DHCPv6 requests.  The relay agent
        is expected to forward DHCPv4/BOOTP requests to all listed
        server addresses when DHCPv6 relaying is enabled globally, or
        on the interface.";
      }
    }  // grouping relay-agent-ipv6-interfaces-config

    grouping relay-agent-ipv6-interfaces-state {
      description
        "Operational state data for interfaces enabled for relaying";
      container counters {
        description
          "Counters and statistics for relay agent operation.";
        uses relay-agent-common-stats;

        uses relay-agent-ipv6-stats;
      }  // container counters
    }  // grouping relay-agent-ipv6-interfaces-state

    grouping relay-agent-ipv6-interfaces-top {
      description
        "Top-level grouping for DHCPv4 relays on interfaces";
      container interfaces {
        description
          "Enclosing container for the list of interface references.";
        list interface {
          key "id";
          description
            "List of interfaces on which the relay agent is
          configured.";
          leaf id {
            type leafref {
              path "../config/id";
            }
            description
              "Reference to the interface list key";
          }

          container config {
            description
              "Configuration data for relay agent interfaces.";
            uses relay-agent-ipv6-interfaces-config;
          }  // container config

          container state {
            config false;
            description
              "Operational state data for relay agent interfaces.";
            uses relay-agent-ipv6-interfaces-config;

            uses relay-agent-ipv6-interfaces-state;
          }  // container state

          uses oc-if:interface-ref;

          uses agent-options-ipv6-interface-top;
        }  // list interface
      }  // container interfaces
    }  // grouping relay-agent-ipv6-interfaces-top

    grouping relay-agent-top {
      description
        "Top-level container for relay agent configuration and opstate
      data.";
      container relay-agent {
        description
          "Top level container for relay-agent configuration and
        operational state data";
        uses relay-agent-ipv4-top;

        uses relay-agent-ipv6-top;
      }  // container relay-agent
    }  // grouping relay-agent-top

    uses relay-agent-top;
  }  // module openconfig-relay-agent

Summary

  
  
Organization OpenConfig working group
  
Module openconfig-relay-agent
Version 2016-05-16
File openconfig-relay-agent.yang
  
Prefix oc-relay
Namespace http://openconfig.net/yang/relay-agent
  
Cooked /cookedmodules/openconfig-relay-agent/2016-05-16
YANG /src/openconfig-relay-agent@2016-05-16.yang
XSD /xsd/openconfig-relay-agent@2016-05-16.xsd
  
Abstract This module describes a model for configuration and operational state related to relay agents typically used for DHCP and BOOTP ...
  
Contact
OpenConfig working group
www.openconfig.net

Description

 
This module describes a model for configuration and operational
state related to relay agents typically used for DHCP and BOOTP
packets.  The supports both DHCP and DHCPv6 and device-wide and
per-interface settings.

Groupings

Grouping Objects Abstract
agent-information-ipv4-common-config enable Common configuration data for DHCP relay option
agent-information-ipv4-common-state Common operational state data for DHCP relay option
agent-information-ipv4-global-top agent-information-option Top-level grouping for agent information data at global level
agent-information-ipv4-interface-config circuit-id remote-id Configuration data for DCHP relay option on interfaces
agent-information-ipv4-interface-state sent-circuit-id sent-remote-id Operational state data for DHCP relay option on interfaces
agent-information-ipv4-interface-top agent-information-option Top-level grouping for relay agent information option data
agent-options-ipv6-common-config enable-interface-id enable-remote-id Configuration data for DHCPv6 options
agent-options-ipv6-common-state Operational state data for DHCPv6 options
agent-options-ipv6-global-top options Top-level grouping for DHCPv6 options on interfaces
agent-options-ipv6-interface-config interface-id remote-id Configuration data for DHCPv6 options
agent-options-ipv6-interface-state sent-interface-id sent-remote-id Operational state data for DHCPv6 options
agent-options-ipv6-interface-top options Top-level grouping for DHCPv6 options on interfaces
relay-agent-common-config enable-relay-agent Configuration data for global level relay agent options, common across address families
relay-agent-common-state Operational state data for global level relay agent, common across address families
relay-agent-common-stats total-dropped invalid-opcode invalid-options Common DHCP / BOOTP message statistics for DHCPv4 and DHCPv6
relay-agent-ipv4-config enable-relay-agent Configuration data for DHCPv4 relay agents
relay-agent-ipv4-interfaces-config id enable helper-address Configuration data for interfaces enabled for relaying
relay-agent-ipv4-interfaces-state counters Operational state data for interfaces enabled for relaying
relay-agent-ipv4-interfaces-top interfaces Top-level grouping for DHCPv4 relays on interfaces
relay-agent-ipv4-state Configuration data for DHCPv4 relay agents
relay-agent-ipv4-stats bootrequest-received dhcp-decline-received dhcp-discover-received dhcp-inform-received dhcp-release-received dhcp-request-received bootrequest-sent bootreply-sent dhcp-offer-sent dhcp-ack-sent dhcp-nack-sent DHCPv4 relay agent message statistics
relay-agent-ipv4-top dhcp Top-level grouping for global relay agent data
relay-agent-ipv6-config enable-relay-agent Configuration data for DHCPv6 relay agents
relay-agent-ipv6-interfaces-config id enable helper-address Configuration data for interfaces enabled for relaying
relay-agent-ipv6-interfaces-state counters Operational state data for interfaces enabled for relaying
relay-agent-ipv6-interfaces-top interfaces Top-level grouping for DHCPv4 relays on interfaces
relay-agent-ipv6-state Configuration data for DHCPv6 relay agents
relay-agent-ipv6-stats dhcpv6-solicit-received dhcpv6-decline-received dhcpv6-request-received dhcpv6-release-received dhcpv6-confirm-received dhcpv6-rebind-received dhcpv6-info-request-received dhcpv6-relay-reply-received dhcpv6-adverstise-sent dhcpv6-reply-sent dhcpv6-reconfigure-sent dhcpv6-relay-forw-sent DHCPv4 relay agent message statistics
relay-agent-ipv6-top dhcpv6 Top-level grouping for global relay agent data
relay-agent-top relay-agent Top-level container for relay agent configuration and opstate data.

Objects

Type Key
Mandatory config
Optional config
Not config
Object Type Abstract
relay-agent container Top level container for relay-agent configuration and operational state data
   dhcp container Top-level container for global relay agent data
      agent-information-option container Top-level container for relay agent information option data
         config container Configuration data for the relay agent information option
            enable leaf Enable sending the DHCP option for Relay Agent information -- option 82.
         state container Operational state data for agent information at global level
            enable leaf Enable sending the DHCP option for Relay Agent information -- option 82.
      config container Configuration data for global DHCPv4
         enable-relay-agent leaf Enables DHCP/BOOTP relay agent on all interfaces
      interfaces container Enclosing container for the list of interface references.
         interface list List of interfaces on which the relay agent is configured.
            agent-information-option container Top-level container for relay agent information option data
               config container Configuration data for the relay agent information option
                  circuit-id leaf Encodes an agent-local identifier of the circuit from which a DHCP client-to-server packet was received. It is intended for use by agents in relaying DHCP responses back to the proper circuit. The circuit id is an opaque value
                  enable leaf Enable sending the DHCP option for Relay Agent information -- option 82.
                  remote-id leaf Provides a mechanism to identify the remote host end of the circuit. The remote-id should be thought of as an opaque value, but must be globally unique.
               state container Operational state data
                  circuit-id leaf Encodes an agent-local identifier of the circuit from which a DHCP client-to-server packet was received. It is intended for use by agents in relaying DHCP responses back to the proper circuit. The circuit id is an opaque value
                  enable leaf Enable sending the DHCP option for Relay Agent information -- option 82.
                  remote-id leaf Provides a mechanism to identify the remote host end of the circuit. The remote-id should be thought of as an opaque value, but must be globally unique.
                  sent-circuit-id leaf Reports the circuit-id sent by the system to the DHCP server.
                  sent-remote-id leaf Reports the remote-id value sent by the system to the DHCP server
            config container Configuration data for relay agent interfaces.
               enable leaf Enables the relay agent on the referenced interface. At least one helper address should also be configured for forwarding requested.
               helper-address leaf-list List of IPv4 or IPv6 addresses of DHCP servers to which the relay agent should forward DHCPv4 requests. The relay agent is expected to forward DHCPv4/BOOTP requests to all listed server addresses when DHCPv4 relaying is enabled globally, or on the interf...
               id leaf Name of the interface on which relay agent is active
            id leaf Reference to the interface list key
            interface-ref container Reference to an interface or subinterface
               config container Configured reference to interface / subinterface
                  interface leaf Reference to a base interface. If a reference to a subinterface is required, this leaf must be specified to indicate the base interface.
                  subinterface leaf Reference to a subinterface -- this requires the base interface to be specified using the interface leaf in this container. If only a reference to a base interface is requuired, this leaf should not be set.
               state container Operational state for interface-ref
                  interface leaf Reference to a base interface. If a reference to a subinterface is required, this leaf must be specified to indicate the base interface.
                  subinterface leaf Reference to a subinterface -- this requires the base interface to be specified using the interface leaf in this container. If only a reference to a base interface is requuired, this leaf should not be set.
            state container Operational state data for relay agent interfaces.
               counters container Counters and statistics for relay agent operation.
                  bootreply-sent leaf BOOTREPLY messages forwarded by the relay agent
                  bootrequest-received leaf BOOTREQUEST messages received by the relay agent
                  bootrequest-sent leaf BOOTREQUEST messages forwarded by the relay agent
                  dhcp-ack-sent leaf DHCP ACK messages sent by the relay agent
                  dhcp-decline-received leaf DHCP DECLINE messages received by the relay agent
                  dhcp-discover-received leaf DHCP DISCOVER messages received by the relay agent
                  dhcp-inform-received leaf DHCP INFORM messages received by the relay agent
                  dhcp-nack-sent leaf DHCP NACK messages sent by the relay agent
                  dhcp-offer-sent leaf DHCP OFFER messages sent by the relay agent
                  dhcp-release-received leaf DHCP RELEASE messages received by the relay agent
                  dhcp-request-received leaf DHCP REQUEST messages received by the relay agent
                  invalid-opcode leaf Number of DHCP packets dropped due to an invalid opcode
                  invalid-options leaf Number of DHCP packets dropped due to an invalid option
                  total-dropped leaf Total number of DHCP packets dropped by the relay agent
               enable leaf Enables the relay agent on the referenced interface. At least one helper address should also be configured for forwarding requested.
               helper-address leaf-list List of IPv4 or IPv6 addresses of DHCP servers to which the relay agent should forward DHCPv4 requests. The relay agent is expected to forward DHCPv4/BOOTP requests to all listed server addresses when DHCPv4 relaying is enabled globally, or on the interf...
               id leaf Name of the interface on which relay agent is active
      state container Operational state data global DHCPv4
         enable-relay-agent leaf Enables DHCP/BOOTP relay agent on all interfaces
   dhcpv6 container Top-level container for global relay agent data
      config container Configuration data for global DHCPv6
         enable-relay-agent leaf Enables DHCP/BOOTP relay agent on all interfaces
      interfaces container Enclosing container for the list of interface references.
         interface list List of interfaces on which the relay agent is configured.
            config container Configuration data for relay agent interfaces.
               enable leaf Enables the relay agent on the referenced interface. At least one helper address should also be configured for forwarding requested.
               helper-address leaf-list List of IPv6 addresses of DHCP servers to which the relay agent should forward DHCPv6 requests. The relay agent is expected to forward DHCPv4/BOOTP requests to all listed server addresses when DHCPv6 relaying is enabled globally, or on the interface.
               id leaf Name of the interface on which relay agent is active
            id leaf Reference to the interface list key
            interface-ref container Reference to an interface or subinterface
               config container Configured reference to interface / subinterface
                  interface leaf Reference to a base interface. If a reference to a subinterface is required, this leaf must be specified to indicate the base interface.
                  subinterface leaf Reference to a subinterface -- this requires the base interface to be specified using the interface leaf in this container. If only a reference to a base interface is requuired, this leaf should not be set.
               state container Operational state for interface-ref
                  interface leaf Reference to a base interface. If a reference to a subinterface is required, this leaf must be specified to indicate the base interface.
                  subinterface leaf Reference to a subinterface -- this requires the base interface to be specified using the interface leaf in this container. If only a reference to a base interface is requuired, this leaf should not be set.
            options container Top-level container for DHCPv6 agent options on interfaces
               config container Configuration data
                  enable-interface-id leaf Enables DHCPv6 OPTION_INTERFACE_ID (18) to identify the interface on which the client message was received.
                  enable-remote-id leaf Sets DHCPv6 OPTION_REMOTE_ID (37). This option is the DHCPv6 equivalent for the IPv4 (DHCPv4) Relay Agent Option's Remote-ID suboption as specified in RFC 3046. The remote-id field may be used to encode a user name, remote IP address, interface/port iden...
                  interface-id leaf Sets DHCPv6 OPTION_INTERFACE_ID (18) to identify the interface on which the client message was received.
                  remote-id leaf Sets DHCPv6 OPTION_REMOTE_ID (37). This option is the DHCPv6 equivalent for the IPv4 (DHCPv4) Relay Agent Option's Remote-ID suboption as specified in RFC 3046. The remote-id field may be used to encode a user name, remote IP address, interface/port iden...
               state container Operational state data for DHCPv6 agent option on an interface
                  enable-interface-id leaf Enables DHCPv6 OPTION_INTERFACE_ID (18) to identify the interface on which the client message was received.
                  enable-remote-id leaf Sets DHCPv6 OPTION_REMOTE_ID (37). This option is the DHCPv6 equivalent for the IPv4 (DHCPv4) Relay Agent Option's Remote-ID suboption as specified in RFC 3046. The remote-id field may be used to encode a user name, remote IP address, interface/port iden...
                  interface-id leaf Sets DHCPv6 OPTION_INTERFACE_ID (18) to identify the interface on which the client message was received.
                  remote-id leaf Sets DHCPv6 OPTION_REMOTE_ID (37). This option is the DHCPv6 equivalent for the IPv4 (DHCPv4) Relay Agent Option's Remote-ID suboption as specified in RFC 3046. The remote-id field may be used to encode a user name, remote IP address, interface/port iden...
                  sent-interface-id leaf Reflects the DHCPv6 OPTION_INTERFACE_ID (18) sent to the server by the system.
                  sent-remote-id leaf Reflects the DHCPv6 OPTION_REMOTE_ID (37) sent to the server by the system.
            state container Operational state data for relay agent interfaces.
               counters container Counters and statistics for relay agent operation.
                  dhcpv6-adverstise-sent leaf Number of DHCPv6 adverstise messages sent to clients by the relay agent
                  dhcpv6-confirm-received leaf Number of DHCPv6 confirm messages received from clients by the relay agent
                  dhcpv6-decline-received leaf Number of DHCPv6 DECLINE messages received from clients by the relay agent
                  dhcpv6-info-request-received leaf Number of DHCPv6 information requests messages received from clients by the relay agent
                  dhcpv6-rebind-received leaf Number of DHCPv6 rebind messages received from clients by the relay agent
                  dhcpv6-reconfigure-sent leaf Number of DHCPv6 reconfigure messages sent to clients by the relay agent
                  dhcpv6-relay-forw-sent leaf Number of DHCPv6 relay-forward messages sent to servers by the relay agent
                  dhcpv6-relay-reply-received leaf Number of DHCPv6 relay reply messages received from servers by the relay agent
                  dhcpv6-release-received leaf Number of DHCPv6 release messages received from clients by the relay agent
                  dhcpv6-reply-sent leaf Number of DHCPv6 reply messages sent to clients by the relay agent
                  dhcpv6-request-received leaf Number of DHCPv6 request messages received from clients by the relay agent
                  dhcpv6-solicit-received leaf Number of DHCPv6 SOLICIT messages received from clients by the relay agent
                  invalid-opcode leaf Number of DHCP packets dropped due to an invalid opcode
                  invalid-options leaf Number of DHCP packets dropped due to an invalid option
                  total-dropped leaf Total number of DHCP packets dropped by the relay agent
               enable leaf Enables the relay agent on the referenced interface. At least one helper address should also be configured for forwarding requested.
               helper-address leaf-list List of IPv6 addresses of DHCP servers to which the relay agent should forward DHCPv6 requests. The relay agent is expected to forward DHCPv4/BOOTP requests to all listed server addresses when DHCPv6 relaying is enabled globally, or on the interface.
               id leaf Name of the interface on which relay agent is active
      options container Top-level container for DHCPv6 agent options on interfaces
         config container Configuration data
            enable-interface-id leaf Enables DHCPv6 OPTION_INTERFACE_ID (18) to identify the interface on which the client message was received.
            enable-remote-id leaf Sets DHCPv6 OPTION_REMOTE_ID (37). This option is the DHCPv6 equivalent for the IPv4 (DHCPv4) Relay Agent Option's Remote-ID suboption as specified in RFC 3046. The remote-id field may be used to encode a user name, remote IP address, interface/port iden...
         state container Operational state data for DHCPv6 agent option on an interface
            enable-interface-id leaf Enables DHCPv6 OPTION_INTERFACE_ID (18) to identify the interface on which the client message was received.
            enable-remote-id leaf Sets DHCPv6 OPTION_REMOTE_ID (37). This option is the DHCPv6 equivalent for the IPv4 (DHCPv4) Relay Agent Option's Remote-ID suboption as specified in RFC 3046. The remote-id field may be used to encode a user name, remote IP address, interface/port iden...
      state container Operational state data global DHCPv6
         enable-relay-agent leaf Enables DHCP/BOOTP relay agent on all interfaces