NAME
    ntkd - Netsukuku protocol daemon

SYNOPSIS
    ntkd [-hvaldrD46] [-i net_interface] [-c conf_file] [-l logfile]

DESCRIPTION
    Netsukuku is a mesh network or a P2P net system that generates and
    sustains itself autonomously. It is designed to handle an unlimited
    number of nodes with minimal CPU and memory resources. Thanks to this
    feature it can be easily used to build a worldwide distributed,
    anonymous and anarchical network, separated from the Internet, without
    the support of any servers, ISPs or authority controls.

    The complete features list of Netsukuku is here:
    <http://netsukuku.freaknet.org/files/doc/misc/Ntk_features_list>

    In order to join to Netsukuku you have to use ntkd, which is the daemon
    implementing the Npv7 protocol. The daemon at startup takes the list of
    all the network interfaces which are currently UP and it uses all of
    them to send and receive packets. If you want to force the daemon to use
    specific interfaces you should use the -i option. The ports it listens
    to are: 269-udp, 269-tcp, 277-udp, 277-tcp. So be sure to open them in
    the firewall.

    For more information about Netsukuku visit:
    <http://netsukuku.freaknet.org>

OPTIONS
    -4, --ipv4
        Forces the daemon to use ipv4 addresses only

    -6, --ipv6
        Forces the daemon to use ipv6 addresses only. Warning, this is still
        experimental.

    -i *interface*, --iface *interface*
        Specifies the network interface the daemon will use to join
        Netsukuku, i.e. wlan0. You can use more than one interface by
        specifying multiple times the -i option. For example:

                ntkd -i wlan0 -i eth0 -i wifi1 -i eth1

    -a, --no_andna
        Forces ntkd to don't run the ANDNA daemon when started.

    -R, --no_resolv
        When NetsukukuD starts it modifies /etc/resolv.conf writing in the
        first line the string "nameserver 127.0.0.1". The old
        /etc/resolv.conf is copied in /etc/resolv.conf.bak. When the daemon
        is closed /etc/resolv.conf is restored. If you want to disable this
        set use the -R option.

    -r*[bool]*, --restricted=*[bool]*
        With this option the daemon will run in restricted mode as specified
        in the Npv7, only IPs of a private class will be chosen. It is used
        for Internet compatibility. If no argument is given to the option,
        the default restricted private class 10.0.0.0 is used, otherwise if
        *bool* is not zero, the restricted class will be
        172.16.0.0-172.31.255.255.

    -I, --share-inet
        Tells NetsukukuD to run in restricted mode (see -r) and to share
        your Internet connection. Please check the relative options in
        /etc/netsukuku/netsukuku.conf

    -D, --no_daemon
        This option tells ntkd to don't detach to background and daemonizing
        itself. The daemon will run on foreground instead.

    -c *configuration_file*, --conf *configuration_file*
        Specifies the name of the configuration file. The default is
        /etc/netsukuku/netsukuku.conf. ntkd will not start without a
        configuration file.

    -l *logfile*, --logfile *logfile*
        Specifies that ntkd should send all of its messages to the specified
        file. The *logfile* will be overwritten.

    -d, --debug
        With this option the daemon will run with displaying its debug
        messages. The more -d you specify the more debug messages you'll
        get. Sometimes it's cool to use it, but be careful and don't go
        insane ;)

    -h, --help
        Display a the list of available options and their brief description.

    -v, --version
        Displays the version of the ntkd daemon.

EXAMPLES
    Usually you'll just want to use ntkd with a wifi device:

            ntk-wifi wlan0
            ntkd -i wlan0

    If you one to use more than one network interface:

            ntkd -i eth0 -i wlan0 -i wifi1 -i eth2

SIGNALS
    When the SIGHUP signal is sent to ntkd(8), the andna_hostnames and
    snsd_nodes files will be reloaded and it will try to register all the
    new added hostnames and snsd records.

    When the SIGALRM signal is sent to ntkd, the resolved hostnames cache is
    flushed.

LOGS
    If ntkd is started as a daemon (without the -D option), all the logs are
    sent to syslog under the LOG_DAEMON category.

    If the no-daemon option (-D) is used, all the logs are printed to
    stderr.

FILES
    /etc/netsukuku/netsukuku.conf
        It is the default path for the ntkd configuration file. It's
        possible to choose another file using the -c option.

    /etc/netsukuku/andna_hostnames
        It is the file where the hostnames to be registerd in ANDNA are kept
        one per line. It's location can be changed by modifying the relative
        option in the netsukuku.conf file.

    /etc/netsukuku/snsd_nodes
        The snsd_nodes_file keeps the list of the SNSD records which will be
        register in ANDNA.

    /usr/share/netsukuku/ext_map_file
    /usr/share/netsukuku/int_map_file
    /usr/share/netsukuku/bnode_map_file
        They are the Netsukuku maps saved by the daemon. Their locations can
        be changed in netsukuku.conf.

    /usr/share/netsukuku/andna_lcl_keyring
        In this keyring your ANDNA public and secret keys are saved. Handle
        this file with care: without it, you won't be able to update your
        hostnames, thus you'll definitely lose them.

    /usr/share/netsukuku/andna_cache
    /usr/share/netsukuku/andna_lcl_cache
    /usr/share/netsukuku/andna_rh_cache
    /usr/share/netsukuku/andna_counter_cache
        They are the saved ANDNA caches. Their locations can be changed in
        netsukuku.conf.

    /etc/netsukuku/ip_masquerade.sh
        This script is launched by NetsukukuD, at its start, when it shares
        the Internet connection. The script will activate the IP
        masquerading. The script is also used to disable the IP masquerading
        when ntkd is closed.

    /etc/netsukuku/tc_shaper.sh
        This script manages the traffic shaping for the upload bandwidth. It
        is executed by ntkd at its start if its relative option has been
        enabled.

    /var/run/ntkd.pid
        It is the lock file created by ntkd at its start, it is used to
        check if other instances of ntkd are already running. Only one
        instance is allowed.

KERNEL DEPENDENCIES
    On Linux be sure to have the following options set in your kernel
    .config. These options are taken from linux-2.6.14.

            #
            # Networking options
            #
            CONFIG_PACKET=y
            CONFIG_UNIX=y
            CONFIG_INET=y
            CONFIG_IP_MULTICAST=y
            CONFIG_IP_ADVANCED_ROUTER=y
            CONFIG_IP_MULTIPLE_TABLES=y
            CONFIG_IP_ROUTE_MULTIPATH=y
            CONFIG_NET_IPIP=y
            CONFIG_NETFILTER=y

    and these from linux-2.6.16.19.

            #
            # Core Netfilter Configuration
            #

            CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
            NETFILTER_XT_TARGET_CONNMARK=y

            #
            # IP: Netfilter Configuration
            #

            CONFIG_IP_NF_IPTABLES=y
            CONFIG_IP_NF_FILTER=y
            CONFIG_IP_NF_TARGET_REJECT=y
            CONFIG_IP_NF_NAT=y
            CONFIG_IP_NF_NAT_NEEDED=y
            CONFIG_IP_NF_TARGET_MASQUERADE=y

    If you are using modules you have to load them before launching the
    daemon.

BUGS
    { Don't panic! }

    If you encounter any bug, please report it. Use the online bug track
    system: <http://bugs.dyne.org/>

    or the mailing list: <http://lists.dyne.org/netsukuku/>

    and explain what the problem is and if possible a way to reproduce it.

CONTACTS
    Subscrive to the netsukuku mailing to get help, be updated on the latest
    news and discuss on its development.

    To subscribe to the list, send a message to:
    netsukuku-subscribe@lists.dyne.org

    We live night and day in IRC, come to see us in: #netsukuku on the
    FreeNode irc server (irc.freenode.org).

AUTHORS
    Main authors and maintainers:

    Andrea Lo Pumo aka AlpT <alpt@freaknet.org>

    Main contributors:

    Andrea Leofreddi <andrea.leofreddi@gmail.com>, Katolaz
    <katolaz@freaknet.org>, Federico Tomassini <effetom@gmail.com>

    For a complete list read the AUTHORS file or visit:
    <http://netsukuku.freaknet.org/?p=Contacts>

SEE ALSO
    For more information about Netsukuku visit:
    <http://netsukuku.freaknet.org>

    netsukuku.conf(5), ntk-wifi(8), andna(8), iproute2(8), route(8)