CHAPTER 9 ■ DNS DIAGNOSTICS AND TOOLS 
239
 Note The 
rndc.conf
file contains extremely sensitive shared-secret information and should be read protected 
from nonessential users. The 
key
clauses that will be added to the 
named.conf
files for the servers 
ns1.example.com
and 
ns2.example.com
should use the normal technique of placing them in a separate file and 
including them in the 
named.conf
file. The included files should then be read protected from nonessential users. 
The next section describes the commands that may be used with rndc. 
rndc Commands 
The rndc utility provides a number of commands to control the operation of the name server; these are 
shown in Table 9–8. 
Table 9–8. rndc Commands 
Command Options 
Meaning or Use 
addzone 
zone [class [view]] 
clause 
Adds a new zone dynamically and is only effective if allow-new-
zones yes; is set for the appropriate scope (options or view 
clause). The clause parameter is the exact zone clause (a quoted 
string) that would be used if the zone was defined normally in 
named.conf. For illustration, rndc addzone example.com in 
"goodguys" '{ type master; file "master/master.example.com"; 
allow-transfer {10.2.2.1;}; };'.  Note: the single quotes are 
necessary to escape the double quotes of the file statement. 
Added zone file configurations are written to a file with a suffix of 
.nzf (in the location defined by the directory statement or its 
default) and are therefore persistent between named restarts or 
reloads. Added zones can be deleted using the delzone command. 
If the zone is subsequently manually added to the named.conf file 
after using the addzone command, the .nzf file must be deleted 
before reloading/restarting named. 
delzone 
zone [class [view]] Deletes zones added with an addzone command, optionally in a 
view within class. 
dumpdb 
[-all | -cache | -
zone] [view] 
By default, or using the -cache option, dumps the cache for all 
views to the default named_dump.db file in the location defined by a 
directory statement (or the location and file name defined by the 
dump-file statement of named.conf). Optionally, a specific view 
may be selected. Zone files may also be dumped using -all (zone 
files and cache) or -zone (zone files only), again within an optional 
view.  
flush 
[view] 
Without the optional view, flushes (clears) all current caches. If 
view is used, it will only flush the cache for the specified view 
name. 
Add a page to a pdf in reader - insert pages into PDF file in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Guide C# Users to Insert (Empty) PDF Page or Pages from a Supported File Format
add and delete pages in pdf online; add a page to a pdf
Add a page to a pdf in reader - VB.NET PDF Page Insert Library: insert pages into PDF file in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Easy to Use VB.NET APIs to Add a New Blank Page to PDF Document
add page numbers to pdf online; add a page to a pdf online
CHAPTER 9 ■ DNS DIAGNOSTICS AND TOOLS 
240 
Command Options 
Meaning or Use 
flushname name 
Cause the specified name to be flushed from all the server’s caches. 
freeze 
[zone [class [view]]] Stops all dynamic updates on the zone and updates the zone file 
with any outstanding entries in the .jnl file. The dynamic update
is reenabled with a thaw zone command. A view within class may
be optionally selected. If no zone is specified all updates on the
server will be stopped. 
halt 
[-p] 
Causes the name server to be immediately halted. The name server
can’t be restarted using an rndc command. The optional -p
parameter causes named’s Process ID (PID) to be returned for use
by scripts or applications. 
loadkeys 
zone [class [view]] Authoritative DNSSEC servers only. This command is only
effective if auto-dnssec is set to auto, maintain, or create (see
Chapter 12 for the “auto-dnssec” section) in the target zone clause
and DDNS is enabled for the zone. Similar to sign but
incrementally signs the zone over a period of time. See description
of the sign command for details.  
notify 
zone [class [view]] Send NOTIFY commands for the given zone (or view within class).  
notrace 
Sets debug level to 0. 
querylog 
Toggles logging of all queries to the relevant log file. 
reconfig 
Reloads the named.conf file and any new zones only. Current zones
are not reloaded even if they have changed. 
recursing  
Dump to the location defined for dumpdb a list of all the recursive
queries named is working on. 
refresh 
zone [class [view]] Schedules a zone transfer of a nominated slave zone. May
optionally define the class and view to be transferred. 
reload 
[zone [class [view]]] Reloads named.conf and all zone files but retains all cache entries. 
If the optional zone parameter is used, it will only reload the
nominated zone, and the class and view may be additionally
selected. 
retransfer zone [class [view]] Forces a zone transfer of a nominated slave zone. May optionally
define the class and view to be transferred. 
secroots 
[view] 
Dumps the security roots (contents of the trusted-keys or
managed-keys clauses) optionally for the specific view. By default
they are dumped to the file named.secroots but this can be
overriden by the secroots-file statement. 
C# PDF insert image Library: insert images into PDF in C#.net, ASP
How to insert and add image, picture, digital photo, scanned signature or logo into PDF document page in C#.NET class application?
add page numbers to a pdf document; add page pdf
VB.NET PDF insert image library: insert images into PDF in vb.net
VB.NET PDF - Add Image to PDF Page in VB.NET. Have a try with this sample VB.NET code to add an image to the first page of PDF file. ' Open a document.
add pages to pdf preview; add page numbers to pdf in preview
CHAPTER 9 ■ DNS DIAGNOSTICS AND TOOLS 
241
Command Options 
Meaning or Use 
sign 
zone [class [view]] Authoritative DNSSEC servers only. This command is only 
effective if auto-dnssec is set to auto, maintain or create in the 
target zone clause and DDNS is enabled for the zone. This 
command initiates what BIND calls online smart signing. The 
timing metadata (TMD; see the “dnssec-keygen TMD” section 
later in the chapter) of the zone’s keys (defined by a managed-keys-
directory statement or its default) are inspected and DNSKEY RRs 
added or deleted as defined by the TMD data. If any change to the 
DNSKEY RRset occurs after this inspection, the zone is 
immediately re-signed (in the case of the loadkeys command, it’s 
incrementally re-signed). Optionally, a specific view within class 
may be used. 
stats 
Dumps current zone statistics to the default /var/ named/ 
named.stats file (or the name defined in the statistics-file 
statement of named.conf). Only valid if the zone-statistics yes; 
statement appears in the named.conf file. 
status 
Displays information about the name server, including the current 
status of query logging. 
stop 
[-p] 
Causes a graceful stop of the name server, allowing any dynamic 
update and zone transfers to complete. The name server can’t be 
restarted by an rndc command. The optional -p parameter causes 
named’s Process ID (PID) to be returned for use by scripts or 
applications. 
thaw 
[zone [class [view]]] Enables dynamic updates to the specified zone optionally for a 
specific view within class. This is issued after a freeze zone 
command. unfreeze is a synonym for thaw. If no zone is specified, 
dynamic updates are enabled for all zones on this server. 
trace 
[level] 
If issued without the optional level parameter, this will increment 
the current debug level by one. The level parameter explicitly sets 
the debug level. 
validation on | off [view] 
Valid for resolvers only. Turns on or off (optionally per view) 
DNSSEC validation, thus overriding the value of any dnssec-
validation statement (whose default is yes since BIND 9.5). Only 
effective if dnssec-enable yes; is set or not present (the default is 
yes since BIND 9.5). For validation to be effective a trusted-keys 
or managed-keys clause with appropriate scope must be configured 
in named.conf. 
C# PDF File & Page Process Library SDK for C#.net, ASP.NET, MVC
VB.NET Page: Insert PDF pages; VB.NET Page: Delete PDF Add Image to PDF; VB.NET Protect: Add Password to VB.NET Annotate: PDF Markup & Drawing. XDoc.Word for C#;
adding page numbers to a pdf in reader; adding page numbers to pdf in
VB.NET PDF Password Library: add, remove, edit PDF file password
On this page, we will illustrate how to protect PDF document via password by using simple VB.NET demo code. Open password protected PDF. Add password to PDF.
add pages to pdf; adding a page to a pdf
CHAPTER 9  DNS DIAGNOSTICS AND TOOLS 
242 
rndc-confgen Utility 
The rndc-confgen utility is used to generate HMAC-MD5 shared-secret (symmetric) keys and a shell 
rndc.conf configuration file for use with rndc. When the -a option is used, it creates a default 
configuration (rndc.key file) for use with localhost access only. When used without the -a option, rndc-
confgen writes all output to stdout, which must be captured to a file using a redirection command. The 
output file contains comments describing the format of the inet statement required in the controls 
clause of named.conf. 
rndc-confgen Syntax 
[-r randomdev] [-s address] [-t chrootdir] [-u user] [>outfile] 
rndc-confgen Options 
Table 9–9 describes the options available for use with the rndc-confgen utility. 
Table 9–9. rndc-confgen Options 
Option Parameter Meaning or Use 
-a 
This option creates a configuration for use with rndc in its default mode of 
operation (with localhost only). The file rndc.key is written into the same directory 
as named.conf (and is read by both named and rndc) and an rndc.conf.sample file, 
which may be edited for subsequent configuration of rndc. 
-b 
keysize 
Defines the key size for use with the HMAC-MD5 MAC algorithm. May take a value 
in the range 1 to 512 and defaults to 128 if not defined. 
-c 
key-file When used with the -a option, it defines an alternative file name (replaces the 
default rndc.key). If this option is used, the key-file name must be included in 
the named.conf file, since BIND only looks by default for rndc.key. 
-h 
Displays a list of the options and exits. 
-k 
key-name The key-name to be used when creating the key clause. The default is "rndc-key", 
though some distributions change this to "rndckey". 
-p 
port 
The port number to be used for rndc connections. The default is 953. This option 
overrides the default-port statement in the rndc.conf file. 
C# PDF Password Library: add, remove, edit PDF file password in C#
your PDF document in C# project, XDoc.PDF provides some PDF security settings. On this page, we will talk about how to achieve this via Add necessary references
add and remove pages from pdf file online; add a page to a pdf document
VB.NET PDF Page Delete Library: remove PDF pages in vb.net, ASP.
DLLs for Deleting Page from PDF Document in VB.NET Class. In order to run the sample code, the following steps would be necessary. Add necessary references:
adding page to pdf in preview; adding pages to a pdf
CHAPTER 9 ■ DNS DIAGNOSTICS AND TOOLS 
243
Option Parameter Meaning or Use 
-r 
randomdev 
keyboard 
Defines the source of randomness used to generate keys. The default is to use 
/dev/random, in which the OS captures randomness (entropy) from various system 
events. If significant key generation is being done, this source may become 
depleted and the utility will apparently freeze, waiting for entropy. Typing any 
characters on the keyboard will allow the system to capture randomness from the 
typing intervals. Many systems also provide /dev/urandom, which is faster but 
significantly less random, leading to less secure keys. If neither device is present, 
the value keyboard may be used to force use of the keyboard technique described 
earlier. 
-s 
address 
The IP address (IPv4 or IPv6) to which connection will be made. The value 
overrides the default-server statement of the options clause in the rndc.conf file. 
-t 
chrootdir Only valid with the -a option and defines the directory in which BIND will be run 
chrooted; that is, directory will be the same value as used with BIND’s -t 
command-line option for defining a chroot base directory. A copy of the rndc.key 
file is placed in this directory. 
-u 
user 
Defines the user (UID) name whose permission will be applied to the rndc.key file. 
If used in conjunction with the -a option, only the copy in the -t directory will be 
allocated the defined user (UID) permission. 
>outfile   
If used without the -a option, output from rndc-confgen is written to stdout, and 
therefore the standard redirection command will capture the data to the outfile 
name. 
BIND nsupdate Utility 
The nsupdate utility allows dynamic updating of the zone files for which the name server is the primary 
master—the name server that appears on the SOA RR for the zone. nsupdate typically accepts commands 
from the console but may optionally be used to read commands from a batch file. Zones may not be 
added or deleted using nsupdate, but a zone’s SOA RR may be edited. Zones being dynamically updated 
should not normally be manually edited. Should manual editing be required, the server should be 
stopped, the manual edit carried out, the .jnl files for the zone deleted, and the server restarted; 
alternatively, you could use the rndc freeze zone command, edit the zone, delete any .jnl files for the 
zone, and then use rndc thaw/unfreeze zone to enable dynamic updates for the zone. nsupdate may be 
secured using either TSIG or SIG(0) transaction security—both methods, including illustrative examples, 
are described in Chapter 10. The keys used in both TSIG and SIG(0) are generated using the dnssec-
keygen utility but a new utility ddns-confgen provides a simplified method of generating suitable TSIG 
keys as well as the configuration details necessary to add the resulting key to named.conf and to invoke 
the key from nsupdate. ddns-confgen is not described in this book; use man ddns-confgen for more 
information.  Dynamic updates are controlled by the allow-update or update-policy statements in view, 
options, or zone clauses of the named.conf file (see Chapter 12). The update-policy local; statement 
(see Chapter 12) automatically generates a suitable TSIG key that may be used when nsupdate and the 
name server are run on the same host. That is, nsupdate scope is limited to localhost only when using 
this feature. Dynamic updates can be performed on both normal and signed (DNSSEC) zones, as 
described in Chapter 11 with some additional notes in this section. 
C# PDF Sticky Note Library: add, delete, update PDF note in C#.net
C#.NET Tutorial for How to Add a Sticky Note Annotation to PDF Page with Visual enable users to annotate PDF without adobe PDF reader control installed.
adding page numbers in pdf file; add page break to pdf
C# PDF Page Delete Library: remove PDF pages in C#.net, ASP.NET
C#.NET Project DLLs for Deleting PDF Document Page. In order to run the sample code, the following steps would be necessary. Add necessary references:
add page number to pdf hyperlink; add page numbers pdf file
CHAPTER 9  DNS DIAGNOSTICS AND TOOLS 
244 
nsupdate Syntax 
udpretries] [-t timeout]  
[-u interval] [-v] [filename] 
nsupdate Options 
Table 9–10 defines the options available with the nsupdate utility. 
Table 9–10. nsupdate Options 
Option Parameter 
Meaning or Use 
-D 
Turns on additional debugging in addition to -d. 
-d 
Turns on debug mode. 
-g 
Turns on standard GSS-TSIG support. Needs to be specially built to support 
this feature. Standard Ubuntu and FreeBSD packages do not support this 
feature. 
-k 
key-file 
Defines the name of the key-file output when the dnssec-keygen program 
that created the key was run. This option must have the .private suffix 
appended on the command line, but both the .key and .private files must be 
available in the same directory. 
-l 
BIND when an update-policy local; statement appears in a master zone 
clause of named.conf. 
-o 
Turns on Windows compliant GSS-TSIG. Needs to be specially built to 
this feature. 
-R 
randev 
Defines the source of randomness used to generate keys. The default is to use 
/dev/random, in which the OS captures randomness (entropy) from various 
system events. If significant key generation is being done, this source may 
become depleted and nsupdate will apparently freeze, waiting for entropy. 
Typing any characters on the keyboard will allow the system to capture 
randomness from the typing intervals. Many systems also provide 
/dev/urandom, which is faster but significantly less random, leading to less 
secure keys. If neither device is present, the value keyboard may be used to 
force use of the keyboard technique described earlier.  
-r 
udpretries 
Defines the number of retries for a dynamic update. The default is 3. The 
value of 0 means no retries are attempted. 
CHAPTER 9 ■ DNS DIAGNOSTICS AND TOOLS 
245
Option Parameter 
Meaning or Use 
-t 
timeout 
The default is 300. The value 0 will disable timeout checking. 
-u 
interval 
If an update fails, this option may be used to define the time in seconds 
between retries. The default is 3. 
-v 
By default, nsupdate will use UDP unless the block size is greater than 512 
bytes, in which case TCP will be used. This option forces use of TCP for all 
updates. 
-y 
keyname:secret Allows a shared secret to be entered on the command line. This is a 
dangerous option and should only be used if there is no alternative. The 
keyname field is the name as it appears in the receiving server’s key clause, and 
secret is the base64 material that comprises the secret key! 
filename   
The optional filename may be used to supply update commands from a 
nominated file. The default is to accept commands from stdin (the console). 
nsupdate Command Format 
nsupdate
conditions (prerequisites) for the updates to take place. The prerequisites are optional and allow checks 
to be performed before the update is executed. Commands are built locally and only sent using either 
the send command or a blank line. Any number of RRs (and the required prerequisites) may be added or 
deleted in a single send operation, or individual RRs may be added or deleted in a single send operation. 
The command formats are defined in Table 9–11. 
Table 9–11. nsupdate Commands 
Command 
Parameter 
Meaning or Use 
answer 
Displays the results of the last send operation. 
Class 
IN | CH |HS 
The zone class. The default is IN. 
Debug 
Turns on debugging. 
gsstsig 
The GSS-TSIG feature is not described in this book. Equivalent 
to specifying the -g argument when nsupdate was loaded. 
Local 
address [port] 
If not specified, the nsupdate utility sends updates using a 
random port number on the configured IP address for the 
host. This option may be used to define a specific IP and 
optionally a port number. 
CHAPTER 9  DNS DIAGNOSTICS AND TOOLS 
246 
Command 
Parameter 
Meaning or Use 
Key 
name secret 
Has the same meaning and overrides the value of the -y 
option on the nsupdate command line.  
oldgsstsig 
The GSS-TSIG feature is not described in this book. Equivalent 
to specifying the -o  argument when nsupdate was loaded. 
prereq nxdomain name 
The following update add or update delete commands will 
only be executed if the defined name does not exist in the zone. 
prereq yxdomain name 
The following update add or update delete commands will 
only be executed if the defined name does exist in the zone. 
prereq nxrrset name [class] type 
The following update add or update delete commands will 
only be executed if the defined name and RR type do not exist 
in the zone. class is optional and, if not present, defaults to 
IN. 
prereq yxrrset name [ttl] type 
The following update add or update delete commands will 
only be executed if the defined name and RR type do exist in 
the zone. class is optional and, if not present, defaults to IN. 
prereq yxrrset name [ttl] type data The following update add or update delete commands will 
only be executed if the defined name, RR type, and data do 
exist in the zone.  
Quit 
Terminates the nsupdate utility. 
realm 
[realm-name] 
Used with GSS-TSIG and Kerberos 5. If specified, realm-name 
overrides the default realm name (defined in krb5.conf). If no 
realm-name is defined, it resets to use that defined in 
krb5.conf.  
send 
Sends the current command or commands, equivalent to a 
blank line being entered. 
server 
server-name [port] 
Defines the name server to which the updates will be sent 
until the next server command is issued. The optional port 
parameter may be used to override the default port (53). If not 
specified, nsupdate will send updates to the primary master 
name server for the zone. 
show 
Displays the last send operation. 
ttl 
seconds 
Defines the default TTL to be applied to all added RRs (using 
update) when TTL is not explicitly defined. The keyword none 
may be used to clear a previously defined value. 
CHAPTER 9 ■ DNS DIAGNOSTICS AND TOOLS 
247
Command 
Parameter 
Meaning or Use 
update add 
name [ttl] [class] 
type data 
The RR to be added as it will appear in the zone file; for 
instance, update add fred 8600 IN A 192.168.2.3. 
update delete 
name [ttl] [class] 
type data 
The RR that should be deleted; for instance, update delete 
fred A 192.168.2.3. 
zone 
zone-name 
Defines the name of the zone that will be used for subsequent 
updates until another zone command is issued. If not 
supplied, nsupdate will attempt to guess the required zone 
from the update add and update delete commands. 
nsupdate Example 
The following sequence is used to add an MX record and its corresponding A RR for the domain 
example.com and is secured using SIG(0): 
cd /var/named/dynamic 
# nsupdate -k Kexample.com.+001+00706.private 
> server ns1.example.com 
> zone example.com 
> update add example.com. 36000 IN MX 10 mail2.example.com. 
> send 
> show 
Outgoing update query: 
;; ->>HEADER<<- opcode: UPDATE, status: NOERR id: 0 
;; flags: ; ZONE: 0, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0 
> update add mail2 36000 IN A 192.168.2.5 
> send 
> show 
Outgoing update query: 
;; ->>HEADER<<- opcode: UPDATE, status: NOERR id: 0 
;; flags: ; ZONE: 0, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0 
> quit 
nsupdate and DNSSEC Signed Zones 
When nsupdate is used with DNSSEC signed zones, the following points should be noted: 
• Online Private Keys: Any changes made to a signed zone require that the zone be 
re-signed. When using nsupdate, zone re-signing will be initiated automatically, 
extreme care: it may or may not present unique security problems for the user. 
server without a hardware security module (HSM) is an extremely risky, if not 
suicidal, configuration. Even with a HSM in place, many users would feel distinctly 
queasy at even the thought. DNSSEC DDNS servers should be well hidden behind 
firewalls. 
CHAPTER 9  DNS DIAGNOSTICS AND TOOLS 
248 
• Adding DNSKEY RRs: DNSKEY RRs can be added like any other RR type. If a zone 
is not currently signed, it will be signed automatically as a consequence of adding 
Chapter 13) they will trigger the required level of signing/re-signing: for KSKs, the 
dnssec-
dnskey-kskonly statement). 
• NSEC3/NSEC: If a zone is already signed using either NSEC or NSEC3, no special 
action is required; any resigning operation will automatically use the current 
(NSEC or NSEC3) method. 
• NSEC to NSEC3: If a zone currently signed with NSEC RRs is to be converted to use 
NSEC3, then a valid NSEC3PARAM RR (see the “NSEC3PARAM Record” section in 
Chapter 13) must be added at the zone apex. If Opt-Out is to be used, the Opt-Out 
flag must be set in the added NSEC3PARAM RR. Zone re-signing with NSEC3 will 
be automatically initiated when the NSEC3PARAM is added. 
• NSEC3 to NSEC: If a zone currently signed with NSEC3 RRs is required to be 
converted to use NSEC RRs, the NSEC3PARAM RR at the zone apex must be 
deleted. Resigning with NSEC will be initiated automatically using NSEC when the 
NSEC3PARAM RR is deleted. 
• Signed to Unsigned: If a signed zone is to be converted to an unsigned zone, 
deleting all the DNSKEY RRs at the zone apex will automatically initiate this. The 
RRset prior to deleting the DNSKEY RRs in the zone; otherwise the zone may 
return bogus (invalid) status to end users. 
dnssec-keygen Utility 
The dnssec-keygen utility is a general-purpose cryptographic key generation utility that generates keys 
for use with TSIG, SIG(0), TKEY, and DNSSEC operations (see Chapters 10 and 11) as well as generic KEY 
or DNSKEY RRs. When the utility is run, it outputs a key-file reference. The key-file is used 
subsequently in dnssec-signzone and other commands; it references two files (frequently referred to as a 
keyset) created in either the current working directory (the directory from which the command was run) 
or a nominated directory (using the -K argument) with the following names 
Khostname.+algorithm+key-tag.private 
Khostname.+algorithm+key-tag.key 
where K is a fixed identifier, hostname is the host name value in FQDN format (terminated with a dot) 
from the dnssec-keygen command line (see the “dnssec-keygen Options” section later in this chapter), 
and + is a fixed separator. algorithm is a three-digit number identifying the key algorithm specified in the 
command line and takes the following values: 
001 = RSAMD5 
002 = DH (Diffie-Hellman) 
003 = DSA 
005 = RSASHA1 
006 = NSEC3DSA 
007 = NSEC3RSASHA1 
Documents you may be interested
Documents you may be interested