blob: ef79c2e08c687d82a7ea6aee67d2778dfd221f6c [file] [log] [blame]
Amnab10c6e72023-09-25 11:12:35 -04001.TH DNC 1 "September 2023" "Version 1.0" "Distributed nc"
2.SH NAME
3dnc \- Distributed nc
4.SH SYNOPSIS
5.B dnc
6.RI "[-h|--help] [-V|--version] [-p|--port <PORT>] [-i|--ip <REMOTE_IP>] [-l|--listen] [-b|--bootstrap <BOOTSTRAP_ADDRESS>] [-I|--id_path <IDENTITY_PATH>] [-t|--turn_host <TURN_SERVER>] [-u|--turn_user <TURN_USERNAME>] [-w|--turn_pass <TURN_PASSWORD>] [-r|--turn_realm <TURN_REALM>]"
7.RI "<peer-id>"
8.SH DESCRIPTION
9\fBdnc\fR is a versatile command-line utility that enables network connectivity between peers in a Distributed Hash Table (DHT) network. It allows you to establish connections with other peers or devices and create TCP sockets on remote devices, similar to the traditional \fBnc\fR (netcat) utility.
10.SH OPTIONS
11.TP
12.B \-h, \-\-help
13Display help information for using \fBdnc\fR.
14.TP
15.B \-V, \-\-version
16Display the version information of \fBdnc\fR.
17.TP
18.B \-p, \-\-port <PORT>
19Specify the port number to use for network connections. This option requires an argument. The default value is 22 if not specified.
20.TP
21.B \-i, \-\-ip <REMOTE_IP>
22Specify the IP address or hostname of the remote host or device to connect to. This option requires an argument. The default value is "127.0.0.1" if not specified.
23.TP
24.B \-l, \-\-listen
25Run \fBdnc\fR in listen mode, allowing the program to accept incoming network connections and perform network-related tasks on request.
26.TP
27.B \-b, \-\-bootstrap <BOOTSTRAP_ADDRESS>
28Specify the address of a bootstrap node to connect to an existing DHT network. This option requires an argument and is only valid when not running in listen mode. The default value is "bootstrap.jami.net" if not specified.
29.TP
30.B \-I, \-\-id_path <IDENTITY_PATH>
31Specify the path to the identity file, which contains information about the peer's identity and is used for DHT network interactions. This option requires an argument. The default value is "~/.dhtnet" if not specified.
32.TP
33.B \-t, \-\-turn_host <TURN_SERVER>
34Specify the hostname or IP address of the TURN (Traversal Using Relays around NAT) server to use for network traversal. This option requires an argument. The default value is "turn.jami.net" if not specified.
35.TP
36.B \-u, \-\-turn_user <TURN_USERNAME>
37Specify the username for authentication with the TURN server. This option requires an argument. The default value is "ring" if not specified.
38.TP
39.B \-w, \-\-turn_pass <TURN_PASSWORD>
40Specify the password for authentication with the TURN server. This option requires an argument. The default value is "ring" if not specified.
41.TP
42.B \-r, \-\-turn_realm <TURN_REALM>
43Specify the realm for authentication with the TURN server. This option requires an argument. The default value is "ring" if not specified.
44.SH EXAMPLE
45To connect to a remote device with a specific TURN server and identity file, you can use the following command:
46.PP
47.B
48dnc -i <REMOTE_IP> -p <PORT> -t <TURN_SERVER> -u <TURN_USERNAME> -w <TURN_PASSWORD> -r <TURN_REALM> -I <IDENTITY_PATH> <peer-id>
49.SH SEE ALSO
50.PP
51.BR nc (1)