Next: , Previous: , Up: Configuration file   [Index]

Configuration neighbour options

neigh section contains all known neighbours information. It always has self neighbour that is copy of our node’s public data (public keys). It is useful for copy-paste sharing with your friends. Each section’s key is a human-readable name of the neighbour.

neigh: {
  self: {
    id: RKOLY...KAMXQ
    exchpub: 2NZKH...CMI7A
    signpub: EXD7M...YAOFA
    noisepub: MIXYN...BGNDQ
    exec: {sendmail: ["/usr/sbin/sendmail"]}
  alice: {
    id: "XJZBK...65IJQ"
    exchpub: MJACJ...FAI6A
    signpub: T4AFC...N2FRQ
    noisepub: UBM5K...VI42A
    exec: {flag: ["/usr/bin/touch", "-t"]}
    incoming: "/home/alice/incoming"
    onlinedeadline: 1800
    maxonlinetime: 3600
    addrs: {
      lan: "[fe80::1234%igb0]:5400"
      proxied: "|ssh nncp-daemon -ucspi"
    calls: [
        cron: "*/2 * * * *"
  bob: {
    id: 2IZNP...UYGYA
    exchpub: WFLMZ...B7NHA
    signpub: GTGXG...IE3OA
    exec: {
      sendmail: ["/usr/sbin/sendmail"]
      warcer: ["/path/to/"]
      wgeter: ["/path/to/"]
    freq: {
      path: "/home/bob/pub"
      chunked: 1024
      minsize: 2048
    ack: {
      nice: FLASH
      minsize: 2048
    via: ["alice"]
    rxrate: 10
    txrate: 20

Except for id, exchpub and signpub each neighbour node has the following fields:


If present, then node can be online called using synchronization protocol. Contains authentication public key.


Dictionary consisting of handles and corresponding command line arguments. In example above there are sendmail handles, warcer, wgeter and flag one. Remote node can queue some handle execution with providing additional command line arguments and the body fed to command’s stdin.

sendmail: ["/usr/sbin/sendmail", "-t"] handle, when called by echo hello world | nncp-exec self sendmail ARG0 ARG1 ARG2 command, will execute:

/usr/sbin/sendmail -t ARG0 ARG1 ARG2

feeding hello world\n to that started sendmail process.


Full path to directory where all file uploads will be saved. May be omitted to forbid file uploading on that node.


Full path to directory from where file requests will queue files for transmission. May be omitted to forbid freqing from that node.


If set, then enable chunked file transmission during freqing. This is the desired chunk size in KiBs.


If set, then apply -minsize option during file transmission.


Options applied to automatically generated ACKnowledgements packets during tossing.


Use that niceness for generated packets (255 is used otherwise).


If set, then apply -minsize option during file transmission.


An array of node identifiers that will be used as a relay to that node. For example ["foo","bar"] means that packet can reach current node by transitioning through foo and then bar nodes. May be omitted if direct connection exists and no relaying is required.


Dictionary containing known network addresses of the node. Each key is human-readable name of the address. For direct TCP connections use host:port format, pointing to nncp-daemon’s listening instance.

Also you can pipe connection through the external command using |some command format. /bin/sh -c "some command" will start and its stdin/stdout used as a connection.

To use Yggdrasil support network for connectivity, use yggdrasil:PUB;PRV;PEER[,…] format, read about possible aliases usage.

May be omitted if either no direct connection exists, or nncp-call is used with forced address specifying.


If greater than zero, then at most *rate packets per second will be sent/received after the handshake. It could be used as crude bandwidth traffic shaper: each packet has at most 64 KiB payload size. If omitted – no rate limits.


Online connection deadline of nodes inactivity in seconds. It is the time connection considered dead after not receiving/sending any packets (except for PINGs) and connection must be terminated. By default it is set to 10 seconds. This can be set to rather high values to keep connection alive (to reduce handshake overhead and delays), wait for appearing packets ready to send and notifying remote side about their appearance.


If greater than zero, then it is maximal time of single connection. Forcefully disconnect if it is exceeded.


List of call configurations. Can be omitted if nncp-caller won’t be used to call that node.

Next: Configuration areas options, Previous: Configuration notification options, Up: Configuration file   [Index]