ietf-dhcpv6-relay
HTML
ietf-dhcpv6-relay@2018-09-04
module ietf-dhcpv6-relay { yang-version 1.1; namespace "urn:ietf:params:xml:ns:yang:ietf-dhcpv6-relay"; prefix dhcpv6-relay; import ietf-inet-types { prefix inet; } import ietf-dhcpv6-options { prefix dhcpv6-options; } import ietf-dhcpv6-types { prefix dhcpv6-types; } import ietf-interfaces { prefix if; } organization "IETF DHC (Dynamic Host Configuration) Working group"; contact "cuiyong@tsinghua.edu.cn lh.sunlinh@gmail.com ian.farrer@telekom.de sladjana.zechlin@telekom.de hezihao9512@gmail.com"; description "This model defines a YANG data model that can be used to configure and manage a DHCPv6 relay."; revision "2018-09-04" { description ""; reference "I-D: draft-ietf-dhc-dhcpv6-yang"; } revision "2018-03-04" { description "Resolved most issues on the DHC official github"; reference "I-D: draft-ietf-dhc-dhcpv6-yang"; } revision "2017-12-22" { description "Resolve most issues on Ian's github."; reference "I-D: draft-ietf-dhc-dhcpv6-yang"; } revision "2017-11-24" { description "First version of the separated relay specific YANG model."; reference "I-D: draft-ietf-dhc-dhcpv6-yang"; } container relay { presence "Enables the relay"; description "DHCPv6 relay portion"; container relay-config { description "This container contains the configuration data of the relay."; container relay-attributes { description "A container describes some basic attributes of the relay agent including some relay agent specific options data that need to be configured previously. Such options include Remote-Id option and Subscriber-Id option."; leaf name { type string; description "Relay agent name"; } leaf description { type string; description "Textual description of the relay agent"; } leaf-list dest-addrs { type inet:ipv6-address; description "Each DHCPv6 relay agent may be configured with a list of destination addresses. This node defines such a list of IPv6 addresses that may include unicast addresses, multicast addresses or other addresses."; } list subscribers { key "subscriber"; description "Subscribers"; leaf subscriber { type uint8; mandatory true; description "Subscriber"; } leaf subscriber-id { type string; mandatory true; description "Subscriber id"; } } // list subscribers list remote-host { key "ent-num"; description "Remote host"; leaf ent-num { type uint32; mandatory true; description "Enterprise number"; } leaf remote-id { type string; mandatory true; description "Remote id"; } } // list remote-host uses dhcpv6-types:vendor-infor; } // container relay-attributes container rsoo-option-sets { description "DHCPv6 relay agent could provide some information that would be useful to DHCPv6 client. Since relay agent cannot provide options directly to the client, RSOO-enabled options are defined to propose options for the server to send to the client. This container models such RSOO-enabled options."; reference "RFC6422"; list option-set { key "option-set-id"; description "This list under the 'rsoo-option-sets' container is similar to the that defined in server module. It allows the relay to implement several sets of RSOO-enabled options for different interfaces. The list only includes the EAP Re-authentication Protocol (ERP) Local Domain Name DHCPv6 Option defined in RFC6440, since it is the only one RSOO-enabled options accepted by IANA so far."; leaf option-set-id { type uint32; description "Option sed id"; } uses dhcpv6-options:relay-supplied-option-definitions; } // list option-set } // container rsoo-option-sets list relay-if { key "if-name"; description "A relay agent may have several interfaces, we should provide a way to configure and manage parameters on the interface-level. A list that describes specific interfaces and their corresponding parameters is employed to fulfill the configuration. Here we use a string called 'if-name' as the key of list."; leaf if-name { type if:interface-ref; mandatory true; description "Interface name"; } leaf interface-id { type string; description "Interface id"; } leaf ipv6-address { type inet:ipv6-address; description "IPv6 address for this interface"; } leaf rsoo-option-set-id { type leafref { path "/relay/relay-config/rsoo-option-sets/option-set/option-set-id"; } description "Configured Relay Supplied Option set"; } list next-entity { key "dest-addr"; description "This node defines a list that is used to describe the next hop entity of this relay distinguished by their addresses."; leaf dest-addr { type inet:ipv6-address; mandatory true; description "Destination addr"; } leaf available { type boolean; mandatory true; description "Whether the next entity is available or not"; } leaf multicast { type boolean; mandatory true; description "Whether the address is multicast or not"; } leaf server { type boolean; mandatory true; description "Whether the next entity is a server"; } } // list next-entity } // list relay-if } // container relay-config container relay-state { config false; description "State data of relay"; list relay-if { key "if-name"; description "A relay agent may have several interfaces, we should provide a way to configure and manage parameters on the interface-level. A list that describes specific interfaces and their corresponding parameters is employed to fulfill the configuration. Here we use a string called 'if-name' as the key of list."; leaf if-name { type string; mandatory true; description "Interface name"; } list pd-route { key "pd-route-id"; description "pd route"; leaf pd-route-id { type uint8; mandatory true; description "PD route id"; } leaf requesting-router-id { type uint32; mandatory true; description "Requesting router id"; } leaf delegating-router-id { type uint32; mandatory true; description "Delegating router id"; } leaf next-router { type inet:ipv6-address; mandatory true; description "Next router"; } leaf last-router { type inet:ipv6-address; mandatory true; description "Previous router"; } } // list pd-route list next-entity { key "dest-addr"; description "This node defines a list that is used to describe the next hop entity of this relay agent. Different entities are distinguished by their addresses."; leaf dest-addr { type inet:ipv6-address; mandatory true; description "destination addr"; } container packet-stats { description "packet statistics"; leaf solicit-rvd-count { type uint32; mandatory true; description "solicit received counter"; } leaf request-rvd-count { type uint32; mandatory true; description "request received counter"; } leaf renew-rvd-count { type uint32; mandatory true; description "renew received counter"; } leaf rebind-rvd-count { type uint32; mandatory true; description "rebind received counter"; } leaf decline-rvd-count { type uint32; mandatory true; description "decline received counter"; } leaf release-rvd-count { type uint32; mandatory true; description "release received counter"; } leaf info-req-rvd-count { type uint32; mandatory true; description "information request counter"; } leaf relay-for-rvd-count { type uint32; mandatory true; description "relay forward received counter"; } leaf relay-rep-rvd-count { type uint32; mandatory true; description "relay reply received counter"; } leaf packet-to-cli-count { type uint32; mandatory true; description "packet to client counter"; } leaf adver-sent-count { type uint32; mandatory true; description "advertisement sent counter"; } leaf confirm-sent-count { type uint32; mandatory true; description "confirm sent counter"; } leaf reply-sent-count { type uint32; mandatory true; description "reply sent counter"; } leaf reconfig-sent-count { type uint32; mandatory true; description "reconfigure sent counter"; } leaf relay-for-sent-count { type uint32; mandatory true; description "relay forward sent counter"; } leaf relay-rep-sent-count { type uint32; mandatory true; description "relay reply sent counter"; } } // container packet-stats } // list next-entity } // list relay-if container relay-stats { config false; description "Relay statistics"; leaf cli-packet-rvd-count { type uint32; mandatory true; description "Client packet received counter"; } leaf relay-for-rvd-count { type uint32; mandatory true; description "Relay forward received counter"; } leaf relay-rep-rvd-count { type uint32; mandatory true; description "Relay reply received counter"; } leaf packet-to-cli-count { type uint32; mandatory true; description "Packet to client counter"; } leaf relay-for-sent-count { type uint32; mandatory true; description "Relay forward sent counter"; } leaf relay-rep-sent-count { type uint32; mandatory true; description "Relay reply sent counter"; } leaf discarded-packet-count { type uint32; mandatory true; description "Discarded packet counter"; } } // container relay-stats } // container relay-state } // container relay notification notifications { description "DHCPv6 relay notification module"; container dhcpv6-relay-event { description "DHCPv6 relay event"; container topo-changed { description "Raised when the topology of the relay agent is changed."; leaf relay-if-name { type string; mandatory true; description "Relay interface name"; } leaf first-hop { type boolean; mandatory true; description "First hop"; } leaf last-entity-addr { type inet:ipv6-address; mandatory true; description "Last entity address"; } } // container topo-changed } // container dhcpv6-relay-event } // notification notifications } // module ietf-dhcpv6-relay
Summary
Organization | IETF DHC (Dynamic Host Configuration) Working group |
Module | ietf-dhcpv6-relay |
Version | 2018-09-04 |
File | ietf-dhcpv6-relay@2018-09-04.yang |
Prefix | dhcpv6-relay |
Namespace | urn:ietf:params:xml:ns:yang:ietf-dhcpv6-relay |
Cooked | /cookedmodules/ietf-dhcpv6-relay/2018-09-04 |
YANG | /src/ietf-dhcpv6-relay@2018-09-04.yang |
XSD | /xsd/ietf-dhcpv6-relay@2018-09-04.xsd |
Abstract | This model defines a YANG data model that can be used to configure and manage a DHCPv6 relay. |
Contact | cuiyong@tsinghua.edu.cn lh.sunlinh@gmail.com ian.farrer@telekom.de sladjana.zechlin@telekom.de hezihao9512@gmail.com |
Description
This model defines a YANG data model that can be used to configure and manage a DHCPv6 relay. |
Objects
Type Key |
Mandatory config |
Optional config |
Not config |
Object | Type | Abstract |
relay | container | DHCPv6 relay portion |
relay-config | container | This container contains the configuration data of the relay. |
relay-attributes | container | A container describes some basic attributes of the relay agent including some relay agent specific options data that need to be configured previously. Such options include Remote-Id option and Subscriber-Id option. |
description | leaf | Textual description of the relay agent |
dest-addrs | leaf-list | Each DHCPv6 relay agent may be configured with a list of destination addresses. This node defines such a list of IPv6 addresses that may include unicast addresses, multicast addresses or other addresses. |
name | leaf | Relay agent name |
remote-host | list | Remote host |
ent-num | leaf | Enterprise number |
remote-id | leaf | Remote id |
subscribers | list | Subscribers |
subscriber | leaf | Subscriber |
subscriber-id | leaf | Subscriber id |
vendor-info | container | ent-num data |
data | leaf-list | specific vendor info |
ent-num | leaf | enterprise number |
relay-if | list | A relay agent may have several interfaces, we should provide a way to configure and manage parameters on the interface-level. A list that describes specific interfaces and their corresponding parameters is employed to fulfill the configuration. Here we us... |
if-name | leaf | Interface name |
interface-id | leaf | Interface id |
ipv6-address | leaf | IPv6 address for this interface |
next-entity | list | This node defines a list that is used to describe the next hop entity of this relay distinguished by their addresses. |
available | leaf | Whether the next entity is available or not |
dest-addr | leaf | Destination addr |
multicast | leaf | Whether the address is multicast or not |
server | leaf | Whether the next entity is a server |
rsoo-option-set-id | leaf | Configured Relay Supplied Option set |
rsoo-option-sets | container | DHCPv6 relay agent could provide some information that would be useful to DHCPv6 client. Since relay agent cannot provide options directly to the client, RSOO-enabled options are defined to propose options for the server to send to the client. This contai... |
option-set | list | This list under the 'rsoo-option-sets' container is similar to the that defined in server module. It allows the relay to implement several sets of RSOO-enabled options for different interfaces. The list only includes the EAP Re-authentication Protocol (ER... |
erp-local-domain-name-option | container | OPTION_ERP_LOCAL_DOMAIN_NAME (65) DHCPv6 ERP Local Domain Name Option |
erp-for-client | list | erp for client |
cli-id | leaf | client id |
duid | container | Sets the DUID |
duid-type | choice | Selects the format for the DUID. |
duid-en | case | DUID Assigned by Vendor Based on Enterprise Number (Type 2 - DUID-EN) |
duid-en-enterprise-number | leaf | Vendor's registered Private Enterprise Number as maintained by IANA |
duid-en-identifier | leaf | Identifier, unique to the device that is using it |
duid-ll | case | DUID Based on Link-layer Address (Type 3 - DUID-LL) |
duid-ll-hardware-type | leaf | Hardware type as assigned by IANA (RFC826). |
duid-ll-link-layer-addr | leaf | Link-layer address as described in RFC2464 |
duid-llt | case | DUID Based on Link-layer Address Plus Time (Type 1 - DUID-LLT) |
duid-llt-hardware-type | leaf | Hardware type as assigned by IANA (RFC826). |
duid-llt-link-layer-addr | leaf | Link-layer address as described in RFC2464 |
duid-llt-time | leaf | The time value is the time that the DUID is generated represented in seconds since midnight (UTC), January 1, 2000, modulo 2^32. |
duid-unknown | case | DUID based on free raw bytes |
data | leaf | The bits to be used as the identifier |
duid-uuid | case | DUID Based on Universally Unique Identifier (Type 4 - DUID-UUID) |
uuid | leaf | A Universally Unique IDentifier in the string representation defined in RFC 4122. The canonical representation uses lowercase characters |
type-code | leaf | Type code of this DUID |
erp-name | leaf | erp name |
option-set-id | leaf | Option sed id |
relay-state | container | State data of relay |
relay-if | list | A relay agent may have several interfaces, we should provide a way to configure and manage parameters on the interface-level. A list that describes specific interfaces and their corresponding parameters is employed to fulfill the configuration. Here we us... |
if-name | leaf | Interface name |
next-entity | list | This node defines a list that is used to describe the next hop entity of this relay agent. Different entities are distinguished by their addresses. |
dest-addr | leaf | destination addr |
packet-stats | container | packet statistics |
adver-sent-count | leaf | advertisement sent counter |
confirm-sent-count | leaf | confirm sent counter |
decline-rvd-count | leaf | decline received counter |
info-req-rvd-count | leaf | information request counter |
packet-to-cli-count | leaf | packet to client counter |
rebind-rvd-count | leaf | rebind received counter |
reconfig-sent-count | leaf | reconfigure sent counter |
relay-for-rvd-count | leaf | relay forward received counter |
relay-for-sent-count | leaf | relay forward sent counter |
relay-rep-rvd-count | leaf | relay reply received counter |
relay-rep-sent-count | leaf | relay reply sent counter |
release-rvd-count | leaf | release received counter |
renew-rvd-count | leaf | renew received counter |
reply-sent-count | leaf | reply sent counter |
request-rvd-count | leaf | request received counter |
solicit-rvd-count | leaf | solicit received counter |
pd-route | list | pd route |
delegating-router-id | leaf | Delegating router id |
last-router | leaf | Previous router |
next-router | leaf | Next router |
pd-route-id | leaf | PD route id |
requesting-router-id | leaf | Requesting router id |
relay-stats | container | Relay statistics |
cli-packet-rvd-count | leaf | Client packet received counter |
discarded-packet-count | leaf | Discarded packet counter |
packet-to-cli-count | leaf | Packet to client counter |
relay-for-rvd-count | leaf | Relay forward received counter |
relay-for-sent-count | leaf | Relay forward sent counter |
relay-rep-rvd-count | leaf | Relay reply received counter |
relay-rep-sent-count | leaf | Relay reply sent counter |
Notifications
Notification | Abstract |
notifications | DHCPv6 relay notification module |