]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - 6/contrib/bind9/doc/draft/draft-ietf-dnsop-serverid-04.txt
Clone Kip's Xen on stable/6 tree so that I can work on improving FreeBSD/amd64
[FreeBSD/FreeBSD.git] / 6 / contrib / bind9 / doc / draft / draft-ietf-dnsop-serverid-04.txt
1
2
3 Network Working Group                                           S. Woolf
4 Internet-Draft                         Internet Systems Consortium, Inc.
5 Expires: September 14, 2005                                    D. Conrad
6                                                            Nominum, Inc.
7                                                           March 13, 2005
8
9
10                 Identifying an Authoritative Name Server
11                       draft-ietf-dnsop-serverid-04
12
13 Status of this Memo
14
15    This document is an Internet-Draft and is subject to all provisions
16    of Section 3 of RFC 3667.  By submitting this Internet-Draft, each
17    author represents that any applicable patent or other IPR claims of
18    which he or she is aware have been or will be disclosed, and any of
19    which he or she become aware will be disclosed, in accordance with
20    RFC 3668.
21
22    Internet-Drafts are working documents of the Internet Engineering
23    Task Force (IETF), its areas, and its working groups.  Note that
24    other groups may also distribute working documents as
25    Internet-Drafts.
26
27    Internet-Drafts are draft documents valid for a maximum of six months
28    and may be updated, replaced, or obsoleted by other documents at any
29    time.  It is inappropriate to use Internet-Drafts as reference
30    material or to cite them other than as "work in progress."
31
32    The list of current Internet-Drafts can be accessed at
33    http://www.ietf.org/ietf/1id-abstracts.txt.
34
35    The list of Internet-Draft Shadow Directories can be accessed at
36    http://www.ietf.org/shadow.html.
37
38    This Internet-Draft will expire on September 14, 2005.
39
40 Copyright Notice
41
42    Copyright (C) The Internet Society (2005).
43
44 Abstract
45
46    With the increased use of DNS anycast, load balancing, and other
47    mechanisms allowing more than one DNS name server to share a single
48    IP address, it is sometimes difficult to tell which of a pool of name
49    servers has answered a particular query.  A standardized mechanism to
50    determine the identity of a name server responding to a particular
51
52
53
54 Woolf & Conrad         Expires September 14, 2005               [Page 1]
55 \f
56 Internet-Draft    Identifying an Authoritative Name Server    March 2005
57
58
59    query would be useful, particularly as a diagnostic aid.  Existing ad
60    hoc mechanisms for addressing this concern are not adequate.  This
61    document attempts to describe the common ad hoc solution to this
62    problem, including its advantages and disadvantages, and to
63    characterize an improved mechanism.
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110 Woolf & Conrad         Expires September 14, 2005               [Page 2]
111 \f
112 Internet-Draft    Identifying an Authoritative Name Server    March 2005
113
114
115 1.  Introduction
116
117    With the increased use of DNS anycast, load balancing, and other
118    mechanisms allowing more than one DNS name server to share a single
119    IP address, it is sometimes difficult to tell which of a pool of name
120    servers has answered a particular query.  A standardized mechanism to
121    determine the identity of a name server responding to a particular
122    query would be useful, particularly as a diagnostic aid.
123
124    Unfortunately, existing ad-hoc mechanisms for providing such
125    identification have some shortcomings, not the least of which is the
126    lack of prior analysis of exactly how such a mechanism should be
127    designed and deployed.  This document describes the existing
128    convention used in one widely deployed implementation of the DNS
129    protocol and discusses requirements for an improved solution to the
130    problem.
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166 Woolf & Conrad         Expires September 14, 2005               [Page 3]
167 \f
168 Internet-Draft    Identifying an Authoritative Name Server    March 2005
169
170
171 2.  Rationale
172
173    Identifying which name server is responding to queries is often
174    useful, particularly in attempting to diagnose name server
175    difficulties.  However, relying on the IP address of the name server
176    has become more problematic due the deployment of various load
177    balancing solutions, including the use of shared unicast addresses as
178    documented in [RFC3258].
179
180    An unfortunate side effect of these load balancing solutions, and
181    some changes in management practices as the public Internet has
182    evolved, is that traditional methods of determining which server is
183    responding can be unreliable.  Specifically, non-DNS methods such as
184    ICMP ping, TCP connections, or non-DNS UDP packets (such as those
185    generated by tools such as "traceroute"), etc., can end up going to a
186    different server than that which receives the DNS queries.
187
188    There is a well-known and frequently-used technique for determining
189    an identity for a nameserver more specific than the
190    possibly-non-unique "server that answered my query".  The widespread
191    use of the existing convention suggests a need for a documented,
192    interoperable means of querying the identity of a nameserver that may
193    be part of an anycast or load-balancing cluster.  At the same time,
194    however, it also has some drawbacks that argue against standardizing
195    it as it's been practiced so far.
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222 Woolf & Conrad         Expires September 14, 2005               [Page 4]
223 \f
224 Internet-Draft    Identifying an Authoritative Name Server    March 2005
225
226
227 3.  Existing Conventions
228
229    Recent versions of the commonly deployed Berkeley Internet Name
230    Domain implementation of the DNS protocol suite from the Internet
231    Software Consortium [BIND] support a way of identifying a particular
232    server via the use of a standard, if somewhat unusual, DNS query.
233    Specifically, a query to a late model BIND server for a TXT resource
234    record in class 3 (CHAOS) for the domain name "HOSTNAME.BIND." will
235    return a string that can be configured by the name server
236    administrator to provide a unique identifier for the responding
237    server (defaulting to the value of a gethostname() call).  This
238    mechanism, which is an extension of the BIND convention of using
239    CHAOS class TXT RR queries to sub-domains of the "BIND." domain for
240    version information, has been copied by several name server vendors.
241
242    For reference, the other well-known name used by recent versions of
243    BIND within the CHAOS class "BIND." domain is "VERSION.BIND."  A
244    query for a TXT RR for this name will return an administratively
245    defined string which defaults to the version of the server
246    responding.  This is, however, not generally implemented by other
247    vendors.
248
249 3.1  Advantages
250
251    There are several valuable attributes to this mechanism, which
252    account for its usefulness.
253    1.  The "hostname.bind" query response mechanism is within the DNS
254        protocol itself.  An identification mechanism that relies on the
255        DNS protocol is more likely to be successful (although not
256        guaranteed) in going to the same machine as a "normal" DNS query.
257    2.  Since the identity information is requested and returned within
258        the DNS protocol, it doesn't require allowing any other query
259        mechanism to the server, such as holes in firewalls for
260        otherwise-unallowed ICMP Echo requests.  Thus it does not require
261        any special exceptions to site security policy.
262    3.  It is simple to configure.  An administrator can easily turn on
263        this feature and control the results of the relevant query.
264    4.  It allows the administrator complete control of what information
265        is given out in the response, minimizing passive leakage of
266        implementation or configuration details.  Such details are often
267        considered sensitive by infrastructure operators.
268
269 3.2  Disadvantages
270
271    At the same time, there are some forbidding drawbacks to the
272    VERSION.BIND mechanism that argue against standardizing it as it
273    currently operates.
274
275
276
277
278 Woolf & Conrad         Expires September 14, 2005               [Page 5]
279 \f
280 Internet-Draft    Identifying an Authoritative Name Server    March 2005
281
282
283    1.  It requires an additional query to correlate between the answer
284        to a DNS query under normal conditions and the supposed identity
285        of the server receiving the query.  There are a number of
286        situations in which this simply isn't reliable.
287    2.  It reserves an entire class in the DNS (CHAOS) for what amounts
288        to one zone.  While CHAOS class is defined in [RFC1034] and
289        [RFC1035], it's not clear that supporting it solely for this
290        purpose is a good use of the namespace or of implementation
291        effort.
292    3.  It is implementation specific.  BIND is one DNS implementation.
293        At the time of this writing, it is probably the most prevalent
294        for authoritative servers.  This does not justify standardizing
295        on its ad hoc solution to a problem shared across many operators
296        and implementors.
297
298    The first of the listed disadvantages is technically the most
299    serious.  It argues for an attempt to design a good answer to the
300    problem that "I need to know what nameserver is answering my
301    queries", not simply a convenient one.
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334 Woolf & Conrad         Expires September 14, 2005               [Page 6]
335 \f
336 Internet-Draft    Identifying an Authoritative Name Server    March 2005
337
338
339 4.  Characteristics of an Implementation Neutral Convention
340
341    The discussion above of advantages and disadvantages to the
342    HOSTNAME.BIND mechanism suggest some requirements for a better
343    solution to the server identification problem.  These are summarized
344    here as guidelines for any effort to provide appropriate protocol
345    extensions:
346    1.  The mechanism adopted MUST be in-band for the DNS protocol.  That
347        is, it needs to allow the query for the server's identifying
348        information to be part of a normal, operational query.  It SHOULD
349        also permit a separate, dedicated query for the server's
350        identifying information.
351    2.  The new mechanism SHOULD not require dedicated namespaces or
352        other reserved values outside of the existing protocol mechanisms
353        for these, i.e.  the OPT pseudo-RR.  In particular, it should not
354        propagate the existing drawback of requiring support for a CLASS
355        and top level domain in the authoritative server (or the querying
356        tool) to be useful.
357    3.  Support for the identification functionality SHOULD be easy to
358        implement and easy to enable.  It MUST be easy to disable and
359        SHOULD lend itself to access controls on who can query for it.
360    4.  It should be possible to return a unique identifier for a server
361        without requiring the exposure of information that may be
362        non-public and considered sensitive by the operator, such as a
363        hostname or unicast IP address maintained for administrative
364        purposes.
365    5.  The identification mechanism SHOULD NOT be
366        implementation-specific.
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390 Woolf & Conrad         Expires September 14, 2005               [Page 7]
391 \f
392 Internet-Draft    Identifying an Authoritative Name Server    March 2005
393
394
395 5.  IANA Considerations
396
397    This document proposes no specific IANA action.  Protocol extensions,
398    if any, to meet the requirements described are out of scope for this
399    document.  Should such extensions be specified and adopted by normal
400    IETF process, the specification will include appropriate guidance to
401    IANA.
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446 Woolf & Conrad         Expires September 14, 2005               [Page 8]
447 \f
448 Internet-Draft    Identifying an Authoritative Name Server    March 2005
449
450
451 6.  Security Considerations
452
453    Providing identifying information as to which server is responding to
454    a particular query from a particular location in the Internet can be
455    seen as information leakage and thus a security risk.  This motivates
456    the suggestion above that a new mechanism for server identification
457    allow the administrator to disable the functionality altogether or
458    partially restrict availability of the data.  It also suggests that
459    the serverid data should not be readily correlated with a hostname or
460    unicast IP address that may be considered private to the nameserver
461    operator's management infrastructure.
462
463    Propagation of protocol or service meta-data can sometimes expose the
464    application to denial of service or other attack.  As DNS is a
465    critically important infrastructure service for the production
466    Internet, extra care needs to be taken against this risk for
467    designers, implementors, and operators of a new mechanism for server
468    identification.
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502 Woolf & Conrad         Expires September 14, 2005               [Page 9]
503 \f
504 Internet-Draft    Identifying an Authoritative Name Server    March 2005
505
506
507 7.  Acknowledgements
508
509    The technique for host identification documented here was initially
510    implemented by Paul Vixie of the Internet Software Consortium in the
511    Berkeley Internet Name Daemon package.  Comments and questions on
512    earlier drafts were provided by Bob Halley, Brian Wellington, Andreas
513    Gustafsson, Ted Hardie, Chris Yarnell, Randy Bush, and members of the
514    ICANN Root Server System Advisory Committee.  The newest version
515    takes a significantly different direction from previous versions,
516    owing to discussion among contributors to the DNSOP working group and
517    others, particularly Olafur Gudmundsson, Ed Lewis, Bill Manning, Sam
518    Weiler, and Rob Austein.
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558 Woolf & Conrad         Expires September 14, 2005              [Page 10]
559 \f
560 Internet-Draft    Identifying an Authoritative Name Server    March 2005
561
562
563 Intellectual Property Statement
564
565    The IETF takes no position regarding the validity or scope of any
566    Intellectual Property Rights or other rights that might be claimed to
567    pertain to the implementation or use of the technology described in
568    this document or the extent to which any license under such rights
569    might or might not be available; nor does it represent that it has
570    made any independent effort to identify any such rights.  Information
571    on the procedures with respect to rights in RFC documents can be
572    found in BCP 78 and BCP 79.
573
574    Copies of IPR disclosures made to the IETF Secretariat and any
575    assurances of licenses to be made available, or the result of an
576    attempt made to obtain a general license or permission for the use of
577    such proprietary rights by implementers or users of this
578    specification can be obtained from the IETF on-line IPR repository at
579    http://www.ietf.org/ipr.
580
581    The IETF invites any interested party to bring to its attention any
582    copyrights, patents or patent applications, or other proprietary
583    rights that may cover technology that may be required to implement
584    this standard.  Please address the information to the IETF at
585    ietf-ipr@ietf.org.
586
587
588 Disclaimer of Validity
589
590    This document and the information contained herein are provided on an
591    "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
592    OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
593    ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
594    INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
595    INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
596    WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
597
598
599 Copyright Statement
600
601    Copyright (C) The Internet Society (2005).  This document is subject
602    to the rights, licenses and restrictions contained in BCP 78, and
603    except as set forth therein, the authors retain all their rights.
604
605
606 Acknowledgment
607
608    Funding for the RFC Editor function is currently provided by the
609    Internet Society.
610
611
612
613
614 Woolf & Conrad         Expires September 14, 2005              [Page 11]
615 \f
616