| < draft-ietf-dhc-dhcpv6-yang-20.txt | draft-ietf-dhc-dhcpv6-yang-21.txt > | |||
|---|---|---|---|---|
| DHC Working Group I. Farrer, Ed. | DHC Working Group I. Farrer, Ed. | |||
| Internet-Draft Deutsche Telekom AG | Internet-Draft Deutsche Telekom AG | |||
| Intended status: Standards Track 1 June 2021 | Intended status: Standards Track 14 June 2021 | |||
| Expires: 3 December 2021 | Expires: 16 December 2021 | |||
| YANG Data Model for DHCPv6 Configuration | YANG Data Model for DHCPv6 Configuration | |||
| draft-ietf-dhc-dhcpv6-yang-20 | draft-ietf-dhc-dhcpv6-yang-21 | |||
| Abstract | Abstract | |||
| This document describes YANG data modules for the configuration and | This document describes YANG data modules for the configuration and | |||
| management of DHCPv6 (Dynamic Host Configuration Protocol for IPv6) | management of DHCPv6 (Dynamic Host Configuration Protocol for IPv6) | |||
| servers, relays, and clients. | servers, relays, and clients. | |||
| Requirements Language | Requirements Language | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| skipping to change at page 1, line 40 ¶ | skipping to change at page 1, line 40 ¶ | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at https://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on 3 December 2021. | This Internet-Draft will expire on 16 December 2021. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2021 IETF Trust and the persons identified as the | Copyright (c) 2021 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents (https://trustee.ietf.org/ | Provisions Relating to IETF Documents (https://trustee.ietf.org/ | |||
| license-info) in effect on the date of publication of this document. | license-info) in effect on the date of publication of this document. | |||
| skipping to change at page 2, line 28 ¶ | skipping to change at page 2, line 28 ¶ | |||
| 2. DHCPv6 Tree Diagrams . . . . . . . . . . . . . . . . . . . . 6 | 2. DHCPv6 Tree Diagrams . . . . . . . . . . . . . . . . . . . . 6 | |||
| 2.1. DHCPv6 Server Tree Diagram . . . . . . . . . . . . . . . 6 | 2.1. DHCPv6 Server Tree Diagram . . . . . . . . . . . . . . . 6 | |||
| 2.2. DHCPv6 Relay Tree Diagram . . . . . . . . . . . . . . . . 13 | 2.2. DHCPv6 Relay Tree Diagram . . . . . . . . . . . . . . . . 13 | |||
| 2.3. DHCPv6 Client Tree Diagram . . . . . . . . . . . . . . . 16 | 2.3. DHCPv6 Client Tree Diagram . . . . . . . . . . . . . . . 16 | |||
| 3. DHCPv6 YANG Modules . . . . . . . . . . . . . . . . . . . . . 19 | 3. DHCPv6 YANG Modules . . . . . . . . . . . . . . . . . . . . . 19 | |||
| 3.1. DHCPv6 Server YANG Module . . . . . . . . . . . . . . . . 19 | 3.1. DHCPv6 Server YANG Module . . . . . . . . . . . . . . . . 19 | |||
| 3.2. DHCPv6 Relay YANG Module . . . . . . . . . . . . . . . . 39 | 3.2. DHCPv6 Relay YANG Module . . . . . . . . . . . . . . . . 39 | |||
| 3.3. DHCPv6 Client YANG Module . . . . . . . . . . . . . . . . 48 | 3.3. DHCPv6 Client YANG Module . . . . . . . . . . . . . . . . 48 | |||
| 3.4. DHCPv6 Common YANG Module . . . . . . . . . . . . . . . . 63 | 3.4. DHCPv6 Common YANG Module . . . . . . . . . . . . . . . . 63 | |||
| 4. Security Considerations . . . . . . . . . . . . . . . . . . . 71 | 4. Security Considerations . . . . . . . . . . . . . . . . . . . 71 | |||
| 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 72 | 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 73 | |||
| 6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 73 | 6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 74 | |||
| 7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 73 | 7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 74 | |||
| 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 74 | 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 74 | |||
| 8.1. Normative References . . . . . . . . . . . . . . . . . . 74 | 8.1. Normative References . . . . . . . . . . . . . . . . . . 74 | |||
| 8.2. Informative References . . . . . . . . . . . . . . . . . 76 | 8.2. Informative References . . . . . . . . . . . . . . . . . 77 | |||
| Appendix A. Data Tree Examples . . . . . . . . . . . . . . . . . 77 | Appendix A. Data Tree Examples . . . . . . . . . . . . . . . . . 77 | |||
| A.1. DHCPv6 Server Configuration Example . . . . . . . . . . . 77 | A.1. DHCPv6 Server Configuration Example . . . . . . . . . . . 77 | |||
| A.2. DHCPv6 Relay Configuration Example . . . . . . . . . . . 81 | A.2. DHCPv6 Relay Configuration Example . . . . . . . . . . . 81 | |||
| A.3. DHCPv6 Client Configuration Examples . . . . . . . . . . 82 | A.3. DHCPv6 Client Configuration Examples . . . . . . . . . . 82 | |||
| Appendix B. Example of Augmenting Additional DHCPv6 Option | Appendix B. Example of Augmenting Additional DHCPv6 Option | |||
| Definitions . . . . . . . . . . . . . . . . . . . . . . . 85 | Definitions . . . . . . . . . . . . . . . . . . . . . . . 85 | |||
| Appendix C. Example Vendor Specific Server Configuration | Appendix C. Example Vendor Specific Server Configuration | |||
| Module . . . . . . . . . . . . . . . . . . . . . . . . . 88 | Module . . . . . . . . . . . . . . . . . . . . . . . . . 88 | |||
| Appendix D. Example definition of class-selector | Appendix D. Example definition of class-selector | |||
| configuration . . . . . . . . . . . . . . . . . . . . . . 95 | configuration . . . . . . . . . . . . . . . . . . . . . . 95 | |||
| skipping to change at page 17, line 19 ¶ | skipping to change at page 17, line 19 ¶ | |||
| +--rw ia-ta* [ia-id] | +--rw ia-ta* [ia-id] | |||
| | +--rw ia-id uint32 | | +--rw ia-id uint32 | |||
| | +--rw ia-ta-options | | +--rw ia-ta-options | |||
| | +--ro lease-state | | +--ro lease-state | |||
| | +--ro ia-ta-address? inet:ipv6-address | | +--ro ia-ta-address? inet:ipv6-address | |||
| | +--ro preferred-lifetime? dhc6:timer-seconds32 | | +--ro preferred-lifetime? dhc6:timer-seconds32 | |||
| | +--ro valid-lifetime? dhc6:timer-seconds32 | | +--ro valid-lifetime? dhc6:timer-seconds32 | |||
| | +--ro allocation-time? yang:date-and-time | | +--ro allocation-time? yang:date-and-time | |||
| | +--ro last-renew-rebind? yang:date-and-time | | +--ro last-renew-rebind? yang:date-and-time | |||
| | +--ro server-duid? dhc6:duid | | +--ro server-duid? dhc6:duid | |||
| +--rw ia-pd* [ia-id] | +--rw ia-pd* [ia-id] {prefix-delegation}? | |||
| | +--rw ia-id uint32 | | +--rw ia-id uint32 | |||
| | +--rw ia-pd-options | | +--rw ia-pd-options | |||
| | +--ro lease-state | | +--ro lease-state | |||
| | +--ro ia-pd-prefix? inet:ipv6-prefix | | +--ro ia-pd-prefix? inet:ipv6-prefix | |||
| | +--ro preferred-lifetime? dhc6:timer-seconds32 | | +--ro preferred-lifetime? dhc6:timer-seconds32 | |||
| | +--ro valid-lifetime? dhc6:timer-seconds32 | | +--ro valid-lifetime? dhc6:timer-seconds32 | |||
| | +--ro lease-t1? dhc6:timer-seconds32 | | +--ro lease-t1? dhc6:timer-seconds32 | |||
| | +--ro lease-t2? dhc6:timer-seconds32 | | +--ro lease-t2? dhc6:timer-seconds32 | |||
| | +--ro allocation-time? yang:date-and-time | | +--ro allocation-time? yang:date-and-time | |||
| | +--ro last-renew-rebind? yang:date-and-time | | +--ro last-renew-rebind? yang:date-and-time | |||
| skipping to change at page 18, line 20 ¶ | skipping to change at page 18, line 20 ¶ | |||
| | +--ro server-duid dhc6:duid | | +--ro server-duid dhc6:duid | |||
| +---n server-duid-changed | +---n server-duid-changed | |||
| +--ro new-server-duid dhc6:duid | +--ro new-server-duid dhc6:duid | |||
| +--ro previous-server-duid dhc6:duid | +--ro previous-server-duid dhc6:duid | |||
| +--ro lease-ia-na? | +--ro lease-ia-na? | |||
| | -> /dhcpv6-client/client-if/ia-na/ia-id | | -> /dhcpv6-client/client-if/ia-na/ia-id | |||
| +--ro lease-ia-ta? | +--ro lease-ia-ta? | |||
| | -> /dhcpv6-client/client-if/ia-ta/ia-id | | -> /dhcpv6-client/client-if/ia-ta/ia-id | |||
| +--ro lease-ia-pd? | +--ro lease-ia-pd? | |||
| -> /dhcpv6-client/client-if/ia-pd/ia-id | -> /dhcpv6-client/client-if/ia-pd/ia-id | |||
| {prefix-delegation}? | ||||
| Figure 3: DHCPv6 Client Data Module Structure | Figure 3: DHCPv6 Client Data Module Structure | |||
| Descriptions of important nodes: | Descriptions of important nodes: | |||
| * enabled: Globally enables/disables all DHCPv6 client functions. | * enabled: Globally enables/disables all DHCPv6 client functions. | |||
| * dhcpv6-client: This container holds the client's DHCPv6 specific | * dhcpv6-client: This container holds the client's DHCPv6 specific | |||
| configuration. | configuration. | |||
| skipping to change at page 19, line 15 ¶ | skipping to change at page 19, line 11 ¶ | |||
| * client-configured-options: Holds configuration parameters for | * client-configured-options: Holds configuration parameters for | |||
| DHCPv6 options which can be sent by the client. The initial set | DHCPv6 options which can be sent by the client. The initial set | |||
| of applicable option definitions are defined here and additional | of applicable option definitions are defined here and additional | |||
| options that are also relevant to the relay and/or server are | options that are also relevant to the relay and/or server are | |||
| imported from the 'ietf-dhcpv6-common' module. Where needed, | imported from the 'ietf-dhcpv6-common' module. Where needed, | |||
| other DHCPv6 option modules can be augmented as they are defined. | other DHCPv6 option modules can be augmented as they are defined. | |||
| * ia-na, ia-ta, ia-pd: Contains configuration nodes relevant for | * ia-na, ia-ta, ia-pd: Contains configuration nodes relevant for | |||
| requesting one or more of each of the lease types. Read-only | requesting one or more of each of the lease types. Read-only | |||
| nodes related to the active leases for each type are also located | nodes related to the active leases for each type are also located | |||
| here. | here. As prefix delegation is not supported by all DHCPv6 client | |||
| implementations, it is enabled with a feature statement. | ||||
| Information about notifications: | Information about notifications: | |||
| * invalid-ia-detected: Raised when the identity association of the | * invalid-ia-detected: Raised when the identity association of the | |||
| client can be proved to be invalid. Possible conditions include: | client can be proved to be invalid. Possible conditions include: | |||
| duplicated address, illegal address, etc. | duplicated address, illegal address, etc. | |||
| * retransmission-failed: Raised when the retransmission mechanism | * retransmission-failed: Raised when the retransmission mechanism | |||
| defined in [RFC8415] has failed. | defined in [RFC8415] has failed. | |||
| 3. DHCPv6 YANG Modules | 3. DHCPv6 YANG Modules | |||
| 3.1. DHCPv6 Server YANG Module | 3.1. DHCPv6 Server YANG Module | |||
| This module imports typedefs from [RFC6991], [RFC8343]. | This module imports typedefs from [RFC6991], [RFC8343]. | |||
| <CODE BEGINS> file "ietf-dhcpv6-server@2021-06-01.yang" | <CODE BEGINS> file "ietf-dhcpv6-server@2021-06-14.yang" | |||
| module ietf-dhcpv6-server { | module ietf-dhcpv6-server { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace "urn:ietf:params:xml:ns:yang:ietf-dhcpv6-server"; | namespace "urn:ietf:params:xml:ns:yang:ietf-dhcpv6-server"; | |||
| prefix "dhc6-srv"; | prefix "dhc6-srv"; | |||
| import ietf-inet-types { | import ietf-inet-types { | |||
| prefix inet; | prefix inet; | |||
| reference | reference | |||
| "RFC 6991: Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
| skipping to change at page 20, line 44 ¶ | skipping to change at page 20, line 43 ¶ | |||
| Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
| without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
| to the license terms contained in, the Simplified BSD License | to the license terms contained in, the Simplified BSD License | |||
| set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
| Relating to IETF Documents | Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info). | (http://trustee.ietf.org/license-info). | |||
| This version of this YANG module is part of RFC XXXX; see | This version of this YANG module is part of RFC XXXX; see | |||
| the RFC itself for full legal notices."; | the RFC itself for full legal notices."; | |||
| revision 2017-11-24 { | revision 2021-06-14 { | |||
| description | description | |||
| "First version of the separated server specific YANG model."; | "Initial Revision."; | |||
| reference "I-D: draft-ietf-dhc-dhcpv6-yang"; | reference | |||
| "XXXX: YANG Data Model for DHCPv6 Configuration"; | ||||
| } | } | |||
| /* | /* | |||
| * Features | * Features | |||
| */ | */ | |||
| feature prefix-delegation { | feature prefix-delegation { | |||
| description | description | |||
| "Denotes that the server implements DHCPv6 prefix | "Denotes that the server implements DHCPv6 prefix | |||
| delegation."; | delegation."; | |||
| skipping to change at page 39, line 4 ¶ | skipping to change at page 38, line 50 ¶ | |||
| description | description | |||
| "IPv6 prefix of an active lease that will be deleted | "IPv6 prefix of an active lease that will be deleted | |||
| from the server."; | from the server."; | |||
| } | } | |||
| } | } | |||
| output { | output { | |||
| leaf return-message { | leaf return-message { | |||
| type string; | type string; | |||
| description | description | |||
| "Response message from the server."; | "Response message from the server."; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| 3.2. DHCPv6 Relay YANG Module | 3.2. DHCPv6 Relay YANG Module | |||
| This module imports typedefs from [RFC6991], [RFC8343]. | This module imports typedefs from [RFC6991], [RFC8343]. | |||
| <CODE BEGINS> file "ietf-dhcpv6-relay@2021-06-01.yang" | <CODE BEGINS> file "ietf-dhcpv6-relay@2021-06-14.yang" | |||
| module ietf-dhcpv6-relay { | module ietf-dhcpv6-relay { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace "urn:ietf:params:xml:ns:yang:ietf-dhcpv6-relay"; | namespace "urn:ietf:params:xml:ns:yang:ietf-dhcpv6-relay"; | |||
| prefix "dhc6-rly"; | prefix "dhc6-rly"; | |||
| import ietf-inet-types { | import ietf-inet-types { | |||
| prefix inet; | prefix inet; | |||
| reference | reference | |||
| "RFC 6991: Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
| skipping to change at page 40, line 33 ¶ | skipping to change at page 40, line 32 ¶ | |||
| Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
| without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
| to the license terms contained in, the Simplified BSD License | to the license terms contained in, the Simplified BSD License | |||
| set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
| Relating to IETF Documents | Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info). | (http://trustee.ietf.org/license-info). | |||
| This version of this YANG module is part of RFC XXXX; see | This version of this YANG module is part of RFC XXXX; see | |||
| the RFC itself for full legal notices."; | the RFC itself for full legal notices."; | |||
| revision 2017-11-24 { | revision 2021-06-14 { | |||
| description | description | |||
| "First version of the separated relay specific YANG model."; | "Initial Revision."; | |||
| reference | reference | |||
| "I-D: draft-ietf-dhc-dhcpv6-yang"; | "XXXX: YANG Data Model for DHCPv6 Configuration"; | |||
| } | } | |||
| /* | /* | |||
| * Features | * Features | |||
| */ | */ | |||
| feature prefix-delegation { | feature prefix-delegation { | |||
| description | description | |||
| "Enable if the relay functions as a delegating router for | "Enable if the relay functions as a delegating router for | |||
| DHCPv6 prefix delegation."; | DHCPv6 prefix delegation."; | |||
| skipping to change at page 49, line 5 ¶ | skipping to change at page 49, line 5 ¶ | |||
| } | } | |||
| } | } | |||
| } | } | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| 3.3. DHCPv6 Client YANG Module | 3.3. DHCPv6 Client YANG Module | |||
| This module imports typedefs from [RFC6991], [RFC8343]. | This module imports typedefs from [RFC6991], [RFC8343]. | |||
| <CODE BEGINS> file "ietf-dhcpv6-client@2021-06-01.yang" | <CODE BEGINS> file "ietf-dhcpv6-client@2021-06-14.yang" | |||
| module ietf-dhcpv6-client { | module ietf-dhcpv6-client { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace "urn:ietf:params:xml:ns:yang:ietf-dhcpv6-client"; | namespace "urn:ietf:params:xml:ns:yang:ietf-dhcpv6-client"; | |||
| prefix "dhcpv6-clnt"; | prefix "dhc6-clnt"; | |||
| import ietf-inet-types { | import ietf-inet-types { | |||
| prefix inet; | prefix inet; | |||
| reference | reference | |||
| "RFC 6991: Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
| } | } | |||
| import ietf-yang-types { | import ietf-yang-types { | |||
| prefix yang; | prefix yang; | |||
| reference | reference | |||
| skipping to change at page 50, line 25 ¶ | skipping to change at page 50, line 25 ¶ | |||
| Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
| without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
| to the license terms contained in, the Simplified BSD License | to the license terms contained in, the Simplified BSD License | |||
| set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
| Relating to IETF Documents | Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info). | (http://trustee.ietf.org/license-info). | |||
| This version of this YANG module is part of RFC XXXX; see | This version of this YANG module is part of RFC XXXX; see | |||
| the RFC itself for full legal notices."; | the RFC itself for full legal notices."; | |||
| revision 2017-11-24 { | revision 2021-06-14 { | |||
| description | description | |||
| "First version of the separated client specific YANG model."; | "Initial Revision."; | |||
| reference "I-D: draft-ietf-dhc-dhcpv6-yang"; | reference | |||
| "XXXX: YANG Data Model for DHCPv6 Configuration"; | ||||
| } | ||||
| /* | ||||
| * Features | ||||
| */ | ||||
| feature prefix-delegation { | ||||
| description | ||||
| "Denotes that the client implements DHCPv6 prefix | ||||
| delegation."; | ||||
| reference "RFC 8415: Dynamic Host Configuration Protocol for | ||||
| IPv6 (DHCPv6), Section 6.3"; | ||||
| } | } | |||
| /* | /* | |||
| * Groupings | * Groupings | |||
| */ | */ | |||
| grouping message-statistics { | grouping message-statistics { | |||
| description | description | |||
| "Counters for DHCPv6 messages."; | "Counters for DHCPv6 messages."; | |||
| leaf solicit-count { | leaf solicit-count { | |||
| skipping to change at page 57, line 49 ¶ | skipping to change at page 58, line 14 ¶ | |||
| address."; | address."; | |||
| } | } | |||
| leaf server-duid { | leaf server-duid { | |||
| type dhc6:duid; | type dhc6:duid; | |||
| description | description | |||
| "DUID of the leasing server."; | "DUID of the leasing server."; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| list ia-pd { | list ia-pd { | |||
| if-feature prefix-delegation; | ||||
| key ia-id; | key ia-id; | |||
| description | description | |||
| "Configuration relevant for an IA_PD (Identity Association | "Configuration relevant for an IA_PD (Identity Association | |||
| for Prefix Delegation)."; | for Prefix Delegation)."; | |||
| reference "RFC 8415: Dynamic Host Configuration Protocol for | reference "RFC 8415: Dynamic Host Configuration Protocol for | |||
| IPv6 (DHCPv6), Section 13.3"; | IPv6 (DHCPv6), Section 13.3"; | |||
| leaf ia-id { | leaf ia-id { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| "The unique identifier for this IA_PD."; | "The unique identifier for this IA_PD."; | |||
| skipping to change at page 63, line 11 ¶ | skipping to change at page 63, line 27 ¶ | |||
| "Reference to the IA_NA lease."; | "Reference to the IA_NA lease."; | |||
| } | } | |||
| leaf lease-ia-ta { | leaf lease-ia-ta { | |||
| type leafref { | type leafref { | |||
| path "/dhcpv6-client/client-if/ia-ta/ia-id"; | path "/dhcpv6-client/client-if/ia-ta/ia-id"; | |||
| } | } | |||
| description | description | |||
| "Reference to the IA_TA lease."; | "Reference to the IA_TA lease."; | |||
| } | } | |||
| leaf lease-ia-pd { | leaf lease-ia-pd { | |||
| if-feature prefix-delegation; | ||||
| type leafref { | type leafref { | |||
| path "/dhcpv6-client/client-if/ia-pd/ia-id"; | path "/dhcpv6-client/client-if/ia-pd/ia-id"; | |||
| } | } | |||
| description | description | |||
| "Reference to the IA_PD lease."; | "Reference to the IA_PD lease."; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| 3.4. DHCPv6 Common YANG Module | 3.4. DHCPv6 Common YANG Module | |||
| This module imports typedefs from [RFC6991]. | This module imports typedefs from [RFC6991]. | |||
| <CODE BEGINS> file "ietf-dhcpv6-common@2021-06-01.yang" | <CODE BEGINS> file "ietf-dhcpv6-common@2021-06-14.yang" | |||
| module ietf-dhcpv6-common { | module ietf-dhcpv6-common { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace "urn:ietf:params:xml:ns:yang:ietf-dhcpv6-common"; | namespace "urn:ietf:params:xml:ns:yang:ietf-dhcpv6-common"; | |||
| prefix "dhc6"; | prefix "dhc6"; | |||
| organization | organization | |||
| "IETF DHC (Dynamic Host Configuration) Working Group"; | "IETF DHC (Dynamic Host Configuration) Working Group"; | |||
| contact | contact | |||
| skipping to change at page 64, line 21 ¶ | skipping to change at page 64, line 37 ¶ | |||
| Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
| without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
| to the license terms contained in, the Simplified BSD License | to the license terms contained in, the Simplified BSD License | |||
| set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
| Relating to IETF Documents | Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info). | (http://trustee.ietf.org/license-info). | |||
| This version of this YANG module is part of RFC XXXX; see | This version of this YANG module is part of RFC XXXX; see | |||
| the RFC itself for full legal notices."; | the RFC itself for full legal notices."; | |||
| revision 2018-01-30 { | revision 2021-06-14 { | |||
| description | description | |||
| "Initial revision"; | "Initial Revision."; | |||
| reference "I-D: draft-ietf-dhc-dhcpv6-yang"; | reference | |||
| "XXXX: YANG Data Model for DHCPv6 Configuration"; | ||||
| } | } | |||
| typedef threshold { | typedef threshold { | |||
| type uint8 { | type uint8 { | |||
| range 1..100; | range 1..100; | |||
| } | } | |||
| description | description | |||
| "Threshold value in percent."; | "Threshold value in percent."; | |||
| } | } | |||
| typedef timer-seconds32 { | typedef timer-seconds32 { | |||
| type uint32; | type uint32; | |||
| units "seconds"; | units "seconds"; | |||
| description | description | |||
| "Timer value type, in seconds (32-bit range)."; | "Timer value type, in seconds (32-bit range)."; | |||
| } | } | |||
| typedef duid-base { | typedef duid-base { | |||
| type string { | type string { | |||
| pattern '([0-9a-fA-F]{2}){3,130}'; | pattern '([0-9a-fA-F]{2}){3,130}'; | |||
| } | } | |||
| description | description | |||
| "Each DHCP server and client has a DUID (DHCP Unique | "Each DHCP server and client has a DUID (DHCP Unique | |||
| Identifier). The DUID consists of a two-octet | Identifier). The DUID consists of a two-octet | |||
| type field and an arbitrary length (1-128 octets) content | type field and an arbitrary length (1-128 octets) content | |||
| field. The duid-base type provides the | field. The duid-base type is used by other duid types with | |||
| additional pattern constraints. | ||||
| Currently, there are four defined types of DUIDs | Currently, there are four defined types of DUIDs | |||
| in RFC 8415 and RFC 6355 - DUID-LLT, DUID-EN, DUID-LL | in RFC 8415 and RFC 6355 - DUID-LLT, DUID-EN, DUID-LL | |||
| and DUID-UUID. DUID-unstructured represents DUIDs which | and DUID-UUID. DUID-unstructured represents DUIDs which | |||
| do not follow any of the defined formats."; | do not follow any of the defined formats."; | |||
| reference "RFC 8415: Dynamic Host Configuration Protocol for | reference "RFC 8415: Dynamic Host Configuration Protocol for | |||
| IPv6 (DHCPv6), Section 11 | IPv6 (DHCPv6), Section 11 | |||
| RFC 6355: Definition of the UUID-Based DHCPv6 Unique | RFC 6355: Definition of the UUID-Based DHCPv6 Unique | |||
| Identifier (DUID-UUID), Section 4"; | Identifier (DUID-UUID), Section 4"; | |||
| } | } | |||
| typedef duid-llt { | typedef duid-llt { | |||
| type duid-base { | type duid-base { | |||
| pattern '0001' | pattern '0001' | |||
| + '[0-9a-fA-F]{12,}'; | + '[0-9a-fA-F]{12,}'; | |||
| } | } | |||
| description | description | |||
| "DUID type 1, based on Link-Layer Address Plus Time | "DUID type 1, based on Link-Layer Address Plus Time | |||
| (DUID-LLT). Constructed with a 2-byte hardware type assigned | (DUID-LLT). Constructed with a 2-octet hardware type assigned | |||
| by IANA, 4-bytes containing the time the DUID is generated | by IANA, 4-octet containing the time the DUID is generated | |||
| (represented in seconds since midnight (UTC), January 1, 2000, | (represented in seconds since midnight (UTC), January 1, 2000, | |||
| modulo 2^32), and a link-layer address. The address is encoded | modulo 2^32), and a link-layer address. The address is encoded | |||
| without separator characters. For example: | without separator characters. For example: | |||
| +------+----+----------+--------------+ | +------+------+----------+--------------+ | |||
| | 0001 | 06 | 28490058 | 00005E005300 | | | 0001 | 0006 | 28490058 | 00005E005300 | | |||
| +------+----+----------+--------------+ | +------+------+----------+--------------+ | |||
| This example includes the 2-octet DUID type of 1 (0001), the | This example includes the 2-octet DUID type of 1 (0x01), the | |||
| hardware type is 06 (IEEE Hardware Types) the creation | hardware type is 0x06 (IEEE Hardware Types) the creation | |||
| time is 0x284900580 (constructed as described above). Finally, | time is 0x028490058 (constructed as described above). Finally, | |||
| the link-layer address is 00005E005300 (EUI-48 address | the link-layer address is 0x5E005300 (EUI-48 address | |||
| 00-00-5E-00-53-00)"; | 00-00-5E-00-53-00)"; | |||
| reference "RFC 8415: Dynamic Host Configuration Protocol for | reference "RFC 8415: Dynamic Host Configuration Protocol for | |||
| IPv6 (DHCPv6), Section 11.2 | IPv6 (DHCPv6), Section 11.2 | |||
| IANA 'Hardware Types' registry. | IANA 'Hardware Types' registry. | |||
| <https://www.iana.org/assignments/arp-parameters>"; | <https://www.iana.org/assignments/arp-parameters>"; | |||
| } | } | |||
| typedef duid-en { | typedef duid-en { | |||
| type duid-base { | type duid-base { | |||
| pattern '0002' | pattern '0002' | |||
| + '[0-9a-fA-F]{4,}'; | + '[0-9a-fA-F]{4,}'; | |||
| } | } | |||
| description | description | |||
| "DUID type 2, assigned by vendor based on Enterprise | "DUID type 2, assigned by vendor based on Enterprise | |||
| Number (DUID-EN). This DUID consists of the 4-octet vendor's | Number (DUID-EN). This DUID consists of the 4-octet vendor's | |||
| registered Private Enterprise Number as maintained by IANA | registered Private Enterprise Number as maintained by IANA | |||
| followed by a unique identifier assigned by the vendor. For | followed by a unique identifier assigned by the vendor. For | |||
| example: | example: | |||
| +------+------+------------------+ | +------+----------+------------------+ | |||
| | 0002 | 0009 | 0CC084D303000912 | | | 0002 | 00000009 | 0CC084D303000912 | | |||
| +------+------+------------------+ | +------+----------+------------------+ | |||
| This example includes the 2-octet DUID type of 2 (0002), | ||||
| 4-octets for the Enterprise Number (0009), followed by 8-octets | ||||
| of identifier data (0x0CC084D303000912)."; | This example includes the 2-octet DUID type of 2 (0x02), | |||
| 4-octets for the Enterprise Number (0x09), followed by | ||||
| 8-octets of identifier data (0x0CC084D303000912)."; | ||||
| reference "RFC 8415: Dynamic Host Configuration Protocol for | reference "RFC 8415: Dynamic Host Configuration Protocol for | |||
| IPv6 (DHCPv6), Section 11.3 | IPv6 (DHCPv6), Section 11.3 | |||
| IANA 'Private Enterprise Numbers' registry. | IANA 'Private Enterprise Numbers' registry. | |||
| <https://www.iana.org/assignments/enterprise-numbers>"; | <https://www.iana.org/assignments/enterprise-numbers>"; | |||
| } | } | |||
| typedef duid-ll { | typedef duid-ll { | |||
| type duid-base { | type duid-base { | |||
| pattern '0003' | pattern '0003' | |||
| + '([0-9a-fA-F]){4,}'; | + '([0-9a-fA-F]){4,}'; | |||
| } | } | |||
| description | description | |||
| "DUID type 3, based on Link-Layer Address (DUID-LL). | "DUID type 3, based on Link-Layer Address (DUID-LL). | |||
| Constructed with a 2-byte hardware type assigned | Constructed with a 2-octet hardware type assigned | |||
| by IANA, and a link-layer address. The address is encoded | by IANA, and a link-layer address. The address is encoded | |||
| without separator characters. For example: | without separator characters. For example: | |||
| +------+----+--------------+ | +------+------+--------------+ | |||
| | 0003 | 06 | 00005E005300 | | | 0003 | 0006 | 00005E005300 | | |||
| +------+----+--------------+ | +------+------+--------------+ | |||
| This example includes the 2-octet DUID type of 3 (0x03), the | ||||
| hardware type is 0x06 (IEEE Hardware Types), and the link-layer | ||||
| This example includes the 2-octet DUID type of 3 (0003), the | address is 0x5E005300 (EUI-48 address 00-00-5E-00-53-00)"; | |||
| hardware type is 06 (IEEE Hardware Types), and the link-layer | ||||
| address is 00005E005300 (EUI-48 address 00-00-5E-00-53-00)"; | ||||
| reference "RFC 8415: Dynamic Host Configuration Protocol for | reference "RFC 8415: Dynamic Host Configuration Protocol for | |||
| IPv6 (DHCPv6), Section 11.4 | IPv6 (DHCPv6), Section 11.4 | |||
| IANA 'Hardware Types' registry. | IANA 'Hardware Types' registry. | |||
| <https://www.iana.org/assignments/arp-parameters>"; | <https://www.iana.org/assignments/arp-parameters>"; | |||
| } | } | |||
| typedef duid-uuid { | typedef duid-uuid { | |||
| type duid-base { | type duid-base { | |||
| pattern '0004' | pattern '0004' | |||
| + '[0-9a-fA-F]{32}'; | + '[0-9a-fA-F]{32}'; | |||
| } | } | |||
| description | description | |||
| "DUID type 4, based on Universally Unique Identifier | "DUID type 4, based on Universally Unique Identifier | |||
| (DUID-UUID). This type of DUID consists of 16 octets | (DUID-UUID). This type of DUID consists of 16 octets | |||
| containing a 128-bit UUID. For example: | containing a 128-bit UUID. For example: | |||
| +------+----------------------------------+ | +------+----------------------------------+ | |||
| | 0004 | 9f03b182705747e38a1e422910078642 | | | 0004 | 9f03b182705747e38a1e422910078642 | | |||
| +------+----------------------------------+ | +------+----------------------------------+ | |||
| This example includes the 2-octet DUID type of 4 (0004), and | This example includes the 2-octet DUID type of 4 (0x04), and | |||
| the UUID 9f03b182-7057-47e3-8a1e-422910078642."; | the UUID 9f03b182-7057-47e3-8a1e-422910078642."; | |||
| reference "RFC 8415: Dynamic Host Configuration Protocol for | reference "RFC 8415: Dynamic Host Configuration Protocol for | |||
| IPv6 (DHCPv6), Section 11.5 | IPv6 (DHCPv6), Section 11.5 | |||
| RFC 6355: Definition of the UUID-Based DHCPv6 Unique Identifier | RFC 6355: Definition of the UUID-Based DHCPv6 Unique Identifier | |||
| (DUID-UUID)"; | (DUID-UUID)"; | |||
| } | } | |||
| typedef duid-unstructured { | typedef duid-unstructured { | |||
| type duid-base { | type duid-base { | |||
| skipping to change at page 67, line 33 ¶ | skipping to change at page 68, line 4 ¶ | |||
| } | } | |||
| description | description | |||
| "Used for DUIDs following any other formats than DUID | "Used for DUIDs following any other formats than DUID | |||
| types 1-4. For example: | types 1-4. For example: | |||
| +----------------------------------+ | +----------------------------------+ | |||
| | 7b6a164d325946539dc540fb539bc430 | | | 7b6a164d325946539dc540fb539bc430 | | |||
| +----------------------------------+ | +----------------------------------+ | |||
| Here, an arbitrary 16-octet value is used. The only constraint | Here, an arbitrary 16-octet value is used. The only constraint | |||
| placed on this is that the first 2-octects are not 0001-0004 | placed on this is that the first 2-octects are not 0x01-0x04 | |||
| to avoid collision with the other defined DUID types | to avoid collision with the other defined DUID types | |||
| (duid-llt, duid-en, duid-ll, or duid-uuid)."; | (duid-llt, duid-en, duid-ll, or duid-uuid)."; | |||
| reference "RFC 8415: Dynamic Host Configuration Protocol for | reference "RFC 8415: Dynamic Host Configuration Protocol for | |||
| IPv6 (DHCPv6), Section 11"; | IPv6 (DHCPv6), Section 11"; | |||
| } | } | |||
| typedef duid { | typedef duid { | |||
| type union { | type union { | |||
| type duid-llt; | type duid-llt; | |||
| type duid-en; | type duid-en; | |||
| skipping to change at page 73, line 7 ¶ | skipping to change at page 73, line 31 ¶ | |||
| URI: urn:ietf:params:xml:ns:yang:ietf-dhcpv6-common | URI: urn:ietf:params:xml:ns:yang:ietf-dhcpv6-common | |||
| Registrant Contact: The IESG. | Registrant Contact: The IESG. | |||
| XML: N/A; the requested URI is an XML namespace. | XML: N/A; the requested URI is an XML namespace. | |||
| This document registers the following YANG modules in the "YANG | This document registers the following YANG modules in the "YANG | |||
| Module Names" registry [RFC6020]. | Module Names" registry [RFC6020]. | |||
| name: ietf-dhcpv6-server | name: ietf-dhcpv6-server | |||
| namespace: urn:ietf:params:xml:ns:yang:ietf-dhcpv6-server | namespace: urn:ietf:params:xml:ns:yang:ietf-dhcpv6-server | |||
| prefix: dhcpv6-server | prefix: dhc6-srv | |||
| reference: RFC XXXX YANG Data Model for DHCPv6 Configuration | reference: RFC XXXX YANG Data Model for DHCPv6 Configuration | |||
| name: ietf-dhcpv6-relay | name: ietf-dhcpv6-relay | |||
| namespace: urn:ietf:params:xml:ns:yang:ietf-dhcpv6-relay | namespace: urn:ietf:params:xml:ns:yang:ietf-dhcpv6-relay | |||
| prefix: dhcpv6-client | prefix: dhc6-rly | |||
| reference: RFC XXXX YANG Data Model for DHCPv6 Configuration | reference: RFC XXXX YANG Data Model for DHCPv6 Configuration | |||
| name: ietf-dhcpv6-client | name: ietf-dhcpv6-client | |||
| namespace: urn:ietf:params:xml:ns:yang:ietf-dhcpv6-client | namespace: urn:ietf:params:xml:ns:yang:ietf-dhcpv6-client | |||
| prefix: dhcpv6-relay | prefix: dhc6-clnt | |||
| reference: RFC XXXX YANG Data Model for DHCPv6 Configuration | reference: RFC XXXX YANG Data Model for DHCPv6 Configuration | |||
| name: ietf-dhcpv6-common | name: ietf-dhcpv6-common | |||
| namespace: urn:ietf:params:xml:ns:yang:ietf-dhcpv6-common | namespace: urn:ietf:params:xml:ns:yang:ietf-dhcpv6-common | |||
| prefix: dhcpv6-common | prefix: dhc6 | |||
| reference: RFC XXXX YANG Data Model for DHCPv6 Configuration | reference: RFC XXXX YANG Data Model for DHCPv6 Configuration | |||
| 6. Acknowledgments | 6. Acknowledgments | |||
| The authors would like to thank Qi Sun, Lishan Li, Hao Wang, Tomek | The authors would like to thank Qi Sun, Lishan Li, Hao Wang, Tomek | |||
| Mrugalski, Marcin Siodelski, Bernie Volz, Ted Lemon, Bing Liu, Tom | Mrugalski, Marcin Siodelski, Bernie Volz, Ted Lemon, Bing Liu, Tom | |||
| Petch, and Acee Lindem for their valuable comments and contributions | Petch, and Acee Lindem for their valuable comments and contributions | |||
| to this work. | to this work. | |||
| 7. Contributors | 7. Contributors | |||
| skipping to change at page 79, line 34 ¶ | skipping to change at page 79, line 34 ¶ | |||
| </address-pool> | </address-pool> | |||
| </address-pools> | </address-pools> | |||
| Figure 5: Host Reservation Configuration Example XML | Figure 5: Host Reservation Configuration Example XML | |||
| The following example shows configuration for a network range and | The following example shows configuration for a network range and | |||
| pool to be used for delegating prefixes to clients. In this example, | pool to be used for delegating prefixes to clients. In this example, | |||
| each client will receive a /56 prefix. | each client will receive a /56 prefix. | |||
| The 'max-pd-space-utiliation' is set to 80 so that a 'prefix-pool- | The 'max-pd-space-utiliation' is set to 80 so that a 'prefix-pool- | |||
| utilization-threshold-exceeded' notification will be raised. | utilization-threshold-exceeded' notification will be raised if the | |||
| number of prefix allocations exceeds this. | ||||
| <network-ranges> | <network-ranges> | |||
| <network-range> | <network-range> | |||
| <id>1</id> | <id>1</id> | |||
| <description>prefix-pool-example</description> | <description>prefix-pool-example</description> | |||
| <network-prefix>2001:db8::/32</network-prefix> | <network-prefix>2001:db8::/32</network-prefix> | |||
| <prefix-pools> | <prefix-pools> | |||
| <valid-lifetime>54000</valid-lifetime> | <valid-lifetime>54000</valid-lifetime> | |||
| <renew-time>7200</renew-time> | <renew-time>7200</renew-time> | |||
| <rebind-time>32400</rebind-time> | <rebind-time>32400</rebind-time> | |||
| skipping to change at page 83, line 15 ¶ | skipping to change at page 83, line 15 ¶ | |||
| * Sets the client's DUID. | * Sets the client's DUID. | |||
| * Configures a list of option codes that will be requested by the | * Configures a list of option codes that will be requested by the | |||
| client in its Option Request Option (OPTION_ORO (5)). | client in its Option Request Option (OPTION_ORO (5)). | |||
| * Configures a single instance of the Vendor-specific Information | * Configures a single instance of the Vendor-specific Information | |||
| Option (OPTION_VENDOR_OPTS (17)) with a single sub-option data | Option (OPTION_VENDOR_OPTS (17)) with a single sub-option data | |||
| item. | item. | |||
| * Requests a non-temporary IPv6 address (IA_NA) with an identity | * Requests a non-temporary IPv6 address (IA_NA) with an identity | |||
| association interface identifier of 00000001. | association interface identifier of 1. | |||
| * Requests an IPv6 delegated prefix address (IA_PD) with an identity | * Requests an IPv6 delegated prefix address (IA_PD) with an identity | |||
| association interface identifier of 00000002. | association interface identifier of 2. | |||
| <interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces" | <interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces" | |||
| xmlns:ianaift="urn:ietf:params:xml:ns:yang:iana-if-type"> | xmlns:ianaift="urn:ietf:params:xml:ns:yang:iana-if-type"> | |||
| <interface> | <interface> | |||
| <name>eth0</name> | <name>eth0</name> | |||
| <type>ianaift:ethernetCsmacd</type> | <type>ianaift:ethernetCsmacd</type> | |||
| <description>DHCPv6 Relay Interface</description> | <description>DHCPv6 Relay Interface</description> | |||
| <enabled>true</enabled> | <enabled>true</enabled> | |||
| </interface> | </interface> | |||
| </interfaces> | </interfaces> | |||
| skipping to change at page 84, line 32 ¶ | skipping to change at page 84, line 32 ¶ | |||
| <option-request-option> | <option-request-option> | |||
| <oro-option>17</oro-option> | <oro-option>17</oro-option> | |||
| <oro-option>23</oro-option> | <oro-option>23</oro-option> | |||
| <oro-option>24</oro-option> | <oro-option>24</oro-option> | |||
| <oro-option>82</oro-option> | <oro-option>82</oro-option> | |||
| </option-request-option> | </option-request-option> | |||
| <vendor-specific-information-options> | <vendor-specific-information-options> | |||
| <vendor-specific-information-option> | <vendor-specific-information-option> | |||
| <enterprise-number>9</enterprise-number> | <enterprise-number>9</enterprise-number> | |||
| <vendor-option-data> | <vendor-option-data> | |||
| <sub-option-code>01</sub-option-code> | <sub-option-code>1</sub-option-code> | |||
| <sub-option-data>abcd1234</sub-option-data> | <sub-option-data>abcd1234</sub-option-data> | |||
| </vendor-option-data> | </vendor-option-data> | |||
| </vendor-specific-information-option> | </vendor-specific-information-option> | |||
| </vendor-specific-information-options> | </vendor-specific-information-options> | |||
| </client-configured-options> | </client-configured-options> | |||
| <ia-na> | <ia-na> | |||
| <ia-id>00000001</ia-id> | <ia-id>1</ia-id> | |||
| </ia-na> | </ia-na> | |||
| <ia-pd> | <ia-pd> | |||
| <ia-id>00000002</ia-id> | <ia-id>2</ia-id> | |||
| </ia-pd> | </ia-pd> | |||
| </client-if> | </client-if> | |||
| </dhcpv6-client> | </dhcpv6-client> | |||
| Figure 9: Basic Server Configuration Example XML | Figure 9: Basic Server Configuration Example XML | |||
| Appendix B. Example of Augmenting Additional DHCPv6 Option Definitions | Appendix B. Example of Augmenting Additional DHCPv6 Option Definitions | |||
| The following section provides a example of how the DHCPv6 option | The following section provides a example of how the DHCPv6 option | |||
| definitions can be extended to include additional options. It is | definitions can be extended to include additional options. It is | |||
| skipping to change at page 86, line 37 ¶ | skipping to change at page 86, line 37 ¶ | |||
| Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
| without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
| to the license terms contained in, the Simplified BSD License | to the license terms contained in, the Simplified BSD License | |||
| set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
| Relating to IETF Documents | Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info). | (http://trustee.ietf.org/license-info). | |||
| This version of this YANG module is part of RFC XXXX; see | This version of this YANG module is part of RFC XXXX; see | |||
| the RFC itself for full legal notices."; | the RFC itself for full legal notices."; | |||
| revision 2019-10-18 { | revision 2021-06-14 { | |||
| description | description | |||
| "Initial version."; | "Initial Revision."; | |||
| reference "I-D: draft-ietf-dhc-dhcpv6-yang"; | reference | |||
| "XXXX: YANG Data Model for DHCPv6 Configuration"; | ||||
| } | } | |||
| /* | /* | |||
| * Groupings | * Groupings | |||
| */ | */ | |||
| grouping sip-server-domain-name-list-option-group { | grouping sip-server-domain-name-list-option-group { | |||
| description | description | |||
| "OPTION_SIP_SERVER_D (21) SIP Servers Domain-Name List"; | "OPTION_SIP_SERVER_D (21) SIP Servers Domain-Name List"; | |||
| reference "RFC 3319: Dynamic Host Configuration Protocol | reference "RFC 3319: Dynamic Host Configuration Protocol | |||
| skipping to change at page 87, line 51 ¶ | skipping to change at page 88, line 4 ¶ | |||
| leaf sip-serv-id { | leaf sip-serv-id { | |||
| type uint8; | type uint8; | |||
| description | description | |||
| "SIP server list entry identifier."; | "SIP server list entry identifier."; | |||
| } | } | |||
| leaf sip-serv-addr { | leaf sip-serv-addr { | |||
| type inet:ipv6-address; | type inet:ipv6-address; | |||
| description | description | |||
| "SIP server IPv6 address."; | "SIP server IPv6 address."; | |||
| } | } | |||
| } | ||||
| } | ||||
| } | } | |||
| } | } | |||
| /* | /* | |||
| * Augmentations | * Augmentations | |||
| */ | */ | |||
| augment "/dhc6-srv:dhcpv6-server/dhc6-srv:option-sets/" + | augment "/dhc6-srv:dhcpv6-server/dhc6-srv:option-sets/" + | |||
| "dhc6-srv:option-set" { | "dhc6-srv:option-set" { | |||
| description | description | |||
| skipping to change at page 90, line 18 ¶ | skipping to change at page 90, line 18 ¶ | |||
| Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
| without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
| to the license terms contained in, the Simplified BSD License | to the license terms contained in, the Simplified BSD License | |||
| set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
| Relating to IETF Documents | Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info). | (http://trustee.ietf.org/license-info). | |||
| This version of this YANG module is part of RFC XXXX; see | This version of this YANG module is part of RFC XXXX; see | |||
| the RFC itself for full legal notices."; | the RFC itself for full legal notices."; | |||
| revision 2019-06-04 { | revision 2021-06-14 { | |||
| description | description | |||
| "Initial revision."; | "Initial Revision."; | |||
| reference "I-D: draft-ietf-dhc-dhcpv6-yang"; | reference | |||
| "XXXX: YANG Data Model for DHCPv6 Configuration"; | ||||
| } | } | |||
| /* | /* | |||
| * Groupings | * Groupings | |||
| */ | */ | |||
| grouping config { | grouping config { | |||
| description | description | |||
| "Parameters necessary for the configuration of a DHCPv6 | "Parameters necessary for the configuration of a DHCPv6 | |||
| server"; | server"; | |||
| skipping to change at page 97, line 5 ¶ | skipping to change at page 97, line 5 ¶ | |||
| Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
| without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
| to the license terms contained in, the Simplified BSD License | to the license terms contained in, the Simplified BSD License | |||
| set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
| Relating to IETF Documents | Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info). | (http://trustee.ietf.org/license-info). | |||
| This version of this YANG module is part of RFC XXXX; see | This version of this YANG module is part of RFC XXXX; see | |||
| the RFC itself for full legal notices."; | the RFC itself for full legal notices."; | |||
| revision 2019-06-13 { | revision 2021-06-14 { | |||
| description | description | |||
| "Initial version."; | "Initial Revision."; | |||
| reference "I-D: draft-ietf-dhc-dhcpv6-yang"; | reference | |||
| "XXXX: YANG Data Model for DHCPv6 Configuration"; | ||||
| } | } | |||
| /* | /* | |||
| * Groupings | * Groupings | |||
| */ | */ | |||
| grouping client-class-id { | grouping client-class-id { | |||
| description | description | |||
| "Definitions of client message classification for | "Definitions of client message classification for | |||
| authorization and assignment purposes."; | authorization and assignment purposes."; | |||
| skipping to change at page 100, line 51 ¶ | skipping to change at page 101, line 4 ¶ | |||
| case client-duid-id { | case client-duid-id { | |||
| description | description | |||
| "Client class selection based on the value of the | "Client class selection based on the value of the | |||
| received client DUID."; | received client DUID."; | |||
| leaf duid { | leaf duid { | |||
| type dhc6:duid; | type dhc6:duid; | |||
| description | description | |||
| "Client DUID."; | "Client DUID."; | |||
| } | } | |||
| } | } | |||
| } | ||||
| } | ||||
| } | } | |||
| /* | /* | |||
| * Augmentations | * Augmentations | |||
| */ | */ | |||
| augment "/dhc6-srv:dhcpv6-server/dhc6-srv:class-selector" { | augment "/dhc6-srv:dhcpv6-server/dhc6-srv:class-selector" { | |||
| description | description | |||
| "Augment class selector functions to the DHCPv6 server | "Augment class selector functions to the DHCPv6 server | |||
| module."; | module."; | |||
| End of changes. 58 change blocks. | ||||
| 76 lines changed or deleted | 99 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||