blob: c6b7aaee68b78cd87e0fa7a1d6ed4dbf082f5984 [file] [log] [blame]
Amna6773b072024-02-08 16:08:44 -05001.TH DNC 1 "February 2024" "Version 1.1" "Distributed nc"
Amnab10c6e72023-09-25 11:12:35 -04002.SH NAME
Amna6773b072024-02-08 16:08:44 -05003dnc \- Distributed Netcat
Amnab10c6e72023-09-25 11:12:35 -04004.SH SYNOPSIS
5.B dnc
Amna6773b072024-02-08 16:08:44 -05006[OPTIONS]... <YAML_FILE> <PEER_ID>
Amnab10c6e72023-09-25 11:12:35 -04007.SH DESCRIPTION
Amna6773b072024-02-08 16:08:44 -05008\fBdnc\fR is a command-line utility designed to facilitate network communication across a Distributed Hash Table (DHT) network. It enables users to initiate TCP connections and create sockets on remote devices, functioning similarly to the traditional netcat utility but with added features for DHT networks.
9
10.SH "MAIN FEATURES"
11.TP
12.B \- Initiates TCP connections on remote devices.
13.TP
14.B \- Facilitates peer-to-peer network connectivity.
15.TP
16.B \- Supports TURN for NAT traversal.
17.TP
18.B \- Manages identities for secure interactions.
19
Amna77e27dc2024-07-24 13:09:40 -040020.SH "OPTIONS"
21
Amnab10c6e72023-09-25 11:12:35 -040022.TP
23.B \-h, \-\-help
Amna6773b072024-02-08 16:08:44 -050024Display help information and exit.
Amna77e27dc2024-07-24 13:09:40 -040025
Amnab10c6e72023-09-25 11:12:35 -040026.TP
Amna6773b072024-02-08 16:08:44 -050027.B \-v, \-\-version
28Show program version.
Amna77e27dc2024-07-24 13:09:40 -040029
Amnab10c6e72023-09-25 11:12:35 -040030.TP
Amna77e27dc2024-07-24 13:09:40 -040031.B \-P, \-\-port \fIPORT\fR
Amna6773b072024-02-08 16:08:44 -050032Define the port for socket creation.
Amna77e27dc2024-07-24 13:09:40 -040033
Amnab10c6e72023-09-25 11:12:35 -040034.TP
Amna77e27dc2024-07-24 13:09:40 -040035.B \-i, \-\-ip \fIADDRESS\fR
Amna6773b072024-02-08 16:08:44 -050036Define the IP address for socket creation.
Amna77e27dc2024-07-24 13:09:40 -040037
Amnab10c6e72023-09-25 11:12:35 -040038.TP
39.B \-l, \-\-listen
Amna6773b072024-02-08 16:08:44 -050040Launch in listening mode.
Amna77e27dc2024-07-24 13:09:40 -040041
Amnab10c6e72023-09-25 11:12:35 -040042.TP
Amna77e27dc2024-07-24 13:09:40 -040043.B \-b, \-\-bootstrap \fIADDRESS\fR
Amna6773b072024-02-08 16:08:44 -050044Set the bootstrap node.
Amna77e27dc2024-07-24 13:09:40 -040045
Amnab10c6e72023-09-25 11:12:35 -040046.TP
Amna77e27dc2024-07-24 13:09:40 -040047.B \-t, \-\-turn_host \fIADDRESS\fR
Amna6773b072024-02-08 16:08:44 -050048Define the TURN server host.
Amna77e27dc2024-07-24 13:09:40 -040049
Amnab10c6e72023-09-25 11:12:35 -040050.TP
Amna77e27dc2024-07-24 13:09:40 -040051.B \-u, \-\-turn_user \fIUSER\fR
Amna6773b072024-02-08 16:08:44 -050052Define the TURN server username.
Amna77e27dc2024-07-24 13:09:40 -040053
Amnab10c6e72023-09-25 11:12:35 -040054.TP
Amna77e27dc2024-07-24 13:09:40 -040055.B \-w, \-\-turn_pass \fISECRET\fR
Amna6773b072024-02-08 16:08:44 -050056Define the TURN server password.
Amna77e27dc2024-07-24 13:09:40 -040057
Amnab10c6e72023-09-25 11:12:35 -040058.TP
Amna77e27dc2024-07-24 13:09:40 -040059.B \-r, \-\-turn_realm \fIREALM\fR
Amna6773b072024-02-08 16:08:44 -050060Specify the TURN server realm.
Amna77e27dc2024-07-24 13:09:40 -040061
Amna6773b072024-02-08 16:08:44 -050062.TP
Amna77e27dc2024-07-24 13:09:40 -040063.B \-p, \-\-privateKey \fIFILE\fR
64Provide a private key.
65
66.TP
67.B \-c, \-\-certificate \fIFILE\fR
Amna6773b072024-02-08 16:08:44 -050068Specify the certificate.
Amna77e27dc2024-07-24 13:09:40 -040069
Amna6773b072024-02-08 16:08:44 -050070.TP
Amna77e27dc2024-07-24 13:09:40 -040071.B \-d, \-\-configuration \fIFILE\fR
Amna6773b072024-02-08 16:08:44 -050072Define the dnc configuration with a YAML file path.
Amna77e27dc2024-07-24 13:09:40 -040073
Amna6773b072024-02-08 16:08:44 -050074.TP
Amna77e27dc2024-07-24 13:09:40 -040075.B \-a, \-\-anonymous
Amna6773b072024-02-08 16:08:44 -050076Activate anonymous connection mode.
Amna77e27dc2024-07-24 13:09:40 -040077
Amna69996232024-07-23 14:04:44 -040078.TP
79.B \-vv, \-\-verbose
80Enable verbose mode.
Amna6773b072024-02-08 16:08:44 -050081
82.SH "ESTABLISHING SSH CONNECTIONS"
83To facilitate SSH connections, \fBdnc\fR establishes a DHT network connection followed by socket creation on port 22. This requires an operational OpenSSH server.
84
85.SH "PREREQUISITES"
86.TP
87.B \- OpenSSH Installation
88.TP
89.B \- Build dhtnet
90
91.SH "STARTING THE DNC SERVICE"
92To initiate, generate a certificate authority (CA) and an identity, then launch the \fBdnc\fR service. Obtain the hash ID (public key) for server identification.
93
94.SH "CLIENT CONNECTION"
95Establishing a secure connection from the client side involves generating a CA and a unique identity, including a private key and a certificate. Integrate \fBdnc\fR with your SSH workflow by configuring your SSH client.
96
97.SH "EXAMPLE"
98To connect to a remote server:
99.nf
100\fBssh <ssh_remote_user>@dnc/<peer_id>\fR
101.fi
102
103.SH "SEE ALSO"
104.TP
105.BR ssh(1),
Amna77e27dc2024-07-24 13:09:40 -0400106.BR netcat(1),
107.BR dhtnet-crtmgr (1)
Amna6773b072024-02-08 16:08:44 -0500108