{{ summaryTitle }}
{{ summaryValue }}

{{ summaryLine }}

Variant:{{ resultsReady ? computation.values.variant_label : '—' }} Transport:{{ resultsReady ? computation.values.transport_label : '—' }} Review:{{ resultsReady ? reviewBadge : 'Required' }}
{{ commandCopyAnnouncement }} {{ firstIssueMessage }}
Netcat command task
Presets populate a single authorized connect, listen, or narrow scan task.
Choose the exact shell that will receive the command.
Compare the output with the installed binary's local help before running it.
Use only endpoints and ranges that you are authorized to test.
One host only; the generated command stays local until you run it elsewhere.
For example, 80 for HTTP or 443 for TLS.
Prefer an unprivileged port and a local-only bind while testing.
A quiet UDP result does not by itself prove whether a service is open.
The neutral default uses short flags.
Use 0 to omit; otherwise use finite seconds.
s
{{ option.help }}
{{ params[option.id] ? 'Enabled' : 'Disabled' }}
A blank value leaves address selection to the implementation.
Leave blank for normal OS route selection.
{{ option.help }}
{{ option.unit }}
{{ option.help }}
Credentials entered below will be visible in the generated process arguments.
Disabled is the neutral default; incompatible variants emit a warning instead of a flag.
Review this high-impact argument separately before use.
Leave blank to use the selected implementation's normal binary.
Shell operators, redirects, quotes, substitutions, and control characters are rejected.

{{ commandExportStatus }}

{{ computation.values.command }}
Review findings
  • {{ warning }}
{{ chartExportStatus }}

The chart renderer is unavailable. The same compatibility counts remain in the option ledger.

OptionValueReview noteCopy
{{ row.label }}{{ row.value }}{{ row.detail }}
{{ ledgerExportStatus }}

Introduction:

Netcat works close to the socket boundary. It can open a TCP or UDP client connection, listen on a local port, or test a narrow port range without the protocol behavior added by a browser, mail client, or database driver. That makes it useful for controlled reachability checks, banner inspection, temporary lab listeners, proxy tests, and small request-response experiments.

Connect
Reach one host and port as a client, then exchange raw bytes if the service permits it.
Listen
Bind a local address and port, then wait for another process to connect.
Scan
Attempt connections across one small authorized port range, usually without sending application data.

Transport changes the meaning of the result. TCP establishes a connection before application data is exchanged, so refusal and timeout signals can help separate a missing listener from an unanswered path. UDP has no connection handshake. Silence may mean no reply, filtering, packet loss, or a service that only answers a valid protocol message; it does not by itself prove that a port is closed.

The command name nc is not one universal interface. OpenBSD nc, Nmap Ncat, traditional or GNU netcat, and BusyBox nc expose different option sets and sometimes different argument order. TLS, proxy routing, keep-open behavior, post-connect execution, and shutdown handling are especially variant-dependent. Local --help or manual output remains authoritative for the binary that will run the command.

A generated command also cannot prove reachability, service health, authorization, or application correctness. A successful TCP connection only shows that a socket accepted the connection. The service may still expect TLS, authentication, a specific line ending, or a protocol request before returning useful data.

Listeners, scans, proxy credentials, file paths, and post-connect programs can create real exposure. Work from a documented target and port scope, prefer loopback for listener testing, and avoid putting secrets into command-line arguments that may remain in shell history or process listings.

How to Use This Tool:

Define one authorized socket task, then match the command to the installed Netcat variant and receiving shell.

  1. Choose a preset or select connect, listen, or scan mode. Confirm the host, bind address, and port scope before adding optional behavior.
  2. Select the exact Implementation and Shell that will receive the command. These choices control available flags, quoting, and multiline continuation.
  3. Add TCP or UDP behavior, timeout, TLS, proxy, source address, or other options only when the task requires them. Keep scan ranges narrow.
  4. Read every compatibility warning. Unsupported features are omitted from the command, so a syntactically complete line may not contain everything requested.
  5. Compare the generated command with the installed binary's local help, then run it only against an endpoint and interface you are authorized to use.

Interpreting Results:

The compatibility counts compare requested features with four modeled variants. Needs review is the number of requested features outside the selected profile. Check the warning text as well because proxy mode, credentials, listener exposure, UDP behavior, long flags, custom arguments, and post-connect execution have additional conditions.

The generated line is a command draft, not execution evidence. Verify the selected binary, endpoint, emitted flags, and shell quoting. After running an authorized test, use service output, logs, or packet capture when a blank response or UDP silence leaves the outcome uncertain.

Technical Details:

Netcat command construction has three technical inputs: the socket role, the variant's capability set, and the shell's token rules. The command is assembled only after numeric ranges and incompatible field combinations pass validation.

Transformation Core

  1. Validate connect, listen, or scan mode; ports from 1 through 65,535; optional time values from 0 through 86,400 seconds; and a scan end port that is not below its start port.
  2. Build the requested feature set from role, transport, address family, timeout, proxy, TLS, execution, transfer-direction, and diagnostic choices.
  3. Compare each requested feature with the selected variant profile. Emit a supported flag and omit an unsupported one with a warning.
  4. Place bind or target arguments in the variant's expected order, then quote non-flag tokens for POSIX shell, Bash or Zsh, fish, Nushell, PowerShell, or Windows CMD.
  5. Optionally combine short flags or format a multiline command where the chosen shell supports continuation.
Modeled Netcat variant capabilities and important distinctions.
VariantCommandImportant modeled distinctions
OpenBSD ncncConnect, listen, scan, IPv6, proxy routing, keep-open, and shutdown-on-EOF; no modeled TLS or post-connect execution
Nmap NcatncatBroadest profile, including TLS, proxy authentication, execution, direction controls, idle timeout, and maximum connections
Traditional/GNU netcatnetcatCore connect, listen, scan, timeout, source, and program-execution behavior; conservative short flags
BusyBox ncncCompact profile with core roles, timeout, source fields, program execution, send delay, and hexdump

Rule Core

  • Proxy flags are generated only for TCP connect mode. UDP, listen, and scan requests omit them with a warning.
  • Long-flag preference applies to Ncat. Other profiles keep conservative short flags.
  • Receive-only and send-only cannot be enabled together.
  • Custom binary prefixes and extra arguments reject quotes, shell operators, substitutions, wildcards, control characters, and unsupported tokens. Accepted extra arguments are syntax-screened, not checked against the selected binary.
  • A listener on an empty address, 0.0.0.0, or :: warns that the bind may extend beyond the local host.

Shell quoting protects each generated token according to the selected shell, but it cannot make a dangerous option safe. Proxy credentials remain process arguments, and post-connect execution can attach a local program or shell to a network socket. Both conditions produce explicit warnings.

Responsible Use Notes:

Use Netcat only on systems, addresses, and port ranges you own or are explicitly authorized to test.

  • Bind temporary listeners to 127.0.0.1 when only same-host testing is needed, and stop them after the test.
  • Do not place reusable credentials, private keys, or sensitive payloads in command-line fields.
  • Keep scans narrow and documented. A generated scan command does not grant permission.
  • Restrict post-connect execution to an isolated lab with an understood peer and network path.

Worked Examples:

Loopback TCP listener

Listen mode with OpenBSD nc, bind address 127.0.0.1, and port 9000 produces a local listener command without the broad-bind warning. It still opens a socket when run, so confirm the port is unused and stop the process after the test.

TLS requested from the wrong variant

A TLS client request paired with OpenBSD nc cannot emit modeled TLS flags. The command omits TLS and reports the unsupported feature. Switch the implementation to Nmap Ncat and verify the installed Ncat help before using the result.

Quiet UDP probe

A UDP command may return without a response even when packets reached the target. Treat silence as inconclusive and check protocol-aware output, service logs, or a packet capture within the authorized environment.

FAQ:

Why was an option missing from the command?

The selected variant profile does not model that feature, or the feature is invalid for the chosen role or transport. Read the warning, select a compatible implementation, or remove the unsupported behavior.

Does a successful connection prove the service is healthy?

No. It proves only that the socket accepted a connection. The application may still require TLS, authentication, a correctly formatted request, or further health checks.