ud3tn/doc/ud3tn.1

131 lines
5 KiB
Groff

.TH "uD3TN" "1" "May 19, 2026" "TOOL" ""
.hy
.SH NAME
.PP
\[mc]D3TN - lightweight DTN protocol implementation
.SH SYNOPSIS
.PP
ud3tn [OPTION]\&...
.SH DESCRIPTION
.PP
\[mc]D3TN (pronounced "Micro-Dee-Tee-En") is a free software
project intended to offer an implementation of Delay-tolerant Networking
protocols for POSIX operating systems (well, and for Linux).
.SH OPTIONS
.TP
-a, --aap-host HOST
HOST specifies the IP address or hostname to which the application agent TCP
socket should listen. This argument is only considered if no UNIX domain socket
is configured. Note that you have to make sure that the port is not exposed
externally as AAP does not provide security (e.g. it has no TLS support)!
.TP
-A, --aap2-host HOST
HOST specifies the IP address or hostname to which the AAP 2.0 TCP
socket should listen. This argument is only considered if no UNIX domain socket
is configured. Note that you have to make sure that the port is not exposed
externally as AAP does not provide security (e.g. it has no TLS support)!
.TP
-b, --bp-version 6|7
provides the Bundle Protocol version (6 or 7) to be used when creating
new bundles
.TP
-c, --cla CLA_OPTIONS
provides parameters to the available CLA subsystem according to the
syntax documented below
.TP
-d, --external-dispatch
do not load the internal minimal router, allow for using an AAP 2.0 BDM
.TP
-e, --node-id EID
the node ID which is used by the started ud3tn instance for its administrative endpoint.
This is used for deriving the endpoint identifiers of integrated agents as well as for
applications connected through AAP and AAP 2.0. The EID scheme is detected automatically,
whereas the dtn and ipn schemes are supported. In case of dtn-scheme EIDs, a node ID of
the form \[dq]dtn://nodename.dtn/\[dq] is expected, in case of ipn-scheme EIDs, a node
ID of the form \[dq]ipn:nodenumber.0\[dq] is expected.
.TP
-h, --help
display help and exit
.TP
-l, --lifetime SECONDS
lifetime of a bundle created via AAP
.TP
-L, --log-level 1|2|3|4
specifies how detailed the output will be (higher log level means more
detailed output)
.TP
-m, --max-bundle-size BYTES
threshold used to determine if a bundle has to be fragmented.
The effective threshold will be determined as the minimum of this argument and
all maximum bundle sizes reported by the activated CLAs. A value of zero means
\[dq]unlimited\[dq] (2^64 bytes).
.TP
-p, --aap-port PORT
PORT specifies the TCP port number to which the application agent service
should be bound. This argument is only considered if no UNIX domain socket is
configured. Note that you have to make sure that the port is not exposed
externally as AAP does not provide security (e.g. it has no TLS support)!
.TP
-P, --aap2-port PORT
PORT specifies the TCP port number to which the AAP 2.0 service
should be bound. This argument is only considered if no UNIX domain socket is
configured. Note that you have to make sure that the port is not exposed
externally as AAP does not provide security (e.g. it has no TLS support)!
.TP
-r, --status-reports
enable status reporting
.TP
-R, --allow-remote-config
allow configuration via bundles received through CLAs or from unauthorized AAP
clients
.TP
-s, --aap-socket PATH
path to the UNIX domain socket of the application agent service
.TP
-S, --aap2-socket PATH
path to the UNIX domain socket of the AAP 2.0 service
.TP
-u, --usage
print usage summary and exit
.TP
-x, --bdm-secret-var VAR
restrict AAP 2.0 BDM functions to clients providing the secret in the given
environment variable VAR.
Providing a secret is required in release builds as otherwise all clients
could configure arbitrary links and perform bundle forwarding decisions.
.PP
\[mc]D3TN supports four different Convergence Layer Adapters (CLA): tcpclv3,
tcpspp, smtcp and mtcp.
Additionally, the persistent storage of \[mc]D3TN is implemented as a special
CLA type, currently solely implemented as the sqlite CLA.
Parameters are passed to these adapters via the CLA_OPTIONS leveraging
the -c option.
The TCP based adapters are configured by providing a
host name or IP address and port number to which they should listen in
the case they are configured as passive.
Additionally, if tcpspp or smtcp are configured as active via their
third parameter, the provided host name or IP address and port number
are used for initiating a TCP connection.
The sqlite adapter receives a database file name as supported by SQLite.
.PP
To for example let tcpclv3 listen on 127.0.0.1 port 4000, the following
CLA_OPTIONS should be used:
.PP
\[dq]tcpclv3:127.0.0.1,4000\[dq]
.PP
To for example use tcpspp in passive mode listening on 127.0.0.1 port
5000 with APID 123, the following CLA_OPTIONS should be used:
.PP
\[dq]tcpspp:127.0.0.1,5000,false,123\[dq]
.PP
The following default CLA_OPTIONS are applied:
.PP
\[dq]sqlite:file::memory:?cache=shared;tcpclv3:*,4556;smtcp:*,4222,false;mtcp:*,4224\[dq]
.SH REPORTING BUGS
.PP
Please report bugs to <contact@d3tn.com>.
.SH COPYRIGHT
.PP
See details provided via <https://d3tn.com>.
.SH AUTHORS
Maintained by D3TN GmbH (see the source code for author details).