Provided by: pdnsd_1.2.9a-par-2_amd64 bug

NAME

       pdnsd-ctl - controls pdnsd

SYNOPSIS

       pdnsd-ctl [-c cachedir] [-q] command [arguments]

DESCRIPTION

       pdnsd-ctl controls pdnsd, a proxy dns server with permanent caching.  Note that the status control socket
       must  be  enabled (by specifying an option on the pdnsd command line or in the configuration file) before
       you can use pdnsd-ctl.

       -c cachedir
              Set the cache directory to cachedir (must match pdnsd setting).  This is  only  necessary  if  the
              directory differs from the default specified at compile time.

       -q     Be quiet unless output is specified by the command or something goes wrong.

COMMANDS

       help   [no arguments]

              Print a command summary.

       version [no arguments]

              Print version and license info.

       status [no arguments]

              Print  a  description  of pdnsd's cache status, thread status and configuration.  Also shows which
              remote name servers are assumed to be available.

       server (index|label) (up|down|retest) [dns1[,dns2[,...]]]

              Set the status of the servers with the given index or label to up or down, or force a retest.  The
              index is assigned in the order of definition in pdnsd.conf starting with 0. Use the status command
              to view the indexes. You can specify all instead of an index to perform the action for all servers
              registered with pdnsd.

              An  optional  third argument can be given consisting of a list of IP addresses separated by commas
              or white-space characters. This list will replace the addresses of name servers used by pdnsd  for
              the  given server section. This feature is useful for run-time configuration of pdnsd with dynamic
              DNS data in scripts called by ppp or DHCP clients. The last argument may also be an empty  string,
              which  causes  existing  IP addresses to be removed and the corresponding server section to become
              inactive.

       record name (delete|invalidate)

              Delete or invalidate the records of the given domain name if it is  in  the  cache.   Invalidation
              means  that  the  records  are  marked  as  timed out, and will be reloaded if possible. For local
              records (i.e., records that were given in the config file using a rr section, records read from  a
              hosts-style  file  and  records  added using pdnsd-ctl), invalidation has no effect. Deletion will
              work, though.

       source fn owner [ttl] [(on|off)] [noauth]

              Load a hosts-style file. Works like using the pdnsd source configuration section.  Owner  and  ttl
              are  used  as  in the source section. ttl has a default of 900 (it does not need to be specified).
              The next to last argument corresponds to the serve_aliases option, and is off by default.   noauth
              is  used  to  make  the  domains  non-authoritative (this is similar to setting authrec=off in the
              config file, please consult the pdnsd.conf(5) man page for what that means).  fn is  the  name  of
              the file, which must be readable by pdnsd.

       add    a addr name [ttl] [noauth]

       add    aaaa addr name [ttl] [noauth]

       add    ptr host name [ttl] [noauth]

       add    cname host name [ttl] [noauth]

       add    mx host name pref [ttl] [noauth]

              Add  a  record  of the given type to the pdnsd cache, replacing existing records for the same name
              and type. The 2nd argument corresponds to the value of the option in the rr section that is  named
              like  the  first argument. The addr argument may be a list of IP addresses, separated by commas or
              white space.  The ttl is optional, the default is 900 seconds.  noauth is used to make the domains
              non-authoritative (this is similar to setting authrec=off in the config file, please  consult  the
              pdnsd.conf(5)  man page for what that means).  If you want no other record than the newly added in
              the cache, do pdnsd-ctl record name delete before adding records.

       neg    name [type] [ttl]

              Add a negatively cached record to pdnsd's cache, replacing existing records for the same name  and
              type.  If  no type is given, the whole domain is cached negatively. For negatively cached records,
              errors are immediately returned on a query, without querying other  servers  first.   The  ttl  is
              optional, the default is 900 seconds.

       config filename

              Reload pdnsd's configuration file.
              The  config  file  must be owned by the uid that pdnsd had when it was started, and be readable by
              pdnsd's run_as uid.  If no file name is specified, the config file used at start-up  is  reloaded.
              Note that some configuration changes, like the port or IP address pdnsd listens on, cannot be made
              this  way  and  you will receive an error message.  In these cases, you will have to restart pdnsd
              instead.

       include filename

              Parse an include file.
              The include file may contain the same type of sections as a config file,  expect  for  global  and
              server  sections, which are not allowed. This command can be used to add data to the cache without
              reconfiguring pdnsd.

       eval   string

              Parse a string as if part of an include file.
              The string should hold one or more complete configuration  sections,  but  no  global  and  server
              sections, which are not allowed.  If multiple strings are given, they will be joined using newline
              chars and parsed together.

       empty-cache [[+|-]name ...]

              Delete all entries in the cache matching include/exclude rules.
              If no arguments are provided, the cache is completely emptied, freeing all existing entries.  Note
              that  this  also  removes local records, as defined by the config file.  To restore local records,
              run "pdnsd-ctl config" immediately afterwards.
              If one or more arguments are provided, these are  interpreted  as  include/exclude  names.  If  an
              argument  starts  with a '+' the name is to be included. If an argument starts with a '-' it is to
              be excluded.  If an argument does not begin with '+' or '-', a '+' is assumed.  If the domain name
              of a cache entry ends in one of the names in  the  list,  the  first  match  will  determine  what
              happens. If the matching name is to be included, the cache entry is deleted, otherwise it remains.
              If there are no matches, the default action is not to delete.

       dump   [name]

              Print  information  stored in the cache about name.  If name begins with a dot and is not the root
              domain, information about the names in the cache  ending  in  name  (including  name  without  the
              leading  dot)  will  be printed.  If name is not specified, information about all the names in the
              cache will be printed.

       list-rrtypes [no arguments]

              List available rr types for the neg command. Note that those are only used for  the  neg  command,
              not for add!

BUGS

       If you pipe the output of dump command through an application that reads only part of the output and then
       blocks  (such  as  more  or less), pdnsd threads trying to add new entries to the cache will be suspended
       until the pipe is closed.  It is preferable to capture the output in a file in such a case.
       Report any remaining bugs to the authors.

AUTHORS

       Thomas Moestl <tmoestl@gmx.net>
       Paul A. Rombouts <p.a.rombouts@home.nl> (for versions 1.1.8b1-par and later)

       Last revised: 04 Sep 2008 by Paul A. Rombouts.

SEE ALSO

       pdnsd(8), pdnsd.conf(5)

pdnsd 1.2.9a-par                                    Sep 2008                                        PDNSD-CTL(8)