Scroll to navigation

KAFS-DNS(8) AFS kernel address resolver KAFS-DNS(8)


kafs-dns - AFS filesystem address resolution helper


/usr/libexec/kafs-dns [OPTION]... <key_serial>
/usr/libexec/kafs-dns -D [OPTION]... <desc> <calloutinfo>
/usr/libexec/kafs-dns -V

Where options are:

[-v] [-c <conffile>]* [-N <restriction>] [-o <dumpfile>]


This program is invoked by the request-key(8) kernel upcall handling program to handle an address resolution request on behalf of the in-kernel AFS filesystem driver to find the Volume Location servers for a cell. It is capable of using static configuration, NSS and DNS SRV and AFSDB record lookups.

Note that this program is not meant to be called directly, though it does have a debugging mode that can be used.

The first form of the command, without the -D flag cannot be called directly as it requires an under-construction kernel key as its parameter.

The debugging form, in which -D is given, doesn't require a key, but must be given a proposed key description and a callout information string. Information about what it is doing is dumped to the output. The result blob may be binary and so is not dumped to stdout, but can be dumped to a file with -o <dumpfile>.

The available options are:


Execute in debug mode.
Increase the verbosity of the output. This may be specified multiple times.
Specify a configuration file to read instead of the system default. This may be specified multiple times and the configuration files are read and applied in order.
Apply a restriction to the lookup performed for the listed cells (if any are). Restrictions include:
Don't use SRV records to find Volume Location servers.
Don't use AFSDB records to find Volume Location servers.
Don't use SRV or AFSDB records to find Volume Location servers.
Don't look cell name up as hostname to find a Volume Location server.
Don't do any lookups to find Volume Location servers. Use only the static configuration.
Specify a file in which to dump the proposed payload with which to instantiate a resolver key.
Display version information and exit.

The key description, <desc>, should be the name of a cell prefixed by "afsdb:".

The callout information string, <calloutinfo>, is a comma separated list of none or more of the following items:

Get IPv4 addresses only.
Get IPv6 addresses only.
Allow the extra information that can be gleaned from SRV records to be rendered as output format <ver>, where <ver> is a number.


On success.
If an error occurs during processing.
If a command line error occurs.
If bad configuration is detected.


The program can be called with something like:

/usr/libexec/kafs-dns -D srv=1

The program can also be invoked indirectly with something like:

keyctl request2 dns_resolver srv=1 @s

which will return the serial number of a key that can then be displayed.


kafs(7), kafs-client.conf(5), keyctl(1), request-key(8)

9 Jun 2020 Linux