# Install tcping with Homebrew, chocolatey, MacPorts, zypper, scoop, winget

TCP connect to the given IP/port combo. Version 2.1.0 via Homebrew; verified from local package data. Also installable with zypper: sudo zypper install tcping.

## Install

```sh
sudo av install brew:tcping
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install tcping
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install tcping
```

  Evidence: MacPorts ports tree: net/tcping/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- zypper (92%):

```sh
sudo zypper install tcping
```

  Evidence: openSUSE Tumbleweed package metadata: tcping from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst

### Windows

- Chocolatey (92%):

```sh
choco install tcping
```

  Evidence: Chocolatey community package catalog: tcping from http://community.chocolatey.org/api/v2/Packages?$filter=IsLatestVersion&$select=Id&$top=1000&$skiptoken='11','synologydrive'

- Scoop (92%):

```sh
scoop install main/tcping
```

  Evidence: Scoop official bucket manifest trees: bucket/tcping.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

- winget (92%):

```sh
winget install --id EliFulkerson.tcping -e
```

  Evidence: Windows Package Manager source index: EliFulkerson.tcping from https://cdn.winget.microsoft.com/cache/source.msix

## Package facts

- **Package key:** brew:tcping
- **Package manager:** Homebrew
- **Version:** 2.1.0
- **Source summary:** TCP connect to the given IP/port combo
- **Homepage:** <https://github.com/mkirchner/tcping>
- **Repository:** <https://github.com/mkirchner/tcping>
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- tcping (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 2.1.0
## Project history and usage

tcping is a small command-line utility that checks whether a host:port pair is reachable by attempting a TCP connection instead of sending ICMP echo packets.

### Project history

The upstream manual page says tcping came to be in 2002 as a basic TCP connection checker and as a way to fail fast before running network commands with long timeouts on Solaris, AIX, and Linux.

The GitHub repository for Marc Kirchner's tcping was created in 2016. The manual notes that IPv6 support was added for version 2.0.0 in 2023, while AIX and Solaris support was dropped.

### Adoption history

tcping's adoption is modest but package-manager-friendly: it is a single-purpose diagnostic CLI, available through Homebrew and several other package ecosystems in the input facts, for cases where ICMP ping is blocked or irrelevant.

### How it is used

Users run tcping with a host and port, optionally selecting IPv4 or IPv6 and setting second or microsecond timeouts. Exit codes distinguish success, failure, timeout, and error, making it useful in scripts.

### Why package nerds care

Package nerds care because tcping is the minimal network probe people reach for when netcat is too general and ping tests the wrong protocol. Its behavior is small enough to document in a manpage and stable enough to script.

### Timeline

- 2002: tcping created for basic TCP connection checks and fast failure before long-timeout commands.
- 2016: mkirchner/tcping GitHub repository created.
- 2023: Version 2.0.0 added IPv6 support and dropped AIX and Solaris support.

### Related projects

- ping, nc/netcat, fping, and hping are related network reachability tools; tcping focuses specifically on TCP connect checks.

### Sources

- <https://api.github.com/repos/mkirchner/tcping>
- <https://github.com/mkirchner/tcping#readme>
- <https://raw.githubusercontent.com/mkirchner/tcping/master/README>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Other Package-Manager Records

- zypper - tcping - 2.8.0-1.4: normalized package name match | openSUSE Tumbleweed package metadata: tcping from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | A ping program for TCP ports | https://github.com/pouriyajamshidi/tcping
- MacPorts - tcping: normalized package name match | MacPorts ports tree: net/tcping/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Chocolatey - tcping: normalized package name match | Chocolatey community package catalog: tcping from http://community.chocolatey.org/api/v2/Packages?$filter=IsLatestVersion&$select=Id&$top=1000&$skiptoken='11','synologydrive'
- Scoop - main/tcping: normalized package name match | Scoop official bucket manifest trees: bucket/tcping.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1
- winget - EliFulkerson.tcping: normalized package name match | Windows Package Manager source index: EliFulkerson.tcping from https://cdn.winget.microsoft.com/cache/source.msix
- winget - pj.tcping: normalized package name match | Windows Package Manager source index: pj.tcping from https://cdn.winget.microsoft.com/cache/source.msix


## Combined YAML source

View the package source record on GitHub. [combined/tcping.yml](https://github.com/mxcl/pkgdb/blob/main/combined/tcping.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
