| .TH DNC 1 "February 2024" "Version 1.1" "Distributed nc" |
| .SH NAME |
| dnc \- Distributed Netcat |
| .SH SYNOPSIS |
| .B dnc |
| [OPTIONS]... <YAML_FILE> <PEER_ID> |
| .SH DESCRIPTION |
| \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. |
| |
| .SH "MAIN FEATURES" |
| .TP |
| .B \- Initiates TCP connections on remote devices. |
| .TP |
| .B \- Facilitates peer-to-peer network connectivity. |
| .TP |
| .B \- Supports TURN for NAT traversal. |
| .TP |
| .B \- Manages identities for secure interactions. |
| |
| .SH "USAGE OPTIONS" |
| .TP |
| .B \-h, \-\-help |
| Display help information and exit. |
| .TP |
| .B \-v, \-\-version |
| Show program version. |
| .TP |
| .B \-P, \-\-port |
| Define the port for socket creation. |
| .TP |
| .B \-i, \-\-ip |
| Define the IP address for socket creation. |
| .TP |
| .B \-l, \-\-listen |
| Launch in listening mode. |
| .TP |
| .B \-b, \-\-bootstrap |
| Set the bootstrap node. |
| .TP |
| .B \-p, \-\-privateKey |
| Provide a private key. |
| .TP |
| .B \-t, \-\-turn_host |
| Define the TURN server host. |
| .TP |
| .B \-u, \-\-turn_user |
| Define the TURN server username. |
| .TP |
| .B \-w, \-\-turn_pass |
| Define the TURN server password. |
| .TP |
| .B \-r, \-\-turn_realm |
| Specify the TURN server realm. |
| .TP |
| .B \-c, \-\-certificate |
| Specify the certificate. |
| .TP |
| .B \-d, \-\-dnc_configuration |
| Define the dnc configuration with a YAML file path. |
| .TP |
| .B \-a, \-\-anonymous_cnx |
| Activate anonymous connection mode. |
| |
| .SH "ESTABLISHING SSH CONNECTIONS" |
| To facilitate SSH connections, \fBdnc\fR establishes a DHT network connection followed by socket creation on port 22. This requires an operational OpenSSH server. |
| |
| .SH "PREREQUISITES" |
| .TP |
| .B \- OpenSSH Installation |
| .TP |
| .B \- Build dhtnet |
| |
| .SH "STARTING THE DNC SERVICE" |
| To initiate, generate a certificate authority (CA) and an identity, then launch the \fBdnc\fR service. Obtain the hash ID (public key) for server identification. |
| |
| .SH "CLIENT CONNECTION" |
| Establishing 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. |
| |
| .SH "EXAMPLE" |
| To connect to a remote server: |
| .nf |
| \fBssh <ssh_remote_user>@dnc/<peer_id>\fR |
| .fi |
| |
| .SH "SEE ALSO" |
| .TP |
| .BR ssh(1), |
| .BR netcat(1) |
| |