7
Network Working Group T. Hardie
8
Request for Comments: 3258 Nominum, Inc.
9
Category: Informational April 2002
12
Distributing Authoritative Name Servers via Shared Unicast Addresses
16
This memo provides information for the Internet community. It does
17
not specify an Internet standard of any kind. Distribution of this
22
Copyright (C) The Internet Society (2002). All Rights Reserved.
26
This memo describes a set of practices intended to enable an
27
authoritative name server operator to provide access to a single
28
named server in multiple locations. The primary motivation for the
29
development and deployment of these practices is to increase the
30
distribution of Domain Name System (DNS) servers to previously
31
under-served areas of the network topology and to reduce the latency
32
for DNS query responses in those areas.
36
This memo describes a set of practices intended to enable an
37
authoritative name server operator to provide access to a single
38
named server in multiple locations. The primary motivation for the
39
development and deployment of these practices is to increase the
40
distribution of DNS servers to previously under-served areas of the
41
network topology and to reduce the latency for DNS query responses in
42
those areas. This document presumes a one-to-one mapping between
43
named authoritative servers and administrative entities (operators).
44
This document contains no guidelines or recommendations for caching
45
name servers. The shared unicast system described here is specific
46
to IPv4; applicability to IPv6 is an area for further study. It
47
should also be noted that the system described here is related to
48
that described in [ANYCAST], but it does not require dedicated
49
address space, routing changes, or the other elements of a full
50
anycast infrastructure which that document describes.
58
Hardie Informational [Page 1]
60
RFC 3258 Distributing Authoritative Name Servers April 2002
65
2.1 Server Requirements
67
Operators of authoritative name servers may wish to refer to
68
[SECONDARY] and [ROOT] for general guidance on appropriate practice
69
for authoritative name servers. In addition to proper configuration
70
as a standard authoritative name server, each of the hosts
71
participating in a shared-unicast system should be configured with
72
two network interfaces. These interfaces may be either two physical
73
interfaces or one physical interface mapped to two logical
74
interfaces. One of the network interfaces should use the IPv4 shared
75
unicast address associated with the authoritative name server. The
76
other interface, referred to as the administrative interface below,
77
should use a distinct IPv4 address specific to that host. The host
78
should respond to DNS queries only on the shared-unicast interface.
79
In order to provide the most consistent set of responses from the
80
mesh of anycast hosts, it is good practice to limit responses on that
81
interface to zones for which the host is authoritative.
83
2.2 Zone file delivery
85
In order to minimize the risk of man-in-the-middle attacks, zone
86
files should be delivered to the administrative interface of the
87
servers participating in the mesh. Secure file transfer methods and
88
strong authentication should be used for all transfers. If the hosts
89
in the mesh make their zones available for zone transfer, the
90
administrative interfaces should be used for those transfers as well,
91
in order to avoid the problems with potential routing changes for TCP
92
traffic noted in section 2.5 below.
96
Authoritative name servers may be loosely or tightly synchronized,
97
depending on the practices set by the operating organization. As
98
noted below in section 4.1.2, lack of synchronization among servers
99
using the same shared unicast address could create problems for some
100
users of this service. In order to minimize that risk, switch-overs
101
from one data set to another data set should be coordinated as much
102
as possible. The use of synchronized clocks on the participating
103
hosts and set times for switch-overs provides a basic level of
104
coordination. A more complete coordination process would involve:
106
a) receipt of zones at a distribution host
107
b) confirmation of the integrity of zones received
108
c) distribution of the zones to all of the servers in the mesh
109
d) confirmation of the integrity of the zones at each server
114
Hardie Informational [Page 2]
116
RFC 3258 Distributing Authoritative Name Servers April 2002
119
e) coordination of the switchover times for the servers in the
121
f) institution of a failure process to ensure that servers that
122
did not receive correct data or could not switchover to the new
123
data ceased to respond to incoming queries until the problem
126
Depending on the size of the mesh, the distribution host may also be
127
a participant; for authoritative servers, it may also be the host on
128
which zones are generated.
130
This document presumes that the usual DNS failover methods are the
131
only ones used to ensure reachability of the data for clients. It
132
does not advise that the routes be withdrawn in the case of failure;
133
it advises instead that the DNS process shutdown so that servers on
134
other addresses are queried. This recommendation reflects a choice
135
between performance and operational complexity. While it would be
136
possible to have some process withdraw the route for a specific
137
server instance when it is not available, there is considerable
138
operational complexity involved in ensuring that this occurs
139
reliably. Given the existing DNS failover methods, the marginal
140
improvement in performance will not be sufficient to justify the
141
additional complexity for most uses.
145
Though the geographic diversity of server placement helps reduce the
146
effects of service disruptions due to local problems, it is diversity
147
of placement in the network topology which is the driving force
148
behind these distribution practices. Server placement should
149
emphasize that diversity. Ideally, servers should be placed
150
topologically near the points at which the operator exchanges routes
151
and traffic with other networks.
155
The organization administering the mesh of servers sharing a unicast
156
address must have an autonomous system number and speak BGP to its
157
peers. To those peers, the organization announces a route to the
158
network containing the shared-unicast address of the name server.
159
The organization's border routers must then deliver the traffic
160
destined for the name server to the nearest instantiation. Routing
161
to the administrative interfaces for the servers can use the normal
162
routing methods for the administering organization.
164
One potential problem with using shared unicast addresses is that
165
routers forwarding traffic to them may have more than one available
166
route, and those routes may, in fact, reach different instances of
170
Hardie Informational [Page 3]
172
RFC 3258 Distributing Authoritative Name Servers April 2002
175
the shared unicast address. Applications like the DNS, whose
176
communication typically consists of independent request-response
177
messages each fitting in a single UDP packet present no problem.
178
Other applications, in which multiple packets must reach the same
179
endpoint (e.g., TCP) may fail or present unworkable performance
180
characteristics in some circumstances. Split-destination failures
181
may occur when a router does per-packet (or round-robin) load
182
sharing, a topology change occurs that changes the relative metrics
183
of two paths to the same anycast destination, etc.
185
Four things mitigate the severity of this problem. The first is that
186
UDP is a fairly high proportion of the query traffic to name servers.
187
The second is that the aim of this proposal is to diversify
188
topological placement; for most users, this means that the
189
coordination of placement will ensure that new instances of a name
190
server will be at a significantly different cost metric from existing
191
instances. Some set of users may end up in the middle, but that
192
should be relatively rare. The third is that per packet load sharing
193
is only one of the possible load sharing mechanisms, and other
194
mechanisms are increasing in popularity.
196
Lastly, in the case where the traffic is TCP, per packet load sharing
197
is used, and equal cost routes to different instances of a name
198
server are available, any DNS implementation which measures the
199
performance of servers to select a preferred server will quickly
200
prefer a server for which this problem does not occur. For the DNS
201
failover mechanisms to reliably avoid this problem, however, those
202
using shared unicast distribution mechanisms must take care that all
203
of the servers for a specific zone are not participants in the same
204
shared-unicast mesh. To guard even against the case where multiple
205
meshes have a set of users affected by per packet load sharing along
206
equal cost routes, organizations implementing these practices should
207
always provide at least one authoritative server which is not a
208
participant in any shared unicast mesh. Those deploying shared-
209
unicast meshes should note that any specific host may become
210
unreachable to a client should a server fail, a path fail, or the
211
route to that host be withdrawn. These error conditions are,
212
however, not specific to shared-unicast distributions, but would
213
occur for standard unicast hosts.
215
Since ICMP response packets might go to a different member of the
216
mesh than that sending a packet, packets sent with a shared unicast
217
source address should also avoid using path MTU discovery.
219
Appendix A. contains an ASCII diagram of an example of a simple
220
implementation of this system. In it, the odd numbered routers
221
deliver traffic to the shared-unicast interface network and filter
222
traffic from the administrative network; the even numbered routers
226
Hardie Informational [Page 4]
228
RFC 3258 Distributing Authoritative Name Servers April 2002
231
deliver traffic to the administrative network and filter traffic from
232
the shared-unicast network. These are depicted as separate routers
233
for the ease this gives in explanation, but they could easily be
234
separate interfaces on the same router. Similarly, a local NTP
235
source is depicted for synchronization, but the level of
236
synchronization needed would not require that source to be either
237
local or a stratum one NTP server.
241
3.1 Points of Contact
243
A single point of contact for reporting problems is crucial to the
244
correct administration of this system. If an external user of the
245
system needs to report a problem related to the service, there must
246
be no ambiguity about whom to contact. If internal monitoring does
247
not indicate a problem, the contact may, of course, need to work with
248
the external user to identify which server generated the error.
250
4. Security Considerations
252
As a core piece of Internet infrastructure, authoritative name
253
servers are common targets of attack. The practices outlined here
254
increase the risk of certain kinds of attacks and reduce the risk of
259
4.1.1 Increase in physical servers
261
The architecture outlined in this document increases the number of
262
physical servers, which could increase the possibility that a server
263
mis-configuration will occur which allows for a security breach. In
264
general, the entity administering a mesh should ensure that patches
265
and security mechanisms applied to a single member of the mesh are
266
appropriate for and applied to all of the members of a mesh.
267
"Genetic diversity" (code from different code bases) can be a useful
268
security measure in avoiding attacks based on vulnerabilities in a
269
specific code base; in order to ensure consistency of responses from
270
a single named server, however, that diversity should be applied to
271
different shared-unicast meshes or between a mesh and a related
272
unicast authoritative server.
274
4.1.2 Data synchronization problems
276
The level of systemic synchronization described above should be
277
augmented by synchronization of the data present at each of the
278
servers. While the DNS itself is a loosely coupled system, debugging
282
Hardie Informational [Page 5]
284
RFC 3258 Distributing Authoritative Name Servers April 2002
287
problems with data in specific zones would be far more difficult if
288
two different servers sharing a single unicast address might return
289
different responses to the same query. For example, if the data
290
associated with www.example.com has changed and the administrators of
291
the domain are testing for the changes at the example.com
292
authoritative name servers, they should not need to check each
293
instance of a named authoritative server. The use of NTP to provide
294
a synchronized time for switch-over eliminates some aspects of this
295
problem, but mechanisms to handle failure during the switchover are
296
required. In particular, a server which cannot make the switchover
297
must not roll-back to a previous version; it must cease to respond to
298
queries so that other servers are queried.
300
4.1.3 Distribution risks
302
If the mechanism used to distribute zone files among the servers is
303
not well secured, a man-in-the-middle attack could result in the
304
injection of false information. Digital signatures will alleviate
305
this risk, but encrypted transport and tight access lists are a
306
necessary adjunct to them. Since zone files will be distributed to
307
the administrative interfaces of meshed servers, the access control
308
list for distribution of the zone files should include the
309
administrative interface of the server or servers, rather than their
310
shared unicast addresses.
314
The increase in number of physical servers reduces the likelihood
315
that a denial-of-service attack will take out a significant portion
316
of the DNS infrastructure. The increase in servers also reduces the
317
effect of machine crashes, fiber cuts, and localized disasters by
318
reducing the number of users dependent on a specific machine.
322
Masataka Ohta, Bill Manning, Randy Bush, Chris Yarnell, Ray Plzak,
323
Mark Andrews, Robert Elz, Geoff Huston, Bill Norton, Akira Kato,
324
Suzanne Woolf, Bernard Aboba, Casey Ajalat, and Gunnar Lindberg all
325
provided input and commentary on this work. The editor wishes to
326
remember in particular the contribution of the late Scott Tucker,
327
whose extensive systems experience and plain common sense both
328
contributed greatly to the editor's own deployment experience and are
329
missed by all who knew him.
338
Hardie Informational [Page 6]
340
RFC 3258 Distributing Authoritative Name Servers April 2002
345
[SECONDARY] Elz, R., Bush, R., Bradner, S. and M. Patton, "Selection
346
and Operation of Secondary DNS Servers", BCP 16, RFC
349
[ROOT] Bush, R., Karrenberg, D., Kosters, M. and R. Plzak, "Root
350
Name Server Operational Requirements", BCP 40, RFC 2870,
353
[ANYCAST] Patridge, C., Mendez, T. and W. Milliken, "Host
354
Anycasting Service", RFC 1546, November 1993.
394
Hardie Informational [Page 7]
396
RFC 3258 Distributing Authoritative Name Servers April 2002
405
Transit| | _________ _________
406
etc | |--|Router1|---|----|----------|Router2|---WAN-|
407
| | --------- | | --------- |
410
------------------ [NTP] [DNS] |
419
Transit| | _________ _________ |
420
etc | |--|Router3|---|----|----------|Router4|---WAN-|
421
| | --------- | | --------- |
424
------------------ [NTP] [DNS] |
433
Transit| | _________ _________ |
434
etc | |--|Router5|---|----|----------|Router6|---WAN-|
435
| | --------- | | --------- |
438
------------------ [NTP] [DNS] |
450
Hardie Informational [Page 8]
452
RFC 3258 Distributing Authoritative Name Servers April 2002
460
Transit| | _________ _________ |
461
etc | |--|Router7|---|----|----------|Router8|---WAN-|
462
| | --------- | | ---------
465
------------------ [NTP] [DNS]
506
Hardie Informational [Page 9]
508
RFC 3258 Distributing Authoritative Name Servers April 2002
516
Redwood City, CA 94063
518
Phone: 1.650.381.6226
519
EMail: Ted.Hardie@nominum.com
562
Hardie Informational [Page 10]
564
RFC 3258 Distributing Authoritative Name Servers April 2002
567
8. Full Copyright Statement
569
Copyright (C) The Internet Society (2002). All Rights Reserved.
571
This document and translations of it may be copied and furnished to
572
others, and derivative works that comment on or otherwise explain it
573
or assist in its implementation may be prepared, copied, published
574
and distributed, in whole or in part, without restriction of any
575
kind, provided that the above copyright notice and this paragraph are
576
included on all such copies and derivative works. However, this
577
document itself may not be modified in any way, such as by removing
578
the copyright notice or references to the Internet Society or other
579
Internet organizations, except as needed for the purpose of
580
developing Internet standards in which case the procedures for
581
copyrights defined in the Internet Standards process must be
582
followed, or as required to translate it into languages other than
585
The limited permissions granted above are perpetual and will not be
586
revoked by the Internet Society or its successors or assigns.
588
This document and the information contained herein is provided on an
589
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
590
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
591
BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
592
HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
593
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
597
Funding for the RFC Editor function is currently provided by the
618
Hardie Informational [Page 11]