RFC 4702

The Dynamic Host Configuration Protocol (DHCP) Client Fully Qualified Domain Name (FQDN) Option

πŸ“… published October 2006, from ietf

Okay bestie, let's start at the very top! πŸŽ€ This is RFC 4702, called The Dynamic Host Configuration Protocol (DHCP) Client Fully Qualified Domain Name (FQDN) Option. It came out in October 2006 from the Network Working Group, and it's a Standards Track document πŸ“œ. Three people wrote it: M. Stapp and B. Volz from Cisco Systems, Inc., and Y. Rekhter from Juniper Networks 🧚. The header doesn't list any RFCs that it obsoletes or updates, so this one isn't replacing or tweaking anything else πŸ™ˆ

Status of This Memo πŸ“œ

This document specifies an Internet standards track protocol for the Internet community, and it's asking everyone for discussion and suggestions for improvements πŸ’¬ If you want to know where this protocol stands on the standardization ladder, check the current edition of the "Internet Official Protocol Standards" (STD 1) πŸ” Distribution of this memo is unlimited, so share away πŸ’–

Copyright (C) The Internet Society (2006).

Abstract ✨

This document describes a Dynamic Host Configuration Protocol for IPv4 (DHCPv4) option 🎁 It can be used to exchange information about a DHCPv4 client's fully qualified domain name, and about who is responsible for updating the DNS RR tied to the client's address assignment πŸ¦‹

Table of Contents πŸ“š

   1. Introduction ....................................................3
      1.1. Terminology ................................................3
      1.2. Models of Operation ........................................3
   2. The Client FQDN Option ..........................................4
      2.1. The Flags Field ............................................5
      2.2. The RCODE Fields ...........................................6
      2.3. The Domain Name Field ......................................6
           2.3.1. Deprecated ASCII Encoding ...........................7
   3. DHCP Client Behavior ............................................7
      3.1. Interaction with Other Options .............................7
      3.2. Client Desires to Update A RRs .............................8
      3.3. Client Desires Server to Do DNS Updates ....................8
      3.4. Client Desires No Server DNS Updates .......................8
      3.5. Domain Name and DNS Update Issues ..........................9
   4. DHCP Server Behavior ...........................................10
      4.1. When to Perform DNS Updates ...............................11
   5. DNS RR TTLs ....................................................12
   6. DNS Update Conflicts ...........................................12
   7. IANA Considerations ............................................13
   8. Security Considerations ........................................13
   9. Acknowledgements ...............................................14
   10. References ....................................................14
      10.1. Normative References .....................................14
      10.2. Informative References ...................................15

1. Introduction 🌸

Okay so, DNS ([2], [3]) keeps track of (among other things) the mapping between hosts' Fully Qualified Domain Names (FQDNs) [11] and the IP addresses given to those hosts πŸ—ΊοΈ That info lives in two kinds of Resource Records (RRs): A and PTR. The DNS update specification ([4]) describes how DNS info can be updated over a network. It's giving "keep everything in sync" πŸ”„

The Dynamic Host Configuration Protocol for IPv4 (DHCPv4 or just DHCP in this document) [5] is how a host (a DHCP client) can get certain configuration info along with its address πŸŽ€ This document defines a DHCP option, the Client FQDN option, which lets DHCP clients and servers swap info about the client's fully qualified domain name for an address, and about who is responsible for updating the DNS with the matching A and PTR RRs πŸ’…

1.1. Terminology πŸ“–

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [1]. Those are the official rules words, so read them carefully πŸ€“

1.2. Models of Operation 🧩

When a DHCP client gets a brand new address, a site's administrator might want the A RR for the client's FQDN, the PTR RR for the address, or both to get updated. So two separate DNS update transactions may happen ✨ Getting an address through DHCP involves two entities: a DHCP client and a DHCP server. In theory, each of them could do none, one, or both of the transactions. In practice though, not every combo makes sense πŸ™ƒ The DHCP Client FQDN option is mainly meant to work in these two cases:

  1. DHCP client updates the A RR, DHCP server updates the PTR RR.
  2. DHCP server updates both the A and the PTR RRs.

The only difference between these two cases is whether the FQDN-to-IP-address mapping gets updated by a DHCP client or by a DHCP server. The IP-address-to-FQDN mapping is updated by a DHCP server in both cases 🫢

Why these two matter while the others are unlikely comes down to authority over the respective DNS domain names πŸ‘‘ A DHCP client might be given authority over mapping its own A RRs, or that authority might be limited to a server, so the client can't list arbitrary addresses or attach its address to random domain names. In every case, the only sensible place for authority over the PTR RRs tied to an address is the DHCP server that allocates the address πŸ”

Note: A third case is supported: the client requests that the server perform no updates. However, this case is presumed to be rare because of the authority issues.

It's considered local policy to let DHCP clients and servers do DNS updates to zones 🌈 This document doesn't require any specific administrative policy, and it doesn't propose one. Also, this specification only applies to DHCP client and server processes. It doesn't apply to other processes that start DNS updates πŸ™…β€β™€οΈ

This document describes a DHCP option that a client can use to send all or part of its domain name to a DHCP server πŸ¦‹ Site-specific policy decides whether DHCP servers use the names clients offer, and what DHCP servers may do when clients don't supply domain names πŸ“‹

2. The Client FQDN Option πŸ’–

To update the IP-address-to-FQDN mapping, a DHCP server needs to know the FQDN of the client it leases the address to πŸ₯Ί So that the client can share its FQDN with the server, this document defines a new DHCP option called "Client FQDN". The Client FQDN option also has Flags, which DHCP servers can use to tell clients what's up with DNS updates, plus two deprecated RCODEs πŸ“

Clients MAY send the Client FQDN option, with appropriate Flags values, in both their DHCPDISCOVER and DHCPREQUEST messages πŸŽ€ If a client sends the Client FQDN option in its DHCPDISCOVER message, it MUST send the option in later DHCPREQUEST messages too, though the contents of the option MAY change πŸ”

Only one Client FQDN option MAY appear in a message, even though it may be split across a message as multiple options [9]. DHCP clients and servers that support this option MUST implement DHCP option concatenation [9]. In the terminology of [9], the Client FQDN option is a concatenation-requiring option 🧠

The code for this option is 81. Len holds the number of octets that come after the Len field, and the minimum value is 3 (octets) πŸ”’

The format of the Client FQDN option is:

     Code   Len    Flags  RCODE1 RCODE2   Domain Name
    +------+------+------+------+------+------+--
    |  81  |   n  |      |      |      |       ...
    +------+------+------+------+------+------+--

The above figure follows the conventions of [12] πŸ“

2.1. The Flags Field 🚩

The 1-octet Flags field looks like this:

     0 1 2 3 4 5 6 7
    +-+-+-+-+-+-+-+-+
    |  MBZ  |N|E|O|S|
    +-+-+-+-+-+-+-+-+

The "S" bit says whether the server SHOULD or SHOULD NOT perform the A RR (FQDN-to-address) DNS updates 🎯 A client sets the bit to 0 to say the server SHOULD NOT do the updates, and to 1 to say the server SHOULD do them. The bit's state in the server's reply shows what the server will actually do. If it's 1, the server has taken responsibility for A RR updates for the FQDN 🫑

The "O" bit shows whether the server has overridden the client's preference for the "S" bit. A client MUST set this bit to 0. A server MUST set this bit to 1 if the "S" bit in its reply to the client doesn't match the "S" bit it got from the client πŸ™…β€β™€οΈ

The "N" bit shows whether the server SHOULD NOT perform any DNS updates. A client sets this bit to 0 to ask that the server SHOULD perform updates (the PTR RR and possibly the A RR, based on the "S" bit), or to 1 to ask that the server SHOULD NOT perform any DNS updates. A server sets the "N" bit to show whether it SHALL (0) or SHALL NOT (1) perform DNS updates. If the "N" bit is 1, the "S" bit MUST be 0 πŸ’€

The "E" bit tells you how the Domain Name field is encoded. 1 means canonical wire format, without compression, as described in [3], Section 3.1. This encoding SHOULD be used by clients and MUST be supported by servers. 0 means the now-deprecated ASCII encoding (see Section 2.3.1). A server MUST use the same encoding the client used. A server that doesn't support the deprecated ASCII encoding MUST ignore Client FQDN options that use it πŸ”€

The remaining bits in the Flags field are reserved for future assignment. DHCP clients and servers that send the Client FQDN option MUST clear the MBZ bits, and they MUST ignore those bits 🧹

2.2. The RCODE Fields πŸ—‚οΈ

The two 1-octet RCODE1 and RCODE2 fields are deprecated. A client SHOULD set these to 0 when sending the option, and SHOULD ignore them on receipt. A server SHOULD set these to 255 when sending the option, and MUST ignore them on receipt 🫠

Even though this option with these fields is already in wide use, the fields are kept πŸ₯Ή They were first defined so a DHCP server could tell a DHCP client the Response Code from any A (RCODE1) or PTR (RCODE2) RR DNS updates it had done. A value of 255 meant an update had started but wasn't finished yet. Each of these fields is one octet long. They were defined before EDNS0 [13], which describes a way to stretch a DNS RCODE to 12 bits. That's another reason they're deprecated πŸ“‰

If the client needs to confirm that the DNS update has been done, it MAY use a DNS query to check whether the mapping is up to date. But depending on the load on the DHCP and DNS servers and the DNS propagation delays, the client can only infer success 🀞 If the info isn't found to be up to date in DNS, the authoritative servers might not have finished the updates or zone transfers yet, or caching resolvers may not have updated their caches πŸ•°οΈ

2.3. The Domain Name Field πŸŽ€

okay so the Domain Name part of the option carries all or part of a DHCP client's FQDN 🌸 The data in here SHOULD show up in canonical wire format, as specified in [3], Section 3.1 ✨ If the DHCP client uses that canonical wire format, it MUST set the "E" bit in the Flags field to 1 πŸ’… And to tell whether the FQDN has changed between message exchanges, the client and server MUST NOT alter the Domain Name field contents unless the FQDN has actually changed πŸ™ˆ

A client MAY be configured with a fully qualified domain name, or with a partial name that isn't fully qualified 🧚 If a client only knows part of its name, it MAY send a name that isn't fully qualified. That basically says "I know part of my name, but I might not know the zone it belongs in" 🫢

To send a fully qualified domain name, the Domain Name field is set to the DNS-encoded domain name including the terminating zero-length label πŸ’œ To send a partial name, the Domain Name field is set to the DNS-encoded domain name without the terminating zero-length label πŸ¦‹

A client MAY also leave the Domain Name field empty if it wants the server to provide a name 🌈

2.3.1. Deprecated ASCII Encoding πŸ•°οΈ

ngl this part is a little bit of history πŸ“œ A big group of clients implemented an earlier draft of this spec, which allowed an ASCII encoding of the Domain Name field 😭 So server implementations SHOULD be aware that clients sending the Client FQDN option with the "E" bit set to 0 are using an ASCII encoding of the Domain Name field πŸ‘€ Servers MAY be prepared to return an ASCII-encoded version of the Domain Name field to those clients. But servers that aren't prepared to return an ASCII-encoded version MUST ignore the Client FQDN option if the "E" bit is 0 🚫 The use of ASCII encoding in this option SHOULD be considered deprecated πŸ’€

A DHCP client that used ASCII encoding was allowed to suggest a single label if it wasn't configured with a fully qualified name πŸ“ Those clients send that single label as a series of ASCII characters in the Domain Name field, leaving out the "." (dot) character πŸŽ€

Clients and servers SHOULD follow the character set rules of [6], fourth section ("Assumptions"), first 5 sentences, as modified by [7], Section 2.1 πŸ’… However, implementers SHOULD also be aware that some client software may send data meant for other character sets 🌍 This spec does not require support for other character sets, so no pressure 🫢


3. DHCP Client Behavior πŸ¦‹

this section describes how a DHCP client that implements the Client FQDN option behaves πŸ’–

3.1. Interaction with Other Options 🧩

Other DHCP options MAY carry data related to the Domain Name field of the Client FQDN option ✨ The Host Name option [12], for example, holds an ASCII string representation of the client's host name 🌸 In general, a client doesn't need to send redundant data, so clients that send the Client FQDN option in their messages MUST NOT also send the Host Name option πŸ™…β€β™€οΈ Clients that receive both the Host Name option and the Client FQDN option from a server SHOULD prefer the Client FQDN option data πŸ’œ And Section 4 tells servers to ignore the Host Name option in client messages that include the Client FQDN option πŸ‘‘

3.2. Client Desires to Update A RRs 🌷

if a client owns and maintains its own FQDN and wants to be responsible for updating the FQDN-to-IP-address mapping for that FQDN and the address(es) the client uses, the client MUST include the Client FQDN option in the DHCPREQUEST message it originates πŸ”₯ A DHCP client MAY also choose to include the Client FQDN option in its DHCPDISCOVER messages, not just its DHCPREQUEST messages πŸŽ€ The "S", "O", and "N" bits in the Flags field in the option MUST be 0 🩷

Once the client's DHCP configuration is completed (the client receives a DHCPACK message and successfully finishes a final check on the parameters passed in the message), the client MAY originate an update for the A RR associated with its FQDN, unless the server has set the "S" bit to 1 ✨ If the "S" bit is 1, the DHCP client SHOULD NOT start an update for the name in the Domain Name field of the Client FQDN option the server returned πŸ™ƒ Still, a DHCP client that is explicitly configured with an FQDN MAY ignore the state of the "S" bit if the server's returned name matches the client's configured name πŸ’…

3.3. Client Desires Server to Do DNS Updates πŸ›Έ

A client can choose to hand off responsibility for updating the FQDN-to-IP-address mapping for its FQDN and address(es) to the server 🫢 To let the server know about this choice, the client SHOULD include the Client FQDN option in its DHCPREQUEST message, and it MAY include the Client FQDN option in its DHCPDISCOVER too 🌈 The "S" bit in the Flags field in the option MUST be 1, and the "O" and "N" bits MUST be 0 πŸ’–

3.4. Client Desires No Server DNS Updates πŸ™…β€β™€οΈ

A client can ask the server to do no DNS updates on its behalf πŸ¦‹ To tell the server this, the client SHOULD include the Client FQDN option in its DHCPREQUEST message, and it MAY include the Client FQDN option in its DHCPDISCOVER 🌸 The "N" bit in the Flags field in the option MUST be 1, and the "S" and "O" bits MUST be 0 πŸ”₯

Once the client's DHCP configuration is completed (the client receives a DHCPACK message and successfully finishes a final check on the parameters passed in the message), the client MAY originate its own DNS updates, provided the server's "N" bit is 1 πŸ’… If the server's "N" bit is 0, the server MAY perform the PTR RR updates, and it MAY also perform the A RR updates if the "S" bit is 1 πŸ‘‘

3.5. Domain Name and DNS Update Issues 🧠

so the DHCP server might be configured to complete or replace a domain name the client sends πŸ‘€ Because of that, the client MAY find it useful to send the Client FQDN option in its DHCPDISCOVER messages πŸ“ If the DHCP server returns different Domain Name data in its DHCPOFFER message, the client could use that data when doing its own eventual A RR update, or when forming the Client FQDN option it sends in its DHCPREQUEST message ✨ There's no requirement that the client send identical Client FQDN option data in its DHCPDISCOVER and DHCPREQUEST messages 🫢 Also, if a client has already sent the Client FQDN option to its server, and its configuration changes so that its notion of its domain name changes, it MAY send the new name data in a Client FQDN option the next time it talks to the server 🌈 This MAY cause the DHCP server to update the name associated with the PTR record and, if the server updated the A record representing the client, to delete that record and try an update for the client's current domain name πŸ’œ

A client that hands off responsibility for updating the FQDN-to-IP-address mapping to a server won't get any indication, positive or negative, from the server about whether the update worked πŸ€·β€β™€οΈ The client MAY use a DNS query to check whether the mapping is up to date (see Section 2.2) πŸ”

If a client releases its lease before the lease expiration time and is responsible for updating its A RR, the client SHOULD delete the A RR associated with the leased address before sending a DHCPRELEASE message 🧹 Similarly, if a client was responsible for updating its A RR but can't renew its lease, the client SHOULD attempt to delete the A RR before the lease expires ⏳ A DHCP client that hasn't been able to delete an A RR it added (because it has lost the use of its DHCP IP address) SHOULD attempt to notify its administrator, maybe by emitting a log message πŸ“

A client that wants to do DNS updates to A RRs SHOULD NOT do so if the client's address is a private address [8] πŸ”’


4. DHCP Server Behavior πŸ‘‘

this section describes how a DHCP server that implements the Client FQDN option behaves when the client's message includes the Client FQDN option πŸ’…

The server checks its configuration and the Flag bits in the client's Client FQDN option to figure out how to respond πŸ”Ž

  • If the client's "E" bit is 0 and the server doesn't support ASCII encoding (Section 2.3.1), the server SHOULD ignore the Client FQDN option πŸ™ˆ
  • The server sets the "S", "O", and "N" bits to 0 in its copy of the option it returns to the client. The server copies the client's "E" bit πŸͺž
  • If the client's "N" bit is 1 and the server's configuration allows it to honor the client's request for no server-initiated DNS updates, the server sets the "N" bit to 1 πŸ™…β€β™€οΈ
  • Otherwise, if the client's "S" bit is 1 and the server's configuration allows it to honor the client's request for the server to initiate A RR DNS updates, the server sets the "S" bit to 1. If the server's "S" bit doesn't match the client's "S" bit, the server sets the "O" bit to 1 🌸

The server MAY be configured to use the name supplied in the client's Client FQDN option, or it MAY be configured to modify the supplied name or substitute a different name πŸ¦‹ The server SHOULD send its notion of the complete FQDN for the client in the Domain Name field πŸ’œ The server MAY simply copy the Domain Name field from the Client FQDN option the client sent 🫢 The server MUST use the same encoding format (ASCII or DNS binary encoding) that the client used in the Client FQDN option in its DHCPDISCOVER or DHCPREQUEST, and it MUST set the "E" bit in the option's Flags field accordingly πŸ”₯

If a client sends both the Client FQDN and Host Name options, the server SHOULD ignore the Host Name option πŸ™ƒ

The server SHOULD set the RCODE1 and RCODE2 fields to 255 before sending the Client FQDN message to the client in a DHCPOFFER or DHCPACK 🌈

4.1. When to Perform DNS Updates πŸŽ€

Okay so, the server SHOULD NOT perform any DNS updates if the "N" bit is 1 in the Flags field of the Client FQDN option in the DHCPACK messages (to be) sent to the client πŸ™…β€β™€οΈ. However, the server SHOULD delete any RRs that it previously added via DNS updates for the client 🧹. Main character energy is cleaning up after yourself!

The server MAY perform the PTR RR DNS update (unless the "N" bit is 1). πŸ’–

The server MAY perform the A RR DNS update if the "S" bit is 1 in the Flags field of the Client FQDN option in the DHCPACK message (to be) sent to the client. 🌸

The server MAY perform these updates even if the client's DHCPREQUEST did not carry the Client FQDN option. The server MUST NOT initiate DNS updates when responding to DHCPDISCOVER messages from a client. Not doing it, not ever πŸš«πŸ’€

The server MAY perform its DNS updates (PTR RR or PTR and A RR) before or after sending the DHCPACK message to the client. ✨

If the server's A RR DNS update does not complete until after the server has replied to the DHCP client, the server's interaction with the DNS server MAY cause the DHCP server to change the domain name that it associates with the client. This can occur, for example, if the server detects and resolves a domain-name conflict [10]. In such cases, the domain name that the server returns to the DHCP client would change between two DHCP exchanges. 😭

If the server previously performed DNS updates for the client and the client's information has not changed, the server MAY skip performing additional DNS updates. πŸ™Œ

When a server detects that a lease on an address that the server leases to a client has expired, the server SHOULD delete any PTR RR that it added via DNS update. In addition, if the server added an A RR on the client's behalf, the server SHOULD also delete the A RR. πŸ—‘οΈ

When a server terminates a lease on an address prior to the lease's expiration time (for instance, by sending a DHCPNAK to a client), the server SHOULD delete any PTR RR that it associated with the address via DNS update. In addition, if the server took responsibility for an A RR, the server SHOULD also delete that A RR. 🫢


5. DNS RR TTLs πŸ•°οΈ

RRs associated with DHCP clients may be more volatile than statically configured RRs. DHCP clients and servers that perform dynamic updates should attempt to specify resource-record TTLs that reflect this volatility, in order to minimize the possibility that answers to DNS queries will return records that refer to DHCP IP address assignments that have expired or been released. πŸ¦‹

The coupling among primary, secondary, and caching DNS servers is 'loose'; that is a fundamental part of the design of the DNS. This looseness makes it impossible to prevent all possible situations in which a resolver may return a record reflecting a DHCP-assigned IP address that has expired or been released. In deployment, this rarely, if ever, represents a significant problem. Most DHCP-managed clients are infrequently looked up by name in the DNS, and the deployment of IXFR ([16]) and NOTIFY ([17]) can reduce the latency between updates and their visibility at secondary servers. 🧠

We suggest these basic guidelines for implementers. In general, the TTLs for RRs added as a result of DHCP IP address assignment activity SHOULD be less than the initial lease time. The RR TTL on a DNS record added SHOULD NOT exceed 1/3 of the lease time, but SHOULD NOT be less than 10 minutes. We recognize that individual administrators will have varying requirements: DHCP servers and clients SHOULD allow administrators to configure TTLs and upper and lower bounds on the TTL values, either as an absolute time interval or as a percentage of the lease time. ⏳

While clients and servers MAY update the TTL of the records as the lease is about to expire, there is no requirement that they do so, as this puts additional load on the DNS system with likely little benefit. πŸ’€


6. DNS Update Conflicts πŸ’₯

This document does not resolve how a DHCP client or server prevents name conflicts. This document addresses only how a DHCP client and server negotiate who will perform the DNS updates and the fully qualified domain name requested or used.

Implementers of this work will need to consider how name conflicts will be prevented. If a DNS updater needs a security token in order to successfully perform DNS updates on a specific name, name conflicts can only occur if multiple updaters are given a security token for that name. Or, if the fully qualified domains are based on the specific address bound to a client, conflicts will not occur. Or, a name conflict resolution technique as described in "Resolving Name Conflicts" [10] SHOULD be used. πŸ”


7. IANA Considerations πŸ“‹

IANA has already assigned DHCP option 81 to the Client FQDN option. As this document describes the option's use, IANA is requested to reference this document for option 81. πŸ”–


8. Security Considerations 🚨

Unauthenticated updates to the DNS can lead to tremendous confusion, through malicious attack or through inadvertent misconfiguration. Administrators need to be wary of permitting unsecured DNS updates to zones that are exposed to the global Internet. Both DHCP clients and servers should use some form of update request origin authentication procedure (e.g., Secure DNS Dynamic Update [14]) when performing DNS updates.

Whether a DHCP client is responsible for updating an FQDN-to-IP-address mapping or whether this is the responsibility of the DHCP server is a site-local matter. The choice between the two alternatives is likely based on the security model that is used with the DNS update protocol (e.g., only a client may have sufficient credentials to perform updates to the FQDN-to-IP-address mapping for its FQDN).

Whether a DHCP server is always responsible for updating the FQDN-to-IP-address mapping (in addition to updating the IP to FQDN mapping), regardless of the wishes of an individual DHCP client, is also a site-local matter. The choice between the two alternatives is likely based on the security model that is being used with DNS updates. In cases where a DHCP server is performing DNS updates on behalf of a client, the DHCP server should be sure of the DNS name to use for the client, and of the identity of the client.

Currently, it is difficult for DHCP servers to develop much confidence in the identities of its clients, given the absence of entity authentication from the DHCP protocol itself. There are many ways for a DHCP server to develop a DNS name to use for a client, but only in certain relatively unusual circumstances will the DHCP server know for certain the identity of the client. If DHCP Authentication [15] becomes widely deployed, this may become more customary.

One example of a situation that offers some extra assurances is when the DHCP client is connected to a network through an Multimedia Cable Network System (MCNS) cable modem, and the cable modem termination system (CMTS), i.e., head-end, ensures that MAC address spoofing simply does not occur. Another example of a configuration that might be trusted is one where clients obtain network access via a network access server using PPP. The NAS itself might be obtaining IP addresses via DHCP, encoding a client identification into the DHCP client-id option. In this case, the network access server as well as the DHCP server might be operating within a trusted environment, in which case the DHCP server could be configured to trust that the user authentication and authorization procedure of the remote access server was sufficient, and would therefore trust the client identification encoded within the DHCP client-id.

It is critical to implement proper conflict resolution, and the security considerations of conflict resolution apply [10]. 🫠


9. Acknowledgements πŸ™

Many thanks to Mark Beyer, Jim Bound, Ralph Droms, Robert Elz, Peter Ford, Olafur Gudmundsson, Edie Gunter, Andreas Gustafsson, David W. Hankins, R. Barr Hibbs, Kim Kinnear, Stuart Kwan, Ted Lemon, Ed Lewis, Michael Lewis, Josh Littlefield, Michael Patton, Pekka Savola, Jyrki Soini, and Glenn Stump for their review and comments. πŸ’œ


10. References πŸ“š

10.1. Normative References

  • [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
  • [2] Mockapetris, P., "Domain names - concepts and facilities", STD 13, RFC 1034, November 1987.
  • [3] Mockapetris, P., "Domain names - implementation and specification", STD 13, RFC 1035, November 1987.
  • [4] Vixie, P., Thomson, S., Rekhter, Y., and J. Bound, "Dynamic Updates in the Domain Name System (DNS UPDATE)", RFC 2136, April 1997.
  • [5] Droms, R., "Dynamic Host Configuration Protocol", RFC 2131, March 1997.
  • [6] Harrenstien, K., Stahl, M., and E. Feinler, "DoD Internet host table specification", RFC 952, October 1985.
  • [7] Braden, R., "Requirements for Internet Hosts - Application and Support", STD 3, RFC 1123, October 1989.
  • [8] Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G., and E. Lear, "Address Allocation for Private Internets", BCP 5, RFC 1918, February 1996.
  • [9] Lemon, T. and S. Cheshire, "Encoding Long Options in the Dynamic Host Configuration Protocol (DHCPv4)", RFC 3396, November 2002.
  • [10] Stapp, M. and B. Volz, "Resolution of Fully Qualified Domain Name (FQDN) Conflicts among Dynamic Host Configuration Protocol (DHCP) Clients", RFC 4703, October 2006.

10.2. Informative References

  • [11] Marine, A., Reynolds, J., and G. Malkin, "FYI on Questions and Answers - Answers to Commonly asked "New Internet User" Questions", FYI 4, RFC 1594, March 1994.
  • [12] Alexander, S. and R. Droms, "DHCP Options and BOOTP Vendor Extensions", RFC 2132, March 1997.
  • [13] Vixie, P., "Extension Mechanisms for DNS (EDNS0)", RFC 2671, August 1999.
  • [14] Wellington, B., "Secure Domain Name System (DNS) Dynamic Update", RFC 3007, November 2000.
  • [15] Droms, R. and W. Arbaugh, "Authentication for DHCP Messages", RFC 3118, June 2001.
  • [16] Ohta, M., "Incremental Zone Transfer in DNS", RFC 1995, August 1996.
  • [17] Vixie, P., "A Mechanism for Prompt Notification of Zone Changes (DNS NOTIFY)", RFC 1996, August 1996.

Authors' Addresses πŸ§‘β€πŸ’»

Mark Stapp
Cisco Systems, Inc.
1414 Massachusetts Ave.
Boxborough, MA  01719
USA

Phone: 978.936.1535
EMail: mjs@cisco.com
Bernie Volz
Cisco Systems, Inc.
1414 Massachusetts Ave.
Boxborough, MA  01719
USA

Phone: 978.936.0382
EMail: volz@cisco.com
Yakov Rekhter
Juniper Networks
1194 North Mathilda Avenue
Sunnyvale, CA  94089
USA

Phone: 408.745.2000
EMail: yakov@juniper.net

Copyright (C) The Internet Society (2006).

This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.

This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property ✨

okay so the IETF is being super clear here: it takes no position on whether any Intellectual Property Rights or other rights might apply to the tech in this document, or whether any license under those rights is available 🧐 it also hasn't made any independent effort to hunt down those rights, so don't assume it did πŸ’… if you want the rules on rights in RFC docs, check out BCP 78 and BCP 79 πŸ“š

copies of IPR disclosures sent to the IETF Secretariat πŸ“¬ and any assurances of licenses that are going to be available πŸŽ€ or the results of trying to get a general license or permission for implementers or users to use those proprietary rights can all be found in the IETF on-line IPR repository at http://www.ietf.org/ipr πŸ¦‹

the IETF also invites anyone who's interested to flag any copyrights, patents, patent applications, or other proprietary rights that might cover technology needed to implement this standard 🫢 send that info to the IETF at ietf-ipr@ietf.org πŸ’Œ bestie, you're literally helping the whole community out 🌈

Acknowledgement

the RFC Editor function is funded by the IETF Administrative Support Activity (IASA) πŸ’œ ily to the people keeping the lights on πŸ•―οΈβœ¨

πŸ“¦ where this page comes from