![]() DATA MODEL DEFINITION |
|
This Broadband Forum Document is provided AS IS, WITH ALL FAULTS. ANY PERSON HOLDING A COPYRIGHT IN THIS BROADBAND FORUM DOCUMENT, OR ANY PORTION THEREOF, DISCLAIMS TO THE FULLEST EXTENT PERMITTED BY LAW ANY REPRESENTATION OR WARRANTY, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY:
By using this Broadband Forum Document, users acknowledge that implementation may require licenses to patents. The Broadband Forum encourages but does not require its members to identify such patents. For a list of declarations made by Broadband Forum member companies, please see http://www.broadband-forum.org. No assurance is given that licenses to patents necessary to implement this Document will be available for license at all or on reasonable and non-discriminatory terms.
ANY PERSON HOLDING A COPYRIGHT IN THIS BROADBAND FORUM DOCUMENT, OR ANY PORTION THEREOF, DISCLAIMS TO THE FULLEST EXTENT PERMITTED BY LAW (A) ANY LIABILITY (INCLUDING DIRECT, INDIRECT, SPECIAL, OR CONSEQUENTIAL DAMAGES UNDER ANY LEGAL THEORY) ARISING FROM OR RELATED TO THE USE OF OR RELIANCE UPON THIS DOCUMENT; AND (B) ANY OBLIGATION TO UPDATE OR CORRECT THIS DOCUMENT.
Broadband Forum Documents may be copied, downloaded, stored on a server or otherwise re-distributed in their entirety only, and may not be modified without the advance written permission of the Broadband Forum.
The text of this notice must be included in all copies of this Broadband Forum Document.
| Data Type | Base Type | Description |
|---|---|---|
| IPAddress | string | IP address, i.e. IPv4 address (or IPv4 subnet mask) or IPv6 address. All IPv4 addresses and subnet masks MUST be represented as strings in IPv4 dotted-decimal notation. Here are some examples of valid IPv4 address textual representations:
All IPv6 addresses MUST be represented using any of the 3 standard textual representations defined in [RFC4291] Sections 2.2.1, 2.2.2 and 2.2.3. Both lower-case and upper-case letters can be used, but use of lower-case letters is RECOMMENDED. Here are some examples of valid IPv6 address textual representations:
IPv6 addresses MUST NOT include zone identifiers. Zone identifiers are discussed in [Section 6/RFC4007]. Unspecified or inapplicable addresses (or IPv4 subnet masks) MUST be represented as empty strings unless otherwise specified by the parameter definition. |
| IPPrefix | string | IPv4 or IPv6 routing prefix in Classless Inter-Domain Routing (CIDR) notation [RFC4632]. This is specified as an IP address followed by an appended "/n" suffix, where n (the prefix size) is an integer in the range 0-32 (for IPv4) or 0-128 (for IPv6) that indicates the number of (leftmost) '1' bits of the routing prefix. IPv4 example: 192.168.1.0/24 IPv6 example: 2001:edff:fe6a:f76::/64 Unspecified or inapplicable IP prefixes MUST be represented as empty strings unless otherwise specified by the parameter definition. |
| IPv4Address | IPAddress | IPv4 address (or subnet mask). Can be any IPv4 address that is permitted by the IPAddress data type. |
| IPv6Address | IPAddress | IPv6 address. Can be any IPv6 address that is permitted by the IPAddress data type. |
| IPv6Prefix | IPPrefix | IPv6 address prefix. Can be any IPv6 prefix that is permitted by the IPPrefix data type. |
| MACAddress | string | All MAC addresses are represented as strings of 12 hexadecimal digits (digits 0-9, letters A-F or a-f) displayed as six pairs of digits separated by colons. Unspecified or inapplicable MAC addresses MUST be represented as empty strings unless otherwise specified by the parameter definition. |
| [802.1D-2004] | IEEE Std 802.1D-2004, Media Access Control (MAC) Bridges, IEEE, 2004. |
| [802.1Q-2005] | IEEE Std 802.1Q-2005, Virtual Bridged Local Area Networks, IEEE, 2006. |
| [DSLite] | draft-ietf-softwire-dual-stack-lite, Dual-Stack Lite Broadband Deployments Following IPv4 Exhaustion, IETF. |
| [DSLite-options] | draft-ietf-softwire-ds-lite-tunnel-option, Dynamic Host Configuation Protocol for IPv6 (DHCPv6) Options for Dual-Stack Lite, IETF. |
| [ICSA-Baseline] | ICSA Baseline Modular Firewall Certification Criteria, Baseline module - version 4.1, ICSA Labs, 2008. |
| [RFC1035] | RFC 1035, Domain Names - Implementation and Specification, IETF, 1987. |
| [RFC1332] | RFC 1332, The PPP Internet Protocol Control Protocol (IPCP), IETF, 1992. |
| [RFC1378] | RFC 1378, The PPP AppleTalk Control Protocol (ATCP), IETF, 1992. |
| [RFC1552] | RFC 1552, The PPP Internetwork Packet Exchange Control Protocol (IPXCP), IETF, 1993. |
| [RFC2080] | RFC 2080, RIPng for IPv6, IETF, 1997. |
| [RFC2097] | RFC 2097, The PPP NetBIOS Frames Control Protocol (NBFCP), IETF, 1997. |
| [RFC2132] | RFC 2132, DHCP Options and BOOTP Vendor Extensions, IETF. |
| [RFC2474] | RFC 2474, Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers, IETF. |
| [RFC2782] | RFC 2782, A DNS RR for specifying the location of services (DNS SRV), IETF, 2000. |
| [RFC2863] | RFC 2863, The Interfaces Group MIB, IETF, 2000. |
| [RFC3004] | RFC 3004, The User Class Option for DHCP, IETF. |
| [RFC3232] | RFC 3232, "Assigned Numbers: RFC 1700 is Replaced by an On-line Database", IETF, 2002. |
| [RFC3315] | RFC 3315, Dynamic Host Configuration Protocol for IPv6 (DHCPv6), IETF, 2003. |
| [RFC3596] | RFC 3596, DDNS Extensions to Support IP Version 6, IETF, 2003. |
| [RFC3633] | RFC 3633, IPv6 Prefix Options for Dynamic Host Configuration Protocol (DHCP) version 6, IETF, 2003. |
| [RFC3646] | RFC 3646, DNS Configuration options for Dynamic Host Configuration Protocol for IPv6 (DHCPv6), IETF, 2003. |
| [RFC3775] | RFC 3775, Mobility Support in IPv6, IETF, 2004. |
| [RFC3925] | RFC 3925, Vendor-Identifying Vendor Options for Dynamic Host Configuration Protocol version 4 (DHCPv4), IETF. |
| [RFC3986] | RFC 3986, Uniform Resource Identifier (URI): Generic Syntax, IETF. |
| [RFC4191] | RFC 4191, Default Router Preferences and More-Specific Routes, IETF, 2005. |
| [RFC4193] | RFC 4193, Unique Local IPv6 Unicast Addresses, IETF, 2005. |
| [RFC4242] | RFC 4242, Information Refresh Time Option for Dynamic Host Configuration Protocol for IPv6 (DHCPv6), IETF, 2005. |
| [RFC4291] | RFC 4291, IP Version 6 Addressing Architecture, IETF, 2006. |
| [RFC4292] | RFC 4292, IP Forwarding Table MIB, IETF, 2006. |
| [RFC4293] | RFC 4293, Management Information Base for the Internet Protocol (IP), IETF, 2006. |
| [RFC4389] | RFC 4389, Neighbor Discovery Proxies (ND Proxy), IETF, 2006. |
| [RFC4632] | RFC 4632, Classless Inter-domain Routing (CIDR): The Internet Address Assignment and Aggregation Plan, IETF, 2006. |
| [RFC4861] | RFC 4861, Neighbor Discovery for IP version 6 (IPv6), IETF, 2007. |
| [RFC4862] | RFC 4862, IPv6 Stateless Address Autoconfiguration, IETF, 2007. |
| [RFC5072] | RFC 5072, IP Version 6 over PPP, IETF, 2007. |
| [RFC5969] | RFC 5969, IPv6 Rapid Deployment on IPv4 Infrastructures (6rd) - Protocol Specification, IETF, 2010. |
| [RFC6106] | RFC 6106, IPv6 Router Advertisement Option for DNS Configuration, IETF, 2010. |
| [SOAP1.1] | Simple Object Access Protocol (SOAP) 1.1, W3C. |
| [TR-064] | TR-064, LAN-Side DSL CPE Configuration Specification, Broadband Forum, 2004. |
| [TR-106a5] | TR-106 Amendment 5, Data Model Template for TR-069-Enabled Devices, Broadband Forum, 2010. |
| [TR-181i2a2] | TR-181 Issue 2 Amendment 2, Device Data Model for TR-069, Broadband Forum, 2011. |
| [UPnP-IGD:1] | UPnP InternetGatewayDevice:1, InternetGatewayDevice:1 Device Template Version 1.01, UPnP, 2001. |
| [UPnP-IGD:2] | UPnP InternetGatewayDevice:2, InternetGatewayDevice:2 Device Template Version 1.01, UPnP, 2010. |
For a given implementation of this data model, the CPE MUST indicate support for the highest version number of any object or parameter that it supports. For example, even if the CPE supports only a single parameter that was introduced in version 2.2, then it will indicate support for version 2.2. The version number associated with each object and parameter is shown in the Version column.
| Name | Type | Write | Description | Object Default | Version |
|---|---|---|---|---|---|
| Device. | object | - | The top-level object for a Device. | - | 2.0 |
| Device.ManagementServer. | object | - | This object contains parameters relating to the CPE's association with an ACS. | - | 2.0 |
| ConnectionRequestURL | string(256) | - | HTTP URL, as defined in [RFC3986], for an ACS to make a Connection Request notification to the CPE. In the form:
The host portion of the URL MAY be the IP address for the management interface of the CPE in lieu of a host name. Note: If the host portion of the URL is a literal IPv6 address then it MUST be enclosed in square brackets (see [Section 3.2.2/RFC3986]). |
- | 2.0 |
| UDPConnectionRequestAddress | string(256) | - | Address and port to which an ACS MAY send a UDP Connection Request to the CPE (see [Annex G/TR-069a2]). This parameter is represented in the form of an Authority element as defined in [RFC3986]. The value MUST be in one of the following two forms:
The second form of this parameter MAY be used only if the port value is equal to 80. Note: If the host portion of the URL is a literal IPv6 address then it MUST be enclosed in square brackets (see [Section 3.2.2/RFC3986]). |
- | 2.0 |
| Device.UserInterface. | object | - | This object contains parameters relating to the user interface of the CPE. | - | 2.0 |
| PasswordReset | boolean | W | Present only if the CPE provides a password-protected LAN-side user interface and supports LAN-side Auto-Configuration. When set to true, resets LANConfigSecurity.ConfigPassword to its factory value. When read, this parameter returns false, regardless of the actual value. The value of this parameter is not part of the device configuration and is always false when read. |
- | 2.0 |
| Device.Bridging. | object | - | Layer 2 bridging configuration. Specifies bridges between different layer 2 interfaces. Bridges can be defined to include layer 2 filter criteria to selectively bridge traffic between interfaces. This object can be used to configure both 802.1D [802.1D-2004] and 802.1Q [802.1Q-2005] bridges. Not all 802.1D and 802.1Q features are modeled, and some additional features not present in either 802.1D or 802.1Q are modeled. |
- | 2.0 |
| Device.Bridging.Filter.{i}. | object | W | Filter table containing classification filter entries, each of which expresses a set of classification criterion to classify ingress frames as member of a Bridge instance or a Bridge.{i}.VLAN instance. Bridge VLAN classification only applies for 802.1Q [802.1Q-2005] Bridges. For enabled table entries, if Bridge or Interface is an empty string then the table entry is inoperable and the CPE MUST set Status to Error_Misconfigured. Several of this object's parameters specify DHCP option values. Some cases are version neutral (the parameter can apply to both DHCPv4 and DHCPv6), but in other cases the representation of the option is different for DHCPv4 and DHCPv6, so it is necessary to define separate DHCPv4-specific and DHCPv6-specific parameters. Therefore, an instance of this object that uses DHCP option values as filter criteria will be associated with either DHCPv4 or DHCPv6, as indicated by the DHCPType parameter.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. |
- | 2.0 |
| DHCPType | string | W | The DHCP protocol associated with the Filter instance. Affects only parameters that specify DHCP option values as filter criteria (all such parameter descriptions note this fact). Enumeration of:
If DHCPType is DHCPv4, then Filter parameters that are DHCPv6-specific are ignored. If DHCPType is DHCPv6, then Filter parameters that are DHCPv4-specific are ignored. |
"DHCPv4" | 2.2 |
| SourceMACFromVendorClassIDFilter | string(255) | W | Classification criterion. A string used to identify one or more devices via DHCP for which MAC address filtering would subsequently apply. A device is considered matching if its DHCPv4 Vendor Class Identifier (Option 60 as defined in [RFC2132]) in the most recent DHCP lease acquisition or renewal matches the specified value according to the match criterion in SourceMACFromVendorClassIDMode. Case sensitive. This is a normal string, e.g. "abc" is represented as "abc" and not "616263" hex. However, if the value includes non-printing characters then such characters have to be represented using XML escapes, e.g. #x0a for line-feed. Note that neither 802.1D [802.1D-2004] nor 802.1Q [802.1Q-2005] support classification based on source MAC address. Note: This parameter is DHCPv4-specific. It only applies when DHCPType is DHCPv4. |
<Empty> | 2.0 |
| SourceMACFromVendorClassIDFilterv6 | hexBinary(65535) | W | Classification criterion. A hexbinary string used to identify one or more devices via DHCP for which MAC address filtering would subsequently apply. A device is considered matching if the most recent DHCPv6 Vendor Class Identifier (Option 16 as defined in [RFC3315]) was equal to the specified value. The option value is binary, so an exact match is REQUIRED. Note that neither 802.1D [802.1D-2004] nor 802.1Q [802.1Q-2005] support classification based on source MAC address. Note: This parameter is DHCPv6-specific. It only applies when DHCPType is DHCPv6. |
<Empty> | 2.2 |
| SourceMACFromVendorClassIDFilterExclude | boolean | W | If false, on ingress to the interfaces associated with this Filter, the Bridge admits only those packets whose source MAC Address matches that of a LAN device previously identified as described in SourceMACFromVendorClassIDFilter (for DHCPv4) or SourceMACFromVendorClassIDFilterv6 (for DHCPv6). If this corresponding filter parameter is an empty string, no packets are admitted. If true, on ingress to the interfaces associated with this Filter, the Bridge admits all packets except those packets whose source MAC Address matches that of a LAN device previously identified as described in SourceMACFromVendorClassIDFilter (for DHCPv4) or SourceMACFromVendorClassIDFilterv6 (for DHCPv6). If this corresponding filter parameter is an empty string, packets are admitted regardless of MAC address. Note that neither 802.1D [802.1D-2004] nor 802.1Q [802.1Q-2005] support classification based on source MAC address. |
true | 2.0 |
| DestMACFromVendorClassIDFilter | string(255) | W | Classification criterion. A string used to identify one or more devices via DHCP for which MAC address filtering would subsequently apply. A device is considered matching if its DHCPv4 Vendor Class Identifier (Option 60 as defined in [RFC2132]) in the most recent DHCP lease acquisition or renewal matches the specified value according to the match criterion in DestMACFromVendorClassIDMode. Case sensitive. This is a normal string, e.g. "abc" is represented as "abc" and not say "616263" hex. However, if the value includes non-printing characters then such characters have to be represented using XML escapes, e.g. #x0a for line-feed. Note: This parameter is DHCPv4-specific. It only applies when DHCPType is DHCPv4. |
<Empty> | 2.0 |
| DestMACFromVendorClassIDFilterv6 | hexBinary(65535) | W | Classification criterion. A hexbinary string used to identify one or more devices via DHCP for which MAC address filtering would subsequently apply. A device is considered matching if the most recent DHCPv6 Vendor Class Identifier (Option 16 as defined in [RFC3315]) was equal to the specified value. The option value is binary, so an exact match is REQUIRED. Note: This parameter is DHCPv6-specific. It only applies when DHCPType is DHCPv6. |
<Empty> | 2.2 |
| DestMACFromVendorClassIDFilterExclude | boolean | W | If false, on ingress to the interfaces associated with this Filter, the Bridge admits only those packets whose destination MAC Address matches that of a LAN device previously identified as described in DestMACFromVendorClassIDFilter (for DHCPv4) or DestMACFromVendorClassIDFilterv6 (for DHCPv6). If this corresponding filter parameter is an empty string, no packets are admitted. If true, on ingress to the interfaces associated with this Filter, the Bridge admits all packets except those packets whose destination MAC Address matches that of a LAN device previously identified as described in DestMACFromVendorClassIDFilter (for DHCPv4) or DestMACFromVendorClassIDFilterv6 (for DHCPv6). If this corresponding filter parameter is an empty string, packets are admitted regardless of MAC address. |
true | 2.0 |
| SourceMACFromClientIDFilter | hexBinary(65535) | W | Classification criterion. A hexbinary string used to identify one or more devices via DHCP for which MAC address filtering would subsequently apply. A device is considered matching if the most recent DHCP Client Identifier (via DHCP lease acquisition or renewal for DHCPv4) was equal to the specified value. The DHCP Client Identifier is Option 61 (as defined in [RFC2132]) for DHCPv4, or is Option 1 (as defined in [RFC3315]) for DHCPv6. The option value is binary, so an exact match is REQUIRED. Note that neither 802.1D [802.1D-2004] nor 802.1Q [802.1Q-2005] support classification based on source MAC address. Note: DHCPv4 Option values are limited to a length of 255, while DHCPv6 Option values can have a maximum length of 65535. Note: This parameter is DHCP version neutral. The specific DHCP version in use with this parameter is indicated by DHCPType. |
<Empty> | 2.0 |
| DestMACFromClientIDFilter | hexBinary(65535) | W | Classification criterion. A hexbinary string used to identify one or more devices via DHCP for which MAC address filtering would subsequently apply. A device is considered matching if the most recent DHCP Client Identifier (via DHCP lease acquisition or renewal for DHCPv4) was equal to the specified value. The DHCP Client Identifier is Option 61 (as defined in [RFC2132]) for DHCPv4, or is Option 1 (as defined in [RFC3315]) for DHCPv6. The option value is binary, so an exact match is REQUIRED. Note: DHCPv4 Option values are limited to a length of 255, while DHCPv6 Option values can have a maximum length of 65535. Note: This parameter is DHCP version neutral. The specific DHCP version in use with this parameter is indicated by DHCPType. |
<Empty> | 2.0 |
| SourceMACFromUserClassIDFilter | hexBinary(65535) | W | Classification criterion. A hexbinary string used to identify one or more devices via DHCP for which MAC address filtering would subsequently apply. A device is considered matching if the most recent DHCP User Class Identifier (via DHCP lease acquisition or renewal for DHCPv4) was equal to the specified value. The DHCP User Class Identifier is Option 77 (as defined in [RFC3004]) for DHCPv4, or is Option 15 (as defined in [RFC3315]) for DHCPv6. The option value is binary, so an exact match is REQUIRED. Note that neither 802.1D [802.1D-2004] nor 802.1Q [802.1Q-2005] support classification based on source MAC address. Note: DHCPv4 Option values are limited to a length of 255, while DHCPv6 Option values can have a maximum length of 65535. Note: This parameter is DHCP version neutral. The specific DHCP version in use with this parameter is indicated by DHCPType. |
<Empty> | 2.0 |
| DestMACFromUserClassIDFilter | hexBinary(65535) | W | Classification criterion. A hexbinary string used to identify one or more devices via DHCP for which MAC address filtering would subsequently apply. A device is considered matching if the most recent DHCP User Class Identifier (via DHCP lease acquisition or renewal for DHCPv4) was equal to the specified value. The DHCP User Class Identifier is Option 77 (as defined in [RFC3004]) for DHCPv4, or is Option 15 (as defined in [RFC3315]) for DHCPv6. The option value is binary, so an exact match is REQUIRED. Note: DHCPv4 Option values are limited to a length of 255, while DHCPv6 Option values can have a maximum length of 65535. Note: This parameter is DHCP version neutral. The specific DHCP version in use with this parameter is indicated by DHCPType. |
<Empty> | 2.0 |
| Device.PPP. | object | - | Point-to-Point Protocol [RFC1661]. This object contains the Interface table. | - | 2.0 |
| SupportedNCPs | string | - | Comma-separated list of strings. The Network Control Protocols (NCPs) that are supported by the device. Each list item is an enumeration of:
Note that IPv6CP is an IPv6 capability. |
- | 2.2 |
| Device.PPP.Interface.{i}. | object | W | PPP interface table (a stackable interface object as described in [Section 4.2/TR-181i2]).
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias, or with a given value for Name. On creation of a new table entry, the CPE MUST choose initial values for Alias and Name such that the new entry does not conflict with any existing entries. |
- | 2.0 |
| Reset | boolean | W | When set to true, the device MUST tear down the existing PPP connection represented by this object and establish a new one. The device MUST initiate the reset after completion of the current CWMP session. The device MAY delay resetting the connection in order to avoid interruption of a user service such as an ongoing voice call. Reset on a disabled interface is a no-op (not an error). When read, this parameter returns false, regardless of the actual value. The value of this parameter is not part of the device configuration and is always false when read. |
false | 2.0 |
| IPCPEnable | boolean | W | Enables or disables IPCP ([RFC1332]) on this interface. If this parameter is present, IPCP MUST be included in SupportedNCPs. | - | 2.2 |
| IPv6CPEnable | boolean | W | Enables or disables IPv6CP ([RFC5072]) on this interface. If this parameter is present, IPv6CP MUST be included in SupportedNCPs. | - | 2.2 |
| Device.PPP.Interface.{i}.PPPoA. | object | - | PPPoA object that functionally groups PPPoA related parameters. | - | 2.2 |
| Device.PPP.Interface.{i}.IPv6CP. | object | - | IPv6 Control Protocol (IPv6CP) client object for this PPP interface [RFC5072]. IPv6CP only applies to IPv6. | - | 2.2 |
| LocalInterfaceIdentifier | string | - | [IPv6Address] The interface identifier for the local end of the PPP link, negotiated using the IPv6CP Interface-Identifier option [Section 4.1/RFC5072]. The identifier is represented as the rightmost 64 bits of an IPv6 address (the leftmost 64 bits MUST be zero and MUST be ignored by the recipient). |
- | 2.2 |
| RemoteInterfaceIdentifier | string | - | [IPv6Address] The interface identifier for the remote end of the PPP link, negotiated using the IPv6CP Interface-Identifier option [Section 4.1/RFC5072]. The identifier is represented as the rightmost 64 bits of an IPv6 address (the leftmost 64 bits MUST be zero and MUST be ignored by the recipient). |
- | 2.2 |
| Device.IP. | object | - | IP object that contains the Interface, ActivePort, and Diagnostics objects. | - | 2.0 |
| IPv4Enable | boolean | W | Enables or disables the IPv4 stack, and so the use of IPv4 on the device. This affects only layer 3 and above. When false, IP interfaces that had been operationally up and passing IPv4 packets will now no longer be able to do so, and will be operationally down (unless also attached to an enabled IPv6 stack). |
- | 2.2 |
| IPv4Status | string | - | Indicates the status of the IPv4 stack. Enumeration of:
The Error value MAY be used by the CPE to indicate a locally defined error condition. |
- | 2.2 |
| IPv6Capable | boolean | - | Indicates whether the device is IPv6 capable. Note: If false, it is expected that IPv6-related parameters, enumeration values, etc will not be implemented by the device. |
- | 2.2 |
| IPv6Enable | boolean | W | Enables or disables the IPv6 stack, and so the use of IPv6 on the device. This affects only layer 3 and above. When false, IP interfaces that had been operationally up and passing IPv6 packets will now no longer be able to do so, and will be operationally down (unless also attached to an enabled IPv4 stack). |
- | 2.2 |
| IPv6Status | string | - | Indicates the status of the IPv6 stack. Enumeration of:
The Error value MAY be used by the CPE to indicate a locally defined error condition. |
- | 2.2 |
| ULAPrefix | string | W | [IPv6Prefix] The ULA /48 prefix [Section 3/RFC4193]. | - | 2.2 |
| Device.IP.Interface.{i}. | object | W | IP interface table (a stackable interface object as described in [Section 4.2/TR-181i2]). This table models the layer 3 IP interface. Each IP interface can be attached to the IPv4 and/or IPv6 stack. The interface's IP addresses and prefixes are listed in the IPv4Address, IPv6Address and IPv6Prefix tables. Note that support for manipulating Loopback interfaces is OPTIONAL, so the implementation MAY choose not to create (or allow the ACS to create) Interface instances of type Loopback. When the ACS administratively disables the interface, i.e. sets Enable to false, the interface's automatically-assigned IP addresses and prefixes MAY be retained. When the ACS administratively enables the interface, i.e. sets Enable to true, these IP addresses and prefixes MUST be refreshed. It's up to the implementation to decide exactly what this means: it SHOULD take all reasonable steps to refresh everything but if it is unable, for example, to refresh a prefix that still has a significant lifetime, it might well choose to retain rather than discard it.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias, or with a given value for Name. On creation of a new table entry, the CPE MUST choose initial values for Alias and Name such that the new entry does not conflict with any existing entries. |
- | 2.0 |
| Enable | boolean | W | Enables or disables the interface (regardless of IPv4Enable and IPv6Enable). This parameter is based on ifAdminStatus from [RFC2863]. |
false | 2.0 |
| IPv4Enable | boolean | W | If set to true, attaches this interface to the IPv4 stack. If set to false, detaches this interface from the IPv4 stack. Once detached from the IPv4 stack, the interface will now no longer be able to pass IPv4 packets, and will be operationally down (unless also attached to an enabled IPv6 stack). For an IPv4 capable device, if IPv4Enable is not present this interface SHOULD be permanently attached to the IPv4 stack. Note that IPv4Enable is independent of Enable, and that to administratively enable an interface for IPv4 it is necessary for both Enable and IPv4Enable to be true. |
- | 2.2 |
| IPv6Enable | boolean | W | If set to true, attaches this interface to the IPv6 stack. If set to false, detaches this interface from the IPv6 stack. Once detached from the IPv6 stack, the interface will now no longer be able to pass IPv6 packets, and will be operationally down (unless also attached to an enabled IPv4 stack). For an IPv6 capable device, if IPv6Enable is not present this interface SHOULD be permanently attached to the IPv6 stack. Note that IPv6Enable is independent of Enable, and that to administratively enable an interface for IPv6 it is necessary for both Enable and IPv6Enable to be true. |
- | 2.2 |
| ULAEnable | boolean | W | Controls whether or not ULAs [RFC4193] are generated and used on this interface. | false | 2.2 |
| Reset | boolean | W | When set to true, the device MUST tear down the existing IP connection represented by this object and establish a new one. The device MUST initiate the reset after completion of the current CWMP session. The device MAY delay resetting the connection in order to avoid interruption of a user service such as an ongoing voice call. Reset on a disabled interface is a no-op (not an error). When read, this parameter returns false, regardless of the actual value. The value of this parameter is not part of the device configuration and is always false when read. |
false | 2.0 |
| IPv6AddressNumberOfEntries | unsignedInt | - | The number of entries in the IPv6Address table. | - | 2.2 |
| IPv6PrefixNumberOfEntries | unsignedInt | - | The number of entries in the IPv6Prefix table. | - | 2.2 |
| Device.IP.Interface.{i}.IPv4Address.{i}. | object | W | IPv4 address table. Entries are auto-created and auto-deleted as IP addresses are added and deleted via DHCP, auto-IP, or IPCP. Static entries are created and configured by the ACS.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with the same values for IPAddress and SubnetMask. |
- | 2.0 |
| Status | string | - | The status of this IPv4Address table entry. Enumeration of:
The Error_Misconfigured value indicates that a necessary configuration value is undefined or invalid. The Error value MAY be used by the CPE to indicate a locally defined error condition. |
"Disabled" | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. Note: There is no guarantee that the Alias value on automatically-created IPv4Address instances will be retained. This is because automatically-created IPv4Address instances can be transitory. |
- | 2.0 |
| Device.IP.Interface.{i}.IPv6Address.{i}. | object | W | This table contains the IP interface's IPv6 unicast addresses. There MUST be an entry for each such address, including anycast addresses. There are several ways in which entries can be added to and deleted from this table, including:
This table MUST NOT include entries for the Subnet-Router anycast address [Section 2.6.1/RFC4291]. Such entries would be identical to others but with a zero interface identifier, and would add no value. A loopback interface will always have address ::1 [Section 2.5.3/RFC4291] and MAY also have link-local address fe80::1. This object is based on ipAddressTable from [RFC4293].
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for IPAddress. |
- | 2.2 |
| Enable | boolean | W | Enables or disables this IPv6Address entry. | false | 2.2 |
| Status | string | - | The status of this IPv6Address table entry. Enumeration of:
The Error_Misconfigured value indicates that a necessary configuration value is undefined or invalid. The Error value MAY be used by the CPE to indicate a locally defined error condition. |
"Disabled" | 2.2 |
| IPAddressStatus | string | - | The status of IPAddress, indicating whether it can be used for communication. See also PreferredLifetime and ValidLifetime. Enumeration of:
This parameter is based on ipAddressStatus and ipAddressStatusTC from [RFC4293]. |
"Invalid" | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. Note: There is no guarantee that the Alias value on automatically-created IPv6Address instances will be retained. This is because automatically-created IPv6Address instances can be transitory. |
- | 2.2 |
| IPAddress | string | W | [IPv6Address] IPv6 address. This parameter can only be modified if the Origin is Static. This parameter is based on ipAddressAddr from [RFC4293]. |
<Empty> | 2.2 |
| Origin | string | - | Mechanism via which the IP address was assigned. Enumeration of:
This parameter is based on ipOrigin from [RFC4293]. |
"Static" | 2.2 |
| Prefix | string | W | The value MUST be the path name of a row in the IPv6Prefix table. If the referenced object is deleted, the parameter value MUST be set to an empty string. IPv6 address prefix. Some addresses, e.g. addresses assigned via the DHCPv6 IA_NA option, are not associated with a prefix, and some WellKnown prefixes might not be modeled. In both of these cases Prefix will be an empty string. This parameter can only be modified if the Origin is Static. This parameter is based on ipAddressPrefix from [RFC4293]. |
<Empty> | 2.2 |
| PreferredLifetime | dateTime | W | The time at which this address will cease to be preferred (i.e. will become deprecated), or 0001-01-01T00:00:00Z if not known. For an infinite lifetime, the parameter value MUST be 9999-12-31T23:59:59Z. This parameter can only be modified if the Origin is Static. |
9999-12-31T23:59:59Z | 2.2 |
| ValidLifetime | dateTime | W | The time at which this address will cease to be valid (i.e. will become invalid), or 0001-01-01T00:00:00Z if unknown. For an infinite lifetime, the parameter value MUST be 9999-12-31T23:59:59Z. This parameter can only be modified if the Origin is Static. |
9999-12-31T23:59:59Z | 2.2 |
| Anycast | boolean | W | Indicates whether this is an anycast address [Section 2.6/RFC4291]. Anycast addresses are syntactically identical to unicast addresses and so need to be configured explicitly. This parameter can only be modified if the Origin is Static. This parameter is based on ipAddressType from [RFC4293]. |
false | 2.2 |
| Device.IP.Interface.{i}.IPv6Prefix.{i}. | object | W | This table contains the interface's IPv6 prefixes. There MUST be an entry for each such prefix, not only for prefixes learned from router advertisements. There are several ways in which entries can be added to and deleted from this table, including:
The CPE MAY choose not to create IPv6Prefix entries for WellKnown prefixes or for the ULA /48 prefix [RFC4193]. If an IPv6Prefix entry exists for the ULA /48 prefix, it MUST be on a downstream interface (i.e. an interface for which the physical layer interface object has Upstream = false). This object is based on ipAddressPrefixTable from [RFC4293].
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for Prefix. |
- | 2.2 |
| Enable | boolean | W | Enables or disables this IPv6Prefix entry. | false | 2.2 |
| Status | string | - | The status of this IPv6Prefix table entry. Enumeration of:
The Error value MAY be used by the CPE to indicate a locally defined error condition. |
"Disabled" | 2.2 |
| PrefixStatus | string | - | The status of Prefix, indicating whether it can be used for communication. See also PreferredLifetime and ValidLifetime. Enumeration of:
This parameter is based on ipAddressStatus and ipAddressStatusTC from [RFC4293]. |
"Invalid" | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. Note: There is no guarantee that the Alias value on automatically-created IPv6Prefix instances will be retained. This is because automatically-created IPv6Prefix instances can be transitory. |
- | 2.2 |
| Prefix | string | W | [IPv6Prefix] IPv6 address prefix. This parameter can only be modified if the Origin is Static. This parameter is based on ipAddressPrefixPrefix from [RFC4293]. |
<Empty> | 2.2 |
| Origin | string | - | Mechanism via which the prefix was assigned or most recently updated. Enumeration of:
Note that:
Also note that a Child prefix's ParentPrefix will always be an AutoConfigured, PrefixDelegation, or RouterAdvertisement prefix. This parameter is based on ipAddressOrigin from [RFC4293]. |
"Static" | 2.2 |
| StaticType | string | W | Static prefix sub-type. For a Static prefix, this can be set to PrefixDelegation or Child, thereby creating an unconfigured prefix of the specified type that will be populated in preference to creating a new instance. This allows the ACS to pre-create "prefix slots" with known path names that can be referenced from elsewhere in the data model before they have been populated. Enumeration of:
This mechanism works as follows:
The prefix StaticType can only be modified if Origin is Static. |
"Static" | 2.2 |
| ParentPrefix | string | W | The value MUST be the path name of a row in the IP.Interface.{i}.IPv6Prefix table. If the referenced object is deleted, the parameter value MUST be set to an empty string. Indicates the parent prefix from which this prefix was derived. The parent prefix is relevant only for Child prefixes and for Static Child prefixes (both of which will always be on downstream interfaces), i.e. for Origin=Child and for (Origin,StaticType) = (Static,Child) prefixes. This parameter can only be modified if Origin is Static (which makes sense only for a prefix whose StaticType is already or will be changed to Child). |
<Empty> | 2.2 |
| ChildPrefixBits | string | W | [IPv6Prefix] A prefix that specifies the length of Static Child prefixes and how they are derived from their ParentPrefix. It will be used if and only if it is not an empty string and is longer than the parent prefix (if it is not used, derivation of such prefixes is implementation-specific). Any bits to the right of the parent prefix are set to the bits in this prefix. For example, for a parent prefix of fedc::/56, if this parameter had the value 123:4567:89ab:cdef::/64, the child /64 would be fedc:0:0:ef::/64. For a parent prefix of fedc::/60, the child /64 would be fedc:0:0:f::/64. |
<Empty> | 2.2 |
| OnLink | boolean | W | On-link flag [Section 4.6.2/RFC4861] as received (in the RA) for RouterAdvertisement. Indicates whether this prefix can be used for on-link determination. This parameter can only be modified if Origin is Static. This parameter is based on ipAddressPrefixOnLinkFlag from [RFC4293]. |
false | 2.2 |
| Autonomous | boolean | W | Autonomous address configuration flag [Section 4.6.2/RFC4861] as received (in the RA) for RouterAdvertisement. Indicates whether this prefix can be used for generating global addresses as specified by SLAAC [RFC4862]. This parameter can only be modified if Origin is Static. This parameter is based on ipAddressPrefixAutonomousFlag from [RFC4293]. |
false | 2.2 |
| PreferredLifetime | dateTime | W | This parameter is based on ipAddressPrefixAdvPreferredLifetime from [RFC4293]. The time at which this prefix will cease to be preferred (i.e. will become deprecated), or 0001-01-01T00:00:00Z if not known. For an infinite lifetime, the parameter value MUST be 9999-12-31T23:59:59Z. | 9999-12-31T23:59:59Z | 2.2 |
| ValidLifetime | dateTime | W | This parameter is based on ipAddressPrefixAdvValidLifetime from [RFC4293]. The time at which this prefix will cease to be valid (i.e. will become invalid), or 0001-01-01T00:00:00Z if not known. For an infinite lifetime, the parameter value MUST be 9999-12-31T23:59:59Z. | 9999-12-31T23:59:59Z | 2.2 |
| Device.IP.Interface.{i}.Stats. | object | - | Throughput statistics for this interface. The CPE MUST reset the interface's Stats parameters (unless otherwise stated in individual object or parameter descriptions) either when the interface becomes operationally down due to a previous administrative down (i.e. the interface's Status parameter transitions to a down state after the interface is disabled) or when the interface becomes administratively up (i.e. the interface's Enable parameter transitions from false to true). Administrative and operational interface status is discussed in [Section 4.2.2/TR-181i2]. |
- | 2.0 |
| BroadcastPacketsSent | unsignedLong | - | The total number of packets that higher-level protocols requested for transmission and which were addressed to a broadcast address at this layer, including those that were discarded or not sent. Note that IPv6 does not define broadcast addresses, so IPv6 packets will never cause this counter to increment. |
- | 2.0 |
| BroadcastPacketsReceived | unsignedLong | - | The total number of received packets, delivered by this layer to a higher layer, which were addressed to a broadcast address at this layer. Note that IPv6 does not define broadcast addresses, so IPv6 packets will never cause this counter to increment. |
- | 2.0 |
| Device.IP.Diagnostics. | object | - | The IP Diagnostics object. | - | 2.0 |
| Device.IP.Diagnostics.IPPing. | object | - | This object provides access to an IP-layer ping test. | - | 2.0 |
| Host | string(256) | W | Host name or address of the host to ping. In the case where Host is specified by name, and the name resolves to more than one address, it is up to the device implementation to choose which address to use. |
- | 2.0 |
| Device.IP.Diagnostics.TraceRoute. | object | - | This object is defines access to an IP-layer trace-route test for the specified IP interface. | - | 2.0 |
| Host | string(256) | W | Host name or address of the host to find a route to. In the case where Host is specified by name, and the name resolves to more than one address, it is up to the device implementation to choose which address to use. |
- | 2.0 |
| Device.Routing. | object | - | Routing object that contains the Router table and RIP protocol object. | - | 2.0 |
| Device.Routing.Router.{i}. | object | W | This object allows the handling of the routing and forwarding configuration of the device.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. |
- | 2.0 |
| IPv6ForwardingNumberOfEntries | unsignedInt | - | The number of entries in the IPv6Forwarding table. | - | 2.2 |
| Device.Routing.Router.{i}.IPv4Forwarding.{i}. | object | W | Layer 3 IPv4 forwarding table. In addition to statically configured routes, this table MUST include dynamic routes learned through layer 3 routing protocols, including RIP (i.e. RIP version 2), OSPF, DHCPv4, and IPCP. The CPE MAY reject attempts to delete or modify a dynamic route entry. For each incoming packet, the layer 3 forwarding decision is conceptually made as follows:
For enabled table entries, if Interface is not a valid reference to an IPv4-capable interface (that is attached to the IPv4 stack), then the table entry is inoperable and the CPE MUST set Status to Error_Misconfigured. Note: The IPv4Forwarding table includes a unique key parameter that is a strong reference. If a strongly referenced object is deleted, the CPE will set the referencing parameter to an empty string. However, doing so under these circumstances might cause the updated IPv4Forwarding row to then violate the table's unique key constraint; if this occurs, the CPE MUST disable the offending IPv4Forwarding row.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with all the same values for DestIPAddress, DestSubnetMask, ForwardingPolicy, GatewayIPAddress, Interface and ForwardingMetric. |
- | 2.0 |
| Status | string | - | Indicates the status of the forwarding entry. Enumeration of:
The Error value MAY be used by the CPE to indicate a locally defined error condition. The Error_Misconfigured value indicates that a necessary configuration value is undefined or invalid. |
"Disabled" | 2.0 |
| Origin | string | - | Protocol via which the IPv4 forwarding rule was learned. Enumeration of:
|
"Static" | 2.2 |
| Device.Routing.Router.{i}.IPv6Forwarding.{i}. | object | W | Layer 3 IPv6 forwarding table. In addition to statically configured routes, this table MUST include dynamic routes learned through layer 3 routing protocols, including RIPng, OSPF, DHCPv6, and RA. The CPE MAY reject attempts to delete or modify a dynamic route entry. For each incoming packet, the layer 3 forwarding decision is conceptually made as follows:
For enabled table entries, if Interface is not a valid reference to an IPv6-capable interface (that is attached to the IPv6 stack), then the table entry is inoperable and the CPE MUST set Status to Error_Misconfigured. This object is based on inetCidrRouteTable from [RFC4292].
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with all the same values for DestIPPrefix, ForwardingPolicy, NextHop, Interface and ForwardingMetric. |
- | 2.2 |
| Enable | boolean | W | Enables or disables this IPv6Forwarding entry. | false | 2.2 |
| Status | string | - | Indicates the status of the forwarding entry. Enumeration of:
The Error_Misconfigured value indicates that a necessary configuration value is undefined or invalid. The Error value MAY be used by the CPE to indicate a locally defined error condition. |
"Disabled" | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. | - | 2.2 |
| DestIPPrefix | string | W | [IPv6Prefix] Destination IPv6 prefix. An empty string indicates that it matches all destination prefixes (i.e. equivalent to "::/0"). All bits to the right of the prefix MUST be zero, e.g. 2001:edff:fe6a:f76::/64. Routes with a 128-bit prefix length (/128) are host routes for a specific IPv6 destination, e.g. 2001:db8:28:2:713e:a426:d167:37ab/128. |
<Empty> | 2.2 |
| ForwardingPolicy | int[-1:] | W | Identifier of a set of classes or flows that have the corresponding ForwardingPolicy value as defined in the QoS object. A value of -1 indicates no ForwardingPolicy is specified. If specified, this forwarding entry is to apply only to traffic associated with the specified classes and flows. |
-1 | 2.2 |
| NextHop | string | W | [IPv6Address] IPv6 address of the next hop. Only one of NextHop and Interface SHOULD be configured for a route. An empty string indicates no NextHop is specified. If both are configured, NextHop and Interface MUST be consistent with each other. |
<Empty> | 2.2 |
| Interface | string(256) | W | The value MUST be the path name of a row in the IP.Interface table. If the referenced object is deleted, the parameter value MUST be set to an empty string. Specifies the egress layer 3 interface associated with this entry. Example: Device.IP.Interface.1. Only one of NextHop and Interface SHOULD be configured for a route. An empty string indicates no Interface is specified. If both are configured, NextHop and Interface MUST be consistent with each other. For a route that was configured by setting NextHop but not Interface, read access to Interface MUST return the full hierarchical parameter name for the route's egress interface. |
<Empty> | 2.2 |
| Origin | string | - | Protocol via which the IPv6 forwarding rule was learned. Enumeration of:
|
"Static" | 2.2 |
| ForwardingMetric | int[-1:] | W | Forwarding metric. A value of -1 indicates this metric is not used. | -1 | 2.2 |
| ExpirationTime | dateTime | - | The time at which the route will expire, or 0001-01-01T00:00:00Z if not known. For an infinite lifetime, the parameter value MUST be 9999-12-31T23:59:59Z. ExpirationTime is provided by an underlying dynamic routing protocol, e.g. by an [RFC4191] route information option. |
9999-12-31T23:59:59Z | 2.2 |
| Device.Routing.RIP. | object | - | Routing Information Protocol (RIP) object. | - | 2.0 |
| Device.Routing.RIP.InterfaceSetting.{i}. | object | W | IP Interface RIP configuration table. For enabled table entries, if Interface is not a valid reference then the table entry is inoperable and the CPE MUST set Status to Error_Misconfigured. Note: The InterfaceSetting table includes a unique key parameter that is a strong reference. If a strongly referenced object is deleted, the CPE will set the referencing parameter to an empty string. However, doing so under these circumstances might cause the updated InterfaceSetting row to then violate the table's unique key constraint; if this occurs, the CPE MUST set Status to Error_Misconfigured and disable the offending InterfaceSetting row. Note: This object only applies to RIP2; i.e. version 2 of the RIP protocol is used to accept or send over the specified Interface.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for Interface. |
- | 2.0 |
| Device.Routing.RouteInformation. | object | - | Received Router Advertisement (RA) route information [RFC4191]. | - | 2.2 |
| Enable | boolean | W | Enables or disables receiving route information from the RA. | - | 2.2 |
| InterfaceSettingNumberOfEntries | unsignedInt | - | The number of entries in the InterfaceSetting table. | - | 2.2 |
| Device.Routing.RouteInformation.InterfaceSetting.{i}. | object | - | IP Interface RA route information table. Contains received RA route information [RFC4191]. As such, the data in this table cannot be modified.
At most one entry in this table can exist with a given value for Interface. |
- | 2.2 |
| Status | string | - | The status of this entry. Enumeration of:
The Error value MAY be used by the CPE to indicate a locally defined error condition. |
- | 2.2 |
| Interface | string(256) | - | The value MUST be the path name of a row in the IP.Interface table. If the referenced object is deleted, the parameter value MUST be set to an empty string. This is the IP interface associated with this InterfaceSetting entry. | - | 2.2 |
| SourceRouter | string | - | [IPv6Address] IPv6 Address of the router that sent the RA that included this route info. | - | 2.2 |
| PreferredRouteFlag | string | - | Flag included in a specific Route Information Option within an RA message (Prf flag), as defined in [Section 2.3/RFC4191]. Enumeration of:
Note that this is not the Prf flag included in the base RA message. Also see [Section 2.1/RFC4191] which discusses how this flag is encoded on the wire. |
- | 2.2 |
| Prefix | string | - | [IPv6Prefix] IPv6 address prefix, as received in an instance of the Route Information Option of a RA message. | - | 2.2 |
| RouteLifetime | dateTime | - | The time at which Prefix will cease to be usable for use as a forwarding entry, or 0001-01-01T00:00:00Z if not known. For an infinite lifetime, the parameter value MUST be 9999-12-31T23:59:59Z. RouteLifetime is received in an instance of the Route Information Option of a RA message. |
- | 2.2 |
| Device.NeighborDiscovery. | object | - | The Neighbor Discovery Protocol (NDP) object [RFC4861]. This object applies only to IPv6. It contains an InterfaceSetting table that defines the NDP configuration for individual IP interfaces. | - | 2.2 |
| Enable | boolean | W | Enables or disables Neighbor Discovery. | - | 2.2 |
| InterfaceSettingNumberOfEntries | unsignedInt | - | The number of entries in the InterfaceSetting table. | - | 2.2 |
| Device.NeighborDiscovery.InterfaceSetting.{i}. | object | W | Per-interface Neighbor Discovery Protocol (NDP) configuration [RFC4861]. For enabled table entries, if Interface is not a valid reference to an IPv6-capable interface (that is attached to the IPv6 stack), then the table entry is inoperable and the CPE MUST set Status to Error_Misconfigured. Note: The InterfaceSetting table includes a unique key parameter that is a strong reference. If a strongly referenced object is deleted, the CPE will set the referencing parameter to an empty string. However, doing so under these circumstances might cause the updated InterfaceSetting row to then violate the table's unique key constraint; if this occurs, the CPE MUST set Status to Error_Misconfigured and disable the offending InterfaceSetting row.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for Interface. |
- | 2.2 |
| Enable | boolean | W | Enables or disables this InterfaceSetting entry. | false | 2.2 |
| Status | string | - | The status of this entry. Enumeration of:
The Error_Misconfigured value indicates that a necessary configuration value is undefined or invalid. The Error value MAY be used by the CPE to indicate a locally defined error condition. |
"Disabled" | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. | - | 2.2 |
| Interface | string | W | The value MUST be the path name of a row in the IP.Interface table. If the referenced object is deleted, the parameter value MUST be set to an empty string. This is the IP interface associated with this InterfaceSetting entry. | <Empty> | 2.2 |
| RetransTimer | unsignedInt | W | Retransmission interval in milliseconds, as defined in [RFC4861]. For auto-configuration purposes, RetransTimer specifies the delay between consecutive Neighbor Solicitation transmissions performed during Duplicate Address Detection (DAD) [Section 5.4/RFC4862], as well as the time a node waits after sending the last Neighbor Solicitation before ending the DAD process. | 1000 | 2.2 |
| RtrSolicitationInterval | unsignedInt | W | Retransmission interval in milliseconds, as defined in [RFC4861]. For auto-configuration purposes, RtrSolicitationInterval specifies the delay between consecutive Router Solicitation transmissions. | 4 | 2.2 |
| MaxRtrSolicitations | unsignedInt | W | Maximum Number of Router Solicitation Transmission messages, as defined in [RFC4861]. For auto-configuration purposes MaxRtrSolicitations specifies the Maximum Number of Router Solicitation Transmission messages to help the host to conclude that there are no routers on the link. | 3 | 2.2 |
| NUDEnable | boolean | W | Enables or disables Neighbor Unreachability Detection (NUD) [Section 7/RFC4861]. | - | 2.2 |
| RSEnable | boolean | W | Enables or disables Router Solicitation (RS) on Interface [Section 4.1/RFC4861]. | - | 2.2 |
| Device.RouterAdvertisement. | object | - | The Router Advertisement (RA) object [RFC4861]. This object applies only to IPv6. It contains an InterfaceSetting table that defines the RA configuration for individual IP interfaces. Information received via router advertisement messages is automatically propagated to the relevant IP.Interface sub-objects, e.g. to the IP.Interface.{i}.IPv6Address and IP.Interface.{i}.IPv6Prefix tables. |
- | 2.2 |
| Enable | boolean | W | Enables or disables Router Advertisement. | - | 2.2 |
| InterfaceSettingNumberOfEntries | unsignedInt | - | The number of entries in the InterfaceSetting table. | - | 2.2 |
| Device.RouterAdvertisement.InterfaceSetting.{i}. | object | W | Per-interface Router Advertisement (RA) configuration [RFC4861]. Table entries are created for use in sending Router Advertisements. For enabled table entries, if Interface is not a valid reference to an IPv6-capable interface (that is attached to the IPv6 stack), then the table entry is inoperable and the CPE MUST set Status to Error_Misconfigured. Note: The InterfaceSetting table includes a unique key parameter that is a strong reference. If a strongly referenced object is deleted, the CPE will set the referencing parameter to an empty string. However, doing so under these circumstances might cause the updated InterfaceSetting row to then violate the table's unique key constraint; if this occurs, the CPE MUST set Status to Error_Misconfigured and disable the offending InterfaceSetting row.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for Interface. |
- | 2.2 |
| Enable | boolean | W | Enables or disables this InterfaceSetting entry. Defines the value of the IsRouter and AdvSendAdvertisements flags from [Section 4.2/RFC4861] |
false | 2.2 |
| Status | string | - | The status of this entry. Enumeration of:
The Error_Misconfigured value indicates that a necessary configuration value is undefined or invalid. The Error value MAY be used by the CPE to indicate a locally defined error condition. |
"Disabled" | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. | - | 2.2 |
| Interface | string | W | The value MUST be the path name of a row in the IP.Interface table. If the referenced object is deleted, the parameter value MUST be set to an empty string. This is the IP interface associated with this InterfaceSetting entry. | <Empty> | 2.2 |
| ManualPrefixes | string | W | Comma-separated list (up to 8 items) of strings. Each list item MUST be the path name of a row in the IP.Interface.{i}.IPv6Prefix table. If the referenced object is deleted, the corresponding item MUST be removed from the list. Manually-configured prefixes that will be sent in Router Advertisement messages. Each referenced prefix MUST have a IP.Interface.{i}.IPv6Prefix.{i}.StaticType of Static or Child. Router Advertisement messages MUST include Prefix Information Options [RFC4861] for all Valid (IP.Interface.{i}.IPv6Prefix.{i}.ValidLifetime is infinite or in the future) prefixes in this list. Prefixes MUST be associated with the interface instance referenced by Interface. |
<Empty> | 2.2 |
| Prefixes | string | - | Comma-separated list (up to 8 items) of strings. Each list item MUST be the path name of a row in the IP.Interface.{i}.IPv6Prefix table. If the referenced object is deleted, the corresponding item MUST be removed from the list. All prefixes that will be included in Router Advertisement (RA) messages sent out this interface. This list can include:
|
- | 2.2 |
| MaxRtrAdvInterval | unsignedInt[4:1800] | W | The maximum time allowed between sending unsolicited multicast Router Advertisements from the interface, in seconds (see [Section 4.2/RFC4861]). | 600 | 2.2 |
| MinRtrAdvInterval | unsignedInt[3:1350] | W | The minimum time allowed between sending unsolicited multicast Router Advertisements from the interface, in seconds (see [Section 4.2/RFC4861]). The value MUST be no greater than 3/4 * MaxRtrAdvInterval. Note: The 1350 maximum was derived from the RFC, based on 3/4 times the maximum value of MaxRtrAdvInterval. Similarly, the 200 default was derived from the RFC, based on 1/3 times the default value of MaxRtrAdvInterval. |
200 | 2.2 |
| AdvDefaultLifetime | unsignedInt[:65535] | W | The value placed in the "Router Lifetime" field of Router Advertisement messages on this interface, in seconds (see [Section 4.2/RFC4861]). The value can be zero or between MaxRtrAdvInterval and 9000 seconds, but these limits can be overridden by specific documents that describe how IPv6 operates over different link layers. A value of zero indicates that the router is not to be used as a default router. Note: The 1800 default was derived from the RFC, based on 3 times the default value of MaxRtrAdvInterval. |
1800 | 2.2 |
| AdvManagedFlag | boolean | W | The value placed in the "Managed address configuration" (M) flag field of Router Advertisement messages on this interafce (see [Section 4.2/RFC4861], and [RFC4862]). | false | 2.2 |
| AdvOtherConfigFlag | boolean | W | The value placed in the "Other configuration" (O) flag field of Router Advertisement messages on this interface (see [Section 4.2/RFC4861], and [RFC4862]). | false | 2.2 |
| AdvMobileAgentFlag | boolean | W | The value placed in the "Home agent" (H) flag field of Router Advertisement messages on this interface (see [Section 7.1/RFC3775]). | false | 2.2 |
| AdvPreferredRouterFlag | string | W | The value placed in the "Default Router Preference" (Prf) field of Router Advertisement messages on this interface, as defined in [Section 2.2/RFC4191]. Enumeration of:
Also see [Section 2.1/RFC4191] which discusses how this flag is encoded on the wire. |
"Medium" | 2.2 |
| AdvNDProxyFlag | boolean | W | The value placed in the "Proxy" (P) flag field of Router Advertisement messages on this interface (see [Section 4.1.3.3/RFC4389]). | false | 2.2 |
| AdvLinkMTU | unsignedInt | W | The value placed in MTU options of Router Advertisement messages on this interface. A value of zero indicates that no MTU options are included (see [Section 4.6.4/RFC4861]). | 0 | 2.2 |
| AdvReachableTime | unsignedInt[:3600000] | W | The value placed in the "Reachable Time" field of Router Advertisement messages on this interface, in milliseconds (see [Section 4.2/RFC4861]). The value zero means unspecified (by the router). |
0 | 2.2 |
| AdvRetransTimer | unsignedInt | W | The value placed in the "Retrans Timer" field of Router Advertisement messages on this interface (see [Section 4.2/RFC4861]). The value zero means unspecified (by the router). |
0 | 2.2 |
| AdvCurHopLimit | unsignedInt[:255] | W | The value placed in the "Cur Hop Limit" field of Router Advertisement messages on this interface (see [Section 4.2/RFC4861]). The value zero means unspecified (by the router). Note: The default can be overridden with the value specified in [RFC3232] that was in effect at the time of implementation. |
0 | 2.2 |
| OptionNumberOfEntries | unsignedInt | - | The number of entries in the Option table. | - | 2.2 |
| Device.RouterAdvertisement.InterfaceSetting.{i}.Option.{i}. | object | W | This object specifies the options in a Router Advertisement (RA) message [Section 4.6/RFC4861]. Option entries are created for use in sending Router Advertisements (enabled options MUST be included in RA messages sent). This includes support for sending DNS information in the RA message as described in [RFC6106]. This table is intended only for options that are not modeled elsewhere. For example, it is not appropriate for the MTU option (which is modeled via AdvLinkMTU).
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for Tag. |
- | 2.2 |
| Enable | boolean | W | Enables or disables this Option entry. | false | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. | - | 2.2 |
| Tag | unsignedInt[0:65535] | W | Option tag (type) [Section 4.6/RFC4861]. | - | 2.2 |
| Value | hexBinary(65535) | W | A hexbinary encoded option value [Section 4.6/RFC4861]. | - | 2.2 |
| Device.IPv6rd. | object | - | Settings allowing a CPE to derive and route IPv6 Rapid Deployment (6rd) delegated prefixes as specified in [RFC5969]. The 6rd mechanism is intended to be implemented only on what [RFC5969] refers to as Customer Edge Routers, i.e. on gateway devices, that support IPv6 on the LAN side and only have IPv4 connectivity on the WAN side. See the 6rd Theory of Operation [Appendix VI/TR-181i2a2] for a description of the working of this 6rd data model. |
- | 2.2 |
| Enable | boolean | W | Enables or disables IPv6rd. | - | 2.2 |
| InterfaceSettingNumberOfEntries | unsignedInt | - | The number of entries in the InterfaceSetting table. | - | 2.2 |
| Device.IPv6rd.InterfaceSetting.{i}. | object | - | 6rd [RFC5969] settings. A 6rd delegated prefix is expected to be of maximum length 64 bits, and is the concatenation of the following two items:
This object definition is derived from [RFC5969] with some minor nomenclature changes.
At most one entry in this table can exist with a given value for Alias. |
- | 2.2 |
| Enable | boolean | W | Enable or disable this InterfaceSetting instance. | - | 2.2 |
| Status | string | - | The status of this entry. Enumeration of:
The Error value MAY be used by the CPE to indicate a locally defined error condition. |
- | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. | - | 2.2 |
| BorderRelayIPv4Addresses | string | W | [IPv4Address] Comma-separated list (up to 4 items) of IPv4Addresses. List items are the IPv4 addresses (possibly anycast) of the 6rd Relay(s). | - | 2.2 |
| AllTrafficToBorderRelay | boolean | W | If true, the destination address for all 6rd traffic will be set (IPv4 destination address) to one of the BorderRelayIPv4Addresses. If false, traffic whose destination address begins with the same prefix as SPIPv6Prefix will be sent directly to the destination IPv4 address of the endpoint, which is in the same 6rd domain. See 6rd Theory of Operation for further explanation [Appendix VI/TR-181i2a2]. | - | 2.2 |
| SPIPv6Prefix | string | W | [IPv6Prefix] The Service Provider's 6rd IPv6 prefix for this deployment and this 6rd RG. | - | 2.2 |
| IPv4MaskLength | unsignedInt[0:32] | W | The number of high-order bits that are identical across all IPv4 addresses within a given 6rd domain. This number of bits MUST be removed from the start of the IPv4 address when generating the 6rd delegated prefix. For example, if this value is 8, only the final 24 bits of the subscriber IPv4 prefix will be used when creating the IPv6 delegated prefix, determining the destination IPv4 encapsulation address, etc. If the value is 0, then the whole 32 bits of the IPv4 address are used in the encoding. |
- | 2.2 |
| AddressSource | string(256) | W | The value MUST be the path name of a row in the IP.Interface.{i}.IPv4Address table. If the referenced object is deleted, the parameter value MUST be set to an empty string. Points to the IPv4 address that is the source of the IPv4 address embedded in the IPv6 6rd prefix, and used as the source encapsulating IPv4 address. If the value is an empty string or this parameter is not present, the device will use internal logic to determine which IPv4 source address to use. | - | 2.2 |
| TunnelInterface | string(256) | - | The value MUST be the path name of a row in the IP.Interface table. If the referenced object is deleted, the parameter value MUST be set to an empty string. This is an IP interface of Type Tunnel that is logically the tunnel entry point for upstream IPv6 traffic and is also logically the tunnel exit point for downstream IPv6 traffic (i.e. the entry point for non-tunneled upstream IPv6 traffic to enter a tunnel and become tunneled, or conversely, the exit point for downstream IPv6 traffic leaving a tunnel after being un-tunneled). IPv6 traffic that enters TunnelInterface from the LAN is expected to continue on through TunneledInterface, and traffic from the WAN is expected to come from TunneledInterface into TunnelInterface. TunnelInterface is a logical interface that can allow for classification, marking (of IPv6 headers), and policing of IPv6 traffic that will be going over a 6rd tunnel. These functions are modeled in the QoS. object. TunnelInterface can be used also to represent the 6rd virtual interface defined in [RFC5969]. Note: In 6rd, IPv6 packets arriving over one or more device LAN IP interfaces are logically fed into this TunnelInterface. Likewise, 6rd traffic from the WAN gets logically sent from this TunnelInterface to LAN IP interfaces. |
- | 2.2 |
| TunneledInterface | string(256) | - | The value MUST be the path name of a row in the IP.Interface table. If the referenced object is deleted, the parameter value MUST be set to an empty string. This is an IP interface of Type Tunneled that provides information about the IPv4 headers used to encapsulate the IPv6 packets. Encapsulated IPv6 traffic that enters TunneledInterface from the WAN is expected to continue on through TunnelInterface, and traffic from the LAN is expected to come from TunnelInterface into TunneledInterface. TunneledInterface is a logical interface that can allow for classification, marking (of IPv4 headers and VLAN tags), and policing of IPv4 packets that encapsulate IPv6 packets in 6rd traffic. These functions are modeled in the QoS. object. Note: In 6rd, TunneledInterface traffic originating from the LAN logically feeds into a WAN-side IPv4 capable IP interface that the "IPv6 6rd tunnel" goes over. 6rd traffic that enters over this IPv4 WAN interface gets logically sent to this TunneledInterface. |
- | 2.2 |
| Device.DSLite. | object | - | Settings allowing a CPE to configure and route IPv6 Dual-Stack Lite (DSLite) as specified in [DSLite]. The DS-Lite mechanism is intended to be implemented only on gateway devices that support IPv4 on the LAN side and only have IPv6 connectivity on the WAN side. See the Dual-Stack Lite Theory of Operation [Appendix VII/TR-181i2a2] for a description of the working of this DS-Lite data model. |
- | 2.2 |
| Enable | boolean | W | Enables or disables DSLite. | - | 2.2 |
| InterfaceSettingNumberOfEntries | unsignedInt | - | The number of entries in the InterfaceSetting table. | - | 2.2 |
| Device.DSLite.InterfaceSetting.{i}. | object | - | DSLite [DSLite] settings.
At most one entry in this table can exist with a given value for Alias. |
- | 2.2 |
| Enable | boolean | W | Enable or disable this InterfaceSetting instance. | - | 2.2 |
| Status | string | - | The status of this entry. Enumeration of:
The Error value MAY be used by the CPE to indicate a locally defined error condition. |
- | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. | - | 2.2 |
| EndpointAssignmentPrecedence | string | W | Indicates the preferred method to be used in assigning values to EndpointName and EndpointAddress when both static and dynamic values are available to them. See EndpointName and EndpointAddress for further clarification. Enumeration of:
|
- | 2.2 |
| EndpointName | string(256) | W | The Fully Qualified Domain Name (FQDN) of the tunnel concentrator (remote endpoint). This parameter is based on OPTION_DS_LITE_NAME from [Section 4/DSLite-options] and can be assigned statically (e.g. present in the factory default configuration or set by the ACS) or assigned dynamically (via DHCPv6). If both statically and dynamically assigned, then EndpointAssignmentPrecedence indicates whether it is the static configuration or the DHCPv6 configuration that is actually applied to EndpointName. When EndpointName is assigned, the name is looked up (resolved) and the corresponding address is set in EndpointAddress. |
- | 2.2 |
| EndpointAddress | string | W | [IPv6Address] The address of the tunnel concentrator (remote endpoint). This parameter is based on OPTION_DS_LITE_ADDR from [Section 3/DSLite-options] and can be assigned statically (e.g. present in the factory default configuration or set by the ACS) or assigned dynamically (via DHCPv6). If both statically and dynamically assigned, then EndpointAssignmentPrecedence indicates whether it is the static configuration or the DHCPv6 configuration that is actually applied to EndpointAddress. When EndpointName is assigned, the name is looked up (resolved) and the corresponding address is set in EndpointAddress. |
- | 2.2 |
| Origin | string | - | Method used to assign EndpointName and EndpointAddress. Enumeration of:
|
- | 2.2 |
| TunnelInterface | string(256) | - | The value MUST be the path name of a row in the IP.Interface table. If the referenced object is deleted, the parameter value MUST be set to an empty string. This is an IP interface of Type Tunnel that is logically the tunnel entry point for upstream IPv4 traffic and is also logically the tunnel exit point for downstream IPv4 traffic (i.e. the entry point for non-tunneled upstream IPv4 traffic to enter a tunnel and become tunneled, or conversely, the exit point for downstream IPv4 traffic leaving a tunnel after being un-tunneled). IPv4 traffic that enters TunnelInterface is expected to continue on through TunneledInterface from the LAN, and traffic from the WAN is expected to come from TunneledInterface into TunnelInterface. TunnelInterface is a logical interface that can allow for classification, marking (of IPv4 headers), and policing of IPv4 traffic that will be going over a DS-Lite tunnel. These functions are modeled in the Device.QoS object. Note: In DS-Lite, IPv4 packets arriving over one or more device LAN IP interfaces are logically fed into this TunnelInterface. Likewise, DS-Lite traffic from the WAN gets logically sent from this TunnelInterface to LAN IP interfaces. |
- | 2.2 |
| TunneledInterface | string(256) | - | The value MUST be the path name of a row in the IP.Interface table. If the referenced object is deleted, the parameter value MUST be set to an empty string. This is an IP interface of Type Tunneled that provides information about the IPv6 headers used to encapsulate the IPv4 packets. Encapsulated IPv4 traffic that enters TunneledInterface from the WAN is expected to continue on through TunnelInterface, and traffic from the LAN is expected to come from TunnelInterface into TunneledInterface. TunneledInterface is a logical interface that can allow for classification, marking (of IPv6 headers and VLAN tags), and policing of IPv6 packets that encapsulate IPv4 packets in DS-Lite traffic. These functions are modeled in the QoS. object. Note: In DS-Lite, TunneledInterface traffic originating from the LAN logically feeds into a WAN-side IPv6 capable IP interface that the "DSLite IPv4-in-IPv6 tunnel" goes over. DS-Lite traffic that enters over this IPv6 WAN interface gets logically sent to this TunneledInterface. |
- | 2.2 |
| Device.QoS. | object | - | Queue management configuration object. | - | 2.0 |
| Device.QoS.Classification.{i}. | object | W | Classification table. For enabled table entries, if Interface is not a valid reference and AllInterfaces is false, then the table entry is inoperable and the CPE MUST set Status to Error_Misconfigured. Several of this object's parameters specify DHCP option values. Some cases are version neutral (the parameter can apply to both DHCPv4 and DHCPv6), but in other cases the representation of the option is different for DHCPv4 and DHCPv6, so it is necessary to define separate DHCPv4-specific and DHCPv6-specific parameters. Therefore, an instance of this object that uses DHCP option values as classification criteria will be associated with either DHCPv4 or DHCPv6, as indicated by the DHCPType parameter.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. |
- | 2.0 |
| DHCPType | string | W | The DHCP protocol associated with the Classification instance. Affects only parameters that specify DHCP option values as classification criteria (all such parameter descriptions note this fact). Enumeration of:
If DHCPType is DHCPv4, then Classification parameters that are DHCPv6-specific are ignored. If DHCPType is DHCPv6, then Classification parameters that are DHCPv4-specific are ignored. |
"DHCPv4" | 2.2 |
| Protocol | int[-1:255] | W | Classification criterion. Protocol number. A value of -1 indicates this criterion is not used for classification. |
-1 | 2.0 |
| SourceVendorClassID | string(255) | W | Classification criterion. Used to identify one or more LAN devices, value of the DHCPv4 Vendor Class Identifier (Option 60) as defined in [RFC2132], matched according to the criterion in SourceVendorClassIDMode. Case sensitive. This is a normal string, e.g. "abc" is represented as "abc" and not say "616263" hex. However, if the value includes non-printing characters then such characters have to be represented using XML escapes, e.g. #x0a for line-feed. An empty string indicates this criterion is not used for classification. Note: This parameter is DHCPv4-specific. It only applies when DHCPType is DHCPv4. |
<Empty> | 2.0 |
| SourceVendorClassIDv6 | hexBinary(65535) | W | Classification criterion. A hexbinary string used to identify one or more LAN devices, value of the DHCPv6 Vendor Class Identifier (Option 16) as defined in [RFC3315]. The option value is binary, so an exact match is REQUIRED. An empty string indicates this criterion is not used for classification. Note: This parameter is DHCPv6-specific. It only applies when DHCPType is DHCPv6. |
<Empty> | 2.2 |
| SourceVendorClassIDExclude | boolean | W | If false, the class includes only those packets sourced from LAN devices that match the SourceVendorClassID entry (for DHCPv4) or the SourceVendorClassIDv6 entry (for DHCPv6), if specified. If true, the class includes all packets except those sourced from LAN devices that match the SourceVendorClassID entry (for DHCPv4) or the SourceVendorClassIDv6 entry (for DHCPv6), if specified. |
false | 2.0 |
| DestVendorClassID | string(255) | W | Classification criterion. Used to identify one or more LAN devices, value of the DHCPv4 Vendor Class Identifier (Option 60) as defined in [RFC2132], matched according to the criterion in DestVendorClassIDMode. Case sensitive. This is a normal string, e.g. "abc" is represented as "abc" and not say "616263" hex. However, if the value includes non-printing characters then such characters have to be represented using XML escapes, e.g. #x0a for line-feed. An empty string indicates this criterion is not used for classification. Note: This parameter is DHCPv4-specific. It only applies when DHCPType is DHCPv4. |
<Empty> | 2.0 |
| DestVendorClassIDv6 | hexBinary(65535) | W | Classification criterion. A hexbinary string used to identify one or more LAN devices, value of the DHCPv6 Vendor Class Identifier (Option 16) as defined in [RFC3315]. The option value is binary, so an exact match is REQUIRED. An empty string indicates this criterion is not used for classification. Note: This parameter is DHCPv6-specific. It only applies when DHCPType is DHCPv6. |
<Empty> | 2.2 |
| DestVendorClassIDExclude | boolean | W | If false, the class includes only those packets destined for LAN devices that match the DestVendorClassID entry (for DHCPv4) or the DestVendorClassIDv6 entry (for DHCPv6), if specified. If true, the class includes all packets except those destined for LAN devices that match the DestVendorClassID entry (for DHCPv4) or the DestVendorClassIDv6 entry (for DHCPv6), if specified. |
false | 2.0 |
| SourceClientID | hexBinary(65535) | W | Classification criterion. A hexbinary string used to identify one or more LAN devices, value of the DHCP Client Identifier. The DHCP Client Identifier is Option 61 (as defined in [RFC2132]) for DHCPv4, or is Option 1 (as defined in [RFC3315]) for DHCPv6. The option value is binary, so an exact match is REQUIRED. An empty string indicates this criterion is not used for classification. Note: DHCPv4 Option values are limited to a length of 255, while DHCPv6 Option values can have a maximum length of 65535. Note: This parameter is DHCP version neutral. The specific DHCP version in use with this parameter is indicated by DHCPType. |
<Empty> | 2.0 |
| DestClientID | hexBinary(65535) | W | Classification criterion. A hexbinary string used to identify one or more LAN devices, value of the DHCP Client Identifier. The DHCP Client Identifier is Option 61 (as defined in [RFC2132]) for DHCPv4, or is Option 1 (as defined in [RFC3315]) for DHCPv6. The option value is binary, so an exact match is REQUIRED. An empty string indicates this criterion is not used for classification. Note: DHCPv4 Option values are limited to a length of 255, while DHCPv6 Option values can have a maximum length of 65535. Note: This parameter is DHCP version neutral. The specific DHCP version in use with this parameter is indicated by DHCPType. |
<Empty> | 2.0 |
| SourceUserClassID | hexBinary(65535) | W | Classification criterion. A hexbinary string used to identify one or more LAN devices, value of the DHCP User Class Identifier. The DHCP User Class Identifier is Option 77 (as defined in [RFC3004]) for DHCPv4, or is Option 15 (as defined in [RFC3315]) for DHCPv6. The option value is binary, so an exact match is REQUIRED. An empty string indicates this criterion is not used for classification. Note: DHCPv4 Option values are limited to a length of 255, while DHCPv6 Option values can have a maximum length of 65535. Note: This parameter is DHCP version neutral. The specific DHCP version in use with this parameter is indicated by DHCPType. |
<Empty> | 2.0 |
| DestUserClassID | hexBinary(65535) | W | Classification criterion. A hexbinary string used to identify one or more LAN devices, value of the DHCP User Class Identifier. The DHCP User Class Identifier is Option 77 (as defined in [RFC3004]) for DHCPv4, or is Option 15 (as defined in [RFC3315]) for DHCPv6. The option value is binary, so an exact match is REQUIRED. An empty string indicates this criterion is not used for classification. Note: DHCPv4 Option values are limited to a length of 255, while DHCPv6 Option values can have a maximum length of 65535. Note: This parameter is DHCP version neutral. The specific DHCP version in use with this parameter is indicated by DHCPType. |
<Empty> | 2.0 |
| SourceVendorSpecificInfo | hexBinary(65535) | W | Classification criterion. A hexbinary string used to identify one or more LAN devices, value of the DHCP Vendor-specific Information, matched according to the criteria in SourceVendorSpecificInfoEnterprise and SourceVendorSpecificInfoSubOption. The DHCP Vendor-specific Information is Option 125 (as defined in [RFC3925]) for DHCPv4, or is Option 17 (as defined in [RFC3315]) for DHCPv6. An empty string indicates this criterion is not used for classification. Note: DHCPv4 Option values are limited to a length of 255, while DHCPv6 Option values can have a maximum length of 65535. Note: This parameter is DHCP version neutral. The specific DHCP version in use with this parameter is indicated by DHCPType. |
<Empty> | 2.0 |
| DestVendorSpecificInfo | hexBinary(65535) | W | Classification criterion. A hexbinary string used to identify one or more LAN devices, value of the DHCP Vendor-specific Information, matched according to the criteria in DestVendorSpecificInfoEnterprise and DestVendorSpecificInfoSubOption. The DHCP Vendor-specific Information is Option 125 (as defined in [RFC3925]) for DHCPv4, or is Option 17 (as defined in [RFC3315]) for DHCPv6. An empty string indicates this criterion is not used for classification. Note: DHCPv4 Option values are limited to a length of 255, while DHCPv6 Option values can have a maximum length of 65535. Note: This parameter is DHCP version neutral. The specific DHCP version in use with this parameter is indicated by DHCPType. |
<Empty> | 2.0 |
| DSCPCheck | int[-1:63] | W | Classification criterion. DiffServ codepoint (defined in [RFC2474]). If set to a Class Selector Codepoint (defined in [RFC2474]), all DSCP values that match the first 3 bits will be considered a valid match. A value of -1 indicates this criterion is not used for classification. |
-1 | 2.0 |
| Device.Hosts. | object | - | This object provides information about each of the hosts on the LAN, including those whose IP address was allocated by the CPE using DHCP as well as hosts with statically allocated IP addresses. It can also include non-IP hosts. | - | 2.0 |
| Device.Hosts.Host.{i}. | object | - | Host table.
At most one entry in this table can exist with a given value for Alias, or with a given value for PhysAddress. |
- | 2.0 |
| IPAddress | string | - | [IPAddress] Current IP Address of the host. An empty string if no address is available. If more than one IP address for this host is known, the CPE will choose a primary address. All known IP addresses can be listed in the IPv4Address and IPv6Address tables. |
- | 2.0 |
| AddressSource | string | - | Indicates whether the IP address of the host was allocated by the CPE using DHCP, was assigned to the host statically, or was assigned using automatic IP address allocation. Enumeration of:
This parameter is DEPRECATED because only None and DHCP made sense (the CPE doesn't know whether the address is Static or AutoIP). The DHCP case is now handled via the DHCPClient reference. |
- | 2.0 |
| DHCPClient | string | - | Comma-separated list (up to 2 items) of strings. Each list item MUST be the path name of a row in the DHCPv4.Server.Pool.{i}.Client or DHCPv6.Server.Pool.{i}.Client tables. If the referenced object is deleted, the corresponding item MUST be removed from the list. Each list item is the DHCPv4 or DHCPv6 server's client entry that corresponds to the host. | - | 2.2 |
| LeaseTimeRemaining | int[-1:] | - | DHCP lease time remaining in seconds. A value of -1 indicates an infinite lease. The value MUST be 0 (zero) if the AddressSource is not DHCP. This parameter is DEPRECATED because DHCP lease/lifetime information can be accessed via the DHCPClient reference. |
- | 2.0 |
| AssociatedDevice | string(256) | - | The value MUST the path name of the AssociatedDevice (or equivalent) table row that models the host, or an empty string if there is no such table. For example: Device.WiFi.AccessPoint.1.AssociatedDevice.2 |
- | 2.2 |
| VendorClassID | string(255) | - | Vendor Class Identifier DHCP option (Option 60) of the host. This is a normal string, e.g. "abc" is represented as "abc" and not say "616263" hex. However, if the value includes non-printing characters then such characters have to be represented using XML escapes, e.g. #x0a for line-feed. It MAY be defined when AddressSource is DHCP. An empty string indicates this option is not used. Note: DHCPv4 Option values are limited to a length of 255, while DHCPv6 Option values can have a maximum length of 65535. This parameter is DEPRECATED because host-supplied DHCP options can be accessed via the DHCPClient reference. |
- | 2.0 |
| ClientID | hexBinary(65535) | - | A hexbinary string, Client Identifier DHCP option (Option 61) for the specific IP connection of the client. The option value is binary, so an exact match is REQUIRED. It MAY be defined when AddressSource is DHCP. An empty string indicates this option is not used. Note: DHCPv4 Option values are limited to a length of 255, while DHCPv6 Option values can have a maximum length of 65535. This parameter is DEPRECATED because host-supplied DHCP options can be accessed via the DHCPClient reference. |
- | 2.0 |
| UserClassID | hexBinary(65535) | - | A hexbinary string, User Class Identifier DHCP option (Option 77) of the host. It MAY be defined when AddressSource is DHCP. An empty string indicates this option is not used. Note: DHCPv4 Option values are limited to a length of 255, while DHCPv6 Option values can have a maximum length of 65535. This parameter is DEPRECATED because host-supplied DHCP options can be accessed via the DHCPClient reference. |
- | 2.0 |
| IPv4AddressNumberOfEntries | unsignedInt | - | The number of entries in the IPv4Address table. | - | 2.2 |
| IPv6AddressNumberOfEntries | unsignedInt | - | The number of entries in the IPv6Address table. | - | 2.2 |
| Device.Hosts.Host.{i}.IPv4Address.{i}. | object | - | The host's known IPv4 addresses. This includes any addresses assigned via DHCP, which can also be accessed via the DHCPClient reference.
At most one entry in this table can exist with a given value for IPAddress. |
- | 2.2 |
| IPAddress | string | - | [IPv4Address] IPv4 address. | - | 2.2 |
| Device.Hosts.Host.{i}.IPv6Address.{i}. | object | - | The host's known IPv6 addresses. This includes any addresses assigned via DHCP, which can also be accessed via the DHCPClient reference.
At most one entry in this table can exist with a given value for IPAddress. |
- | 2.2 |
| IPAddress | string | - | [IPv6Address] IPv6 address. | - | 2.2 |
| Device.DNS. | object | - | Properties for Domain Name Service (DNS). It contains the Client, Relay, and Diagnostics objects. | - | 2.0 |
| SupportedRecordTypes | string | - | Comma-separated list of strings. The DNS record types that are supported by the device. Each list item is an enumeration of:
|
- | 2.2 |
| Device.DNS.Client. | object | - | Client properties for Domain Name Service (DNS). The DNS client resolves FQDN on behalf of device internal (client) applications. | - | 2.0 |
| Device.DNS.Client.Server.{i}. | object | W | This table contains the DNS Server IP address to be used by the DHCP Client (it does not model a DNS Server). Entries are either automatically created as result of DHCP (v4 or v6), IPCP, or RA received DNS server information, or are statically configured by the ACS.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for DNSServer. |
- | 2.0 |
| DNSServer | string | W | [IPAddress] DNS server IP addresses. Note: DNSServer is only writable when Type is Static; otherwise, DNSServer is automatically configured as result of DHCP, IPCP, or RA received DNS server information. |
- | 2.0 |
| Interface | string(256) | W | The value MUST be the path name of a row in the IP.Interface table. If the referenced object is deleted, the parameter value MUST be set to an empty string. This parameter specifies the IP interface over which the DNS query is sent. If an empty string is specified, the CPE MUST use its routing policy (Forwarding table entries), if necessary, to determine the appropriate interface. Note: Interface is only writable when Type is Static; otherwise, Interface is automatically configured as result of DHCP, IPCP, or RA received DNS server information. |
<Empty> | 2.0 |
| Type | string | - | Method used to assign the DNSServer address. Enumeration of:
Table entries that are automatically created as result of DHCP, IPCP, or RA received DNS server information will have Type set to DHCPv4, DHCPv6, IPCP, or RouterAdvertisement, as the case may be. Manually created table entires will have their Type set to Static. |
"Static" | 2.0 |
| Device.DNS.Relay. | object | - | DNS Relay object. The DNS proxy (or relay) function allows the forwarding of local network DNS queries to local or external DNS server(s) [RFC5625]. | - | 2.0 |
| Device.DNS.Relay.Forwarding.{i}. | object | W | DNS Server forwarding policy to be used by the DNS Relay. Entries are either automatically created as result of DHCP (v4 or v6), IPCP, or RA received DNS server information, or are statically configured by the ACS. Note: Management of re-directing queries to the device embedded DNS server is not defined in this version of the specification.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for DNSServer. |
- | 2.0 |
| DNSServer | string | W | [IPAddress] DNS server IP addresses. Note: DNSServer is only writable when Type is Static; otherwise, DNSServer is automatically configured as result of DHCP, IPCP, or RA received DNS server information. |
- | 2.0 |
| Interface | string(256) | W | The value MUST be the path name of a row in the IP.Interface table. If the referenced object is deleted, the parameter value MUST be set to an empty string. Specifies the IP interface over which the DNS query is sent. If an empty string is specified, the CPE MUST use its routing policy (IP Forwarding table entries), if necessary, to determine the appropriate interface. Note: Interface is only writable when Type is Static; otherwise, Interface is automatically configured as result of DHCP, IPCP, or RA received DNS server information. |
<Empty> | 2.0 |
| Type | string | - | Method used to assign the DNSServer address. Enumeration of:
Table entries that are automatically created as result of DHCP, IPCP, or RA received DNS server information will have Type set to DHCPv4, DHCPv6, IPCP, or RouterAdvertisement, as the case may be. Manually created table entires will have their Type set to Static. |
"Static" | 2.0 |
| Device.NAT. | object | - | Properties for Network Address Translation (NAT). The entire NAT object only applies to IPv4. |
- | 2.0 |
| Device.NAT.InterfaceSetting.{i}. | object | W | NAT settings for an associated IP Interface on which NAT is enabled. For enabled table entries, if Interface is not a valid reference then the table entry is inoperable and the CPE MUST set Status to Error_Misconfigured. Note: The InterfaceSetting table includes a unique key parameter that is a strong reference. If a strongly referenced object is deleted, the CPE will set the referencing parameter to an empty string. However, doing so under these circumstances might cause the updated InterfaceSetting row to then violate the table's unique key constraint; if this occurs, the CPE MUST set Status to Error_Misconfigured and disable the offending InterfaceSetting row.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for Interface. |
- | 2.0 |
| Status | string | - | The status of this entry. Enumeration of:
The Error_Misconfigured value indicates that a necessary configuration value is undefined or invalid. The Error value MAY be used by the CPE to indicate a locally defined error condition. |
"Disabled" | 2.0 |
| Device.DHCPv4. | object | - | The Dynamic Host Configuration Protocol (DHCP) IPv4 object [RFC2131]. This entire object applies to IPv4 only. It contains the Client, Server, and Relay objects. | - | 2.0 |
| Device.DHCPv4.Client.{i}. | object | W | This object contains DHCP client settings for an associated IP Interface indicated by Interface. For enabled table entries, if Interface is not a valid reference then the table entry is inoperable and the CPE MUST set Status to Error_Misconfigured. Note: The Client table includes a unique key parameter that is a strong reference. If a strongly referenced object is deleted, the CPE will set the referencing parameter to an empty string. However, doing so under these circumstances might cause the updated Client row to then violate the table's unique key constraint; if this occurs, the CPE MUST set Status to Error_Misconfigured and disable the offending Client row. This table MUST contain at least 1 entry. At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for Interface. |
- | 2.0 |
| Renew | boolean | W | When set to true, the DHCP client will renew its DHCP lease. When read, this parameter returns false, regardless of the actual value. The value of this parameter is not part of the device configuration and is always false when read. |
false | 2.0 |
| Device.DHCPv4.Client.{i}.SentOption.{i}. | object | W | Each instance of this object represents a DHCP option that MUST, if enabled, be sent in DHCP client requests. All sent DHCP options MUST be listed.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for Tag. |
- | 2.0 |
| Value | hexBinary(255) | W | A hexbinary encoded option value. | <Empty> | 2.0 |
| Device.DHCPv4.Client.{i}.ReqOption.{i}. | object | W | Each instance of this object represents a DHCP option that MUST, if enabled, be requested in DHCP client requests. All requested DHCP options MUST be listed.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for Tag. |
- | 2.0 |
| Value | hexBinary(255) | - | A hexbinary encoded, most recently received DHCP option value. If no option value has been received, then the value MUST represent an empty string. Received DHCP option values MAY, but need not, persist across CPE reboots. |
<Empty> | 2.0 |
| Device.DHCPv4.Server. | object | - | DHCP server configuration. | - | 2.0 |
| Device.DHCPv4.Server.Pool.{i}. | object | W | DHCP conditional serving pool table. Each instance of this object defines a DHCP conditional serving pool. Client requests are associated with pools based on criteria such as source interface, supplied DHCP options, and MAC address. Overlapping pool ranges MUST be supported. For enabled table entries, if Interface is not a valid reference, or MinAddress, MaxAddress, or SubnetMask is not a valid value, then the table entry is inoperable and the CPE MUST set Status to Error_Misconfigured.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. |
- | 2.0 |
| ClientNumberOfEntries | unsignedInt | - | The number of entries in the Client table. | - | 2.2 |
| Device.DHCPv4.Server.Pool.{i}.Option.{i}. | object | W | This object specifies the DHCP options that MUST, if enabled, be returned to clients whose DHCP requests are associated with this pool.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for Tag. |
- | 2.0 |
| Value | hexBinary(255) | W | A hexbinary encoded option value. | <Empty> | 2.0 |
| Device.DHCPv4.Server.Pool.{i}.Client.{i}. | object | - | DHCPv4 client table. This table lists details of DHCPv4 clients that matched the filter criteria of this Pool entry.
At most one entry in this table can exist with a given value for Alias, or with a given value for Chaddr. |
- | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. | - | 2.2 |
| Chaddr | string | - | [MACAddress] MAC address of the DHCPv4 client. | - | 2.2 |
| Active | boolean | - | Whether or not the DHCPv4 client is currently present on the LAN. The method of presence detection is a local matter to the CPE. The ability to list inactive DHCPv4 clients is OPTIONAL. If the CPE includes inactive DHCPv4 clients in this table, Active MUST be set to false for each inactive DHCPv4 client. The length of time an inactive DHCPv4 client remains listed in this table is a local matter to the CPE. |
- | 2.2 |
| IPv4AddressNumberOfEntries | unsignedInt | - | The number of entries in the IPv4Address table. | - | 2.2 |
| OptionNumberOfEntries | unsignedInt | - | The number of entries in the Option table. | - | 2.2 |
| Device.DHCPv4.Server.Pool.{i}.Client.{i}.IPv4Address.{i}. | object | - | IPv4 addresses assigned to this client.
At most one entry in this table can exist with a given value for IPAddress. |
- | 2.2 |
| IPAddress | string | - | [IPv4Address] IPv4 address. | - | 2.2 |
| LeaseTimeRemaining | dateTime | - | The time at which the DHCP lease will expire or 0001-01-01T00:00:00Z if not known. For an infinite lease, the parameter value MUST be 9999-12-31T23:59:59Z. | - | 2.2 |
| Device.DHCPv4.Server.Pool.{i}.Client.{i}.Option.{i}. | object | - | DHCPv4 options supplied by this client, e.g. VendorClassID (Option 60), ClientID (option 61) or UserClassID (Option 77). | - | 2.2 |
| Tag | unsignedInt[0:255] | - | Option tag as defined in [RFC2132]. | - | 2.2 |
| Value | hexBinary(255) | - | A hexbinary encoded option value. | - | 2.2 |
| Device.DHCPv4.Relay. | object | - | DHCP Relay Agent (conditional relaying). | - | 2.0 |
| Device.DHCPv4.Relay.Forwarding.{i}. | object | W | DHCP Relay Agent Forwarding table. For enabled table entries, if Interface is not a valid reference then the table entry is inoperable and the CPE MUST set Status to Error_Misconfigured.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. |
- | 2.0 |
| VendorClassID | string(255) | W | Pool association criterion. Used to identify one or more LAN devices, value of the DHCP Vendor Class Identifier (Option 60) as defined in [RFC2132], matched according to the criterion in VendorClassIDMode. Case sensitive. This is a normal string, e.g. "abc" is represented as "abc" and not say "616263" hex. However, if the value includes non-printing characters then such characters have to be represented using XML escapes, e.g. #x0a for line-feed. An empty string indicates this criterion is not used as a relay classification criterion. |
<Empty> | 2.0 |
| ClientID | hexBinary(255) | W | Pool association criterion. A hexbinary string used to identify one or more LAN devices, value of the DHCP Client Identifier (Option 61) as defined in [RFC2132]. The option value is binary, so an exact match is REQUIRED. An empty string indicates this criterion is not used as a relay classification criterion. |
<Empty> | 2.0 |
| UserClassID | hexBinary(255) | W | Pool association criterion. A hexbinary string used to identify one or more LAN devices, value of the DHCP User Class Identifier (Option 77) as defined in [RFC3004]. An empty string indicates this criterion is not used as a relay classification criterion. |
<Empty> | 2.0 |
| Chaddr | string | W | [MACAddress] Pool association criterion. Hardware address (MAC address) of the physical interface of the DHCP client. An empty string indicates this criterion is not used as a relay classification criterion. |
<Empty> | 2.0 |
| ChaddrMask | string | W | [MACAddress] Bit-mask for the MAC address, where matching of a packet's MAC address with the Chaddr is only to be done for bit positions set to one in the mask. A mask of FF:FF:FF:FF:FF:FF or an empty string indicates all bits of the Chaddr are to be used for relay classification. | <Empty> | 2.0 |
| Device.DHCPv6. | object | - | The Dynamic Host Configuration Protocol (DHCP) IPv6 object [RFC3315]. This entire object applies to IPv6 only. It contains the Client and Server objects. | - | 2.2 |
| ClientNumberOfEntries | unsignedInt | - | The number of entries in the Client table. | - | 2.2 |
| Device.DHCPv6.Client.{i}. | object | W | This object contains DHCPv6 client settings for an associated IP Interface indicated by Interface. For enabled table entries, if Interface is not a valid reference to an IPv6-capable interface (that is attached to the IPv6 stack), then the table entry is inoperable and the CPE MUST set Status to Error_Misconfigured. Note: The Client table includes a unique key parameter that is a strong reference. If a strongly referenced object is deleted, the CPE will set the referencing parameter to an empty string. However, doing so under these circumstances might cause the updated Client row to then violate the table's unique key constraint; if this occurs, the CPE MUST set Status to Error_Misconfigured and disable the offending Client row. This table MUST contain at least 1 entry. At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for Interface. |
- | 2.2 |
| Enable | boolean | W | Enables or disables this Client entry. | false | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. | - | 2.2 |
| Interface | string(256) | W | The value MUST be the path name of a row in the IP.Interface table. If the referenced object is deleted, the parameter value MUST be set to an empty string. The IP Interface associated with the Client entry. This will reference an IPv6-capable interface (that is attached to the IPv6 stack), otherwise the table entry will be inoperable. | <Empty> | 2.2 |
| Status | string | - | The status of this table entry. Enumeration of:
The Error_Misconfigured value indicates that a necessary configuration value is undefined or invalid. The Error value MAY be used by the CPE to indicate a locally defined error condition. |
"Disabled" | 2.2 |
| DUID | hexBinary(130) | - | The client's DHCP Unique Identifier (DUID) [Section 9/RFC3315]. DUID is set by the CPE. | - | 2.2 |
| RequestAddresses | boolean | W | Enables or disables inclusion of the Identity Association (IA) for Non-Temporary Address option OPTION_IA_NA(3) [Section 22.4/RFC3315] in Solicit messages. | true | 2.2 |
| RequestPrefixes | boolean | W | Enables or disables inclusion of the Identity Association (IA) for Prefix Delegation option OPTION_IA_PD(25) [Section 10/RFC3633] in Solicit messages. Note that this is only appropriate for an upstream interface on a requesting router, e.g. for an RG WAN interface. |
false | 2.2 |
| RapidCommit | boolean | W | Enables or disables inclusion of the Rapid Commit option OPTION_RAPID_COMMIT(14) [Section 22.14/RFC3315] in Solicit messages. | false | 2.2 |
| Renew | boolean | W | When set to true, the Client will renew its DHCPv6-supplied information (i.e. the CPE will do a renew or information request as needed, updating both stateful and stateless parameter values discovered by this Client instance). The value of this parameter is not part of the device configuration and is always false when read. |
false | 2.2 |
| SuggestedT1 | int[-1:] | W | T1 value, in seconds, that the client SHOULD use when sending IA options, e.g. OPTION_IA_NA [Section 22.4/RFC3315] and OPTION_IA_PD [Section 10/RFC3633]. A value of -1 indicates that no T1 value is specified. |
- | 2.2 |
| SuggestedT2 | int[-1:] | W | T2 value, in seconds, that the client SHOULD use when sending IA options, e.g. OPTION_IA_NA [Section 22.4/RFC3315] and OPTION_IA_PD [Section 10/RFC3633]. A value of -1 indicates that no T2 value is specified. |
- | 2.2 |
| SupportedOptions | string | - | Comma-separated list of unsigned integers. The options that the client is able to process in server responses. This list MUST include both top-level and encapsulated options, e.g. if the client is able to process OPTION_IA_NA (3) with an encapsulated OPTION_IAADDR (5), the list would be expected to include both 3 and 5. | - | 2.2 |
| RequestedOptions | string | W | Comma-separated list of unsigned integers. An ordered list of the top-level options (i.e. not encapsulated options) that the client will explicitly request from the server. This parameter is intended only for options that are not necessary for the basic operation of the protocol, and are not modeled elsewhere. For example, it is appropriate for OPTION_DNS_SERVERS [RFC3646] but is not appropriate for OPTION_SERVERID (which is part of the protocol), OPTION_IA_NA (which is modeled via RequestAddresses) or OPTION_IA_PD (which is modeled via RequestPrefixes). However, the CPE MUST NOT reject an attempt to set this parameter to a value that includes options that it regards as inappropriate; instead, it MUST accept the requested options and handle them as best it can. Loosely speaking, these are the options that the client will include in OPTION_ORO [RFC3315] but the client is free to decide (in accordance with [RFC3315]) in which messages to request which option, whether also to request additional options, whether not to request inappropriate options, and in which order to request any options that are also in SupportedOptions. |
- | 2.2 |
| ServerNumberOfEntries | unsignedInt | - | The number of entries in the Server table. | - | 2.2 |
| SentOptionNumberOfEntries | unsignedInt | - | The number of entries in the SentOption table. | - | 2.2 |
| ReceivedOptionNumberOfEntries | unsignedInt | - | The number of entries in the ReceivedOption table. | - | 2.2 |
| Device.DHCPv6.Client.{i}.Server.{i}. | object | - | This is a transitory table that lists the discovered DHCPv6 servers (it does not model a local DHCP server). Table entries are automatically created to correspond with these servers. However, it is a local matter to the CPE when to delete old table entries.
At most one entry in this table can exist with a given value for SourceAddress. |
- | 2.2 |
| SourceAddress | string | - | [IPv6Address] The IP address from which the message most recently received from this server was sent. | - | 2.2 |
| DUID | hexBinary(130) | - | The server's DHCP Unique Identifier (DUID) [Section 9/RFC3315] as received via OPTION_SERVERID. | - | 2.2 |
| InformationRefreshTime | dateTime | - | The OPTION_INFORMATION_REFRESH_TIME value [RFC4242] that was most recently received from this server, converted to the dateTime at which the associated information will expire. If no such option has been received, the parameter value MUST be the "Unknown Time" 0001-01-01T00:00:00Z. If the information will never expire, the parameter value MUST be infinite time 9999-12-31T23:59:59Z. | - | 2.2 |
| Device.DHCPv6.Client.{i}.SentOption.{i}. | object | W | The top-level options and option values (including any encapsulated options) that the client will send to the server. This table is intended only for options that are not part of the basic operation of the protocol, and whose values are simple, do not often change and are not modeled elsewhere. For example, it is appropriate for OPTION_USER_CLASS (whose value is a list of user classes) but is not appropriate for OPTION_RECONF_MSG (which is part of the protocol), OPTION_IA_NA (which is modeled via RequestAddresses) or OPTION_RAPID_COMMIT (which is modeled via RapidCommit).
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for Tag. |
- | 2.2 |
| Enable | boolean | W | Enables or disables this SentOption entry. | false | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. | - | 2.2 |
| Tag | unsignedInt[0:65535] | W | Option tag (code) [Section 22.1/RFC3315]. | - | 2.2 |
| Value | hexBinary(65535) | W | A hexbinary encoded option data [Section 22.1/RFC3315]. Note: The length of the option data is option-len octets, as specified in [Section 22.1/RFC3315]. |
<Empty> | 2.2 |
| Device.DHCPv6.Client.{i}.ReceivedOption.{i}. | object | - | This is a transitory table that lists all the options received from all servers. Table entries are automatically created to correspond with received options. However, it is a local matter to the CPE when to delete old table entries. If the same option is received multiple times, whether from one or more servers, it is up to the CPE to decide which entries to include (i.e. whether the same option will be present multiple times). In order to allow for the same option to be present multiple times within the table, this table has no unique key defined. |
- | 2.2 |
| Tag | unsignedInt[0:65535] | - | Option tag (code) [Section 22.1/RFC3315]. | - | 2.2 |
| Value | hexBinary(65535) | - | A hexbinary encoded option data [Section 22.1/RFC3315]. | - | 2.2 |
| Server | string | - | The value MUST be the path name of a row in the Server table. If the referenced object is deleted, the parameter value MUST be set to an empty string. This is the server that sent the option to the client. Each ReceivedOption entry MUST have an associated server. | - | 2.2 |
| Device.DHCPv6.Server. | object | - | DHCPv6 server configuration. | - | 2.2 |
| Enable | boolean | W | Enables or disables the DHCPv6 server function. | - | 2.2 |
| PoolNumberOfEntries | unsignedInt | - | The number of entries in the Pool table. | - | 2.2 |
| Device.DHCPv6.Server.Pool.{i}. | object | W | DHCPv6 server pool table. Each instance of this object defines a DHCPv6 server pool. Client requests are associated with pools based on criteria such as source interface, supplied DHCPv6 options, and source address. Overlapping pool ranges MUST be supported. For enabled table entries, if Interface is not a valid reference to an IPv6-capable interface (that is attached to the IPv6 stack) then the table entry is inoperable and the CPE MUST set Status to Error_Misconfigured.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for Order. |
- | 2.2 |
| Enable | boolean | W | Enables or disables this Pool entry. | false | 2.2 |
| Status | string | - | The status of this entry. Enumeration of:
The Error_Misconfigured value indicates that a necessary configuration value is undefined or invalid. The Error value MAY be used by the CPE to indicate a locally defined error condition. |
"Disabled" | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. | - | 2.2 |
| Order | unsignedInt[1:] | W | Position of the Pool entry in the order of precedence. A value of 1 indicates the first entry considered (highest precedence). For each DHCPv6 request, the highest ordered entry that matches the association criteria is applied. All lower order entries are ignored. When this value is modified, if the value matches that of an existing entry, the Order value for the existing entry and all lower Order entries is incremented (lowered in precedence) to ensure uniqueness of this value. A deletion causes Order values to be compacted. When a value is changed, incrementing occurs before compaction. The value of Order on creation of a Pool table entry MUST be one greater than the largest current value (initially assigned the lowest precedence). |
- | 2.2 |
| Interface | string(256) | W | The value MUST be the path name of a row in the IP.Interface table. If the referenced object is deleted, the parameter value MUST be set to an empty string. The IP Interface associated with the Pool entry. | <Empty> | 2.2 |
| DUID | hexBinary(130) | W | Pool association criterion. A hexbinary string used to identify one or more LAN devices, value of the DHCPv6 Client Identifier (Option 1) [Section 22.2/RFC3315]. The option value is binary, so an exact match is REQUIRED. An empty string indicates this criterion is not used. |
<Empty> | 2.2 |
| DUIDExclude | boolean | W | If false, matching packets are those that match the DUID entry, if specified. If true, matching packets are those that do not match the DUID entry, if specified. |
false | 2.2 |
| VendorClassID | hexBinary(65535) | W | Pool association criterion. A hexbinary string used to identify one or more LAN devices, value of the DHCPv6 Vendor Class Identifier (Option 16) [Section 22.16/RFC3315]. The option value is binary, so an exact match is REQUIRED. An empty string indicates this criterion is not used. |
<Empty> | 2.2 |
| VendorClassIDExclude | boolean | W | If false, matching packets are those that match the VendorClassID entry, if specified. If true, matching packets are those that do not match the VendorClassID entry, if specified. |
false | 2.2 |
| UserClassID | hexBinary(65535) | W | Pool association criterion. A hexbinary string used to identify one or more LAN devices, value of the DHCPv6 User Class Identifier (Option 15) [Section 22.15/RFC3315]. An empty string indicates this criterion is not used. |
<Empty> | 2.2 |
| UserClassIDExclude | boolean | W | If false, matching packets are those that match the UserClassID entry, if specified. If true, matching packets are those that do not match the UserClassID entry, if specified. |
false | 2.2 |
| SourceAddress | string | W | [IPv6Address] Pool association criterion. Source address (link-layer address) of DHCPv6 messages sent from the DHCPv6 client. This criterion is only likely to be useful if this is a link-layer address. An empty string indicates this criterion is not used for serving. |
<Empty> | 2.2 |
| SourceAddressMask | string | W | [IPv6Address] Bit-mask for the source address, where matching of a packet's source address with the SourceAddress is only to be done for bit positions set to one in the mask. A mask of an empty string indicates all bits of the SourceAddress are to be used. | <Empty> | 2.2 |
| SourceAddressExclude | boolean | W | If false, matching packets are those that match the (masked) SourceAddress entry, if specified. If true, matching packets are those that do not match the (masked) SourceAddress entry, if specified. |
false | 2.2 |
| IANAEnable | boolean | W | Enables or disables IANA offers. | - | 2.2 |
| IANAManualPrefixes | string | W | Comma-separated list (up to 8 items) of strings. Each list item MUST be the path name of a row in the IP.Interface.{i}.IPv6Prefix table. If the referenced object is deleted, the corresponding item MUST be removed from the list. Manually-configured prefixes from which IA_NA addresses will be assigned. Each referenced prefix MUST have a IP.Interface.{i}.IPv6Prefix.{i}.StaticType of Static or Child. All clients that request IA_NA and match filter criteria on this Interface MUST be offered IA_NA addresses from all of the Valid (IP.Interface.{i}.IPv6Prefix.{i}.ValidLifetime is infinite or in the future) /64 prefixes in this list. Prefixes MUST be associated with the interface instance referenced by Interface. |
<Empty> | 2.2 |
| IANAPrefixes | string | - | Comma-separated list (up to 8 items) of strings. Each list item MUST be the path name of a row in the IP.Interface.{i}.IPv6Prefix table. If the referenced object is deleted, the corresponding item MUST be removed from the list. All prefixes from which IA_NA addresses will be assigned. This list can include:
|
- | 2.2 |
| IAPDEnable | boolean | W | Enables or disables IAPD offers. | - | 2.2 |
| IAPDManualPrefixes | string | W | Comma-separated list (up to 8 items) of strings. Each list item MUST be the path name of a row in the IP.Interface.{i}.IPv6Prefix table. If the referenced object is deleted, the corresponding item MUST be removed from the list. Manually-configured prefixes from which IA_PD prefixes will be derived. This list can include:
All clients that request IA_PD and match filter criteria on this Interface MUST be offered IA_PD prefixes derived from all of the Valid (IP.Interface.{i}.IPv6Prefix.{i}.ValidLifetime is infinite or in the future) prefixes in this list. |
<Empty> | 2.2 |
| IAPDPrefixes | string | - | Comma-separated list (up to 8 items) of strings. Each list item MUST be the path name of a row in the IP.Interface.{i}.IPv6Prefix table. If the referenced object is deleted, the corresponding item MUST be removed from the list. All prefixes for which IA_PD prefixes will be assigned. This list can include:
|
- | 2.2 |
| IAPDAddLength | unsignedInt[:64] | W | The RECOMMENDED minimum number of bits to add to IAPDManualPrefixes or IAPDPrefixes in order to determine the length of prefixes that are offered in an IA_PD. The device is responsible for ensuring that it does not delegate a prefix longer than /64. The device can have additional logic that is used (in conjunction with this parameter) to determine the actual length of prefixes offered in an IA_PD. | - | 2.2 |
| ClientNumberOfEntries | unsignedInt | - | The number of entries in the Client table. | 0 | 2.2 |
| OptionNumberOfEntries | unsignedInt | - | The number of entries in the Option table. | 0 | 2.2 |
| Device.DHCPv6.Server.Pool.{i}.Client.{i}. | object | - | DHCPv6 client table. This table lists details of DHCPv6 clients that matched the filter criteria of this Pool entry.
At most one entry in this table can exist with a given value for Alias, or with a given value for SourceAddress. |
- | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. | - | 2.2 |
| SourceAddress | string | - | [IPv6Address] Source address of the DHCPv6 client. | - | 2.2 |
| Active | boolean | - | Whether or not the DHCPv6 client is currently present on the LAN. The method of presence detection is a local matter to the CPE. The ability to list inactive DHCPv6 clients is OPTIONAL. If the CPE includes inactive DHCPv6 clients in this table, Active MUST be set to false for each inactive DHCPv6 client. The length of time an inactive DHCPv6 client remains listed in this table is a local matter to the CPE. |
- | 2.2 |
| IPv6AddressNumberOfEntries | unsignedInt | - | The number of entries in the IPv6Address table. | - | 2.2 |
| IPv6PrefixNumberOfEntries | unsignedInt | - | The number of entries in the IPv6Prefix table. | - | 2.2 |
| OptionNumberOfEntries | unsignedInt | - | The number of entries in the Option table. | - | 2.2 |
| Device.DHCPv6.Server.Pool.{i}.Client.{i}.IPv6Address.{i}. | object | - | IPv6 addresses assigned to this client via IA_NA.
At most one entry in this table can exist with a given value for IPAddress. |
- | 2.2 |
| IPAddress | string | - | [IPv6Address] IPv6 address. | - | 2.2 |
| PreferredLifetime | dateTime | - | The time at which this address will cease to be preferred (i.e. will become deprecated), or 0001-01-01T00:00:00Z if not known. For an infinite lifetime, the parameter value MUST be 9999-12-31T23:59:59Z. | - | 2.2 |
| ValidLifetime | dateTime | - | The time at which this address will cease to be valid (i.e. will become invalid), or 0001-01-01T00:00:00Z if unknown. For an infinite lifetime, the parameter value MUST be 9999-12-31T23:59:59Z. | - | 2.2 |
| Device.DHCPv6.Server.Pool.{i}.Client.{i}.IPv6Prefix.{i}. | object | - | IPv6 prefixes delegated to this client via IA_PD.
At most one entry in this table can exist with a given value for Prefix. |
- | 2.2 |
| Prefix | string | - | [IPv6Prefix] IPv6 address prefix. | - | 2.2 |
| PreferredLifetime | dateTime | - | The time at which this prefix will cease to be preferred (i.e. will become deprecated), or 0001-01-01T00:00:00Z if not known. For an infinite lifetime, the parameter value MUST be 9999-12-31T23:59:59Z. | - | 2.2 |
| ValidLifetime | dateTime | - | The time at which this prefix will cease to be valid (i.e. will become invalid), or 0001-01-01T00:00:00Z if unknown. For an infinite lifetime, the parameter value MUST be 9999-12-31T23:59:59Z. | - | 2.2 |
| Device.DHCPv6.Server.Pool.{i}.Client.{i}.Option.{i}. | object | - | DHCPv6 options supplied by this client, e.g. DUID (Option 1), UserClassID (Option 15) or VendorClassID (option 16). | - | 2.2 |
| Tag | unsignedInt[0:65535] | - | Option tag (code) [Section 22.1/RFC3315]. | - | 2.2 |
| Value | hexBinary(65535) | - | A hexbinary encoded option value. | - | 2.2 |
| Device.DHCPv6.Server.Pool.{i}.Option.{i}. | object | W | This object specifies the DHCPv6 options that MUST, if enabled, be offered to clients whose DHCPv6 requests are associated with this pool. If PassthroughClient is specified, and the referenced client has a value for a given option then the PassthroughClient option value will be sent instead of Value. Otherwise, Value will be sent.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for Tag. |
- | 2.2 |
| Enable | boolean | W | Enables or disables this Option entry. | false | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. | - | 2.2 |
| Tag | unsignedInt[0:65535] | W | Option tag (code) [Section 22.1/RFC3315]. | - | 2.2 |
| Value | hexBinary(65535) | W | A hexbinary encoded option value. | <Empty> | 2.2 |
| PassthroughClient | string(256) | W | The value MUST be the path name of a row in the Client table. If the referenced object is deleted, the parameter value MUST be set to an empty string. Indicates whether this Option entry is configured for passthrough. If PassthroughClient is specified, and the referenced client (since boot) has received a value from an associated upstream DHCPv6 server for the given Tag option, then the referenced client's option value will be sent instead of Value. Otherwise, Value will be sent. An empty string indicates that passthrough is not configured for this Option entry. |
<Empty> | 2.2 |
| Device.IEEE8021x. | object | - | IEEE 802.1x object [802.1x-2004], where Supplicant models authentication supplicants. | - | 2.0 |
| Device.IEEE8021x.Supplicant.{i}. | object | W | 802.1x supplicant authentication provisioning and status information associated with an interface to be authenticated (e.g. an Ethernet.Link instance). For enabled table entries, if Interface is not a valid reference then the table entry is inoperable and the CPE MUST set Status to Error_Misconfigured. Note: The Supplicant table includes a unique key parameter that is a strong reference. If a strongly referenced object is deleted, the CPE will set the referencing parameter to an empty string. However, doing so under these circumstances might cause the updated Supplicant row to then violate the table's unique key constraint; if this occurs, the CPE MUST set Status to Error_Misconfigured and disable the offending Supplicant row. This table MUST contain at least 1 entry. At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. At most one enabled entry in this table can exist with a given value for Interface. |
- | 2.0 |
| Reset | boolean | W | When set to true, the device MUST reset the session by performing an initial authentication attempt as defined in [Section 9.6.1.3/802.1x-2004], Initialize Port by sending out the EAP start message. The device MUST initiate the reset after completion of the current CWMP session. The device MAY delay resetting the resource in order to avoid interruption of a user service such as an ongoing voice call. When read, this parameter returns false, regardless of the actual value. The value of this parameter is not part of the device configuration and is always false when read. |
- | 2.0 |
| Disconnect | boolean | W | When set to true, the device MUST disconnect (forced unauthentication) the resource. The device MUST initiate the disconnect after completion of the current CWMP session. The device MAY delay re-authentication of the resource in order to avoid interruption of a user service such as an ongoing voice call. When read, this parameter returns false, regardless of the actual value. The value of this parameter is not part of the device configuration and is always false when read. |
- | 2.0 |
| Device.Firewall. | object | - | Firewall configuration object. The Config parameter enables and disables the Firewall, and can select either a predefined configuration (High or Low) or an explicitly-defined Advanced configuration. For an Advanced configuration, AdvancedLevel controls the currently active Firewall Level, and the Firewall Levels are defined in the Level, Chain and Chain.{i}.Rule tables. The Firewall rules modeled by this object operate only on the forwarding path. This means that they affect only routed traffic, and do not affect traffic that is destined for or generated by the CPE. Note that any NAT processing on the ingress packet occurs before Firewall rules are applied so, for example, the Firewall rules will see the translated destination IP address and port in a downstream packet that has passed through the NAT. See [Appendix VIII/TR-181i2a2] for an example Advanced configuration. |
- | 2.0 |
| Enable | boolean | W | Enables or disables the Firewall. Firewalls often implement additional Denial of Service and other vulnerability protections, such as those described in [ICSA-Baseline]. If a Stateful Firewall is enabled, then it is assumed that all implemented stateful protections are enabled, unless they are overridden by some other part of the data model. |
- | 2.2 |
| Config | string | W | How this firewall is configured. Enumeration of:
Vendors can extend the enumerated values with vendor specific extensions, in which case the rules outlined in [Section 3.3/TR-106a2] MUST be adhered to. |
- | 2.0 |
| AdvancedLevel | string | W | The value MUST be the path name of a row in the Firewall.Level table. If the referenced object is deleted, the parameter value MUST be set to an empty string. Selects the currently active Firewall Level. | - | 2.2 |
| Type | string | - | Firewall Type. Enumeration of:
A Stateless Firewall treats each packet individually and thus has no concept of sessions. Therefore a Stateless Firewall cannot distinguish between unsolicited downstream traffic and downstream traffic in response to outbound messages. This means that it has to accept all incoming downstream traffic. Furthermore, because a Stateless Firewall treats each packet individually, it does not provide any DoS or vulnerability protections. A Stateful Firewall maintains state about previous packets and thus supports sessions. Therefore a Stateful Firewall can distinguish between solicited and unsolicited downstream traffic. In a Stateful Firewall, explicitly configured rules only apply to unsolicited traffic, and can not cause packets received in response to an upstream request to be dropped. Furthermore, because a Stateful Firewall maintains state, it can provide DoS and vulnerability protections. A device that has a Stateless Firewall depends on the NAT to provide protection against unsolicited downstream IPv4 traffic. This is because, as noted above, a Stateless Firewall has to be configured to accept all incoming downstream traffic. For IPv6 there is no NAT, so a Stateless Firewall can not provide simple security protections against unsolicited downstream IPv6 traffic. |
- | 2.2 |
| LevelNumberOfEntries | unsignedInt | - | The number of entries in the Level table. | - | 2.2 |
| ChainNumberOfEntries | unsignedInt | - | The number of entries in the Chain table. | - | 2.2 |
| Device.Firewall.Level.{i}. | object | W | Firewall Level table. When an Advanced configuration is selected, AdvancedLevel selects the currently active entry in this table. Each Level table entry references the Chain that contains the rules for this level.
At most one entry in this table can exist with a given value for Alias, or with a given value for Name. On creation of a new table entry, the CPE MUST choose initial values for Alias and Name such that the new entry does not conflict with any existing entries. |
- | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. | - | 2.2 |
| Name | string(64) | W | Human-readable name associated with this Level entry. | - | 2.2 |
| Description | string(256) | W | Human-readable description associated with this Level entry. | - | 2.2 |
| Order | unsignedInt[1:] | W | Position of the Level entry for user interface display; levels can be presented according to an increasing or decreasing level of security. When this value is modified, if the value matches that of an existing entry, the Order value for the existing entry and all greater-valued Order entries is incremented to ensure uniqueness of this value. A deletion causes Order values to be compacted. When a value is changed, incrementing occurs before compaction. The value of Order on creation of a Level table entry MUST be one greater than the largest current value. |
- | 2.2 |
| Chain | string | - | The value MUST be the path name of a row in the Firewall.Chain table. If the referenced object is deleted, the parameter value MUST be set to an empty string. The Chain containing Firewall Level Rules associated with this Level entry. On creation of a new Level entry, the device will automatically create a new Chain table entry that this Chain parameter will reference. |
- | 2.2 |
| PortMappingEnabled | boolean | W | Indicates whether NAT port mapping is enabled or disabled when this is the active Level. For a Stateless Firewall this can be set to false to force any port mappings to be operationally disabled (for a Stateful Firewall this is not necessary because the same effect can be achieved via Firewall rules). This parameter affects all the interfaces on which NAT is enabled. It operationally enables or disables port mapping functionality and therefore does not affect the individual NAT.PortMapping.{i}.Enable settings. Note that the current NAT status and NAT port mapping status are indicated by the NAT.InterfaceSetting.{i}.Status parameter. |
true | 2.2 |
| DefaultPolicy | string | W | Default action for packets not matching any of the level rules. Enumeration of:
|
"Drop" | 2.2 |
| DefaultLogPolicy | boolean | W | Enable or disable logging, in a DeviceInfo.VendorLogFile, of packets not matching any of the level rules. | false | 2.2 |
| Device.Firewall.Chain.{i}. | object | W | Firewall Chain table. Each entry contains an ordered list of Rule objects which can themselves reference other Chain instances. A hierarchy of rules can therefore be created. A given Firewall Chain's rules are all created by the same entity, as indicated by the Creator parameter.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias, or with a given value for Name. On creation of a new table entry, the CPE MUST choose initial values for Alias and Name such that the new entry does not conflict with any existing entries. |
- | 2.2 |
| Enable | boolean | W | Enables or disables this Chain entry. | false | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. | - | 2.2 |
| Name | string(64) | W | Human-readable name associated with this Chain entry. | - | 2.2 |
| Creator | string | - | Creator of this Chain entry and of its Rules. Enumeration of:
Note that this is the entity that originally created the Chain entry. The value of this parameter does not change if the Chain entry or one of its rules is subsequently changed by another entity. |
"ACS" | 2.2 |
| RuleNumberOfEntries | unsignedInt | - | The number of entries in the Rule table. | - | 2.2 |
| Device.Firewall.Chain.{i}.Rule.{i}. | object | W | Firewall Rule table. Each entry defines a Firewall packet selection rule. The Target parameter defines the action to perform for traffic matching this rule: the packet can be dropped, accepted, rejected or passed to another Chain. This table MUST NOT contain dynamic Firewall rules associated with Stateful Firewall sessions. All entries are created by the creator of the parent Chain, as indicated by its Creator parameter. Rule entries in a Chain with a Creator of Defaults, ACS, UserInterface or (maybe) Other are referred to as Static Rules. Whether or not a Rule in a Chain with Creator Other is regarded as Static is a local matter to the CPE. Some of this object's parameter descriptions refer to whether a Rule is Static when specifying whether or not the parameter value can be modified. For enabled table entries, if SourceInterface is not a valid reference and SourceAllInterfaces is false, then the table entry is inoperable and the CPE MUST set Status to Error_Misconfigured.
At most one entry in this table (regardless of whether or not it is enabled) can exist with a given value for Alias. On creation of a new table entry, the CPE MUST choose an initial value for Alias such that the new entry does not conflict with any existing entries. |
- | 2.2 |
| Enable | boolean | W | Enables or disables this Rule entry. | false | 2.2 |
| Status | string | - | The status of this Rule entry. Enumeration of:
The Error_Misconfigured value indicates that a necessary configuration value is undefined or invalid. The Error value MAY be used by the CPE to indicate a locally defined error condition. |
"Disabled" | 2.2 |
| Order | unsignedInt[1:] | W | Position of the Rule entry in the order of precedence. A value of 1 indicates the first entry considered (highest precedence). For each packet, the highest ordered entry that matches the rule criteria is applied. All lower order entries are ignored. When this value is modified, if the value matches that of an existing entry, the Order value for the existing entry and all lower Order entries is incremented (lowered in precedence) to ensure uniqueness of this value. A deletion causes Order values to be compacted. When a value is changed, incrementing occurs before compaction. The value of Order on creation of a Rule table entry MUST be one greater than the largest current value (initially assigned the lowest precedence). |
- | 2.2 |
| Alias | string(64) | W | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. An initial unique value MUST be assigned when the CPE creates an instance of this object. | - | 2.2 |
| Description | string(256) | W | Human-readable description associated with this Rule entry. | - | 2.2 |
| Target | string | W | Action to perform for traffic matching this Rule entry. Enumeration of:
This parameter can only be modified if the Rule is Static (as explained in the object description). |
"Drop" | 2.2 |
| TargetChain | string | W | The value MUST be the path name of a row in the Firewall.Chain table. If the referenced object is deleted, the parameter value MUST be set to an empty string. Specifies the chain to process when Target equals TargetChain. If there are no matching rules in the referenced chain, processing continues with the next rule in this chain (if any). In other words, TargetChain behaves like a subroutine call. An empty string indicates no TargetChain is specified. This parameter can only be modified if the Rule is Static (as explained in the object description). |
<Empty> | 2.2 |
| Log | boolean | W | Enable or disable logging, in a DeviceInfo.VendorLogFile, of packets matching this Rule. If the Rule is not Static (as explained in the object description), whether changes to this parameter persist across re-boot is a local matter to the CPE. |
false | 2.2 |
| CreationDate | dateTime | - | Date and time when this Rule entry was created. | - | 2.2 |
| ExpiryDate | dateTime | W | The time at which this Rule entry will expire, or 0001-01-01T00:00:00Z if not known. For an infinite lifetime, the parameter value MUST be 9999-12-31T23:59:59Z. The only value that MUST be supported is 9999-12-31T23:59:59Z (i.e. support for rules that expire is OPTIONAL). When a rule expires, the CPE MUST automatically terminate that rule and MUST automatically delete the corresponding Rule table entry. This parameter can only be modified if the Rule is Static (as explained in the object description). |
9999-12-31T23:59:59Z | 2.2 |
| SourceInterface | string(256) | W | Rule criterion. The value MUST be the path name of a table row. If the referenced object is deleted, the parameter value MUST be set to an empty string.
This specifies the ingress interface associated with the entry. It MAY be a layer 1, 2 or 3 interface, however, the types of interfaces for which Rules can be instantiated is a local matter to the CPE. This parameter can only be modified if the Rule is Static (as explained in the object description). |
<Empty> | 2.2 |
| SourceInterfaceExclude | boolean | W | If false, the rule matches only those packets that match the SourceInterface entry, if specified. If true, the rule matches all packets except those that match the SourceInterface entry, if specified. This parameter can only be modified if the Rule is Static (as explained in the object description). |
false | 2.2 |
| SourceAllInterfaces | boolean | W | Rule criterion. This specifies that all ingress interfaces are associated with the entry. If true, the values of SourceInterface and SourceInterfaceExclude are ignored since all ingress interfaces are indicated. This parameter can only be modified if the Rule is Static (as explained in the object description). | false | 2.2 |
| DestInterface | string(256) | W | Rule criterion. The value MUST be the path name of a table row. If the referenced object is deleted, the parameter value MUST be set to an empty string.
This specifies the egress interface associated with the entry. It MAY be a layer 1, 2 or 3 interface, however, the types of interfaces for which Rules can be instantiated is a local matter to the CPE. This parameter can only be modified if the Rule is Static (as explained in the object description). |
<Empty> | 2.2 |
| DestInterfaceExclude | boolean | W | If false, the rule matches only those packets that match the DestInterface entry, if specified. If true, the rule matches all packets except those that match the DestInterface entry, if specified. This parameter can only be modified if the Rule is Static (as explained in the object description). |
false | 2.2 |
| DestAllInterfaces | boolean | W | Rule criterion. This specifies that all egress interfaces are associated with the entry. If true, the values of DestInterface and DestInterfaceExclude are ignored since all ingress interfaces are indicated. This parameter can only be modified if the Rule is Static (as explained in the object description). | false | 2.2 |
| IPVersion | int[-1:15] | W | Rule criterion.
IP Protocol Version (e.g. 4 for IPv4 and 6 for IPv6). A value of -1 indicates this criterion is not used for matching. This parameter can only be modified if the Rule is Static (as explained in the object description). |
-1 | 2.2 |
| DestIP | string | W | [IPAddress] Rule criterion. Destination IP address. An empty string indicates this criterion is not used for matching. Note that Firewall rules are applied after any NAT processing, so if NAT is enabled on the source interface this is always the translated address. This parameter can only be modified if the Rule is Static (as explained in the object description). |
<Empty> | 2.2 |
| DestMask | string | W | [IPPrefix] Destination IP address mask, but represented as an IP routing prefix using CIDR notation [RFC4632] (e.g. 192.168.0.0/16 in IPv4, and 2001:db8:3210:11aa::/64 in IPv6). If not an empty string, only the indicated portion of the DestIP address is to be used for matching. An empty string indicates that the full DestIP address is to be used for matching. This parameter can only be modified if the Rule is Static (as explained in the object description). |
<Empty> | 2.2 |
| DestIPExclude | boolean | W | If false, the rule matches only those packets that match the (masked) DestIP entry, if specified. If true, the rule matches all packets except those that match the (masked) DestIP entry, if specified. This parameter can only be modified if the Rule is Static (as explained in the object description). |
false | 2.2 |
| SourceIP | string | W | [IPAddress] Rule criterion. Source IP address. An empty string indicates this criterion is not used for matching. This parameter can only be modified if the Rule is Static (as explained in the object description). |
<Empty> | 2.2 |
| SourceMask | string | W | [IPPrefix] Source IP address mask, but represented as an IP routing prefix using CIDR notation [RFC4632] (e.g. 192.168.0.0/16 in IPv4, and 2001:db8:3210:11aa::/64 in IPv6). If not an empty string, only the indicated portion of the SourceIP address is to be used for matching. An empty string indicates that the full SourceIP address is to be used for matching. This parameter can only be modified if the Rule is Static (as explained in the object description). |
<Empty> | 2.2 |
| SourceIPExclude | boolean | W | If false, the rule matches only those packets that match the (masked) SourceIP entry, if specified. If true, the rule matches all packets except those that match the (masked) SourceIP entry, if specified. This parameter can only be modified if the Rule is Static (as explained in the object description). |
false | 2.2 |
| Protocol | int[-1:255] | W | Rule criterion.
Protocol number. A value of -1 indicates this criterion is not used for matching. This parameter can only be modified if the Rule is Static (as explained in the object description). |
-1 | 2.2 |
| ProtocolExclude | boolean | W | If false, the rule matches only those packets that match the Protocol entry, if specified. If true, the rule matches all packets except those that match the Protocol entry, if specified. This parameter can only be modified if the Rule is Static (as explained in the object description). |
false | 2.2 |
| DestPort | int[-1:65535] | W | Rule criterion.
Destination port number. A value of -1 indicates this criterion is not used for matching. Note that Firewall rules are applied after any NAT processing, so if NAT is enabled on the source interface this is always the translated port number. This parameter can only be modified if the Rule is Static (as explained in the object description). |
-1 | 2.2 |
| DestPortRangeMax | int[-1:65535] | W | Rule criterion.
If specified, indicates the Rule criterion is to include the port range from DestPort through DestPortRangeMax (inclusive). If specified, DestPortRangeMax MUST be greater than or equal to DestPort. A value of -1 indicates that no port range is specified. Note that Firewall rules are applied after any NAT processing, so if NAT is enabled on the source interface this is always the translated port number. This parameter can only be modified if the Rule is Static (as explained in the object description). |
-1 | 2.2 |
| DestPortExclude | boolean | W | If false, the rule matches only those packets that match the DestPort entry (or port range), if specified. If true, the rule matches all packets except those that match the DestPort entry (or port range), if specified. This parameter can only be modified if the Rule is Static (as explained in the object description). |
false | 2.2 |
| SourcePort | int[-1:65535] | W | Rule criterion.
Source port number. A value of -1 indicates this criterion is not used for matching. This parameter can only be modified if the Rule is Static (as explained in the object description). |
-1 | 2.2 |
| SourcePortRangeMax | int[-1:65535] | W | Rule criterion.
If specified, indicates the Rule criterion is to include the port range from SourcePort through SourcePortRangeMax (inclusive). If specified, SourcePortRangeMax MUST be greater than or equal to SourcePort. A value of -1 indicates that no port range is specified. This parameter can only be modified if the Rule is Static (as explained in the object description). |
-1 | 2.2 |
| SourcePortExclude | boolean | W | If false, the rule matches only those packets that match the SourcePort entry (or port range), if specified. If true, the rule matches all packets except those that match the SourcePort entry (or port range), if specified. This parameter can only be modified if the Rule is Static (as explained in the object description). |
false | 2.2 |
| DSCP | int[-1:63] | W | Rule criterion.
DiffServ codepoint (defined in [RFC2474]). If set to a Class Selector Codepoint (defined in [RFC2474]), all DSCP values that match the first 3 bits will be considered a valid match. A value of -1 indicates this criterion is not used for matching. This parameter can only be modified if the Rule is Static (as explained in the object description). |
-1 | 2.2 |
| DSCPExclude | boolean | W | If false, the rule matches only those packets that match the DSCP entry, if specified. If true, the rule matchess all packets except those that match the DSCP entry, if specified. This parameter can only be modified if the Rule is Static (as explained in the object description). |
false | 2.2 |
| Parameter |
|---|
| Device.ManagementServer.ConnectionRequestURL |
| Parameter |
|---|
| Parameter |
|---|
| Device.ManagementServer.ConnectionRequestURL |
| Parameter |
|---|
| Abbreviation | Description |
|---|---|
| R | Read support is REQUIRED. |
| W | Both Read and Write support is REQUIRED. This MUST NOT be specified for a parameter that is defined as read-only. |
| P | The object is REQUIRED to be present. |
| C | Creation and deletion of instances of the object via AddObject and DeleteObject is REQUIRED. |
| A | Creation of instances of the object via AddObject is REQUIRED, but deletion is not REQUIRED. |
| D | Deletion of instances of the object via DeleteObject is REQUIRED, but creation is not REQUIRED. |
| Name | Requirement |
|---|---|
| Device.Firewall. | P |
| AdvancedLevel | W |
| Type | R |
| LevelNumberOfEntries | R |
| ChainNumberOfEntries | R |
| Device.Firewall.Level.{i}. | C |
| Alias | W |
| Name | R |
| Order | W |
| Chain | R |
| PortMappingEnabled | W1 |
| DefaultPolicy | W |
| DefaultLogPolicy | W |
| Device.Firewall.Chain.{i}. | C |
| Enable | W |
| Alias | W |
| Name | W |
| Creator | R |
| RuleNumberOfEntries | R |
| Device.Firewall.Chain.{i}.Rule.{i}. | C |
| Enable | W |
| Status | R |
| Order | W |
| Alias | W |
| Target | W |
| TargetChain | W |
| SourceInterface | W |
| SourceInterfaceExclude | W |
| SourceAllInterfaces | W |
| DestInterface | W |
| DestInterfaceExclude | W |
| DestAllInterfaces | W |
| IPVersion | W |
| DestIP | W |
| DestMask | W |
| DestIPExclude | W |
| SourceIP | W |
| SourceMask | W |
| SourceIPExclude | W |
| Protocol | W |
| ProtocolExclude | W |
| DestPort | W |
| DestPortRangeMax | W |
| DestPortExclude | W |
| SourcePort | W |
| SourcePortRangeMax | W |
| SourcePortExclude | W |
| 1 | REQUIRED only for devices that support NAT. |
| Name | Requirement |
|---|---|
| Device.InterfaceStack.{i}. | P |
| HigherLayer | R |
| LowerLayer | R |
| Device.DNS. | P |
| SupportedRecordTypes | R |
| Name | Requirement |
|---|---|
| Device.Routing.Router.{i}.IPv4Forwarding.{i}. | C |
| Origin | R |
| Name | Requirement |
|---|---|
| Device.Routing. | P |
| RouterNumberOfEntries | R |
| Device.Routing.RIP. | P |
| Enable | W |
| SupportedModes | R |
| InterfaceSettingNumberOfEntries | R |
| Device.Routing.RIP.InterfaceSetting.{i}. | C |
| Enable | W |
| Status | R |
| Interface | W |
| Version | W |
| AcceptRA | W |
| SendRA | W |
| Device.Routing.RouteInformation. | P |
| Enable | W |
| InterfaceSettingNumberOfEntries | R |
| Device.Routing.RouteInformation.InterfaceSetting.{i}. | P |
| Status | R |
| Interface | R |
| SourceRouter | R |
| PreferredRouteFlag | R |
| Prefix | R |
| RouteLifetime | R |
| Device.Routing.Router.{i}. | C |
| Enable | W |
| Status | R |
| IPv6ForwardingNumberOfEntries | R |
| Device.Routing.Router.{i}.IPv6Forwarding.{i}. | C |
| Enable | W |
| Status | R |
| DestIPPrefix | W |
| NextHop | W |
| Interface | W |
| ForwardingMetric | W |
| Origin | R |
| Name | Requirement |
|---|---|
| Device.IP. | P |
| IPv4Enable | W |
| IPv4Status | R |
| Device.IP.Interface.{i}. | C |
| IPv4Enable | W |
| Device.IP.Interface.{i}.IPv4Address.{i}. | C |
| Status | R |
| Name | Requirement |
|---|---|
| Device.IP. | P |
| IPv6Capable | R |
| IPv6Enable | W |
| IPv6Status | R |
| ULAPrefix | W |
| InterfaceNumberOfEntries | R |
| Device.IP.Interface.{i}. | C |
| Enable | W |
| IPv6Enable | W |
| Status | R |
| Alias | W |
| Name | R |
| LastChange | R |
| LowerLayers | W |
| Type | R |
| ULAEnable | W |
| Reset | W |
| IPv6AddressNumberOfEntries | R |
| IPv6PrefixNumberOfEntries | R |
| Device.IP.Interface.{i}.IPv6Address.{i}. | C |
| Enable | W |
| Status | R |
| IPAddressStatus | R |
| IPAddress | W |
| Origin | R |
| Prefix | W |
| PreferredLifetime | W |
| ValidLifetime | W |
| Device.IP.Interface.{i}.IPv6Prefix.{i}. | C |
| Enable | W |
| Status | R |
| PrefixStatus | R |
| Prefix | W |
| Origin | R |
| OnLink | W |
| Autonomous | W |
| PreferredLifetime | W |
| ValidLifetime | W |
| Device.IP.Interface.{i}.Stats. | P |
| BytesSent | R |
| BytesReceived | R |
| PacketsSent | R |
| PacketsReceived | R |
| ErrorsSent | R |
| ErrorsReceived | R |
| UnicastPacketsSent | R |
| UnicastPacketsReceived | R |
| DiscardPacketsSent | R |
| DiscardPacketsReceived | R |
| MulticastPacketsSent | R |
| MulticastPacketsReceived | R |
| UnknownProtoPacketsReceived | R |
| Name | Requirement |
|---|---|
| Device.PPP. | P |
| SupportedNCPs | R |
| Device.PPP.Interface.{i}. | C |
| IPv6CPEnable | W1 |
| Device.PPP.Interface.{i}.IPv6CP. | P2 |
| LocalInterfaceIdentifier | R |
| RemoteInterfaceIdentifier | R |
| 1 | REQUIRED only for IPv6 capable devices. |
| 2 | REQUIRED only for IPv6 capable devices. |
| 1 | REQUIRED only for IPv4 capable devices. |
| 2 | REQUIRED only for IPv4 capable devices. |
| 3 | REQUIRED only for IPv6 capable devices. |
| 4 | REQUIRED only for IPv6 capable devices. |
| Name | Requirement |
|---|---|
| Device.Routing.Router.{i}.IPv4Forwarding.{i}. | -1 |
| Device.Routing.Router.{i}.IPv6Forwarding.{i}. | -2 |
| ForwardingPolicy | W |
| 1 | REQUIRED only for IPv4 capable devices. |
| 2 | REQUIRED only for IPv6 capable devices. |
| Name | Requirement |
|---|---|
| Device.NeighborDiscovery. | P |
| Enable | W |
| InterfaceSettingNumberOfEntries | R |
| Device.NeighborDiscovery.InterfaceSetting.{i}. | C |
| Enable | W |
| Status | R |
| Interface | W |
| RetransTimer | W |
| RtrSolicitationInterval | W |
| MaxRtrSolicitations | W |
| NUDEnable | W |
| RSEnable | W |
| Name | Requirement |
|---|---|
| Device.IPv6rd. | P |
| Enable | W |
| InterfaceSettingNumberOfEntries | R |
| Device.IPv6rd.InterfaceSetting.{i}. | P |
| Enable | W |
| Status | R |
| BorderRelayIPv4Addresses | W |
| AllTrafficToBorderRelay | W |
| SPIPv6Prefix | W |
| IPv4MaskLength | W |
| AddressSource | W |
| TunnelInterface | R |
| TunneledInterface | R |
| Name | Requirement |
|---|---|
| Device.DSLite. | P |
| Enable | W |
| InterfaceSettingNumberOfEntries | R |
| Device.DSLite.InterfaceSetting.{i}. | P |
| Enable | W |
| Status | R |
| EndpointAssignmentPrecedence | W |
| EndpointName | W |
| EndpointAddress | W |
| Origin | R |
| TunnelInterface | R |
| TunneledInterface | R |
| 1 | REQUIRED only for IPv4 capable devices. |
| 2 | REQUIRED only for IPv6 capable devices. |
| 3 | REQUIRED only for IPv4 capable devices. |
| 4 | REQUIRED only for IPv6 capable devices. |
| Name | Requirement |
|---|---|
| Device.DHCPv6. | P |
| Device.DHCPv6.Server. | P |
| Enable | W |
| PoolNumberOfEntries | R |
| Device.DHCPv6.Server.Pool.{i}. | C |
| Enable | W |
| Status | R |
| Order | W |
| Interface | W |
| IANAEnable | W |
| IAPDEnable | W |
| IANAPrefixes | R |
| IAPDAddLength | W |
| OptionNumberOfEntries | R |
| Device.DHCPv6.Server.Pool.{i}.Option.{i}. | C |
| Enable | W |
| Tag | W |
| Value | W |
| Name | Requirement |
|---|---|
| Device.DHCPv6.Server.Pool.{i}. | C |
| DUID | W |
| VendorClassID | W |
| UserClassID | W |
| SourceAddress | W |
| SourceAddressMask | W |