---
name: "yaku-ns"
section: "1"
platform: "linux"
package: "yaku-ns"
version: "0.2-4"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/yaku-ns"
---

# yaku-ns(1)

small and simple DNS server

## NAME

yaku-ns - small and simple DNS server

## SYNOPSIS

yaku-ns \[-p \<port\>\] \[-P \<port\>\] \[-f \<port\>\] \[-C \<max\>\] \[-F \<max\>\] \[-T \<forward\_timeout\>\] \[-c \<config\_file\>\] \[-l \<logfile\>\] \[-r \<chroot jail\>\] \[-u owner\] \[-b \<addr\>\] \[-xdhV\]

## DESCRIPTION

This is a simple and small DNS server. Major features are:\
  \- Support for A, MX, NS, TXT, PTR, SOA in local resource records\
  \- Additional RRs handling\
  \- Responses cache, with optional TTL expiration\
  \- Forwarding to multiple exteral DNS servers, with simultaneous or\
    time-driven query\
  \- Optional TCP zone transfer\
  \- A in RRs shuffling\
  \- Built-in ACL rules\
  \- Root privileges squashing\
  \- Chroot jail under unix systems\
  \- Secure DNS IDs to prevent DNS forget\
  \- Logging\
  \- Very simple config file

## OPTIONS

- **-p** \<port\>

  Use the UDP port \<port\> for the DNS service.

- **-P** \<port\>

  Use the TCP port \<port\> for the DNS under TCP service. The only two requests accepted under TCP are IN/AXFR and IN/SOA.

- **-f** \<port\>

  Query the external DNS servers to the port \<port\>.

- **-C** \<size\>

  Use a cache of size \<size\>, 0 is no-cache.

- **-F** \<max\>

  Use a forwarded request queue of size \<size\>, 0 turn off the forwarding.

- **-T** \<timeout\>

  Forwarded requets expire in \<timeout\> seconds.

- **-c** \<file\>

  Use the config file \<file\>: WARNING you must specify the absolute path here, since the server chdir() to "/". Also note that this path is relative to the chroot jail. Use "-" as filename to provide the configuration from the standard input.

- **-l** \<file\>

  Use the \<file\> for yaku-ns logs. Remember to use an absolute path, relative to the chroot (if used).

- **-r** \<directory\>

  Chroot to \<directory\>.

- **-u** \<username\>

  Run as \<username\> (default is nobody, not so secure).

- **-b** \<address\>

  Bind only the interface with IP address \<address\>.

- **-x**

  Enable the TCP services.

- **-d**

  Demonize.

- **-h**

  Show some help.

- **-V**

  Verbosity level: -V: low level, -VV medium level, -VVV high level of verbosity. -VVV is raccomanded for new users.

## SIGNALS

The DNS server yaku-ns performs different action if some signal is received:\
   SIGHUP    Reload the configuration (use on record updates)\
   SIGUSR1   Force yaku-ns to log some debugging information\
   SIGUSR2   Switch the forwarding ON/OFF

## SEE ALSO

[**yaku-getzone**(1)](/yaku-getzone/1.md).

## AUTHOR

yaku-ns was written by Salvatore Sanfilippo \<antirez@gmail.com\>.

This manual page was written by Gürkan Myczko \<alex@aiei.ch\>, for the Debian project (but may be used by others).
