DNSCTL(8)

NAME
dnsctl - djb's dnscache configuration control program

SYNOPSIS
dnsctl

DESCRIPTION
dnsctl is a configuration control program which allows D.J. Bernstein's dnscache utility to be controlled via netperm-table (5) configuration.

As djb's license is quite restrictive, it is not possible to distribute modified versions of dnscache . That's why dnsctl was created: to have configuration unified.

The dnsctl program should be run every time its configuration in netperm-table gets updated. On start, the program reads the netperm-table and translates appropriate rules to dnscache configuration.

OPTIONS

  Command Line Options
None.

  Configuration Options
The program reads configuration rules from the /usr/local/etc/netperm-table. It reads all rules using the dnsctl , * (wildcard) keywords and instances specified in the main configuration. The proxy reads the netperm-table from top to bottom. If there are multiple rules in the table that could apply for a particular attribute, the proxy uses the first one that it finds. Each instance starts reading configuration from the beginning with its own tag and uses dnsctl tag after the end of the instance configuration was reached. See netperm-table(5) for a more complete explanation of netperm-table syntax and precedence.

The program recognizes the following attributes:

base directory
    Specifies djb daemontools configuration base directory to which running copies of dnscache are relative.

    directory
        Specifies absolute unix directory path.

instances instance [instance...]
    rules specify dnscache instance tags which follow.

Each instance configuration consists of:

bind ip-address
    Specifies instance bind address.

    ip-address
        IPv4 address to bind.

zone zone-name -servers server [server..]
    Specifies forward or reverse zone and master forwarders for it.

    zone-name
        Name of the zone, p.e. alphacomplex.int , 0.0.10.in-addr.arpa

    server
        Master DNS server for specified zone (IPv4 address)

default-servers server [server..]
    Specifies default master forwarder for zones not listed expicitly.

    server
        Default master DNS server (IPv4 address)

hosts ip [ip..]
    Specifies client IPs permitted to perform DNS requests to the instance.

    ip  IPv4 address of host or network (partial, like 192.168). Please note that host parameter syntax differs form traditional netperm-table .

EXAMPLES
Sample configuration providing two dnscache instances: dnscache-int serving 10.0.0 network on 10.0.0.1 interface and dnscache-local serving firewall machine itself.

    dnsctl:		base /usr/local/var/djbtools
    dnsctl:		instances dnscache-int dnscache-local
    dnscache-int:	bind 10.0.0.1
    dnscache-int:	hosts 10.0.0
    dnscache-local:	bind 127.0.0.1
    dnscache-local:	hosts 127.0.0.1
    # Zone sources are common for both instances
    dnsctl:		zone alpha.int -server 10.0.0.2
    dnsctl:		zone 0.0.10.in-addr.arpa -server 10.0.0.2
    dnsctl:		default-servers 17.15.1.2 17.15.1.3

FILES

/usr/local/etc/netperm-table
    The network permissions file contains configuration information for the Firewall Toolkit, including dnsctl.

BUGS
dnsctl does not share exactly the same syntax with other OpenFWTK tools. Sorry, djb tools are tricky.

Report bugs to arkenoi@gmail.com or fwtk-users@buoy.com mailing list. Include a complete example, explaining what you expected to happen and what actually happened. Be sure to indicate the type of system (operating system, hardware, etc.) you are using, as well as the version of dnsctl.

AUTHOR
ArkanoiD.

SEE ALSO
netperm-table(5), rc(8), authsrv(8), netacl(8), http:/cr.yp.to (djbdns and daemontools home)